Posts

Showing posts from May, 2022

WASM development via the Grain Programming Language

Image
Spending my Saturday morning reading about GPL, a language aiming to feel "largely familiar and homey, with many quality-of-life improvements that you’d come to expect of any new-age language 📃 https://t.co/JAmiErT3Yn 📺 https://t.co/bKfPQjj7p6 🏷 #webassembly #wasm — Sami Lamti (@SamiLamti) May 28, 2022 Installing Grain from Source ⚠ Fair warning: This takes a long time (60+ minutes on my gaming laptop, granted I was doing 5 other things at the same time as I normally do). With node and npm already installed, I started following the instructions on XXX. They didn't quite work for me on my Windows machine, however, why I instead ending up doing the below: Enable Developer Settings Run a bunch of commands git clone https://github.com/grain-lang/grain cd grain npm ci cd compiler npm install cd ../cli npm install npm run build-pkg npm run link [Environment]::SetEnvironmentVariable("Path", $env:Path + ";" + (npm bin --global) -join "`n","Us

Random thoughts / lessons learned from a tech lead / people manager

Image
Retrospectives are all they are hyped up to be. Reflect back on the team's performance / accomplishments regularly (monthly; set a calendar event/reminder), as it's all too easy to just continually focus on the next thing and never remembering to cherish all the good that has been done. Retrospect with each team member on a regular cadence (e.g. quarterly; again, use your calendar), revisiting goals set in the past. This will help both of you to realize what has been done - and that needs to be celebrated! - and what has slipped between the cracks. Collect accomplishments on each team members and the team as a whole. I have a separate file for each of my engineers, summarizing their next/immediate goals and their individual achievements. As I notice them doing something good, I jot down the date, their action and some context and then bring that up both in our weekly check-in and also in our regular 1-1.  When you've delegated something (e.g. facilitation of a meeting), rea

Building a provisioning script

This article describes how you'd create your own PowerShell-based provisioning script. In the given example, we'll provision a pre-configured virtual machine which can be used for e.g. coding interviews. The script utilizes an ARM template that has been exported from Azure's Create a virtual machine  wizard , where reasonable default values have been set up, e.g. which machine size and which OS to use. Once you've gone through the wizard, it lets you Download a template for automation . Extract those files into the folder where you intend to author your script. Speaking of ... First we ensure that we have the az client tools installed, as we are dependent on them: if ( $null -eq ( Get-Command az -ErrorAction Ignore)) {     $installer = .\Download-File.ps1 `         -DownloadUri 'https://aka.ms/installazurecliwindows' `         -OutputFileName 'az-cli.msi'     Start-Process "msiexec.exe" '/i' , $installer     Write-Host "-  

Moving commits from main to feature-branch

For when I forget to change into a feature-branch before committing a bunch of changes next time, here's how I fixed it this time: git checkout -b further-refinement Create the feature branch I should've created before I started to mess around with code! git checkout - Return to the main branch. git log -10 --oneline Show the 10 latest commits from the main branch, each on a single line. 👀 find the last commit you'd like to keep on main (moving the rest to your feature branch) git reset --hard <commit-id> Remove the commits you'd like to move from the main branch (they'll still be in your feature branch). git checkout - Return to your feature branch. git push --set-upstream origin further-refinement Push it (to GitHub). gh pr create --fill Create a PR via the GitHub command line tools (or look at the /pulls list in GitHub and create from there)