Hello.
I am a C/C++ Python and Java developer at the Elettra Synchrotron Radiation Facility in Trieste, Italy.
For the control system we use and produce open source software, and we develop under linux.
I have been a fan of FreeBSD since my laurea degree thesis back in 2004.
To cope with work necessities, I normally develop under gentoo linux, but at intervals I go back to FreeBSD for some time just to revise it and see how its development goes on and what is the user experience also on the desktop side. Actually, for me it's quite equivalent to develop either on linux or freebsd.
So, I've recently switched back to FreeBSD 11 and these are my impressions, and the difficulties I've met as both a developer and a desktop user.
Gentoo Linux is a source based linux distribution, so there is perfect analogy when dealing with gentoo portage and FreeBSD software managed with ports.
Since Linux has introduced cgroups and systemd, the world has changed: i can do multiple make -j9 inside several shells (building packages and work stuff) without noticing any slow down in desktop interaction. This is an achievement that once you get used to, you can't live without.
Additionally, if an application goes crazy and tries to eat up all CPU resources, you simply don't notice any lag elsewhere. I asked around in FreeBSD forums, the only suggestions were to use limits or nice. Apart that limits kills the process, it is clear that those solutions are not up to the task.
This adds up to other issues caused by not easy trackable processes being executed in the environment and eating up too many resources. Last weekend, I left the computer running, as usual, and when I got back the system was extremely slow. Chromium tabs were all gone blank, and switching from one to another took up to 5-6 seconds to display the contents of the web pages that had originally been loaded. Only after killing a bunch of other applications (skype, firefox), situation got back to normality. Another example, a simple gdb port configure script blocks on checking whether compiler driver understands Ada and in a few seconds makes the system completely unusable.
As far as desktop is concerned, Flash support is also a big problem, but we all know that Flash is going to disappear (and many of us wish this would happen as soon as possible) and it's disappointing that fundamental web services as Deezer or Spotify still rely on it.
A major issue the FreeBSD (kernel) developers should face is evident when I read the forums.
What comes out is a very conservative attitude towards what is new, a general and often unjustified skepticism towards solutions that Linux has implemented since ages. They have made it look ahead to the future and gain the market in embedded solutions and, most of all, in the mobile world.
I deem there's a huge work by the FreeBSD software developers in order to keep the packages and ports up to date and aligned with the most trending applications (I mostly refer to desktop, which is the topic of my discussion). This monumental work is not backed up by enough insight into future by low level software developers that, being so strict, hinder the potentialities and advancements of modern software.
Even if I acknowledge that probably desktop environment is no more the biggest interest in computer science, it is still a good showcase for users and programmers that want to move from a system to a faster and more reliable one. Most importantly, this is when the system offers a source based software distribution.
As should stand out, what I'm saying is not meant to be a critic, it's rather a sad consideration of that it's probably too late for FreeBSD to keep up with Linux, which has been making giant steps in the last years.
I am a C/C++ Python and Java developer at the Elettra Synchrotron Radiation Facility in Trieste, Italy.
For the control system we use and produce open source software, and we develop under linux.
I have been a fan of FreeBSD since my laurea degree thesis back in 2004.
To cope with work necessities, I normally develop under gentoo linux, but at intervals I go back to FreeBSD for some time just to revise it and see how its development goes on and what is the user experience also on the desktop side. Actually, for me it's quite equivalent to develop either on linux or freebsd.
So, I've recently switched back to FreeBSD 11 and these are my impressions, and the difficulties I've met as both a developer and a desktop user.
Gentoo Linux is a source based linux distribution, so there is perfect analogy when dealing with gentoo portage and FreeBSD software managed with ports.
Since Linux has introduced cgroups and systemd, the world has changed: i can do multiple make -j9 inside several shells (building packages and work stuff) without noticing any slow down in desktop interaction. This is an achievement that once you get used to, you can't live without.
Additionally, if an application goes crazy and tries to eat up all CPU resources, you simply don't notice any lag elsewhere. I asked around in FreeBSD forums, the only suggestions were to use limits or nice. Apart that limits kills the process, it is clear that those solutions are not up to the task.
This adds up to other issues caused by not easy trackable processes being executed in the environment and eating up too many resources. Last weekend, I left the computer running, as usual, and when I got back the system was extremely slow. Chromium tabs were all gone blank, and switching from one to another took up to 5-6 seconds to display the contents of the web pages that had originally been loaded. Only after killing a bunch of other applications (skype, firefox), situation got back to normality. Another example, a simple gdb port configure script blocks on checking whether compiler driver understands Ada and in a few seconds makes the system completely unusable.
As far as desktop is concerned, Flash support is also a big problem, but we all know that Flash is going to disappear (and many of us wish this would happen as soon as possible) and it's disappointing that fundamental web services as Deezer or Spotify still rely on it.
A major issue the FreeBSD (kernel) developers should face is evident when I read the forums.
What comes out is a very conservative attitude towards what is new, a general and often unjustified skepticism towards solutions that Linux has implemented since ages. They have made it look ahead to the future and gain the market in embedded solutions and, most of all, in the mobile world.
I deem there's a huge work by the FreeBSD software developers in order to keep the packages and ports up to date and aligned with the most trending applications (I mostly refer to desktop, which is the topic of my discussion). This monumental work is not backed up by enough insight into future by low level software developers that, being so strict, hinder the potentialities and advancements of modern software.
Even if I acknowledge that probably desktop environment is no more the biggest interest in computer science, it is still a good showcase for users and programmers that want to move from a system to a faster and more reliable one. Most importantly, this is when the system offers a source based software distribution.
As should stand out, what I'm saying is not meant to be a critic, it's rather a sad consideration of that it's probably too late for FreeBSD to keep up with Linux, which has been making giant steps in the last years.