I am working as a Software Engineer at Google. I received a PhD in Computer Science from the Software Composition Group of the University of Bern. I am an active open-source developer.
Projects
I am the author of various open-source frameworks for Dart and Flutter:
- PetitParser, dynamic parser combinators.
- Xml, a lightweight library for parsing, traversing, and transforming XML.
- More, more Dart: collections, caches, iterables, ordering, and formatting.
- Data, a fast and space efficient library to deal with data.
- State Machine, a simple, but generic state machine framework.
Also, I am the author of PetitParser for Java:
- PetitParser, a dynamic parser combinators framework for Java.
In the past, was involved in Seaside, a framework for developing sophisticated web applications in Smalltalk. I maintained the OmniBrowser framework, the Refactoring Engine and various other Smalltalk development tools. My Smalltalk Code Archive is still available. Some projects I am the author of are:
- PetitParser, a dynamic parser framework for Smalltalk.
- Builder, build and test Smalltalk images from the command line.
- Helvetia, language embedding without breaking tools.
- Gofer, work with groups of package in Monticello.
- Magritte, a generic self-described meta-model.
- Pier, an extensible object-oriented content management system.
- jQuery and jQueryUI for Seaside, change the way you program Javascript.
- Scriptaculous, let Seaside applications fly Web 2.0 style.
- Comet, HTTP server push extension for Seaside.
- SqueakSource, a Smalltalk source code repository.
Other projects I have been involved with:
- TextLint: Checks for common style errors in scientific writing.
- Black and White Photography: Winner of the 1998 ThinkQuest Swiss Web Awards.
Blogging
Don’t miss to check-out my Blog:
- Adding call/answer in under 35 lines of Dart codeThis is a follow up to Seaside in under 100 lines of Dart code. Over the past few days, I've added some more examples and a bunch of new features — such as the ability for sessions to expire — to the GitHub Repository. The most interesting change is another key-defining feature of Seaside: the ability to create a flow of components in normal c...
- Seaside in under 100 lines of Dart codeThe component model of Seaside is great; so are the callbacks and the state handling. Replicating these core features in Dart turns out to be strait forward: * For the web-server I use the shelf package. Request handlers are specified using functions or function object that receive a Request and return a Response. Our application is such a functi...