What is Zsh and why you should use it instead of Bash

Zsh (short for Z-Shell) is, in technical terms, a UNIX Command Interpreter (often nicknamed shell by the community) , and in more simple terms a command prompt for UNIX and Linux based computer systems. Yesterday, Software Engineer Ali Spittel announced on Twitter that Apple’s macOS Operating System will be changing its default shell to Zsh from Bash. https://twitter.com/ASpittel/status/1135718054556569600 I have been a long-term Zsh user, and I learned about Zsh from Thoughtbot’s laptop-setup-script on GitHub about a year or two ago....

June 5, 2019 · 5 min · Catgirl

Crystal Lang: Mapping JSON files in under a second

Logo of the Crystal Language Crystal’s performance is useful in IO intense tasks such as mapping JSON files into an object. Recently I worked on a project with my friend David Colombo. David needed to take JSON files, map the data onto an object, and insert it into a SQLite Database. This post describes mapping JSON files in Crystal. Background Previously, David had created a parser in NodeJS that reads through the JSON files containing structured data and inserts the data into an SQLite database....

June 1, 2019 · 7 min · Catgirl

Crystal Lang: Macros and how they're useful

Logo of Crystal Language The Crystal Programming Language includes a feature called Macros. Crystal’s Documentation states: “Macros are methods that receive AST nodes at compile-time and produce code that is pasted into a program.”. To simplify this means you can write code that writes more code. This post is a deep-dive into how to write macros and why they’re useful. What’s an Abstract Syntax Tree (AST)? To understand how Macros work, you should be familiar with the concept of an Abstract Syntax Tree....

May 25, 2019 · 5 min · Catgirl

Crystal Lang: Building my first web app with Amber

Logo of the Crystal Language Recently I heard about a new programming language called Crystal. Crystal is a self-hosted statically typed compiled programming language with C-like performance with Ruby-like syntax. I quickly fell in love with Crystal and the Amber Framework. This post will talk about my experience using it to develop a web application. This post provides a critical overview of what Crystal and Amber, can and can’t do for you....

May 19, 2019 · 5 min · Catgirl