Thursday, October 12, 2017

Allen Wirfs-Brock - A Modular Journey To A World Spanning Virtual Image

Interesting video on the history of Smalltalk at Tectronix from Allen Wirfs-Brock

 and the slides are available here.

Libusb binding and HID for Pharo

There is a Libusb  binding (using UFFI) and support for the Human Interface Device - HID (that uses the binding but is written in pure Smalltalk) for Pharo. Code is on GitHub.

Read the announcement

Software exploration tool Moose2Model for developers (ABAP, SAP, Java, Smalltalk, …) – Roadmap

There is a Software exploration tool Moose2Model for developers (ABAP, SAP, Java, Smalltalk, …) written in Pharo. You can now read the Roadmap. You can see some of this in the ESUG 2017 presentation of Rainer Winkler

Pharo success story: Driving ATMs in Moscow streets (Videos)

As I already reported here Pharo 1.1 was used to build ATM-kind software in Russian Bank. Such devices could be found in Moscow streets. Now there are two videos available on that, one showing the system in action

 and one showing it in Pharo development environment:

Tuesday, September 19, 2017

Kobald - Web Usability as a Service

Kobald - Web Usability as a Service. A tool to find usability issues on your Web App automatically. Developed at LIFIA - Universidad Nacional de La Plata, Argentina using Pharo and Seaside.

See it live at and check the code at

Friday, September 15, 2017

Smalltalk ENVY

Nice - this blog post brings back some memories on ENVY - a Smalltalk source code management system. I used ENVY in the past too and still have a signed copy of the book "Mastering ENVY/Developer" in my bookshelf

And yes - after coding in VisualAge for Smalltalk I also used VisualAge for Java which was really a nice tool for that time - it lowered the Java pain. Because at that time most Java people coded in editors like Notepad while VisualAge for Java was a full IDE with Browser, Debugger and all. It was built on top of the Smalltalk version like most of the members of the VisualAge family


Tonel is a file-per-class format for monticello repositories. It allows to store the class definition and methods in a single file. The idea is to use this for a more performant git support in Pharo (as currently a file per method is used). Code is in

Monday, September 11, 2017

Updated Pharo Launcher

According to Peter the updated Pharo Launcher automatically downloads the proper VM. No more VM juggling.

First-class undefined classes for Pharo

Lets assume a class A requires a class B which is defined in a different package than class A.

If you defined the wrong load order of packages (so you load the package with A before the package with B) you might easily hit the problem of "Undefined classes".

Pharo will now address this issue better by having first class entities representing missing (or yet undefined) classes. It is already planned for Pharo 7.

Here are the slides from ESUG 2017 on this topic to give you more informations.

Thursday, September 07, 2017


Studio is a debugger for the data produced by complex applications. It is ongoing work based on Pharo and Roassal - but nonetheless interesting. Read more here.

DataFrame - Towards exploratory data analysis for Pharo

Intro video to DataFrame in Pharo. Code is here.