
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: o Link Smalltalk to "sexy" topics that have current mindshare - e.g. CloudFork is a good example. o I would like to see a GSOC project to address semantic triple store capabilities and a sematic web application of these - think Freebase o 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. ) o 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
1. 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. 2. 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. 3. 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… 4. 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. 5. 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. 6. 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. 7. 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