Smalltalk for small projects only?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
66 messages Options
1234
Reply | Threaded
Open this post in threaded view
|

Re: Smalltalk for small projects only?

K K Subbu
On Wednesday 01 Feb 2012 8:36:45 AM David T. Lewis wrote:
> I have to laugh every time I read someone making a comment to the effect
> that Squeak is not "serious" because it has a silly name. I love the silly
> name, because it takes a gentle poke at all of us who become distracted
> into thinking that tools and technology are more important than thinking
> and communicating.
+1

Classifying work into as productive or unproductive/leisure/entertainment is
an artifact of industrial age. Watching kids learn through play is the best
antidote to this tendency ;-).

If work is to become play, then tools should become toys .. Lee Felsenstein

Regards .. Subbu

Reply | Threaded
Open this post in threaded view
|

Re: Smalltalk for small projects only?

Colin Putney-3
In reply to this post by Colin Putney-3
On 2012-01-31, at 11:48 PM, "Göran Krampe" <[hidden email]> wrote:

> On 02/01/2012 06:17 AM, Colin Putney wrote:
>> 2012/1/31 Eliot Miranda <[hidden email]
>> <mailto:[hidden email]>>
>>
>>    A good challenge would be to reimplement ANT (a Java application) in
>>    Squeak/Pharo.  That would force us to address real weaknesses.
>>
>>
>> I can vouch for this. I wrote Filesystem because trying to write Mason
>> using FileDirectory was too painful.
>
> AFAIK this has already been done by Keith Hodges (for Squeak building -
> not general building) in multiple layers (Bob the Builder, Sake etc):
>
> http://www.squeaksource.com/Bob.html
> http://www.squeaksource.com/Packages.html
> http://www.squeaksource.com/Sake.html
>
> ...but perhaps you meant for "generic software building".

Yeah, I tried Sake, but it didn't meet my needs.

Colin

Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] [Pharo-project] Smalltalk for small projects only?

Alan Knight-2
In reply to this post by laurent laffont
I don't think it is a naive belief. There are actually differences between languages, and they do matter in the success of projects. I think the widespread disdain for Java in the development world at large is partly a recognition of this.

This is just a bit of apocryphal and vaguely-remembered evidence, but I remember a discussion at a conference a few years back, and I think the participants were Alistair Cockburn and Martin Fowler. They were talking about "Design Starts" and successful completions of projects and the ratio between them as a metric. And were talking about various factors, but mentioned that in Smalltalk, though the number of starts was always low, the ratio of design starts to completions had been extraordinarily high.

Equally apocryphal, I'm fond of saying that we have some large customers who are in the process of converting their applications from Smalltalk to another technology. Some of them have been doing so for many, many years.




[hidden email]
31 January, 2012 8:54 AM


With all due respect to the experience of everyone here, people really need to give up on this naive belief that Smalltalk development is any more efficient than development in any other language.  The simple fact is that within the Smalltalk community a large portion of the developers have been using the tools for a long time and are very good at using them. Throw them at another environment and they are not as efficient.  However, if you take new developers and throw them at a Smalltalk project it takes longer to get them up to speed than throwing them at a Java project simply because of the fact that Smalltalk is not as ubiquitous. I switched to Java back when IBM dropped Smalltalk, so I've seen both sides of this issue for a long time, so let me related some anecdotal experience:

I'm currently working on a Smalltalk project that has about about 50 man years of effort in it over 10 years.  Prior to this I worked on a Java and XSLt project that had about the same effort over the same period.  Both have web based GUI's with a fair amount of JavaScript and the usual HTML crud and use a relational DB back end (SQL server and Oracle respectively). The Smalltalk project has had a mix of very experienced Smalltalk developers and inexperienced ones.  The Java project was mainly junior and intermediate experience devs. I'd say the overall architecture and design was about equivalent; very different, but equally well done and comprehensive. The projects are very similar in concept and execution.  The Java project had about twice as many function points (some pretty major) implemented and four times as many use cases supported at the point I switched to the Smalltalk project.  For the most part this has little to do with the language itself.  Rather, it is mainly, the supporting infrastructure that one is able to draw on in Java projects and this includes Eclipse, Git, etc.  Open Source projects also played a big part of this, in the Java world one can pull in large chunks of functionality at very low cost (eg. XSLt 2.0 processors and pipelines, Spring, Hadoop, you name it) that are just not quite matched in the Smalltalk world.  You can often get close, but it seems that there is always something missing, if only because the teams supporting the Smalltalk projects are often much smaller and just can't quite keep up with the every changing specs and requirements.

Bottom line, don't kid yourself that there is any inherent advantage in using Smalltalk development over any other language.  It is faster for experienced devs in small projects, but if you've got to pull a team together from scratch for some medium to large complexity enterprise scale project it is probably not going to fair as well.

