Cincom Smalltalk vs. Visual Studio
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.
- 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 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 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.
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.
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.
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”