Hybris 1.0. A Retro Look Into 15-year-old Version
This weekend I played around with the first version of hybris, that was released in far 2001. In 2001 the hybris was titled as “hybris e-business platform”.
I unpacked the archive and installed the system. The archive is about 66M in size. The built-in application server is Oracle9iAS. The first version was based on Struts, EJB and Java 1.3.
There were no cockpits, only one HMC that was called webMC. Here is what the main admin page looked like:
“Ant clean all” took 49 seconds. hybris was ready to work in 15 seconds after I launched the server.
The next step is initialization. A predecessor of HAC init looked like:
The initialization process took about 6 seconds.
The sample storefront is very ascetic and unpretentious. (Nice TVs 🙂 )
Next screenshot shows a first version of HMC, called WebMC in hybris 1.0. It seems that its UI hasn’t been changed a lot over years.
The similar look as today, but that version didn’t use ZKoss Framework. Hybris rewrote the HMC code later.
The internal name of the product was Jakarta. So all classes have jakarta as a part of the packages. By the way, Jalo layer stands for Jakarta Logic.
There is a predecessor of HAC:
It is interesting that the first version of hybris didn’t use any search engines. The product search was implemented as a simple FlexibleSearch request with “LIKE”.
The default storefront template code processed credit card details without any encryption. It was possibly supposed to be part of the partner’s job.
There are many concepts that come from the initial version without significant changes. For example, such files as project.properties, build.xml, extensioninfo.xml, localization properties, items.xml are very similar to ones we have in the last version. It is clear that each version added a lot to the initial concept, but they are quite recognizable.
However, in 2001 hybris was supporting the cluster mode, UDP invalidations, multilanguage and the type system.
It was a pleasure to have a look at the first release. In 2001 I was working on my own web programming language, called ArtPublishing. It was written in C++, it was the one-pass parser and interpreter. A bit later my team released a Content Management System called ContentRight written completely in ArtPublishing. 16 years ago we were reinventing a bicycle, but the result had paid off because at that time the innovations means more than supportability and reliability. It was very interesting to compare similar products. The latest version of hybris has a lot from their initial version. Evolution works.
© Rauf Aliev, November 2016
Patison
14 November 2016 at 02:02
Quite interesting archeology. What do you think would be the main differences if hybris would have been created nowadays? Obviously, no JALO, no HMC. No XML? 🙂
Rauf Aliev
14 November 2016 at 08:08
It took some time to form a holistic vision. You need to try, to test, to process feedbacks to understand the right direction, expectations and limitations. I don’t think any of us is capable to foresee all issues from the very beginning.
If they had set ourselves the task to do everything right, they wouldn’t release the product at all. There isn’t a right solution architecture, all these decisions are trade-offs.
Amine Belghit
14 November 2016 at 05:18
Nice 🙂
Marko Salonen
15 November 2016 at 02:57
Nice! I remember this February when i was in Munich for SAP Hybris Summit i had dinner one evening with one of my former colleagues from a earlier project i worked on. He had two colleagues with him and one them told me that he had been working with hybris in the beginning (not anymore). He told me that he had been implementing HMC and said that it was pretty much the same today as then 🙂
Rauf Aliev
15 November 2016 at 09:24
🙂 I was trying to google guys mentioned in the code as authors but failed)
Hybris Developer
15 November 2016 at 05:16
Slow, complicated, undocumented and expensive crap of a software.
If we were lucky it would have failed back then.
Rauf Aliev
15 November 2016 at 09:28
It’s pity you was having a bad experience). My experience shows that hybris is much better than average, but there are no limits to perfection, of course. All competitors are not notably better
Rainer
30 November 2016 at 05:59
Nice review … 🙂
Let me add some notes to it:
The specific version 1.00 you used here seems to be merged with some UI elements of a newer hybris version. The hybris platform in version 1.00 was not named “e-business platform”, but in fact the official name was “Jakarta” (maybe this banner was taken from a later version?!)
The default application server back then was Ironflare Orion (nevertheless, Oracle 9i and BEA Weblogic were supported)
IIRC the default port was not 9001 but 2357. I think, 9001 by default was added later.
And a challenge for you (and others): do you know the JMC? 😉
Voodoo
8 December 2016 at 06:13
Initializing system… 6 seconds!!
wooo get me back to that time. one thing hybris is really really bad is that slow startup, slow development, slow integration tests, modularized monolithic application…
really hard when you want to be agile.