In Progress – 2016+

The past year has been fairly quiet for me, in terms of Smalltalk/Pharo projects. I started a new job at MIT CSAIL working for the Solid project (repo), creating a platform for radically decentralized data-centric applications. This has meant a lot of learning and unfamiliar territory — RDF and the various components of the Semantic Web tech stack, learning to write isomorphic Javascript (same codebase on Node.js/server and the client/browser), and diving deep into cryptography and decentralized authentication.

Some notes from the past year:

  • Been doing a lot of RDF work, as it is central to the current Semantic Web community. And while I haven’t found any RDF parsers in Smalltalk or Pharo ecosystems, I think the JSON-based JSON-LD RDF serialization format might be the easiest route for getting some basic RDF capability into Pharo.
  • There are some fantastic JSON-based standards out there, including JSON Schema, the JOSE suite, which includes JWT/JSON Web Token and the corresponding JWS for signing and JWE for encryption standards. My colleague and I have been working on an ecosystem of isomorphic Javascript libraries to support the JSON Schema / JOSE stack. I am of course curious about what is the state of the art in JOSE-related support in the Smalltalk world, but have not researched it yet. Definitely something to investigate.
  • The state of the art in decentralized authentication is the OpenID Connect series of standards, based on trusty old OAuth2. Just like with JOSE, I wonder if there are any OIDC libraries in Smalltalk (I know there are at least a few for OAuth2?).
  • I’ve signed up for the upcoming Camp Smalltalk 2017 in Raleigh/Durham – very exciting!
  • The updated book, Pharo By Example 5 has been released recently! I am incredibly proud to have helped editing it!
  • I am still intending to continue working on the Phriak database driver, and at least bring it to Riak 2.0 feature parity. I wonder if the ProtoBuf library for Pharo is in usable condition by now?
Advertisements