5 ms·
Wow. I'm a college student, but I still feel like a kid. This seems to pretty much sum up every reason I decided not to study computer science and make a career
by andars 11y ago
Wow. I'm a college student, but I still feel like a kid. This seems to pretty much sum up every reason I decided not to study computer science and make a career as a developer. I love computing, but I have just gotten tired of the billions of js frameworks and wars about how everything anyone tries to do is wrong. Little printf strikes too close to home. This is a fantastic piece of writing.
- nostrademons 11y agoYou can ignore all that and still make a career as a developer. I started out as a physics major, largely because I didn't want to lock myself into a practical career at the beginning of college. Spent most of my college career avoiding my physics homework by learning lambda calculus, and Haskell, and compiler design, and all of the impractical side of computing. When it came to get a job, I dusted off my Java and got a job in a financial software startup. Left it after two years after discovering that I hated finance but actually liked both software and startups. I've made more tech switches than I can count since, but it's always "Well, what do I need to know to get a job that will pay me and give me interesting challenges?" rather than "What do I need to know?" You can choose to avoid all the language/framework/editor wars about which is better. None of them are better; it's just some are better for certain circumstances.
- andars 11y agoThe first part of your experience sounds very similar :). Thanks for sharing it.
- 0942v8653 11y ago> the billions of js frameworks and wars about how everything anyone tries to do is wrong IMO... This isn't universal. HN is one of the places where it is the worst. I probably wouldn't be fighting with Go right now if it weren't for HN; I'd probably be using Java. Staying up to date isn't really as important as it appears. There are people having successful careers with COBOL right now, and while that may not be where you want to go, switching between JS frameworks does not sound any better. And you can basically ignore the JS frameworks. They don't matter. Because of HN I switched from TextMate to Sublime Text to Emacs to Vim. What did I get out of it? Not a thing. Maybe I can type a little faster when I am in vim. But mostly I just get annoyed when the rest of the OS doesn't support the shortcuts that I am now used to. I switched from Mac to Linux to Mac. I got nothing out of it, except that now I get more annoyed when I can't do something on my Mac that I was able to do on Linux. Don't do what I did. I think it's completely possible to be a developer without all this, as long as you can recognize when you are wasting your time.
- cicero 11y agoOne of the most cheerful people I met was a guy on the commuter train about ten years ago poring over a greenbar fanfold[1] listing of COBOL code used in a gas station point-of-sale backend. I asked him about it, and he enthusiastically told me about what he was working on and how a problem had developed over night that he was going in to work on. It made me realize that software development doesn't have to be bleeding-edge to be interesting. Indeed, I thought the stability of an established COBOL ecosystem might be refreshing. 1: https://en.wikipedia.org/wiki/Continuous_stationery https://en.wikipedia.org/wiki/Continuous_stationery
- andars 11y ago"Don't do what I did" Unfortunately, you're a few years too late... I switched from TextWrangler to vim to TextMate to atom to emacs to vim. Totally pointless and stupid (of me) in retrospect. Same thing again with web. I'm finally learning to ignore the shiny but it seems like everyone I see/meet (both online and in person) are only interested in the backwards-incompatible new release of Express 17.0 for NodeJS, now with ES7 features. Thanks for your response. Looking back and moving forward, I guess.
- kbenson 11y agoEmacs to vim boggles my mind. I mean, I've been a vim die-hard for decades now, but I'm not sure there's a compelling reason to switch from emacs to vim or vice-versa. To my mind they are pretty much equivalent feature wise.
- 0942v8653 11y agoWhen I switched from emacs to vim, I was looking for something that 1. starts up fast - I used emacsclient but that got to be sort of a headache, and still did not start up as instantly as Vim does 2. Better keybindings - I would have used evil-mode but I felt at the time that it would be better to use actual vim. 3. Runs in a terminal window - Absolute necessity, so my only real choices were emacs and vim. I liked the workflow I had with `emacs *.py` or whatever I was doing but I thought at the time that vim would better support it. A friend actually pushed me into using vim, which is funny because he uses the arrow keys with it... I got used to vim way quicker than I expected to, mostly because it was the only editor I installed at all (I switched from emacs to vim at the same time I switched from mac to linux) Of course i do not recommend you switch between them but those were my reasons at the time.
- thothamon 11y agoThe real value of an engineer is 10 or 20 percent in what frameworks they know, but 80 or 90 percent in what they can learn. That's especially true in today's embarrassment of riches world in which no one could possibly learn everything. It's really a great time to be in software, despite the problems. The world runs on software and this will only be more true in the future. You don't have to hit one of the pitfalls in the story. After all, printf himself ended up as a happy programmer with a human face. If you love programming and you can stay focused on doing what you love, then no matter what else happens, you win. And if you don't enjoy what you're doing, then you lose, no matter what kind of paycheck you take home.
- MichaelGG 11y agoExactly. Some of the best folks I've hired or worked with had no experience with the framework/language we ended up using. Knowing fundamentals is far more important. This is also why managers that pick languages based on "hireability" are wrong for the most part. In any non trivial system, learning the domain and existing codebase will dominate the time to learn a new language. It's a nice bonus to have experience with a certain piece of tech, and for baby apps that might be the most important thing. But not for real systems.
- wwweston 11y ago> Some of the best folks I've hired or worked with had no experience with the framework/language we ended up using. Knowing fundamentals is far more important. This is what we want to be true. It's not how 90+% of job listings are written, and I'm not sure it's how we hire. Even if we addressed that problem, it'd still only be true at a close approximation: once a framework/lib/language becomes leaky enough, or has enough of a mismatch between its natural invocation and the problem domain, or carries enough of a culture of The Right Way To Do It™, then it's true that experience with the tool matters... as long as the org is more invested in the tool than a solution that doesn't have those problems, knowing the tool's foibles and practices remains important.
- nostrademons 11y ago
- qudat 11y agoSoftware development is all about solving problems and developers think they are good at it ... so much so that we try to problem solve the solutions (recursive framework hell). I think what this parable is trying to illustrate is that developers ought to focus on problems "with a human face," ones that don't revolve around solving problems that are caused by software development. JS has a very particular ecosystem and it certainly doesn't describe every other ecosystem in existence today. Basically what I'm saying is if you love solving human problems, software development is an intellectually stimulating and satisfying fields to get into.
- seansmccullough 11y agoI think the Javascript framework of the month fad is a complete waste of time.