Now onto the main question posed here....

I have also worked on a successful 200 man year project (C and C++ in this case), which broke down to a little less than 100 people over a little more than 2 years. This was in the telecom world and involved many main frame billing interfaces and switching equipment interfaces, all very mission critical. In this case about 60% of the team was heads down developers. The rest of it was dedicated testers, tech writers, business analysts, project managers and managers.  Here again the supporting infrastructure played an important role.  Business analysts could write up use cases that got stored in a repository (a proprietary system) that could be used to generate test case stubs and documentation stubs.  The development team tracked progress and bug reports in the same repository and source code version control was tied to the repository. End user documentation was stored in the repository and version controlled. It was simple to know what was going on anywhere in the project and to know where the problems were and what code did what and to see the entire life cycle of any portion of the code base from customer requirement to final deliverable.  I know of no support infrastructure that even comes close in the Smalltalk world and would consider it madness to even consider taking on such a project using Smalltalk.

Peter Hunsberger



_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc


[hidden email]
29 January, 2012 3:37 AM


200 developers on a project ? Scaring ..... They should use another technology than Java to go under 50 developers. They will save a lot of money :)

Laurent




[hidden email]
28 January, 2012 10:46 AM


Hi guys,

Ralph Johnson in his InfoQ interview made an interesting observation:

2:55 minute: "Smalltalk made an fundamental error ... image ... you can
build something with 4-5 people what 50 people can build in Java, but if
you take 200 people in Java ... it is really designed for small systems
... "

Are we because of the image really destined for relatively small
projects and small systems (of Java 50 people project size)?

Are we really not able to scale to bigger projects/systems because of that?

Ok, there are few exceptions of course (JPMorgan, OOCL, ..), but still...

[1] http://www.infoq.com/interviews/johnson-armstrong-oop

Best regards
Janko




Reply | Threaded
Open this post in threaded view
|

Re: Smalltalk for small projects only?

Eliot Miranda-2
In reply to this post by Göran Krampe


2012/1/31 Göran Krampe <[hidden email]>
On 02/01/2012 06:17 AM, Colin Putney wrote:
2012/1/31 Eliot Miranda <[hidden email]
<mailto:[hidden email]>>

   A good challenge would be to reimplement ANT (a Java application) in
   Squeak/Pharo.  That would force us to address real weaknesses.


I can vouch for this. I wrote Filesystem because trying to write Mason
using FileDirectory was too painful.

AFAIK this has already been done by Keith Hodges (for Squeak building - not general building) in multiple layers (Bob the Builder, Sake etc):

http://www.squeaksource.com/Bob.html
http://www.squeaksource.com/Packages.html
http://www.squeaksource.com/Sake.html

...but perhaps you meant for "generic software building".

Yes.  ANT is cross-platform and generic.  I expect Squeak/Pharo would need lots of work beyond Colin's new file system and OSProcess to provide similar functionality.  I think it would be a great driver to get the right support.
 

regards, Göran




--
best,
Eliot



Reply | Threaded
Open this post in threaded view
|

Re: Smalltalk for small projects only?

dcorking
In reply to this post by dcorking
On Sun, Jan 29, I wrote:

> DabbleDB didn't go under. It was purchased by Twitter, who moved it to
> San Francisco, in order for Twitter to make use of its Smalltalk
> expertise and the Trendly product.

I since looked deeper and read that Trendly was a Ruby product. I
don't know if Smallthought Systems used Smalltalk at Twitter or not.

David

Reply | Threaded
Open this post in threaded view
|

Re: Smalltalk for small projects only?

Göran Krampe
In reply to this post by dcorking
On 01/29/2012 09:21 PM, David Corking wrote:
> Hans-Martin Mosner wrote:
>> What were the actual reasons for DabbleDB to go under ...?
>
> DabbleDB didn't go under. It was purchased by Twitter, who moved it to
> San Francisco, in order for Twitter to make use of its Smalltalk
> expertise and the Trendly product.

Mmm, my impression is rather that Twitter buys small talented companies
simply because it is easier to find really good people that way instead
of hiring (if you have loads of money to spend). They have done it
before, and they probably told the Smallthought guys that they didn't
want them to be distracted by their old stuff - thus "shutdown".

> The question is merely: why did Twitter choose to close down the
> DabbleDB product (rather than sell the business or recruit a
> maintenance staff)?(*)

Simplest path. All other paths take money, time, legal to be involved,
etc etc.

> Another useful question: what is Twitter doing successfully with
> Smalltalk that helps to change the world?

No idea, but I did recently note that Avi is not there anymore ;)

regards, Göran

1234