Contact me only directly please:
hgn@catpool.com
and please NOT via these job sites, where we may have had first contact.

Abstract

Why Smalltalk for JavaScript?

Smalltalk references

Needed Smalltalk features

Tools, parsers, generators etc

 

 

 
 

Discussion the reasons and background of this project

Why Smalltalk for JavaScript?

There are several very good reasons:

Smalltalk is far superior

The Smalltalk development environment is far superior and far ahead to anything else that I have seen so far in my >35 years in software and especially superior to all that is available in the JavaScript world. The MyEclipse that I'm using for some of my current JavaScript work is so extremely primitive compared to Smalltalk that I feel like visiting the Flintstones!

Re-use existing code

There exists a huge amount of logic in Smalltalk that is just too valuable to throw away or to rewrite in another language. Most could well be used in and/or together with browsers.

Must integrate with existing products written in Smalltalk

There are products written in Smalltalk that have cost a lot of work and money to develop (over 30 man years in my case) and that are to be seemlessly integrated with the latest web technologies.

Smalltalk comes with full web server capabilities

This creates a great blend of a desk-top app and web server with 100% identical code in one executable. This is a rare combination that offers a lot of advantages over the competition.

Smalltalk with RIA UI in EXT JS / Sencha

The plan is to gradually replace almost all of the UI of our Smalltalk software with a RIA browser interface based on EXT JS (Sencha) in JavaScript. On the desk-top this works via localhost, on the LAN / Intranet the Smalltalk application IS itself the web server and also for the Internet, where it just acts behind some Apache, IIS, Nginx or whatever web file server.

Unique tools in Smalltalk available

We have invested years of work into Smalltalk tools that store, administrate and automatically generate not only model and class definitions including all instance variables held in attributes dictionaries, as well as the entire database definitions, including complex versioning and configuration possibilities, and also major parts of the user interface. Plus even more years of work into all the model etc definitions. All of that would be lost and would have to be redeveloped it in a far inferior technology and in code versus the current data-oriented definitions. That would mean several major steps backwards!

An old dog that needs no new tricks

Note that Smalltalk is around 30 years old and has been in a mature production state since about the mid 80-ies! Since then, the rest of the software world made more steps backwards than real advances. Smalltalkers know this and will certainly agree. Others should believe me, even if it's hard to. I could prove it.

Why has Smalltalk not become mainstream?

Good question and simple answers primarily for the reader who is new to Smalltalk:

Arrogancy and greed of the main Smalltalk vendor

ParcPlace have always been far too arrogant and greedy in their eliteness. It is said that they rejected Sun's offer to use Smalltalk for what today is Java, because they felt that Sun's offer was too bad. Their arrogance was stinking. I experienced this myself: stupid idiotic greedy managers! Even today the licensing conditions of their successor are ridiculous at best.

Long learning curve to mastering the library

An average programmer has learnt the Smalltalk language in a single day and the development environment in three days. But mastering and properly using the huge system library will take him a few years. Smalltalk is not for the quick and dirty 'hello world' and that is what most developers work on and especially the way they prefer to work. Smalltalk de facto enforces a decipline that the great majority does not want to adhere to. Most programmers as slobs - says the author with >35 years in software who has lead well over 100 in his dvelopment teams.

Smalltalk requires a reset to the brain

Those who learnt structured programming must reset their brain. Still the great majority of programmers began with some stupid language like C and its dialects, or PHP, any Basic etc. This is why their brains were polluted with these primitive concepts. Only a few can reset this and truely adopt a fully object-oriendted system where absolutely everything is an object. Sad but true. I have seen so many experienced programmers fail to reset. Only a few younger ones succeed. Best would be to teach Smalltalk at schools. But then most won't like the mainstream any more.

Smalltalk is for the programmer elite

Smalltalk is not for the average programmer. It enables the very bright guy to be more productive than a team of 5-7 in Java, or 7-12 in C++. But Joe Sixpack knowing some VB or PHP etc will fail. For these guys, Smalltalk's concepts and philosophy are just too demanding. They don't grasp it! This is politically incorrect but 100% true as is the case for all that is claimed to "violate the PC".