Digital Edition

SYS-CON.TV
Java Editorial — Unofficial History of Programming: '96 - '06
Unofficial History of Programming: '96 - '06

I want back in the '90s...seriously. Ten years ago I didn't know Java: I'd been using PowerBuilder and was able to program pretty much everything in this RAD object-oriented tool. To find a job back then, all I needed to have on my résumé was PB, a single framework (PFC), and SQL. With these skills I could have created a prototype of a rich CRUD client/server application in a couple of days. However, that was the sunset of the client/server era.

While making the deployment of the client software easier, the Web pushed the user-facing applications years back. Just look at these ugly screens: several plain text boxes, a dropdown, and a trivial HTML table. Mainframe dumb terminals had black screens with green letters, but the interaction with the big iron was super fast. The Web offered a white background with black letters and poor performance. But the entire world was so happy with this new way of accessing the wealth of data and tons of e-commerce opportunities, that people were willing to put up with some minor inconveniences.

GoF had released a famous book on design patterns. I wonder if anyone has read this manuscript from start to finish? This book was the first step in turning programming from an art to a trade. Singleton, MVC, Factories, value objects...just pick up the proper design pattern(s), and your code will look as if it was written by an expert. Don't forget to comment your programs explaining which design patterns were used in your code. There still is a small number of programmers who get by without pattern programming, but they'll be extinct soon.

SQL was in favor in the '90s. People knew how to delete duplicates from a database table by applying such SQL clauses as group by and having. How many people have read the book by Joe Celko, SQL for Smarties? Let me put it another way. How many people know what SQL is? Why bother, Hibernate will let me map class attributes to the database table columns. How nice...I'm drowning in XML now. Let's not jump ahead though; mankind did not know Hibernate or XML back then.

The Java programming language was born. It became visible as a language for creating applets, but it quickly abandoned the desktop and started to shine on the server side. It took Sun almost 10 years to realize that desktop programming is also important and it's time to create a Swing-based RAD tool.

The end of the last century can be called the Gold Rush of Programming. People started to spread the fear of Y2K issues. Since the dates were stored as two digits, some nuclear explosion or a less serious disaster was expected on January 1, 2000. For example, I'd never include "'96-'06" in the title of this article. Why? Because 06 minus 96 is equal to negative 10. Get it? Lots of people quickly became programmers with the noble mission of saving mankind. Lots of IT managers quickly climbed the corporate ladder working on this noble mission.

In the beginning of the new century, XML became popular. Yes, it was a nice way to describe data, but at the same time it was too heavy. It did not manage to kill the CSV format - the hype is over - but it did find its use in a variety of applications.

Microsoft came out with .NET platform, which became a direct competitor of J2EE. These two mainstream technologies cover most of the enterprise software development.

Another important trend of this century is the spread of open source software. In the past, vendors used to sell software licenses, but now many of them give the software away for free and sell services instead. The documentation of our open source product may be poor, but no worries, we'll be happy to help you with our great tool for an extra fee.

What are the latest notable trends? Let me throw in a couple of buzzwords.

AOP stands for aspect-oriented programming. It's an interesting concept that allows you to change the behavior of a compiled application without changing its source code. For example, you can implement a cross-cutting concern like logging after the application was written and turn it on or off as needed. AOP definitely will be used in some applications, but it's not going to revolutionize programming as OOP did 15 years ago.

The latest fashionable thing is AJAX - a self-proclaimed savior of Web applications. You enter a letter in an HTML search text field , and the results comes back without the page refresh. Time will show if AJAX is the right solution for Web 2.0, but many vendors are trying to make their tools AJAX-enabled because it sells well today.

Meanwhile Java developers go crazy, because of this orgy of 50+ Web frameworks that do the same thing as Struts.

During the last three to four years, lots of enterprise mission-critical systems were moved from the Unix to the Linux platform, and this trend will continue.

Ruby on Rails is heavily promoted by a group of enthusiasts. At this point it's not clear if Ruby will become a commercial programming language, or just another good language such as Lisp or Smalltalk. I don't know, but I'm planning to purchase a book about this language.

Rich Internet Application are back; I'm talking about fat clients here. The major players are Adobe Flex 2, Microsoft WPF, and Java Swing with JWS, of course. This is an interesting field to be in today.

What about us programmers? We have to keep learning more and more buzzwords/tools/frameworks/languages to become senior software developers...oops, I meant to say architects. Why not developers? Because only architects can possibly figure out how to put all these unrelated pieces together.

I want back in the '90th...seriously.

About Yakov Fain
Yakov Fain is a Java Champion and a co-founder of the IT consultancy Farata Systems and the product company SuranceBay. He wrote a thousand blogs (http://yakovfain.com) and several books about software development. Yakov authored and co-authored such books as "Angular 2 Development with TypeScript", "Java 24-Hour Trainer", and "Enterprise Web Development". His Twitter tag is @yfain

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

Hi
That was a rather quick history lesson, while missing no important link, ensures all milestones are clearly identified.

Regards
Durga

Gong!!! You hear that reverberation? That's me saying damn right! I was there for the PowerBuilder years. I started with version 1.0, and I, like nearly everyone else, moved onto Java (with a minor sightseeing tour of Delphi). And I echo your candor in describing the lack of productivity and frustration with the churn in the Java web space. I mourn for the poor users who've been made to suffer web-application hell in the name of progress. But I've begun to see a little of that old magic again with Ruby on Rails. Hell no it's not perfect and no I don't get paid to develop with it, but at least it gives me hope...




ADS BY GOOGLE
Subscribe to the World's Most Powerful Newsletters

ADS BY GOOGLE

Dynatrace is an application performance management software company with products for the informatio...
All in Mobile is a place where we continually maximize their impact by fostering understanding, empa...
CloudEXPO New York 2018, colocated with DevOpsSUMMIT and DXWorldEXPO New York 2018 will be held Nove...
Lori MacVittie is a subject matter expert on emerging technology responsible for outbound evangelism...
Having been in the web hosting industry since 2002, dhosting has gained a great deal of experience w...
A traditional way of software development efforts reimbursing is pay by the hour, which in case of r...
Your job is mostly boring. Many of the IT operations tasks you perform on a day-to-day basis are rep...
The challenges of aggregating data from consumer-oriented devices, such as wearable technologies and...
Headquartered in Plainsboro, NJ, Synametrics Technologies has provided IT professionals and computer...
CI/CD is conceptually straightforward, yet often technically intricate to implement since it require...
Using new techniques of information modeling, indexing, and processing, new cloud-based systems can ...
SYS-CON Events announced today that CrowdReviews.com has been named “Media Sponsor” of SYS-CON's 22n...
Adding public cloud resources to an existing application can be a daunting process. The tools that y...
The now mainstream platform changes stemming from the first Internet boom brought many changes but d...
Bill Schmarzo, Tech Chair of "Big Data | Analytics" of upcoming CloudEXPO | DXWorldEXPO New York (No...
Digital Transformation: Preparing Cloud & IoT Security for the Age of Artificial Intelligence. As au...
A valuable conference experience generates new contacts, sales leads, potential strategic partners a...
Andi Mann, Chief Technology Advocate at Splunk, is an accomplished digital business executive with e...
Containers and Kubernetes allow for code portability across on-premise VMs, bare metal, or multiple ...
SYS-CON Events announced today that DatacenterDynamics has been named “Media Sponsor” of SYS-CON's 1...