Hacker News new | past | comments | ask | show | jobs | submit login

So this generation is rewriting everything that was made and working in the 90s. Was everything written in the 90s also a rehash of stuff from the 70s/80s? Just curious, what was the equivalent of HTML/CSS/JS in the 80s?



In a way, yes. If you look at OS interfaces from the '80s and compare them with modern ones, you'll see a lot of cpu power is now spent on eye-candy but functionally they're not terribly different. Except they're all built on C++, whereas before they were in C or lower-level languages. OO was the HTML/CSS/JS of the '90s.


Could all the large software applications of today have been created without OOP, just on functional programming paradigms? If OOP was beneficial 10 years on, maybe the cross-platform nature of HTML/CSS/JS will also be vital to future applications.


> maybe the cross-platform nature of HTML/CSS/JS will also be vital to future applications.

There are already cross-platform toolkits that can deliver everything a browser engine can, faster and safely.

Face it, "web technologies" are not winning because of any massive technological advancement, just like C++ wasn't this huge advancement over C. They just managed to achieve enough critical mass to make everything else look less popular. In the '90s, OOP did that through academia and commercial push (in what was a much smaller tech sector); html/css/js did it through the accidental monopoly that is the web browser. The end result is basically the same.


> "There are already cross-platform toolkits that can deliver everything a browser engine can, faster and safely."

Nothing with the reach of web technologies. The closest I can think of is Qt, but there are issues with deploying Qt apps on some platforms.


So our choices are

• Native applications that give users excellent UX and performance

• Web apps that are equally quirky and slow on every system

?


As with all design decisions, it's a trade off. The main benefit of web apps is found in their cross-platform nature. If this is desirable then you may choose to sacrifice a little performance to get that.

To give an analogy, it's like programming languages. It's possible to write very fast code with assembly languages, yet their portability to other architectures is practically non-existent. Part of the reason higher level languages like C/C++ are used is because they are much more portable.


LISP, a semi-functional language, was originally invented to solve the biggest, hardest problems. Scheme, Common LISP, Ocaml/ML, and Haskell have all been used in large systems with good performance. Entire OS's were written in LISP's with some benefits that modern machines still don't have:

http://www.symbolics-dks.com/Genera-why-1.htm

Note: And some that are laughably obvious and available today lol.

So, yes, what people use today is an accident of history. That includes COBOL, C, C++, OOP languages, HTML/CSS/JS, HTTP-centric everything, and especially whatever crap is being built on them next.

If you're curious, here's the history I put together on C language and UNIX in numbered list form. You'll see how IT evolution often works in practice to give us lowest common denominator. And afterwards people swear it was product of good design and great achievement. (rolls eyes)

http://pastebin.com/UAQaWuWG


The most remarkable part of "web apps" is probably what they do not improve on:

Smalltalk had (has) messaging and decent object orientation (and you have that especially in latest js) - but Smalltalk never had one standard vm implementation - different versions had different image (ram-saved-to-disk, source code and byte-code) and vms. Javascript has common source code, but no common vm/image format.

Office Suites had rich documents with smart(ish) widgets, but no security - a macro in Excel had access to all your spreadsheet data. Web apps don't really have any good encapsulation either -- so we'll likely repeat the macro-virus era with web virus era (I'm not sure if we already are or not, there's certainly been a few self-replicating ones, that eg spread via facebook updates etc. Not sure if they generally live in the phone-apps or various web-apps. Probably both).

We already had the future of web applications within reach years ago - but apparently no-one cared: http://lively-kernel.org/


> what was the equivalent of HTML/CSS/JS in the 80s?

Depends what are looking as an equivalent. Browsers didn't exists but markup languages have been around since the 70's (mentioned for first time in late 60's)[1]

Maybe an equivalent to express GUI as resources? yeah, we called it RAD back in the day and they were quit popular among some circles. Does somebody remember Hypercard? Or even the first versions of Visual Basic?

[1] https://en.wikipedia.org/wiki/Markup_language#History


Mainframes and thin clients maybe? "All of the computing power will be over here, and the clients will be dumb and just render stuff!"




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: