5 ms·
Ask HN: Why did 4GL tools like FoxPro, Clipper, Clarion, DBase disappear?
These combined database and programming language products were described as 4th Generation Languages (4GL). They were powerful and far more accessible to beginners or casual users than stand-alone programming languages. Why did they disappear?
These 4GL products seem tailor-made for web projects that require database access. Where enormous scale isn't required (i.e. the majority of web development projects), the 4GL approach seems like a perfect fit. Instead we've settled on a mish-mash of clumsily glued-together (and needlessly complicated) solutions for web development with databases.
Why did 4GL fail to adapt to the web era? Were the tools and language too restrictive? (Hard to believe this when CRUD is the bread-and-butter of many web apps. And these 4GL tools made accessing data far more easily and seamlessly than the solutions today.)
Or was there some snobbishness amongst programmers who didn't view these products as 'real' programming languages?
- Finnucane 9y agoFoxPro was acquired by Microsoft and eventually discontinued in favor of Access. How much of FoxPro's technology ended up in Access I couldn't tell you. (On my Mac, I kept running an old version of FoxPro in 'Classic' mode until that was no longer an option).
- LarryMade2 9y agoYep, and after MS (Apple, or some other controlling vendor) pulls the rug out from under you on your development platform of choice you don't go back to proprietary DBs. Was doing some great stuff with FoxBase/FoxPRO on the Mac. After that mess with dropping of support my next DB platform was open source (LAMP) way more flexibility and am still using it.
- le-mark 9y agoI have often wondered this myself. The 90's were all about the 4GLs taking over, and that obviously didn't happen. Here are some thoughts in no particular order. The languages were usually some flavor of "business BASIC" which were in reality pretty bad. It was far too easy to end up with "ball of mud" apps. I worked for one company on a project over several years to replace a foxpro app with EJB 3 backed desktop app. A lot of the complexity in that project came from documenting and replacing what users were doing by manually updating the tables with proper workflows (permissions to perform actions? egad!). Note this is not the fault of the 4GL in particular, but more a result of the "throw something together" ethos (so I maintain). So my take away here is: great for prototyping, not so great for long term maintenance and support. There are still companies offering 4GL solutions in this space like [1] and [2]. I have no doubt there is some enterprise version of Microsoft Access that will expose your app to the web, with an appropriate licensing fee. Another thought I have is all the X compiled to Javascript to run on the browser languages, like scalajs and java (GWT). GWT (in my view) was a failed experiment, I don't know of anyone using it for new development, all the apps I see are legacy. I welcome feedback on this. Something else I think about is; in those days, although lisp and smalltalk were around, doesn't seem like they were widely used. Nowadays, there's an abundance of dynamically typed, highly productive languages with extensive library ecosystems that essentially enable developers to move the language to meet (any particular) problem domain, and create solutions quickly. So the appeal of environments that bind language/database/display together isn't as novel as it once was. In other words, Ruby and Rails is your 4GL today. > Or was there some snobbishness amongst programmers who didn't view these products as 'real' programming languages? Definitely some snobbishness; but also the fact that as developers, we have to chase 'the new hot' on some level to stay current, and marketable. No one wants to be stuck only knowing coldfusion, when those jobs all go away. [1] https://www.elevatesoft.com/products?category=ewb https://www.elevatesoft.com/products?category=ewb [2] https://harbour.github.io/ https://harbour.github.io/
- dzmitry_lahoda 9y agoModern rival http://witheve.com http://witheve.com . Current approaches seems became much more math heavy.
- a-saleh 9y agoI was thinking if something like eve, would be able to carve out a similar niche. Someplace between spreadsheet (that can surpass simple desktop apps in complexity), database, data-analytics worksheet and a thrown together dashboard? I need to get around to try eve. So far I got by using Jupyter/iPython notebooks for similar purposes, which means I don't have as much of a need. If you tried eve already, what did you build with it?
- zubairq 9y agoYes, I think Eve will stand a good chance as they integrate with the ecosystem around them, ie: using Rest and javascript, so it will have a better chance of lasting
- codeonfire 9y agoThese languages were supposed to eliminate programmers by having analysts do all the tech work. However, doing tech work is career suicide for any non programmer. What if a future VP was caught cleaning the toilets... The curse of frameworks is that at some point businesses outgrow them and then they hit a wall with performance, ability to add some feature, or huge licensing fees.
- blablabla123 9y agoDidn't know that, can you elaborate on that? Anyways 2 guys directly come into my mind which where not programmers but still involved into tech work. (One guy was actually doing FoxPro stuff with his private license, and the other guy had a server with some custom PHP. The one guy was on the lowest point of the career ladder at the company and the 2nd guy got fired eventually.)
- codeonfire 9y agoWell it is rooted in basic anti intellectual thought. How can computer nerds possibly understand business? Therefore we will create fox pro and eliminate the nerds. In reality non programmers have to do guerilla tech work in secret. Yes, it was called guerrilla tech work because IT and nerds were so hated.
- miguelrochefort 9y agoBecause 5th generation programming was better, until it too died for reasons I can't explain.