TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: What has changed for developers in the last 20 years

16 pointsby mukundmohanabout 10 years ago
I&#x27;d love you know your thoughts on what&#x27;s changed for developers in the last 20 years. 1. We moved from client apps to web apps to mobile apps. 2. Client server apps were for work and now there&#x27;s a lot more &quot;consumers&quot; using apps 3. Hence, design and simplicity have become important. 4. We went from waterfall to agile programming. 5. There&#x27;s a huge proliferation of &quot;stacks&quot; and &quot;fragmentation&quot; of languages for specialized tasks.<p>What other trends do you see?

9 comments

codeonfireabout 10 years ago
Software development has been turned into a ridiculous contest rather than a job or profession. Twenty years ago you would go to college, work on some projects, meet with some companies in your town and get a job and maybe work on fighter jets or banking software. Now you go to a three week web dev boot camp, read cracking the code interview books, compete with hundreds of other people from around the world to solve a math&#x2F;programming riddle&#x2F;problem for the chance to make $150k&#x2F;yr.<p>It&#x27;s not about the work or profession any more. It&#x27;s about people trying to optimize the shortest path to $150k&#x2F;yr and has a certain game show feel to the industry. No one has any idea what they would be doing at the job. Many places don&#x27;t even put you on a team immediately, and there is a sense that nothing else matters in the workplace&#x2F;contest other than those skills used to &#x27;crack&#x27; the interview. Degrees don&#x27;t matter, and there&#x27;s no industry or work to be done outside of web or mobile app development either.<p>Imagine today if mechanical engineering was solely focused on not designing, but making specific types of flanges. People would go to a flange boot camp then read &#x27;cracking the flange making interview.&#x27; They would interview where they would sit at a lathe and make an honest-to-god flange. If it were a good flange you&#x27;d get a call back and a $100k salary with 50k in stock over three years to make flanges. You&#x27;d start making flanges on Monday. One day you ask yourself &quot;why are we making flanges again? Aren&#x27;t machinists supposed to be making the parts? Why are we not developing new CFD techniques or new packages for structural stress analysis?&quot; Oh yeah, venture capital is only funding flange making.
adventuredabout 10 years ago
I&#x27;ve been building for the Web since 1995.<p>Databases for web services used to really suck back in the 1995&#x2F;2000 time frame. They were either difficult to use, or very expensive. MySQL gradually killed the bottom 2&#x2F;3 of the commercial database market between ~1998 and ~2005 or so.<p>Simple interactivity on sites is incredibly easy now. Applets and Shockwave were horrible, due to performance issues (systems and browsers), general bugginess, and lack of consistent support.<p>RAM and storage used to be really, really expensive. When Excite wanted to test out how well the first version of their search engine could scale, they paid $10,000 for a 10gb hard drive (purchased by Vinod Khosla).<p>Using, controlling and embedding media on sites is almost an afterthought now, it&#x27;s so easy. Real Media was satan.<p>Search was really bad until Google put AltaVista &amp; Co out of their misery. Search spam ruled the day. The notion of just punching in a problem and finding a solution on Stack Overflow, ha.<p>Ten years ago, 20-50kb still mattered when loading a site. Developers no longer need to obsess about the size of their site assets (rather, more on how many and latency), unless they&#x27;re getting really crazy about it.<p>Language options are so much better today than in 1995&#x2F;2000. You can now choose from numerous good options, pick whichever one works best for you, and you can be confident that so long as you use it optimally, you&#x27;re unlikely to run into big problems unless you&#x27;re dealing with hyper scale services.<p>Collaboration capabilities are... well, <i>drastically</i> better now. Github, Slack, really easy and cheap video conferencing, large file storage &amp; sharing, sites like Stack Exchange, social networks, and so on.<p>Bandwidth is dirt cheap; that doesn&#x27;t really need an elaboration.<p>The countless cloud services have made prototyping &#x2F; testing super cheap.<p>The rise of the internet service API, following fairly standardized approaches, has made interfacing with vast amounts of data very easy, very precise and very cheap.
评论 #9519099 未加载
klsabout 10 years ago
One of the biggest changes is the dissemination of information about programming. Ask any developer from the 80&#x27;s or 90&#x27;s about the trip to Borders or Barns &amp; Nobels and you will see a smile of nostalgia cross their face. Books used to be how one learned to program or learned new technologies. I remember owning a well worn Javascript Bible that was used by 8 or 9 programmers in the office as reference back when JS was new. Many developers spent several hours on the weekend at the bookstore pouring over programming books. Now with high speed Internet, video tutorials have trumped books for learning new tech. I really miss that experience.
评论 #9519085 未加载
评论 #9519112 未加载
MrTonyDabout 10 years ago
I think the biggest change has been the loss of autonomy in development work. When I started programming the programmers were viewed as &quot;professionals&quot; who made decisions about when, how, and what they did. It was much more egalitarian - and not just for managers. Now I think that programmers need the same protections that blue collar workers used to need - hours, overtime, vacations, equipment, and an effective way to give feedback into a system which no longer treats them as true professionals.
MalcolmDiggsabout 10 years ago
I can&#x27;t speak on the whole 20 years (I&#x27;ve only been in the industry for 12 years). But, at any rate:<p>The largest change I&#x27;ve noticed is the level of accessibility that programming has now. When I got started there were &quot;Web Designers&quot; who worked mostly in Photoshop and static HTML, and there were &quot;programmers&quot; who did <i>something</i> else, on special machines, with special training, but it was completely beyond the grasp of us mere mortals.<p>Nowadays programming is not something you <i>need</i> a degree or certification for, it&#x27;s not something you <i>need</i> rigorous training for, or special equipment for, it&#x27;s just something you can pick up if you feel like it (and get a taste for with little commitment or money or time spent). That&#x27;s a huge change to me, and I think it&#x27;s for the best. In this decade, we&#x27;re seeing the definition of &quot;literacy&quot; expand, to include things like reading and writing programming languages...which is awesome!
评论 #9518368 未加载
ridiculous_fishabout 10 years ago
I got started seriously around 1998, when I bought (bought!) a C++ compiler, the CodeWarrior Discover Programming Starter Kit [1], for the low low price of $79. Metrowerks achieved this amazing price by forbidding distribution of any software built with this compiler.<p>Two years later I was rocking with Project Builder, which came with OS X Public Beta - at no extra cost! I credit the release of OS X, and the huge usability advances in Linux, for making the GNU toolset accessible to hobbyists and students. This barrier lowering is what enabled the Cambrian Explosion of programming languages we enjoy today.<p>1: <a href="http:&#x2F;&#x2F;www.macworld.com&#x2F;article&#x2F;1014313&#x2F;19reviewscodewarrior.html" rel="nofollow">http:&#x2F;&#x2F;www.macworld.com&#x2F;article&#x2F;1014313&#x2F;19reviewscodewarrior...</a>
matt_sabout 10 years ago
The big changes are in the frameworks&#x2F;libraries, collaboration tools, information availability and pure computational power. All the other stuff is the same really. Agile and waterfall are still being used, client, mobile and web are still used, mainframe too.<p>From my perspective it is the collaboration and depth of answers you can find online now. When I was programming 20 years ago I was in college and &quot;the web&quot; really didn&#x27;t exist - there was email and networks, etc. but web browsing hadn&#x27;t really begun mainstream yet. When I needed to learn something I had to find a book on it or actually attend a class - like programming EJB&#x27;s in J2EE.<p>An example about frameworks&#x2F;libraries: building web applications was very different since you had Netscape and IE (v4) supporting different and overlapping HTML, CSS and JS features. MVC and all the frameworks out now were really in their infancy or didn&#x27;t exist 20 years ago. I was doing CGI scripts with Perl for some apps and there was a lot of heavy lifting compared to today.<p>Today you can probably have a scaffold&#x2F;basic application (thinking in Rails) that is OS and device independent with something like bootstrap, running on a VM, on the internet in about a hour. So it&#x27;s much quicker to get to the point where you start adding value rather then spending enormous amounts of time on basic infrastructure.
RogerLabout 10 years ago
I disagree with the waterfall-&gt;agile thing. There are a large number of development paradigms, and back then I was mostly doing some sort of Rapid development (not sure the term was in use right then, but the concept sure was).<p>This may not matter to a lot of you, but computation has made a huge difference. I can run nonlinear solvers in seconds instead of hours. I have ready access to things like NumPy and SciPy to very quickly explore data in a way that used to require a supercomputer.<p>hardware = this is partly covered by &#x27;computation&#x27; but the kind of work I do would have been impossible back then. We generate 10+ terabytes of data a day, and that is laughably small to some of you. some more from hardware...<p>bits. Anyone remember trying to fit things in 32K? You know, because integers were 16 bits long, and so were pointers. It was a major chore to just sort or otherwise manipulate data, and I made some significant wins by being clever about this sort of thing rather than just saying &#x27;eff it, use a database&#x27; (which is what my competitors did).<p>5 minute compiles for rather small applications.<p>Sneakernet.<p>minimal version control. A lot of people didn&#x27;t know what it was.<p>Off the hardware front, you mostly had the ability to understand your &#x27;stack&#x27; (that word wasn&#x27;t used that way in those days). You could more of less know the Windows API, inspect the assembly coming off of your C compiler, read the standard library, and pretty much have a picture of what is going on. These days it is much harder.<p>To put some of this in context. My first job, in 1988, consisted of computing cancer statistics. I&#x27;d carefully write a batch job. It&#x27;d go off to a supercomputer center. There, operators would (eventually) pull tapes off the racks and insert them into the tape reader. The job would run (eventually). The job would print to printers. A van would make runs several times during the day, delivering print outs. I&#x27;d go check the bins, eventually my print out would show up. And so on. Part of my work was converting that to the PC, but we still had to do a lot of batch runs to massage the &quot;huge&quot; data inputs that the PC couldn&#x27;t realistically handle. By &#x27;95 the situation re data handling was better, but still quite limited both in storage and computational capacity.<p>These days we can trivially handle pretty big problems on a PC. And if we can&#x27;t handle a problem, well, there is AWS. It is just a different world in this regard.
imakesnowflakesabout 10 years ago
Ability to run multiple Virtual machines, a working hibernation feature in commonly used operating systems and popularization of Distributed version control systems...