4 ms·
I understand that many people read my essay as if I was trying to judge who is a good programmer and who isn't. That wasn't my intention-- I just wanted to refl
by cool-RR 16y ago
I understand that many people read my essay as if I was trying to judge who is a good programmer and who isn't. That wasn't my intention-- I just wanted to reflect on a problem that good programmers have.
- StavrosK 16y agoThe problem isn't about anything that was in the post, it's simply working on things you don't like. I've never taken a job that wasn't Python (which I love), therefore I never work with technologies I hate. According to you, that makes me a bad programmer. According to me, I can simply afford to turn down jobs I will hate. At this stage in my life, it's simply not worth it to me to work with things I will hate. I'd rather not work at all. You can't even claim I have to work with some technologies I don't like in the stack, because I'm in love with my entire stack. Postgres? I adore it. Python? The love of my life. Redis? I'm amazed whenever I work with it. Varnish? In love with it. AppEngine? Just brilliant. It's great feeling when you hate NOT working because you like what you're doing so much. You need to be careful not to overdo it, but, generally, I love my job. I don't even see it as a job, it's basically a hobby people will pay me for. Disclaimer: This rant may or may not have been relevant to the discussion.
- cool-RR 16y agoI'm a programmer who is very very selective in the technologies I work on, and I'm working on my own open-source project that I'm the only developer of. I can choose whichever technologies I like. But still I have to use technologies and tools that annoy me.
- neilk 16y agoI think you missed the point he was making. His argument is not about good or bad programmers; it's about the nature of programming. He asserts that the "fun" parts of programming tend to be the most regular, and thus an experienced programmer tends to automate them. In other words everything that works disappears into a library. Everything that doesn't work or is too flaky to automate is now front and center. The OP believes working with these things is not fun. I tend to disagree with this though. (see comment elsewhere)
- Stormbringer 16y agoYour essay is a tautology disguised as a morality tale. You define a bad technology as one that can't be automated. And then, those things which can be automated, will be. Automation speeds things up, hence the majority of things left to do are the things that can't be automated. Which you already defined as bad. Hence the majority of things for a programmer to do are 'bad'. ==== Anyway, the thing that leaps out at me as laughably bad is your editor where you have to type in a particular line number. Dude, it's 2011. Even Eclipse (which I despise since it has a truly shitty UI which keeps trying to reduce my coding area to the size of a postage stamp) has a feature where you click on the bug and it takes you to the line that the compiler reported. And it has a nifty feature where it shows which lines are broken.... which has only been in Visual Basic SINCE THE FRIGGIN' EARLY 90s I'm gonna have to assume that you're using Emacs or Vi or some piss-ant command line equivalent. Let me tell you guys, the holy war is over... YOU BOTH LOST! Emacs vs Vi reminds me of the Iran-Iraq war. A war that went on for ages, in a place that nobody cared about, between two groups that nobody cared about, that stagnated and stunted their development, while the rest of the world left them behind.
- cool-RR 16y agoI actually use Wing IDE, which takes me to the offending line automatically. But in some cases you get a traceback through indirect means (e.g. server error log, print statement from a separate process) and then you have to go to the file&line manually.
- Periodic 16y agoI use Vim as my primary editor. I also have been editing mostly Java lately. Vim already has a way to view a list of errors in the file and jump right to any one of them. I believe it's called the location list. Vim is my editor, but my development environment contains many more tools. IDE just stands for integrated development environment. Mine has more of a UNIX philosophy of small tools that work together.
- Stormbringer 16y agoThat's an interesting point. Kind of a Monolithic IDE vs a microkernel IDE argument... Yeah... not so sure I like where this is going... :D