Cincom 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 Visual Studio, for example. Visual Studio is the main Integrated Development Environment (IDE) from Microsoft.
Comparisons
Cincom Smalltalk:
- 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.
|
Visual Studio:
- It is used for its C# language (and others).
- Used for Windows .NET platform.
- Used to develop console, graphical UI apps, Windows
- Forms apps, web sites, web apps and web services in native and managed code.
- It is object oriented.
- It has C-like syntax for familiarity.
- Portable on many platform.
- CLI (Common Language Infrastructure).
- CLR (Common Language Runtime).
- Uses JIT (Just-in-time compilation).
|
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 onethird to onehalf of code produced by programmers using other languages. This enables Cincom Smalltalk to be a very productive and strong prototyping tool.
|
Visual Studio’s Strengths:
- Widely used.
- Language interoperability (on Windows platform).
- Plug-ins extensions well supported to extend functionality (In the form of add-ins, packages and macros).
- Learning curve is easier for beginner – Best guidance
- Easy to use.
- Interactive development environment.
- Easy WYSIWYG GUI development
- IDE refactoring (Refactoring is the process of changing a software system in such a way that it does not alter the external behavior of the code yet improves its internal structure.*) is good.
Visual Studio’s Weaknesses:
- Visual Studio does not support any programming language directly, but does so by the use of a plug-in called Language Service.
- Visual Studio lacks in quick file retrieval.
- Portability could be an issue. There are supporters who claim, “Write once, run anywhere” and detractors who say. “Write once, debug anywhere.”
- Visual Studio (2008) IDE is sometimes described as a “feature bloated” and overwhelming to new users.
- Visual Studio’s Windows Presentation Foundation (WTP) is questionable as to its suitability for line-of-business applications.
- Lacks object-oriented purity.
- - Primitive types are not objects.
- - Autoboxing is made to solve this but adds complexity.
- May require .Net framework installation in order to run applications.
|
Objections
The risk of choosing the wrong technology and selecting the “right” language.
Robust modern development frameworks are increasingly leveraging the capabilities that a dynamic language (like Smalltalk) offers.
Summary
With Cincom Smalltalk, you get a better return on investment (ROI). You can develop better applications, faster and with a smaller staff. You can maintain and enhance applications with a smaller staff (less code = less maintenance). You can also react to changes in your business domain faster than the competition.
* Martin Fowler, from “Refactoring: Improving the Design of Existing Code”