Tried using Windsurf (similar to Cursor)

Hey all - I’m an expert farmOS user, but have never actually developed in it. I have JS and C++ experience, but no experience in PHP and no real full stack development (all scripting and hardware).

I decided to try to use Windsurf, which is similar to Cursor but you can choose among several AI options (including DeepSeek and others). It has a sidebar agent, which allows you to code things in plain text. It then walks through what it changes, recommends actions (terminal commands and file updates), and you can review and approve them.

Basically, Windsurf can (optionally) code for you in a step by step, and review-focused way. It’s also a full fledged code editor… so it doesn’t limit you to english-only queries.

How’d it go?

It took me about 30 minutes to install farmos (docker, farmOS install, following Install page. I didn’t need ai for that :slight_smile:

Then I opened the www folder in Windsurf (using Ubuntu 24.04), and asked it to create a module which added a new field called gregs_id to all assets. That is quite easy (as I found out), and it worked! See image below. It took about 2 hours in total, but a lot of that was it didn’t realize that I had installed farmOS using docker, so getting drush to work in docker was not what it expected (it kept thinking that SQL wasn’t installed, etc.). But I got it figured out and it worked great after that.

I know that creating a custom module like this is very easy… but I have to say this really really helped me. Not only could I technically do it quickly with no help, but it having to walk through the logic also forced me to walk through the logic. In many ways, it’s more useful for teaching than doing, which I found interesting.

I’m going to keep trying to do more complicated things with it, and see how it goes. Overall, this was a pretty good first experience that was really useful as someone just getting started.

Curious of anyone else’s experience with using these tools at any level.

PS: Took another 10 minutes to make a quickform with this new attribute :slight_smile:

PSS: But then turns out it doesn’t save the value, and after 2 more hours of fooling around I couldn’t get it to actually save the value correctly :angry: :fist: Aaaaaaaiiiiiiiiiiii!

5 Likes

Nice.

I’ve had success with chatGPT for learning stuff.
I think it’s a fast and easy way to learn while actually making something useful.

I did not know of these tools. I’ll check them out. Thanks.

GPT needs to know a few things to get things right, but you quickly learn how to ask.

I also use it to add comments to code. I helps understaning example code. "Comment so my grandpa can understand" :grinning:

2 Likes