Smalltalk and Clojure: quick start

Before attending a Smalltalk meetup and a Clojure dojo this week, I spent the morning getting to the “hello world” stage with these languages. Smalltalk After watching Bernat Romagosa’s video, I chose the Pharo variety of Smalltalk. I then followed Richard Kenneth Eng’s tutorial to dip my toe into the Pharo IDE, itself written in Smalltalk. Clojure Having flipped through the first chapters of Brave Clojure before, I was aware of the significant set-up costs.

READ MORE

Random HTML Attribute

I spent last evening and this morning playing around with Andrew’s Random MDN page. The result is a remix, Random HTML Attribute. Looking through my old commits, here are main hurdels along the way:- The MDN webpage used in the original project is no longer actively maintained: see web archive version here. I therefore needed to look for an alternative page with a similiar structure. There were a few candidates but in the end I settled on this page.

READ MORE

From Passport.js to Project Mood: diary of a day's reading

1 Passport.js I started the day with the excellent “Concept” section of the documenation for Passport.js, a tool for adding user authenticiation with Express.js. I have been reading into the documentation for MongDB and Mongoose recently. The trouble with them (as of 2024) was that there was a very steep jump between the very simple quick start example and the full documenation. This made getting to grips with the materials very difficult: especially because Mongoose is a kind of “wrapper” around MongoDB native driver, and when I search for how things are done, search results often use two different sets of terms.

READ MORE

Pupeteer

1 Well thought-out side projects Despite some misgivings that I am veering away from my cirriculum, and more generally that there is such an ocean of talent out there, I spent much of Sunday exploring Andrew Healey’s projects on his website. The main reason is that they are just so well thought-out and explained! For example, one of his side projects is this website which (1) gets your location from your IP address and (2) plays you a soothing song if (and only if) it is raining in your locality.

READ MORE

Schema and Model in Mongoose (1 of 2)

The point of Schema Initially I was surprised that the code below logs anything out at all. const uri = process.env.DB_URL; const port = process.env.PORT || 3000; const localTest = "mongodb://127.0.0.1:27017/test" const express = require("express") const mongoose = require("mongoose") const app = express() app.use(express.static("public")) main().catch((err) => console.log(err)) async function main() { await mongoose.connect(localTest) } // There is no "goingCrazy" property in Kitten // There is instead a "name" property of the type String.

READ MORE