There is no silver bullet =============================== The other day I had a chat on IRC aout text editors with other sundogs. That has always been a mine field, but I was surprised to see that my editor choices where somehow considered "unusual". Some other sundogs have indulged in discussions about programming languages, and I guess their reaction to my "preferred programming language" would be of the same kind. If you expect me to take any side on the Emacs vs vim war, you will be disappointed: I regularly use emacs(1), vim(1) (or a few other vi(1) flavours and clones) and ed(1). I actually learned the basic vi(1) commands at the same time I learned the basic Unix commands, and in the same way, i.e., by reading again and again an introductory book on Unix, 3 or 4 years before I had the chance to sit in front of a Unix console for the first time and try out what I had learned. Then I started using GNU/Emacs (but I used also the Lucid one), mainly for programming and text production (LaTeX), and I ended up using it also for task and calendar management (org-mode). I use vi/vim for some programming and for config files and/or small edits. Later on, I started to appreciate the simplicity and essential power of ed(1) for small edits, scripting, and for simple todo-list management, but also for some basic programming. Each of these editors has its own pros and cons, and each of them shines in something at which the other ones can barely cope. The rest is mostly personal preference. I think pretty much the same holds for programming languages. I have seen holy wars unfolding on Perl-vs-Python, C++-vs-Java, go-vs-rust, Haskell-vs-OCaml, C-vs-... well C is a story on its own, and these kind of comparisons are pretty pointless anyway :) And you know what? I regularly end up using several programming languages at the same time, since none of them is good for everything (there are exceptions to this rule, meaning that I think some of them are good at basically nothing, but that's another story). I have written sizeable amounts of code in C, Python, golang, Perl, Lisp, Scheme, Haskell, Erlang, C++, PHP, Java, Tcl/Tk, and POSIX shell (and I don't include here the early stuff I did in FORTRAN and BASIC and the task-specific languages in R, Maxima, Octave...), but I would not esclusively choose any of them for my daily stuff. Each has its own strengths and issues, and can offer something that the others can't: execution speed, development time, code readability, expressivity, compactness. To be honest, I forgot over time what Java, PHP and C++ have to offer, except of bloat, but that's a rant for another phlog post... Well, the point is that there is probably no "silver bullet". I actually think that looking for one, or believing that you have found it, is the best way to preclude yourself from good discoveries and some great fun. -+-+-+- P.S.: If you really want to exile me to a digitally-deserted island, just please give me access to an i486 with tomsrtbt [1] and tcc [2]. That'd be more than enough :P [1] http://www.toms.net/rb/ [2] https://bellard.org/tcc/