Why did you stopped using FreeBSD ?

I never stopped. In the last 25 or so years I've always had at least one system running FreeBSD. It may not have been my daily driver, it certainly had daily use.
 
It's funny, since I am almost in the same situation as the OP, down to the fact that I almost exclusively program in F#.

Back then, I've spent quite some months programming using emacs and similar editors when I was still using C#, and tried hard to build a workflow around it. Then I tried vscode and when i noticed a x5-10 increase in productivity, i felt that I really screwed up wasting so much time due to using unsuited tooling. For other reasons, I then installed OpenSUSE tumbleweed, which allowed me to use Rider and all the other IDEs from JetBrains, which provided me another x3-5 in productivity.

Barebone editors may be suitable for some languages, but a language like F# relies heavily on type inference, so being able to have type annotations is of the essence. Moreover, being able to have autocompletion for unfamiliar types and those used more rarely is really key to my productivity.

That being said, FreeBSD is nowhere close to leaving our servers, it is the absolute best in this area. But for workstations, we've had to transition to OpenSUSE. They are much less pleasant to administer than FreeBSD and every distribution upgrade is stressful. But sometimes you just need to get some software running. Our plan is to increasingly treat desktop workstations as unfriendly/untrusted devices, and keep pushing as much stuff as possible to the FreeBSD servers (network drives, LDAP, and other services) so that workstations are essentially thin-client we can destroy and recreate without consequence.
 
I'm sure if you google "neovim F# LSP" you'll get about a thousand hits. ...MS gave LSP to the editor world so most of us can get by without IDEs now-a-days.
 
I am more concerned about the lack of advanced debuggers. rr (open source) and undo debugger (commercial). Pretty handy to debug memory corruption. But I write portable software, so most of the time I can change platforms for the interesting debugging.
 
I'm sure if you google "neovim F# LSP" you'll get about a thousand hits. ...MS gave LSP to the editor world so most of us can get by without IDEs now-a-days.
There is much more than LSP however. There are things like graphical package management, unit tests runners, launching the application with a debugger attached, managing multiples launch configurations, integrated source control etc...). With F#, file order matters, so it's cool to be able to drag and drop a file, and have the build file updated automatically. Lots of large and small features, all seamlessly integrated with each other and working out-of-the-box on day one without needing to spend X months to learn lisp & Cie.

I am not trying to trash lightweight code editors by the way, I understand and respect that many people feel more productive with them. I am just highlighting that commercial IDEs bring serious value to the table, and most people, me included, are way more productive with them. The difference was day and night in my case, to the point that I had to change my desktop OS, despite having a lot of good will to make things work on FreeBSD. The situation may be different depending on the ecosystem your are programming for.

But for .NET and F#, and I think generally speaking, for commercial IDEs allow you to opt into what you want to tweak in an advanced manner, while the rest just works out of the box. There are only so many things we have time to learn and master, and these tools allow one to focus on the work they are interested in immediately, instead of having to deal with a distracting and sometimes long learning curve first.

There is also the fact that when you run a business, you need to ensure that onboarding will be easy and that people can focus on their work.
 
