Hacker News new | ask | show | jobs
by hhas01 2018 days ago
“but the reality is worse: we have not seen a 10x boost due to all developments combined and in over 30 years”

[citation]?

1 comments

I don't think we even need a citation to refute that.

Have a developer create something modern with technology from 1990. It would be close to impossible. Compared to what was available then, our building blocks are more akin to entire neighborhoods being delivered pre-assembled in order to create instant cities.

There are more libraries for different things, but in the 90s, there was a quite a bit of commercial RAD application builders, and that went out of favor.

So while it is nontrivial to build a web, or any modern (network-connected) application today with 90s tools, I am not entirely convinced that building an application today is easier than it was in the 90s. If anything, I suspect we build more from scratch, or leveraging existing open-source, rather than use prefabricated and commercial RAD tools (which are, and always were, pretty expensive).

Edit: I guess what I want to say, if you compare writing actual "business logic", it is still about as difficult as it was in the 90s. We can do fancier things by leveraging libraries (sometimes included in the programming languages), but that's it. In fact I even suspect that people in the 90s were more productive in writing actual business logic, because there was less distractions from the fancy technology (such as web). And I have seen 30-40 year old applications that nobody wants to rewrite, because their complexity is so high that it would take a long time, and it's not clear to me it would take shorter time to develop them today than it used to.

"I guess what I want to say, if you compare writing actual "business logic", it is still about as difficult as it was in the 90s. We can do fancier things by leveraging libraries (sometimes included in the programming languages), but that's it. In fact I even suspect that people in the 90s were more productive in writing actual business logic, because there was less distractions from the fancy technology (such as web)."

This has been my experience! I'm shocked whenever I need to automate some business process my organization alway starts at ground zero - what should the base technologies languages be? database server? authentication?

Seriously?!?! Why isn't there "workflow as a service" by now?

One simple example that I presented in the other comments: maps. I don't think we ever had (or that it was even possible in a non-networked/poorly networked world) commercial components for maps even remotely close to what services like Google Maps offer.

Similar thing for many tools and services we just take for granted these days (NLP, sentiment analysis, entire game engines, etc.).

The business logic was easier to write in 1990 because the scope was much smaller and the tools much more constrained. But our modern tools are 1000x more powerful, therefore harder to master, true.

I'm seeing that AutoRoute, which eventually became the basis of Microsoft Streets and Trips was first released in 1988.

It certainly didn't have real time traffic, and probably didn't have lane configuration information, or comprehensive business information, etc. But (from descriptions, not personal experience), it showed maps and did routing.

More complex mapping tasks are readily achievable now because more information is computerized and the demand is there, and the portable computing machinery to make it most useful is there.

> One simple example that I presented in the other comments: maps. I don't think we ever had (or that it was even possible in a non-networked/poorly networked world) commercial components for maps even remotely close to what services like Google Maps offer.

Maps are inherently nothing new, instead of a google search, I'd go to my local library and buy a physical map. No need for 3D rendered vector processing over an interconnected network.

When I think about 1990, I was still using unix, I was still using emacs to write code, was still writing SQL to work with relational databases. Sure the web wasn't really a thing yet, but all the fundamentals were there. The concept wasn't new; we had hypertext and interconnected networks. I don't know enough about deep learning to say whether the concepts were unknown then or just waiting on computing speed to catch up. AI research was certainly well underway long before 1990.

At least for the work I do, I don't think much has fundamentally changed since 1990. Convenience and speed is way higher, yes. Storage and processing power is immensely cheaper. And obviously we've got 30 more years of development of things we can build upon. But I think if a good developer from 1990 could be teleported to today, he'd be productive with today's technology in short order.

That minimizes all the building blocks we've built meanwhile.

The human writing the code will write about as much code today as they wrote in 1990, true. But as I commented elsewhere, the building blocks we have now would boggle the mind of a developer in 1990.

We have complete game engines, with scripting languages included, physics, advanced graphics and a myriad of things I don't even know, that you can actually use for free now.

We have maps that cover the world, with distance estimations, navigation instructions, street views of every street, etc., that a 12 year old can integrate on their website.

A developer in 1990 would be very productive today, yes. But that's because of everything that has been build in these 30 years. With the tools he had in 1990, his output would be meager by modern standards.

People didn't have the modern tools easily creating very slow programs 30 years ago, but I'd argue that it was because those tools weren't useful to them since their programs had the requirement that they need to run on machines with 10 mhz processors (with way less work done per cycle, no branch prediction etc). So most of those "productivity enhancements" comes from hardware being so fast that you no longer have to care about things.

And no, a game engine like Unreal isn't performant, it wastes a ton of ram and cpu on bookkeeping. It is a small fraction of a modern computer but back then you'd rather have all the resources instead of wasting a huge amount of them.

Well, wait a minute, which part? Commercially available microprocessors back then weren't fast enough to render 3D graphics the way they can today, but otherwise, most of what we do today was perfectly achievable then: if anything, UIs have declined since then because we're putting everything on the web (for pragmatic reasons) rather than writing custom desktop applications.
I've of the opinion that anything that was possible 20 years ago should be imperceptibly fast today, unless there is a fundamental physics limitation (e.g. speed of electric signals limiting real-time applications across large distances). Displaying a GUI, opening a file, listing contents of a directory. When the hardware has improved by several orders of magnitude, there is no excuse for being as slow as it was 20 years ago, let alone slower.
Screens have arbitrary resolution and dimensions these days and they range all the way down to a small phone.

Our state of the art (web) is still evolving towards better solutions to address that. Software in 1990 targeted a couple fixed dimensions and only for a single OS and a desktop input device.

Look at some of the cloud offerings and thing about how long it would take to implement those things from scratch with things available in 1990. Stuff like NLP or Maps.

Back then if you wanted to put a map on your website is was probably impossible. Now it's a widget a 12 year old can put on their website.

Well, he said 1990... there were no websites in 1990. I definitely agree with OP that the stuff that we do on the web today would have been impossible even in 1995 when the web was at least available, but that's because browsers were limited, not because programming was limited. In terms of programming, nearly everything that is done today could be programmed back then using the tools available, we're just dealing with larger volumes and higher latencies today.
Browsers were quite limited until HTML 5 without using plugins like Flash or Java Applets. And those didn't exist until the mid to late 90s.