Globally Scoped

A Blog About Technology, Life, the Universe, and Everything.

Recent Posts

On Apple's M1 Macs

published on
Compared to the first-day adopters, I’m a bit late to the party here… but as of the end of February I’ve joined the ranks of ARM MacBook users. After two weeks or so of sustained usage, I’m impressed. The short version of how I ended up with it: I took my 2016 15" MBP in to the Apple Store (this was, I will note, a very interesting pandemic experience1) to get the keyboard and “service battery” message evaluated. Read More...

2020 in Review

published on
It’s been quite a while since I blogged consistently. Since I would like to develop a habit of writing again this year and there’s been a lot going on, it seems like a great time to drop a year-in-review post. Some background that I haven’t mentioned here: I was laid off from my old job in fall of 2019, then took a new contract-to-hire role much closer to home a few months later. Read More...

Better Know a Method! - Ramda's .Cond(), Part 1

published on
After spending a couple years away from C# and node.js programming doing a fair amount of ETL work and a lot of Java, I’m working on getting back into the swing of two of my favorite languages. Yes, I’ll admit it - my controversial take is that I actually like JavaScript a lot of the time. Like most languages, it’s not perfect, but it gets the job done as long as you’re careful (and do some testing) and its flexibility is both a blessing and a curse. Read More...

Flattening a List

published on
Getting back to writing articles after spending the better part of a month fighting off a sinus infection and helping my wife get over a nasty cold. Normally I love northeast Ohio, but I’m so over winter right now. I read a post a month or so ago asking why it’s so difficult for programmers to write code to flatten a list… so naturally, this got me thinking about it and I wanted to tackle it. Read More...

Bank Transactions with Ramda, part 2

published on
When we left off, we’d gotten our data imported from the CSV, run a map operation on it to add some extra metadata, demonstrated how to use Ramda to filter it, and had a quick demonstration of simple currying. Let’s move on. To recap, this is where we’re starting from: const fs = require('fs'); const csv = require('fast-csv'); const R = require('ramda'); function getTransactionsFromFile(fname) { return new Promise(async (resolve, reject) => { if (! Read More...

Parsing Bank Transactions With Ramda Js

published on
Recently, I’d wanted to sort through a bunch of transaction data from my bank to figure out what our spending trends were in a couple of areas. I suppose I could’ve done this quite effectively with Excel or Apple Numbers, but then I said, hey, that’s boring. :) I’ve been doing a lot of documentation and research stuff at work lately and really wanted to get my hands on a little toy project for a change of pace. Read More...

Installing a List of Extensions in Visual Studio Code

published on
I’ve been setting up a new OS X installation and wanted to quickly get Visual Studio Code set back up. Atom has a really handy command line utility, apm, that lets you do useful things like export a list of extensions and reinstall them elsewhere by passing in that list as a command line argument. Unfortunately, while Visual Studio Code’s command line utility allows you to get a list of extensions with code --list-extensions which you can pipe into a text file, it doesn’t appear to have any way to automatically install the extensions to that file. Read More...


functional (3) node (3) ramda (3) vscode (1)