My favorite software
| | 6 minutes | 1222 wordsHere’s a list of software that I have used across my career and which are my favorites.
Some of them were used for work, some of them for personal use, but that’s absolutely not relevant here.
This list is not a ranking of the best software. This is why it is sorted in alphabetical order to not favor one or the other.
Blender
Blender is a free and open source 3D creation suite. I started to use it 15 years ago. I remember at that time, you could even copy it on a floppy disk!.
I discovered this software while I was discovering Linux. At that time, that was the only 3D software available.
I spend days and night learning it. The 3D world was something pretty new for me, I really loved it.
Then I remember I bought the “C-Key” to unlock some features, I went to London to meet the developers team, I remember I was in a cab with Ton Roosendaal, the Blender’s project founder. At that time, my english was not very good !
This is thanks to Blender that I discovered the Python language. I even made some scripts to show the visual result of some algorithms, the bifurcation diagram, the Koch snowflake fractal, the chainette curve, etc etc…
Unfortunately, I rarely use it now :cry: but I still keep the last version on my computer and can still use it, but I forgot a lot.
Desmos
Desmos is an online tool to explore mathematical functions and graphs.
With Desmos you can graph functions, plot data, evaluate equations, explore transformations, and so much more.
It has a nice and clean interface and you can even save your graphs if you log in to your account. This is a great tool for the curious animal that I am when it comes to understand some concepts.
Here’s a list of graphs that I made once to understand the idea behind the theory:
- Dirac distribution
- Poisson distribution
- Gamma function or the factorial as an integral
- Value of Pi under different L(p) metrics
Drupal
Drupal is, according to many, a CMS, but I consider it now, after years of practice, as a framework.
I first registered on Drupal’s site the 24th of January in 2006. I’ve always been in love with photography and I was looking for a solution to have my online photos gallery, as you can see on my first comment on drupal.org.
I tried it… gave up and ended up using something else: Gallery :joy:.
To be honest, at first I was a bit reluctant, I could not see the power of the tool at first, but I knew that there was something that I was not understanding properly.
I wanted to unravel the Drupal’s mystery :satisfied:
The more I was reading success stories about it, the more I was frustrated to not be able to do what I want with it. I gave up, then I tried again… then I reproduced that pattern a couple of times until the release of Drupal 5, where I really started to handle the tool correctly.
Unfortunately, life happened and something that goes with it: work.
My time to play with Drupal was considerably reduced and I lost the track for a couple of years.
I continued to work with it after my hours… until the day a better suited job found me, so to speak… and since then, I work with it almost everyday.
Geogebra
Geogebra is a 2D/3D graphing calculator for functions, geometry, algebra, calculus and statistics.
Online java applet tool, you can use either use the online tool or install it locally.
This tool is in the same category as Desmos.
It has a very nice and huge materials library that you can search and browse.
You can also create and share your material if you sign in.
I’ve also created some examples for you to play with:
- Dirac distribution
- Poisson distribution
- Gamma function or the factorial as an integral
- Value of Pi under different L(p) metrics
- Zeta function
Git
Git is a version control system (VCS) for tracking changes in computer files and coordinating work on those files among multiple people.
It is something amazing. It’s the kind of software that makes you think that it’s powered with black magic inside.
It’s been years that I’m using it almost every single day and it amaze me.
According to me, the best way to learn it is to read a good book and to practice it on the side. Of course there are very good websites to learn it like:
There are many others but your favorite search engine is your friend for that.
Almost all the software I used since I started playing with a computer switched to Git for their development.
Linux
Ok, Linux is not a software, it’s an operating system, I know, but still.
I’m using Linux since more than 15 years now. The first Linux I had was Red Hat 5.2, and I still have the original box :sweat_smile:.
My computer was an IBM i386 with 16MB of RAM. This is where it all began.
I remember at the time where Internet was expensive and not that widespread in Belgium, there were not a lot of instant communication software. With friends, we were using IRC and then later ICQ. I remember I was having a lot of “Connection reset by peer”, it is while asking how to prevent such that I’ve been told about Linux and its security advantages. This is during those conversations about security that I saw the Linux word for the first time.
The curious animal that I was already at that time (and that I am still), started with Red Hat 5.2, then Suse, then Slackware and finally Gentoo.
And since more than 10 years, I’m still a very happy Gentoo user.
I also tested the BSDs but I always ended up using Linux for some practical reasons.
I’m using Linux on my personal laptop and at work. I almost never use any other operating system.
PHPStorm and Pycharm
PHPStorm is a proprietary IDE by Jetbrains.
It’s a bit against my philosophy to use it but I have to say that I haven’t found the equivalent in the open source world.
Of course, there are Eclipse, Atom, Sublime Text, and many others… but they are at lightyears from it.
I use PHPStorm for PHP and Pycharm for Python.
Screen
GNU Screen is a terminal multiplexer, a software application that can be used to multiplex several virtual consoles, allowing a user to access multiple separate login sessions inside a single terminal window, or detach and reattach sessions from a terminal. It is useful for dealing with multiple programs from a command line interface, and for separating programs from the session of the Unix shell that started the program, particularly so a remote process continues running even when the user is disconnected.
I’m using Screen since 2004. It was a bit hard to remember all the shortcuts, but in the end, we always use the same ones.
I mainly use it on remote servers when I need to run tasks and make sure I’ll see their output when I’ll reconnect to the server from another IP.
It’s just a tool you can’t do without it if you’re using Linux.