21 ms·
Programming is so much more fun and awesome now. Everyone has a computer, and has their computer on them 24 hours a day. Whether it's a website or a mobile app,
by numair 10y ago
Programming is so much more fun and awesome now. Everyone has a computer, and has their computer on them 24 hours a day. Whether it's a website or a mobile app, you're able to immediately get things in the hands of your "normal" friends and see what they think.
The development side of things are also better. All of these open-sourced, internet-networked tools/libraries/languages allow you to build really powerful stuff really quickly. Yes, there is a huge quality and maintenance problem, with lots of people writing libraries they instantly abandon, but I think this just forces you to read lots of source code and become a better programmer.
Build more powerful stuff, faster, and get it in the hands of more people, faster. What a time to be a programmer. The article does a good job of noting the problem of distraction, but I think that has always been an issue, and why we have always seen anti-social traits among lots of successful developers. Tuning out the allure of being young and having mindless fun in the 90s to focus on code is no different from tuning out the allure of being young and having mindless fun today. As for older people, well, it's always been a challenge to be super-focused and dedicate time to learning new things while dealing with household/adult responsibilities.
This is a very special moment as a developer. It is like being in the business of rock 'n roll in the era in which radio and television took off, which made it possible to create music that ended up broadcast around the world within weeks. If you can stay true to the roots of the code, and avoid all of the weird get-rich-quick types that have entered the scene, you can have a lot of fun right now.
The past wasn't any better, and the future can't be predicted. The time is now.
- aub3bhat 10y agoThanks for brilliantly putting in to words what I had trouble trying to communicate these years. I remember learning C++ as a teenager confused by boreland manuals and meaning of obscure terms like "file handle" and cryptic errors. Now all it takes in right click + inspect element to open a JS console. This is just the beginning.
- JustSomeNobody 10y agoThat, to me, is what made coding more fun. You _couldn't_ simply click something. You had to try and fail and try and fail. The late 80's, early 90's were much more fun programming than today. There wasn't 20 layers of abstraction between the developer and the machine. You had to code against the metal, so to speak.
- girvo 10y ago> You had to code against the metal, so to speak These days, you can actually code the metal itself (so to speak) with easily and cheaply available FPGAs! That to me is even more exciting, certainly a lot of fun, and at least I've been doing a lot of trying and failing with it.
- sklogic 10y agoYou can do it as a hobby, yes. But if it is your job, you'll still have to navigate your way through impenetrable piles of convoluted needless layers. Not to mention the awful closed-source toolchains.
- aub3bhat 10y agoI think I view programming as mental abstractions in action, or to put as Steve Jobs did bicycles for the mind. https://youtu.be/ob_GX50Za6c https://youtu.be/ob_GX50Za6c
- joe_the_user 10y agoOne more thing that's awesome about today is that this is the first time a really wide selection of CS papers has been available. I think even six years ago, you needed a university library to effectively scan papers. Now, I can combine Google and Google-scholar and make a quick sweep of a whole variety of obscure or not-obscure theories and algorithms.
- sklogic 10y agoI would not say coding is more fun today. There is more stuff available, true, but the quality of documentation is abysmal compared to what we used to have before. Also, far more needless layers in between hardware and your code. It is annoying. I want to go back to my cosy VAX/VMS environment.
- bluedino 10y ago>> but the quality of documentation is abysmal compared to what we used to have It is, however, more accessible and easily searchable. And also basically free. Many programmers have never bought or own a book related to programming - they learned from all online sources. >> layers in between hardware and your code. It is annoying. But it's so much more convenient. In the old days you had to learn all about your graphics card, your printer, your sound card, you'd need a certain driver for your modem or network card... Now everything is abstracted and easy to use.
- mathgeek 10y ago> Many programmers have never bought or own a book related to programming - they learned from all online sources. I wonder what the effect of this has been on overall quality of code for this subset. I know that while I've learned more from online sources than books (whether physical or electronic), the lessons I have learned from books are overall above the average quality of all my sources.
- nilved 10y agoI highly doubt there is any difference, since the only difference is the medium. If a book is published online, it's still a book.
- andrew3726 10y agoI think you're missing the point. It's not about electronic book vs physical book (If I misunterstood you, sorry and dismiss this post). It's more about the sources on the internet, I don't know many people who read complete books on the computer but rather just read relevant sections somewhere online. While this isn't bad per se, you often miss important details due to different sources (and therefore different views/reader assumptions, ...).
- laumars 10y agoI don't disagree with your arguments about how much more accessible programming is now. However I do disagree with your opening sentence: > "Programming is so much more fun and awesome now." Things are certainly easier, but a lot of the fun used to come from the reward of achieving something difficult. And the awesomeness would be discovering a new technique - or even simply a hack - that could optimise your routines in ways that you never previously thought possible. That's not to say I don't still enjoy programming. But it's a very different experience: enjoyable and awesome in different ways. However on the whole, it now feels less like I'm performing magic and more like I'm building flat-pack furniture (or maybe a kit car if I'm building something a little more bare-metal and/or writing my own APIs).
- amelius 10y agoYes, programming is a lot like plumbing nowadays. It is more about connecting existing pieces, than it is about inventing new stuff. If you are looking for more interesting things, then try scientific computing, or work on new programming languages. But don't expect to make a lot of money.
- ACow_Adonis 10y agoSadly/Awesomely spot on :P The thing that really got me into programming, and which I still enjoy about it, is being able to reason and design about code. Understanding the parts, why this happened, the patterns, connections, implications. Building up and reasoning from first principals. Its why I enjoy optimisation, algorithms, explicitly working with read-compile-run cycles and meta-programs, how data is laid out and stored and moved, and what must be mechanically/logically happening in any process. A lot of "modern" programming seems a bit of a nightmare to me to be honest. Plugging together a bunch of poorly implemented, exception-ridden, "never really sure its working but not throwing an error yet..." Numeric and science and performance based computing and language work...much nicer there... now if only there were some local employers wanting that and not marketing/web/mobile-apps....
- RodericDay 10y ago
- deleted 10y ago[deleted]
- pin9999 10y ago> you're able to immediately get things in the hands of your "normal" friends and see what they think. A friend of mine teaches kids how to code. Kids get really excited when they see apps they made actually work on their own phones.
- girvo 10y ago> you can have a lot of fun right now Can't say anything about beforehand, but I know I'm certainly having a hell of a lot of fun programming now. What a time to be alive, and I mean that!
- geophile 10y agoProgramming is far less fun now, and more painful than it used to be: stupid management practices (agile, scrum, ...), broken and poorly documented 3rd party libraries, code reviews, pair programming, politically correct unit tests, it goes on and on. Check my previous HN postings for rants, if you'd like. It used to be that your computer had a compiler, and editor, and a shell, and you would go to work, writing code. Now, in the age of programming by google, you are left with the much duller task of gluing together other pieces of code. It's boring, and there are so many distractions -- the ones noted above, as well as Facebook, Buzzfeed, etc. Now there is one other thing that's going on. Most of us are working pretty high up the stack. I suspect that if you are working on low-level algorithms (for AI, database internals, DSP, ...) that programming remains a fun activity.
- 50CNT 10y agoFacebook and Buzzfeed sound like awfully solvable problems. Just install Leechblock and set a block for them during work hours. The rest sounds like mis-management issues, which I think has more to do with lack of analysis than programming itself. Porting Agile or Scrum to an organization and not checking whether that port breaks things is absolutely insane, but it seems par for the course nowadays (imagine how much shit a sysadmin would get for setting up Apache and his setup refused all requests...ah well). Same goes for pair programming. Does it work better than the alternative? Yes? Great. No? Knock it off then. What are PC unit tests? Code reviews seem like a great thing IFF they work properly. Proofreading, style compliance, teaching, catching errors, etc. If none of those things happen, they are pointless. Might as well swap the company cars with wheel-less Tesla's or something. It just sounds like you've got the management equivalent of a bad sysadmin going.
- at-fates-hands 10y ago>>> same goes for pair programming. Does it work better than the alternative? Yes? Great. No? Knock it off then. I've worked at small and large companies and I've had the same experience with pair programming. It's done as a means to supplant actual, formal training. It's utilized as a shortcut to get a dev vaguely familiar with the architecture of your system and do rudimentary tasks so they can jump in and start working in a day or so. The painful downside of not adequately training your developers is tasks take longer, other more experienced devs are sapped by helping other devs who continually ask them questions and keep them from getting their stuff done because they can't find something, or simply don't know the proper process. I've been on both sides and seems like proper training is really a thing of the past. No company wants to invest the time in their developers to give them the tools and knowledge to really do their job well. As a replacement, you get "pair programming" as a substitute to proper training program. And yes, I know this isn't the point of pair programming at all. But lately (last three years or so), this is how the companies I've worked at use it. The ironic thing is several of the companies I worked at had a two to three week sales training which culminated in a test to make sure you knew the companies products inside and out. Developers? Maybe a lunch with a lead dev, or a twenty minute whiteboard explanation about their system architecture.
- edpichler 10y ago"What a time to be a programmer." Yes, what a time! I imagine next years, and I wonder how much still better it shall be. Great times are coming.
- vox_mollis 10y agoAnecdata: I am far, far, far more mentally lazy as a consequence of Google and modern toolchains than I was with EDLIN, MASM, and the Purple 8086 Book. In terms of raw productivity, sure, I produce more. But personal satisfaction and self-esteem is far lower, and nostalgia and ennui are high.