8 ms·
I can't understand. People says that ST ecosystem is much superior to nowadays languages, so why people at that time switched to the starter version of java, th
by G4BB3R 6y ago
I can't understand. People says that ST ecosystem is much superior to nowadays languages, so why people at that time switched to the starter version of java, that is so bad compared to today? After the shift, did you miss something?
- hodgesrm 6y agoI worked on a project at Sybase that attempted to rewrite the Sybase SQL Server using VM-based technologies. We looked at Smalltalk early on but found a number of problems. They included slow execution speed (there was no JIT), lack of static typing (hard for maintenance), and difficulty to strip the VM environment to create an efficient runtime. Finally it had very limited ability to manage storage and memory directly. Without these it's difficult to build fast database systems. Sybase tried to acquire a Smalltalk vendor in order to fix the VM problems but could not reach a deal so we ended up moving to other technologies. When Java came along we felt it was the language we had been looking for even with the early performance problems.
- fulafel 6y agoWhat happened then, did it get rewritten in Java?
- hodgesrm 6y agoNo, the project got cancelled before Java showed up. Sybase pretty much went down the tubes after that as a major DBMS vendor. Not because our project failed, but because Sybase had a dud release in 1993 named System 10 that had serious quality problems and tanked sales.
- e12e 6y agoHeh, so that's just after the split of what became ms sql server on the Microsoft side. https://en.m.wikipedia.org/wiki/Sybase https://en.m.wikipedia.org/wiki/Sybase > 1993: Sybase and Microsoft dissolve their partnership. Microsoft receives a copy of the SQL Server code base. (...) Sybase SQL Server version 4.2 and Microsoft SQL Server are identical. (...) From this point the products diverge as Microsoft includes more Windows features whilst Sybase adds Enterprise features (performance and scaling). > June 1993: Sybase announces its latest generation of software, named the System 10 product family; (...)
- hodgesrm 6y agoCorrect. MS SQL Server is based on the Sybase 4.2 release. System 10 was 3 releases later (4.8 & 4.9 added MP and internationalization support respectively).
- davidgould 6y agoFun fact, I handled producing and validating the last source code SQL Server source code exchange between Sybase and MS.
- davidgould 6y agoAs I recall, there were a few "ambitious" projects on the UI side, application builders or frameworks or something that were failing around then. I think there was a real loss of management focus on actual products in favor of chasing the next big thing. We also forgot to ship 4.8 (MP) for months as everyone jumped to 5.0 (aka System 10).
- pjmlp 6y agoInteresting, I always felt that Oracle was the first RDMS vendor to take that path (with Java's early adoption and NC). I was at their shared session (together with Sun) in Lisbon about NC and how it would change the workplace. Thanks for sharing.
- hodgesrm 6y agoI would guess pretty much all the DBMS vendors in the early 1990s had people looking at VMs and were mentally prepared for Java when it arrived. In addition to other advantages DBMS designers were looking for better ways to compile queries into executable representations (aka bytecode). That path still exists but I think the tendency now is to harness tools like LLVM and do JIT compilation.
- pjmlp 6y agoIt was free beer, while most Smalltalk products had prices on the enterprise ranges. Then all C / C++ compiler vendors, jumped on the wave by adding support for the free beer Java SDK on their IDEs. Just like Linux versus commercial UNIXes of the day, free is a mighty power.
- hodgesrm 6y agoThe free part certainly helped adoption over time, but at the time Java first arrived everyone was conditioned to pay for IDEs and most compilers for that matter. Java took off because of the reasons I cited up-thread rather than cost. It was initially marketed as a language for web browsers. Most of us just ignored that use case and put it to work in enterprise apps.
- fulafel 6y agoI wonder if there are surveyst to be found about IDE usage from those times... IDEs were common in some circles in the early 90s but less so in others. Java wasn't a very high level language even in those days - we had Perl, Tcl, Python, PHP, etc used for web and non-web things. And on the low level side we had C. IDEs were less used with those languages.
- diegof79 6y agoI actually went in the oposite direction: I started with C++ and Java. Until I had the opportunity to work with a very interesting team using Smalltalk (this was in 2004, so St was not popular anymore, but I liked the team and it was an opportunity to learn). The article is very good describing what failed, from business to technology. Why people jumped from St to Java? Besides the licenses and the OS movement that took many St companies off guard, there were also technical issues: - Java was better for server side work. It had mature frameworks for Http/XML/Database access. Big companies allocated tons of resources to create Java frameworks and tools... the situation for St was different, you were at your own. For example, I had to debug and fix the WebServices framework available in VisualAge... because I didn’t have another choice. - The JVM was superior in many areas: native threads, different GC algorithms, JIT, and many tools for monitoring and troubleshooting. Most of the St VMs only had green threads, it means that any blocking native libraries (like DB drivers) are problematic. - As the article says, enterprises moved from desk apps to the web. And web frameworks for St arrived late. - The classic St-80 was not designed with the idea of packages in mind. Loading a package is basically executing code that modifies your image. It’s powerful, but problematic because it can introduce unexpected bugs. Strongtalk tried to fix that, but it was a research project. - To the package isolation problem, add the fragmentation between St implementations... it didn’t help to create an open source ecosystem of shared libs like in Java. What I miss? The environment! In St you have absolute control of the environment. You can inspect everything (including your editing tools), and evaluate code everywhere without having to stop the world. Today you have editors or IDEs with plugin APIs, but is not the same. A comparable experience is modifying things live in the web browser, but it lacks the inspection/authoring tools from St.