On To Smalltalk

The ball is rolling...

July 21, 2004 2:40:23.350

I've mentioned a couple of times that I was putting a case together to try and sell my boss on the virtues of Smalltalk.

Well I planted that seed yesterday. I briefly started talking about Smalltalk to my boss. He was vaguely interested, but I didn't feel like I was selling it well while talking about it. I thought a demo would be better, so I showed him the stuff I'd been working on in C#.

I'd been doing prototyping in Dolphin, and moving code back into C# (Which actually was a bad way to do it, as noted by a previous post). However it has allowed me to have a project with sort of similar functionality in Dolphin, as well as C#. The TCP Server was what I used to show my boss that there is no (noticeable) compile/build step when doing work in Smalltalk.

I setup a server, and while test clients were connected to it and sending/receiving messages, I started changing the request handler methods which determined the responses to messages. Simply changing some of the outputs while the test app was connecting to the server. At first it wasn't really apparent to him what was going on. Not until I showed the same task being accomplished in C#. Each rebuild we got to watch the test client start throwing exceptions about failed connections, mean while any change to the code required rebuilding the app. So I wasn't able to change the results of requests on the fly. Trust me when I say if I had been trying to show off C# as the better option, it would have been a pretty bad demo. That was about the time he had a "Holy Shit" moment. It was pretty cool.

So now I am in the next phase. My boss has said he's open to it, but is concerned about the maintenance aspect of it. I'm the only person who would know what any of the code does. So now I have to get at least one more developer here into Smalltalk. Or else it will continue to be a hobby.

There are still a couple of hurdles to cross. I don't want to launch into commercial development using Dolphin without first being able to answer some basic questions. "What do we use for source control", "How do we share code", "How do you do ...". Basically anything we currently do using the .NET framework, I want to be able to give an answer on how to achieve the same thing in Dolphin. Threading, Xml, Sockets, Web Services, Collections, GUI Building. Some of the answers I have already. I've even got a Wiki running on my local machine. Documenting all of this stuff. Its slow going, because this is all occurring between the hours of 5:00 and 6:30 each evening.

It is funny to see first hand the absolutely poor marketing that Smalltalk seems to have almost been killed by. I have placed a couple of Smalltalk books around the office to try and get some interest that way. Only one comment so far: "Smalltalk? I tried that years ago at uni. Why would you bother. You can't even do anything useful with it."

Comments

Re: The ball is rolling...

[ Michael Lucas-Smith] July 21, 2004 2:48:04.311

Comment on The ball is rolling... by Michael Lucas-Smith

Time for you to earn some management brownie points. Introduce a plan to train up resources in house with this technology. Take a semi-newbie and introduce them to the technology for the project itself. Present this as a strategy to your boss.

S-Unit As A Form Of Trainging

[Reg Krock] July 21, 2004 7:42:10.475

I have found that using S-Unit tests are an excellent way of training newbies. This was used successfully on a large project where a number of new staff were added part way through. They make a change or add a feature and write the tests. It gives them a sense of accomplishment and keeps the problem area small while they are learning.

Keep up the Good Work - We need more Ambassadors...

[Mel Riffe] July 21, 2004 9:48:13.100

Bravo Sean!

I've been living vicariously through your posts (I'm currently a Java developer hopelessly trying to get back into the Smalltalk fold) and this last post was absolutely delightful. I actually scoffed out loud to the remark, "you can't do anything useful with it."

Keep up the Great Work - Smalltalk can use all the Ambassadors it can get.

Mel Riffe

Its purely selfish

[Sean Malloy] July 21, 2004 10:06:21.207

Its kind of selfish motivation though. I just want to use Smalltalk at work :)

Still, if every Smalltalker out there could convince 4 other people to try it, it could be quite a different industry!

Well...

[Darius - Clarke] July 21, 2004 16:31:03.149

Could you do the same demo while swapping the VM with an updated one?

Re: The ball is rolling...

[ James Robertson] July 21, 2004 21:53:56.885

Comment on The ball is rolling... by James Robertson

Well actually... in Squeak, you can :)

RE: The ball is rolling...

[Darius - Clarke] July 23, 2004 14:14:14.635

:)