project

What do you do for a living?

I went to a local coffee shop and a talkative man behind the counter asked what I do for work. I told him I’m currently writing three books on computer programming, one young adult novel, and a mindfulness app for iOS and Android, in addition to running this website. When you say it out loud it sounds a little crazy, but in the midst of it it’s not a problem, I like bouncing between the projects.

How to create a Dart project manually

If you want to create a Dart project, probably the best way to do that currently is to use Stagehand:

Once you install that you can create new Dart command-line applications like this:

// create a command-line application
stagehand console-full

However, if you just want to create a little Dart project manually, you can also just follow the steps below:

My new `sbtmkdirs` command alvin August 28, 2019 - 12:03pm

Motivated by GraalVM, I rewrote my sbtmkdirs command using Scala. Here’s a link to the new Scala `sbtmkdirs` project on Github.

The Scala community build project

Scala community build is an interesting project, which is described like this:

“This repository contains configuration files that enable us to build and test a corpus of Scala open source projects together using Lightbend's `dbuild`. How big is it? It’s 3.2 million lines of Scala code, total, from 185 projects (as of January, 2019), and takes about 15 hours to run.”

“Why do this? The main goal is to guard against regressions in new versions of Scala (language, standard library, and modules). It’s also a service to the open source community, providing early notice of issues and incompatibilities.”

How can I tell what version of SBT my project is using? alvin December 27, 2018 - 1:44pm

At the moment this is kind of funky, but I find that the best way to determine the version of SBT is to move to a temporary directory and then run the sbt sbtVersion command:

“Kotlin Quick Reference” book

Table of Contents1 - Kotlin Quick Reference2 - It’s free3 - It’s open source4 - A caveat5 - Contributing6 - The Kindle version7 - Downloads

Somewhere in mid-2017 I started working on a Kotlin programming book, but then I had to get away from it to work on other things. When I got back to it recently I looked around and felt like the world didn’t need another “Introduction to Kotlin” book — there are a couple of good ones out there, including Kotlin in Action, and the kotlinlang.org documentation is excellent — so I decided to ditch the project completely.

Back to top

Kotlin Quick Reference

But then when I started writing some Kotlin code again I realized that what I really needed was a quick reference. I didn’t want to have to dig through a tutorial book or website to find what I need, I just wanted something like a large cheat sheet where I could quickly find the Kotlin syntax and examples for whatever I was working on at that moment. So I decided to strip down what I had already written and create both a book and a Kotlin Quick Reference website.

Pulled a Steve Jobs and canceled my own project

I’ve been working on a Kotlin book on and off for the past few months, and this morning I pulled a Steve Jobs on myself and canceled the project, even though it’s about 75% complete (by chapter count).

The problem with the book is that at this point it doesn’t contain anything unique, although arguably my way of explaining things might be better than other approaches. Unlike the Scala Cookbook, which provides solutions to common Scala problems, and Functional Programming, Simplified, which provides a unique approach to explaining functional programming in Scala, I don’t feel like there’s anything new here.

So, in short, without getting into the details of what’s next, the “vision guy” part of me decided that there are better things to do with my time. (And if you’ve ever been on a project that was canceled and you thought it was hard to take, imagine canceling your own project.)