A few days ago I was reading a digg story about “Linux developers switching to Eclipse”. Honestly, I tried to use it, but I think the interface it too cluttered and there is a lot of space which could be used to show code. You can switch everything off, but it becomes a pain in the backside to look at two files at the same time. Then again, it is my opinion.
The thing that made me post about this is a comment posted by someone in the history. On it, the user said he couldn’t understand how people could use VIM or Emacs to write code in a “modern era” where there are “several thousand modules” to work with.
Everytime someone say something like this, there is one word that pops in my mind: Unix. Why? Unix was conceived with one thing in mind: let’s build a good bus, so application can talk to each other; that way, we can do apps that do just one thing, but the user can make them work together using the bus.
There, more than 30 years ago, the first real big project, which stays alive today (more like “alive in concept” than code). The idea was to build simple and small things and not “the word processor with a spreadsheet and voice recognition, which can send faxes through wireless”. Well, ok, you can build such word processor, but when you focus on small things at time, building libraries to keep things smaller and reusable (maybe not reusable, maybe just simple). When you do that, you don’t have to focus on “several thousand modules”: you just have one module to focus at time.
Somewhere in the road of software development, we lost the big picture view of things.
In a way, I can relate this to the way the computer industry went. You see, in the very beginning, software was unimportant; the idea was to sell hardware. In that way, because software was not an important piece, people thought, first, how to share it, how to make it “compatible” with other people apps. Then, in the end of the 70s and the beginning of the 80s, software suddenly became a very important piece and it was not more something you should share: you would keep it to you, share your application and make people buy another application from you to talk to other people apps. And then, suddenly, this became the world where everyone wants to write the “word processor with spreadsheet and voice recognition, which can send faxes through wireless”.
I’m not surprised the old guys (Ken Thompson, Dennis Ritchie, Douglas McIlroy) don’t code anymore. This became a fighting zone, not a museum of paintings…