I remember when Smalltalk was popular.
My introduction to Smalltalk was in 1987 when I purchased Smalltalk/V from Digitalk.
By 1989, I had won a contract to build a graphical flight planning system running on an HP/9000 Unix machine with Parcplace VisualWorks and “The Analyst” package from Xerox (XSIS).
In the early 1990’s, Smalltalk was very popular with high-tech companies.
Of course, there was the high productivity and ease of prototyping.
But also a very important reason was the cross-platform capability. Companies often had many different kinds of computers:
- HP/9000 Unix
- IBM Unix
- Sun Solaris Unix
- Silicon Graphics Unix
- Apple MacIntosh
- Microsoft Windows (several versions)
- And Smalltalk ran on all of them with no changes (almost) to the image.
Then the Smalltalk “dark ages” started around 1995/96.
There are lots of reasons, of course, but one of the main causes that I saw was that companies exchanged their expensive Unix machines for increasingly capable (and much cheaper) Windows NT machines and/or Apple Macintosh after Steve Jobs converted it to Unix.
The new cross-platform wonder-kid was Java which was free. And Smalltalk pretty much went into free-fall after that with a few bright spots like Dolphin, Squeak and Pharo.
So, what about today.
Like many developers, I earn my living building web applications.
Today, there is now a mish-mash of different technologies on the web, just like desktop workstations 20 years ago.
- multiple browsers (Chrome, Safari, Firefox, IE)
- multiple mobile technologies (Android, Ios, Windows phone)
- multiple desktop systems (Mac, Linux, Windows)
Of course, you can build apps using a cross-platform technology such as HTML5. Which means that you must be proficient in three different client-side languages:
And a some server-side technologies as well:
- PHP/Laravel/CodeIgniter/etc
- Ruby/Rails/Sinatra/etc
- Python/Django/etc
- NodeJs/Express/etc
Nothing like the simplicity of building and deploying Smalltalk applications.
MySmalltalk is my attempt to bring back simplicity for application development in today’s hybrid environment (desktop/mobile/website/server).
A huge development in the past few years has been the explosion of “Smart Phone” use.
There are projected to be 2 billion (2,000,000,000) smartphone users worldwide by next year.
http://www.emarketer.com/Article/2-Billion-Consumers-Worldwide-Smartphones-by-2016/1011694
Amazing!
Steve Jobs said that the iPhone would change everything and he was right.
So where does MySmalltalk fit it.
- runs on any desktop (Mac, Linux, Windows)
- runs in any website
- runs in any mobile device
- runs in any Node.js server
MySmalltalk is an interpreter, so it can run (and compile new code) even in environments where security prohibits the use of JavaScript “eval” and “new Function(<code>)”.
Chrome desktop applications have these kind of restrictions. Possibly MySmalltak is the only Chrome desktop development environment where code can be compiled completely within the environment – as opposed to writing out files and then compiling them externally.
And Myst apps can be developed on the desktop and deployed to any other desktop, website, or mobile device.
The framework is still very young (I started on March 3, 2015), but it is progressing very quickly and I believe that it will prove to be a very productive new environment.