Cincom Smalltalk vs. JavaCincom Smalltalk is a cross platform development and deployment technology that helps developers build applications quickly and efficiently from highly scalable web, and Web 2.0 applications to classic client/server system. But how does it stack up against the competition? Take Sun Microsystems’ Java, for example. Java was developed in the early 1990’s at Sun Microsystems by James Gosling. A combination of several factors caused it to spread very rapidly.
- Was built in a research lab by a select group.
- Was built over a decade, with no product pressures.
- Had the goal of making computing easy for people.
- The research lab’s work has influenced and shaped modern computing.
- It was able to do internet development when internet interest was big.
- It was Object- Oriented, when OO was still gaining mindshare.
- There was a backlash to C++ issues.
- It was marketed very heavily.
- C- like syntax made it familiar.
- Portable “write once, run anywhere” slogan
Strengths and Weaknesses
Cincom Smalltalk’s Strengths:
- Enjoyment — Cincom Smalltalk is pure Object -Oriented. Developers achieve more and enjoy doing it.
- Better morale and employee retention.
- Developers have said, “They did not get object -oriented programming, until they learned Smalltalk.”
- Developers feel more capable in any object-oriented language, after having learned Smalltalk.
- Maintainability — Cincom Smalltalk can handle vast changes quickly and easily, as evidenced by Cincom Smalltalk client, JPMorgan – complex derivatives.
- Scalability — Cincom Smalltalk can scale tremendously, as seen by Cincom Smalltalk client, EZ Board – has 30 million users.
- Consistency — Cincom Smalltalk is incredibly robust and reliable, as demonstrated by Cincom Smalltalk client, Money Markets System – $6 billion in trades per day.
- Learning curve — Cincom Smalltalk is faster and easier to learn.
- Productivity — Cincom Smalltalk is more productive than any other mainstream language.
- Portability — developers using Cincom Smalltalk can develop on their favorite platform and then deploy to any other platform with no changes.
- Productivity — Cincom Smalltalk programmers typically solve a given problem faster and write one third to one half of code produced by programmers using other languages. This enables Cincom Smalltalk to be a very productive and strong prototyping tool.
- Ubiquitous — A good language for big enterprise programming projects, widely available. Very flexible, well designed language and runtime environment
- Community — The preferred language of the C -like syntax community. IBM is a favorable supporter.
- Integration — When Java shifted from the client to the server, enterprise integration became very important. With the partnership of Oracle, IBM, Borland, SUN and others, they enabled Java connectivity to databases. Provides excellent facilities for mapping object -oriented models to relational databases. Most major vendors support Java.
- Portability — Portable “write once, run anywhere” slogan
Java’s Weaknesses:Java has an immense community, but has:
- Lost its missionary zeal and enthusiasm.
- Began to be seen as too heavy -handed by trying to be all things to all people.
- Faced accusations of being overly complex and lacking in agility.
- Become too large and cumbersome, causing many users to move to newer technologies.
- Become a modern “Cobol.”
- Lacks object-oriented purity.
- Primitive types are not objects.
- Auto-boxing made to solve this, but adds complexity.
- The risk of choosing the wrong technology The market is becoming disenfranchised with Java and moving away. The development environment is moving to Dynamic languages. Why?
- Selecting the “right” language Robust, modern development frameworks are increasingly leveraging the capabilities that a dynamic language (like Smalltalk) offers.
- Java is free You get what you pay for or pay me now or pay me later.
- Java- trained staff is abundant and inexpensive. Smalltalk’s staff is limited and expensive How many Smalltalk programmers do you want, and when do you want them? We can provide them.
- We’ve already standardized on Java What is it costing you to maintain that standardization?