Category: Development

  • Google Summer of Code – candidates needed at once!

    The Squeak community are working with ESUG to submit a joint entry to this year’s Google Summer of Code but need your help at once!

    Squeak participated in GSoC  in 2007 and 2008 but in 2009 Google started to focus on bigger communities, so Squeak developers are working with ESUG this year to put together a joint submission with other groups including open-source projects from all Smalltalk dialects, including Pharo, Smalltalk/X, GNU Smalltalk and Cuis as well as commercial distributions such as VisualWorks, VisualAge, Dolphin and Gemstone. Entries from cross-platform projects like Seaside, AidaWeb, Magma, etc. will also be welcome.

    Mariano Martinez Peck will administrate the joint application supported by Janko Mivšek. They need to supply Google with information about ESUG as a mentoring organisation and a list of ideas/projects,  each with a description and a nominated mentor. If their submission get selected by Google they will be told how many projects Google will sponsor — the mentor receives $500 and the student who volunteers to work on the projects will receive $4500.

    Due to a late start, they are very near to the first deadline! They have until 12th March 2010 to submit all the information of the mentor organisation and give the list of projects with mentors. So as a matter of urgency they need your projects. They’ve put together a webpage to hold details, so if you have project suggestions, send them a short title and a paragraph (for the moment) explaining the idea. You can also reply to Mariano’s email on most of the key developer mailing lists including the squeak-dev mailing list.

    Good mentors are often as hard to come by as good ideas, but often being helpful, being aware of the dates, answering emails, etc. can be more important than the Smalltalk knowledge, so if you’re able to act as a mentor or a back-up, let them know at once!

    For some inspiration, you can see the ideas proposed in previous years:
    2007: http://wiki.squeak.org/squeak/5936
    2008: http://wiki.squeak.org/squeak/6031
    2009: http://wiki.squeak.org/squeak/6120

  • New Development Model, two months on.

    It has been two months since the Squeak Oversight Board first put forward their “New Community Development Model”. At the time the proposal caused a lot of heated debate on the squeak-dev mailing list, with concerns being expressed that similar efforts in the past had had little lasting impact, and had caused great frustration for those pushing those earlier efforts.

    The motives of the Board were to “get rid of as many hurdles as possible in the contribution process [and]  to enable the community at large to improve Squeak, the core of the system and its supporting libraries”.

    So, two months down the line, how’s it doing?

    If sheer volume is any criterion, it looks like a great success with over 500 packages uploaded as patches to 3.10.2 and over 40,000 downloads from the trunk (see bottom of the linked page for up to date statistics).

    The results of all this activity are available to use and test in the daily updated image published at http://ftp.squeak.org/trunk/ (needs a recent VM). If you want to contribute, you can add new patches at http://source.squeak.org/inbox/, or ask one of the current developers for access to the developers repository at http://source.squeak.org/trunk.

    If you just want to get an idea of what’s going on, check out the commit logs that are getting posted to the squeak-dev mailing list, and to the #squeak irc channel on freenode.

  • SOB lays an egg – what will emerge?

    phoenix

    Those of you who read the squeak-dev mailing list will know that the list is currently going through the annual frenzy of discussion about the nature and direction of Squeak, including much to-and-fro over such topics as: the original vision of the founders of Squeak; the tangled relationship between Etoys and the rest of the Squeak environment and community; the reasons behind the Pharo project and how much its goals really differ from those of Squeak; whether children should be locked in the nursery or allowed to roam freely into every room of the house; and much more. If you have time (and some light body armour), it’s well worth reading through the hundreds of emails that have been written which explore and interpret much of the history and philosophy of Squeak.

    This discussion has motivated the Squeak Oversight Board to look at one topic that caused much debate: how to manage the development of Squeak. Driven by a concern that there are many hurdles that discourage wide-spread participation in the contribution process, the Board have put forward a new community development model that they hope will “enable the community at large to improve Squeak, the core of the system and its supporting libraries”.

    Based on processes that have been shown to work in commercial settings, the Board’s model includes the use of Monticello as the primary source code management system, free access for the developers to the main repositories (trunk, tests, and inbox) and an incremental update process for both developers and users of Squeak.

    Obviously, such a change has sparked off its own debate, and important questions are being hammered out on the squeak dev mailing list. If you care about the health of the Squeak environment, its future direction, and the future support for your own favourite applications, this is a key moment for you to understand and contribute to the discussion which is continuing on the squeak-dev mailing list (see archives), on irc, and on the Board’s blog.

  • Soup for Squeak

    squeaksoup

    Zulq Alam has been working on Soup, a Squeak port of Beautiful Soup, the tolerant HTML/XML parser written in Python, which is extremely useful when you need to scrape data from a web page. He has recently announced a working release and gave some example of its usage.

    Zulq notes that there’s still plenty of work to do on this port:

    • No attempt is made to deal with different character sets and encodings.
    • The parser will not convert entity or char references.
    • The parser will not accept options such as whether to convert entities, which entities to convert, what to parse, etc.
    • The parser will only do HTML; there are no configurations for other XML flavours yet.

    He adds that the project repository is globally writable, and he looks forward to your feedback and contributions.

  • Squeak goes to Mars

    mars

    Esteban Lorenzano gave Squeakers on Mac OS X a nice little Christmas present to see out 2008, with the release of Mars, an MVC framework for Squeak built using Cocoa. Mars is a plugin, and will run in any fork of Squeak, and as you can see above, is integrated with OmniBrowser.

    Esteban notes that one of his main objectives in developing Mars is to keep it small and simple, in order to allow it to be executed in small environments such as the iPhone, (using John McIntosh’s new VM and Edgar de Cleene’s SqueakLightII minimal images).

    Mars is MIT licensed, and can be downloaded from the Mars homepage, which also has posts following the progress of Esteban’s work. Esteban adds that Mars is still in the pre-alpha stage, and he looks forward to bug reports, feature requests, comments, and of course, code.

  • Building user interfaces in Squeak

    maui

    Chris Muller has released a thoroughly updated and documented version of his user interface framework Maui. Chris has described Maui as a “naked objects” Morphic-based UI builder that allows rapid UI creation based on object-message composition.

    Maui includes a number of light satellite frameworks that supply various application services like documents, object-search, background process management with progress monitoring. It also provides a number of tools which allow applications to be synthesized quickly, without the need to write any user-interface code.

    Chris has written a fifty page document describing Maui and giving examples of how to use it to build user interfaces for complex applications. In this document he also discusses future work for Maui, including the tantalising possibility of extending it to support the development of web applications.

  • Aliens coming to Squeak

    Aliens approaching Squeak

    John McIntosh has ported Newspeak‘s Aliens FFI implementation to Squeak. John notes that the port is in its early days, and more work and support will be needed to implement Aliens support across the full range of Squeak platforms.

    As a result of this interest in Aliens, Gilad Bracha has written a post giving an overview of Aliens, the thinking that went into it, and how it works. FFI allows a programming language to make use of services written in another language, and Gilad suggests that the lack of a standard, fully-featured FFI has been an ongoing problem for Smalltalk developers. In particular, John writes that “Squeak VM’S existing FFI has been found to be buggy bloated and slow” (though see Andreas’ comments on this below).

    John’s code, under the Apache licence, is available at http://www.squeaksource.com/Alien.html, and more information on his implementation can be found at the Alien swiki page.

  • Exploring history using Squeak multimedia

    albaplata

    Germán Arduino writes with news of a very interesting multimedia application his company has been developing for the Spanish state of Extremadura. The application consists of a number of units, each developed in Squeak using the multimedia-application framework FMA, originally developed by Diego Gómez Deck. The application will be available in Spanish, English and Portuguese, and is intended to be used by visitors to the region. It includes a variety of games, puzzles and quizzes to help the user test their understanding.

    Germán notes that, as usual with all the Extremadura projects, the software is open sourced and is available to download from Squeaksource, under the name Albaplata project.

    Germán’s post on the project has more information and screenshots.

  • Monticello 2 podcast

    Monticello 2

    As we mentioned recently, Colin Putney has been working on Monticello 2, a ground-up rewrite of the distributed optimistic concurrent versioning system for Squeak code written by Avi Bryant and Colin Putney with contributions from many members of the Squeak community. This version offers a new, more flexible and more performant versioning engine, as well as many improved features.

    James Robertson of Cincom recently spoke to Colin on his Industry Misinterpretations podcast, where they discussed the changes in the new version, and how these would help developers to maintain and share code. The podcast is available here.

  • Smalltalk on Eclipse

    Having seemingly started to lose interest in Smalltalk when it sold off its VisualAge for Smalltalk business to Instantiations, it looks like IBM is now keen to develop its own Smalltalk IDE. The IBM Smalltalk Tools Development Team is working to support Smalltalk in Eclipse. They’re working with a strong understanding of Eclipse and ENVY Smalltalk, and with support from the Instantiations team, and seem to be making great progress: the screenshot above shows a class browser perspective in Eclipse.

    Although the product is still only available internally, the team are sharing their experiences in developing what they’re calling “WRATH”, having presented updates at EclipseCon and Smalltalk Solutions, and talking to James Robertson on the Industry Misinterpretations podcast.