By the way, I used LSPs with emacs but still, switching to an IDE after over a year (maybe even 2) of this workflow made me feel like I was back to civilization. This was in large part due to me not being a Lisp wiz, but also due to the fact that back in the days, .NET Core also did not work on FreeBSD (wasn't ported yet, the port got completed last year only), so you had to use an outdated version of mono and jump through countless hoops to get the LSP run.

Maybe this was a special situation, but really I do not want to waste so many man-hours dealing with this kind of plumbing ever again and spending hours or even days every time a component is updated. Doesn't make business sense. Sometimes you need things to just work, which is the reason I use FreeBSD by the way. When this is not the case, and things are outside of our control (vendors not supporting the OS etc...), I've learned the hard way that being an ideologue about an OS is not wise. But FreeBSD is so sweat that I really wished I could use it for everything.
 
There are only so many things we have time to learn and master, and these tools allow one to focus on the work they are interested in immediately, instead of having to deal with a distracting and sometimes long learning curve first.
This is probably my biggest argument *against* large development platforms. Once they disappear and get replaced with something new (every ~10-20 years?) then you need to relearn *everything* at once. I don't like that. Instead I prefer to relearn individual components gradually over that period in a less monolithic manner.

F# is still pretty new, so there hasn't been a mass extinction from a popular IDE yet. You are in for some fun. My predicition is that the JetBrains offering will die before VS.NET. However if Microsoft decides that VSCode is the future, then VS.NET might finally go and rest in peace next to the cult classic VS(6).

Relearning is a given based on the nature of the industry. The question is how you prefer to relearn. Quickly like taking off a plaster. Or over time like being a parent.
 
I am using (also administrating) many operating systems professionally and at home:
  • FreeBSD
  • Windows Server (shudder)
  • RHEL and compatibles such as Alma Linux
  • Devuan and Debian-derived, such as Kali Linux
  • Artix
  • AIX
My first choice where it can fulfill the task at hand is FreeBSD. I have not stopped using it since the late 90s.
 
When i switched from debian to freebsd on daily driver laptop, i was in the same boat, looking for a code editor. Coming from vscode, I ended up settling with helix and couldnt be happier! It even supports use of LLM's via aichat tool.
 
I am still using FreeBSD. It doesn't run everything I need, but it's different for me because even when I was using Windows, I needed a Mac for Xcode. So I probably got into a mindset that I might have to use a different OS depending on what I was doing, like it was just a normal thing to get on a different system to do a specific task.

Then when I decided to leave Windows as my personal OS and looked into Linux, of course I didn't get rid of Windows from all my machines. I still used it for testing things, I just didn't personally use it. And I still used Mac for Xcode.

And when I looked into FreeBSD to see if it would work on a problematic pc that did not like Linux, I decided to keep using it because it's very interesting and has several unique things I have not found elsewhere, but I didn't remove Linux or Windows or Mac from all my machines.

I like FreeBSD a lot but some things it can't run or I just haven't figured out how yet, like getting the Android SDK on it so I can build a Cordova Android app from the command line, also the no-code game engine I use does not run on FreeBSD. So basically I can't create or build projects on FreeBSD so I do that on other systems and use FreeBSD for different things.
 
I haven't stopped. But my co-workers prefer Linux. They have no use for FreeBSD.

Then, there's been hardware compatibility problems.

Currently, its current and future use is restricted for certain functions that are difficult or impossible or less advantageous to run on Linux.
 
There are no hardware compatibility problems with FreeBSD. You just buy hardware that's compatible with FreeBSD.
Well, that's a bit too much IMHO. There's no support for high speed wireless on FreeBSD and also USB3 is slow as hell, regardless of the hardware you decide to buy.

With that said, I use FreeBSD as my daily driver on my laptop and it's perfectly usable despite the two limitations above.
 
Well, that's a bit too much IMHO. There's no support for high speed wireless on FreeBSD and also USB3 is slow as hell, regardless of the hardware you decide to buy.
Kind of but also, kind of not. For example on Windows there is no support for my old Intel GPU or lack of TPM 2+. Yet that OS seems to be known for "good hardware support". Same with macOS. Hardware support is a fraction of what FreeBSD supports.

Obviously, Linux is probably the best hardware support these days (it overtook Windows ~2014?). But just like back then, the OS matters more than the glorified sand that we are currently running. Luckily, otherwise Linux would have died before it could become a decent driver dump for FreeBSD to pick at :D
 
USB3 is slow as hell,
I don't use other OS so I have no metric. But I recently dabbled with 3D Scanner on win10 and usb3 is needed.

So I started paying attention to my FreeBSD USB3 speeds. What I see is thumbdrives give me 80-120MB/sec. Small sampling.
But I have USB3 to M.2 NVMe adapter I use for writing images to M.2 drive and I see 375MB/sec on that.
So I have not investigated but it may come down to the controller used and backing storage.

With the passing of FreeBSD USB Mastermind HPS I am worried for the future.
Webcamd is left without a maintainer and that is the least of it.
 
Back
Top