I’d like to share some of my favorite programs, because maybe you haven’t heard of them, or maybe you have but don’t know some reasons to like them. Unless I say otherwise, you can assume these programs are open source, cross platform, free, and have portable (no installer) versions. I’ve omitted links because I don’t want to have to keep updating them. If Google search doesn’t return what I’m talking about as the first result when you provide just the name as a keyword, I’ll say which keywords do.
Why is it important that programs are open source? Because they will survive. Original developer goes bankrupt? Anyone (you!) can take it on.
Why is it important that programs are cross platform? Because then you can still use them, even when you are forced to switch OSes because of a job, or because you won a Mac Mini, or because a new OS came out and beat every other one into the ground, or whatever circumstances you can’t control.
Why is it important that programs are free? Because it means you don’t have to spend money on it or pirate it. The gap between a free program and its paid counterpart is generally in places you don’t know about unless you’re very good at this particular thing. If that’s the case, I trust you to get the right program for your own needs.
Why is it important that programs are portable? So when you reformat, you don’t have to reinstall every single program. Because installers wreck computers. They slow down boot times. They are messing with sensitive parts of your computer. If you think you don’t understand your computer and are afraid to break it, imagine how a clockwork installer feels. True, whatever amalgamation of knowledge from various people created the installer understood your computer at some point, but your computer changes over time.
Atom
A hackable text editor. Hackable means something like open source software where you don’t have to do much to try out some code in the software itself and the community is approachable. If I knew of any other software that was hackable, I’d replace the open source requirement.
Audacity
For analyzing and editing audio.
AutoHotKey
Windows only, it works well enough up to Windows 7 for sure, I think other OSes have similar programs which are worth looking into. Do you like the keyboard? Do you like the mouse? Do you like redefining what they do so you can do so much more with them so much faster? Do you hate the caps lock key? I turned mine off. Do you hate F1 because it loads a help service and you never load the help service anymore? I turned mine off. Do you wish the start menu was faster? I made a script that accepts 4 letter key codes and runs the correct program. Do you wish you could record a macro and play it back anywhere in Windows? Do you wish an older program knew that the mouse wheel meant zoom in and zoom out? I remapped my wheel to the keyboard equivalents of zoom in and zoom out for one such program. Do you wish you could run programs at startup so you don’t have to refill your start folder every time your reformat? Do you wish you could hold a button that made j and k work like they do in vi so you don’t have to move your right hand back and forth between typing position and arrow pressing position? Do you want to define your own volume curve and use volume change keys that will be available no matter what keyboard you are using? Do you wish you could disable ctrl-shift-z or ctrl-y when they don’t mean “redo” because it messes up your undo/redo history? All of it. You can do all of it and more with AutoHotKey.
Blender
For 3D rendering.
CMake
CMake is a build tool. It allows you to write one build description and target multiple platforms. It lets you write a build description in text instead of right-clicking through a nest of settings. It’s actually being used, so you can integrate with other projects. It introduces its own language, which it shouldn’t. It’s closed-source. The GNU build system doesn’t work as easily on Windows. Projects that take advantage of Python instead of introducing their own language haven’t caught on yet.
Foobar2000
Windows only. For playing music. There’s a pretty good community of people who write plugins, so if you can think of some function, there’s a plugin that does it. I think these days you can take it for granted, but you can have multiple playlists, each on a different tab. So if I decide I want to hear the Planets symphony, I can create a new playlist, drag in all the movements, play through, and then switch back to my main playlist after. There’s also a “ReplayGain” feature which will add metadata to your playlist so that when your various songs play, you don’t have to keep adjusting your volume so you can hear one song, and not go deaf with the other. It has plugins for a bunch of old file formats from old video games, so you can listen to those too.
FreeMat
An alternative to MATLAB. I haven’t used MATLAB or FreeMat extensively though. Also Wolfram Alpha might replace this in the end.
GIMP
An alternative to Photoshop. Stop pirating Photoshop.
Git
See my post on it.
LMMS
An alternative to Fruity Loops and such. I haven’t used it extensively either, and I think it has a ways to go. But it exists and it can do enough to be worthy of mentioning.
Maxima
An alternative to Maple. That is, it can solve algebraic equations. Again, Wolfram Alpha is another solution.
MuseScore
Musical score writer.
Open Office
Office suite. There’s been some politics or something, and you might want to get LibreOffice instead, or some other branch. I haven’t bothered updating the suite since before the politics, so I don’t know which alternative is best. Maybe it suffices just to say there exist good office suites.
Python
On Windows 10, this loads faster than the calculator and can do more.