Hi Dennis,� Geert, Adres, Serge and other commenters..
I used to teach information systems at the University of Cape Town,
where final year students do an industry project.
I visited their project demonstration expo yesterday as a a guest. I
last taught there in 2003, and on that course around 2000, so it is
just ten years since the last projects I supervised directly. What
saddened me was that the projects had great looking UI's and most
were available as both desktop and web applications, but the
fundamental functionality, integrity, sophistication of systems and
thought in design was actually at a lower standard than we had a
decade ago. I even saw interfaces where it would require software
changes to add a new product category, for example. The new
shininess is largely due to the use of new tools such as Visual
Studio, Web Frameworks (think JQuery, ExtJs etc. ) and new browser
and OS skins (Chrome / Windows 7 etc. ).
Unfortunately, like when meeting someone, or dating, first
impressions count. Students (and many commercial developers and
their managers who hold budgets) are impressed by shiny new toys. If
these are proffered by professional looking marketing people at
fancy functions at apparently successful companies (e.g. Microsoft,
Oracle..) then they are all the more impressed. People like computer
scientists and modelers who are trying to solve fundamental
problems, get the data structures right, get the algorithms right
etc. are far more likely to look past the gloss and glitz and
appreciate the power and capabilities of a language like Smalltalk.
So, what to do? I think there are a number of good things we can
leverage, and some ideas:
- Push the variants of Smalltalk that _do_ look good - these
include Pharo, VisualWorks on the desktop, Dolphin etc.
- Show the power of the IDEs and contrast these with the clumsy
bulkiness of something like Eclipse. Here we must be careful,
because there are other very slick products out there, including
Visual Studio (it _is_ very pretty :| )
- Push the web capable variants (pretty much all the Smalltalks
with Seaside or Aida) - many people are surprised at how well
Smalltalk "does" web
- Show developers the power of the language - especially the
ability to create a "domain friendly" language at a level of
abstraction that reduces the code required for solutions
dramatically
- Create literature and make it widely available on project
success stories and language productivity (properly measured -
e.g. function points per staff month)
Interestingly, I recently was exposed to a large and
"successful" Java project in an assurance environment. When we
measured the developer productivity, it was about 25% lower than
we were getting with mainframe COBOL in the late '70s!
- And some ideas:
- Link Smalltalk to "sexy" topics that have current mindshare
- e.g. CloudFork is a good example.
- I would like to see a GSOC project to address semantic
triple store capabilities and a sematic web application of
these - think Freebase
- Doing good UI's is still quite hard and labour intensive -
Seaside provides a great framework, but we are still working
pretty much at the level of HTML / CSS concepts. I would like
to see a layer describing logical data structures e.g. List,
Tree, Matrix, Document (sequenced set of objects), Model
(spatially arranged and possibly connected objects)� and a
visual editor (or very high level DSL) that allows composition
of these into user interfaces with a publish / subscribe event
model and choice of suitable controls and widgets based upon
the logical data type. (this one is probably a bit too big for
a GSOC but may be tackled in pieces. )
- We should also try to put together really rich / capable
development images which are easily accessible / one click
install and still small enough to be grasped reasonably easily
by someone new to the environment. These could include tools
like: pharo, sunit, seaside, (some easy clean persistence
layer), magritte, pier, swakom, moose, glamour on steroides
(see previous point). Maybe integrating these tools and
providing a nice dashboard could be another good GSOC target..
Hope some of this makes sense.
Welcome feedback and comments.
Best regards,
Graham
Dennis Schetinin wrote:
� and observations �and questions � mostly inspired by
GSoC Mentor Summit
- Mentor Summit was a great event! I didn't expect it to be
THIS :) Very pleasant �and very hard for me: so many people,
language and culture shock :) Great experience for me
personally. Thank ESUG for choosing and sending me there.
- Bad news: Smalltalk is not popular. Well, it's not that new
actually, we know it. But I didn't manage to fix it :)
Seriously: actually, it looks like everybody knows Smalltalk
(they know it existed I mean; few knows it still exists), but
it is treated like a black and white movie. People say "wow!
it's cool" and go to see Avatar. :( So developers don't take
Smalltalk seriously. We (Smalltalkers) know it's a mistake.
But we have to show that for others. And I found myself unable
to do that there. I found language and, more likely, culture
barrier is too big to overcome. I didn't manage to set up a
two-way communication with others. So I listened mostly.
- And I've heard many interesting ideas� apparently,
organizational ideas mostly. I need some time to process them.
So, for now I'll just outline some directions�
- Did we summarize our GSoC results? I thought I've missed
them, but apparently we didn't do it. At least I found only
this page http://code.google.com/p/google-summer-of-code-2010-esug/downloads/list.
I didn't care much before, but now I think it is very
important to look closer at the projects we did within GSoC,
understand where we succeeded; where we failed; did we benefit
and could we get more; make some plans for the future... etc.
- I think we should pay more attention to GSoC. It is very
important for our small society. Of course, we can't be sure
smalltalkers will be invited again next year. (One of the
things I tried to understand at summit but still I don't: how
does Google select mentor organizations?) But this work will
be very helpful, useful,�advantageous� what ever.
- We should be more serious about monitoring and controlling
our projects. Since money are involved here, we have a right
to. That's money from Google, but still. I think it should be
a bit different from the way free projects are evolved within
Smalltalk society. Since we have such opportunity we have to
benefit as much as we can.
- Smalltalk gives me competitive advantages. For that matter I
don't want to :)� but now I understand even better: we have to
promote Smalltalk. I know everybody knows that, but I still
want to state it once again. And promoting is not only about
advertising and praising. We should be more open. We should
find a way to start some cooperative projects with other
societies/languages. I don't know how to do it. And it's
extremely hard for me as I believe in Smalltalk superiority :)
But still we have if we don't want Smalltalk to die. In
general, it looks like making Smalltalk more open should be
our priority, and this is one of the few ways to enhance
prestige of Smalltalk among developers.
--
Dennis Schetinin
_______________________________________________
Esug-list mailing list
Esug-list@lists.esug.org
http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org