As web developers, we’re required to use innumerable tools throughout the day, picking up this hammer or that chisel to write better code everyday. But luckily for us, our tools are a lot more sophisticated than the run of the mill hand tools.

One of the things I love most about building software is the ability to work on technology as advanced as integrated development environments (IDEs, for short). To be sure, Microsoft’s VS Code is one of the best tools in the space.

VS Code logo

If this sounds like it’s going to be a free ad for Microsoft’s Visual Studio Code…


As almost anyone who works with the language knows, JavaScript is an immensely powerful language, and is used by developers across the stack. When it first burst onto the programming scene, it changed the way software engineers work, and is far and away the most widely used language by professionals today.

JS’s rank among professional developers

But as powerful (and fun) as JavaScript can be, it is just one language, and it has certain limitations. You can’t expect it to do everything. Coders coming from other languages may find themselves thinking, “There’s no sleep() function in JavaScript? …


I’m taking a small break from my regular blog series on creative code because I think this topic is so important. While I’m advancing my design skills with p5.js week by week (and enhancing my JavaScript skills in the process), I’m still a professional full-stack software engineer, eager to build applications and websites that will leave the world better than I found it. Therefore, I need to keep my skills up to date.

In my professional work building hearth.io, I’m exposing myself to the latest technologies used to build the web. One of the pieces of tech I’ve been immersing…


As followers of this blog know well by now, I’m trying something a little different with this series. While I’m continuing to work on my full-stack web applications (and improving my GraphQL, Git, TypeScript, and countless other skills), I’m also blogging through Code as Creative Medium (CaCM), a workbook and collection of exercises designed to teach both coders about art and artists about code. By working in p5.js to create a unique piece of art every week, I’m giving myself an opportunity to enhance my JavaScript skills while making interesting pieces of design. …


There are countless ways to get involved with creative code. While it’s true there are several languages that creative-type developers use to write code, there are also dozens of libraries that facilitate the process, and coders could go down rabbit holes for years delving more deeply into the various tools at one’s disposal.

As I explained last time on this blog, each week I will be chronicling my creative coding journey on Medium. For my next entry in this series, I will get up and running with actually writing code, beginning my creative coding journey by in p5.js. …


My goal as a programmer is to write beautiful code.

Throughout time, human beings have always expressed themselves through art.

Art has evolved over time, as have the tools that artists use. Creative people are always expressing themselves with ever-changing methods and techniques, with new forms of art usually being derived from new sets of tools. Primitive forms of painting made way for more advanced forms, which in turn made way for film and countless other modes of artistic expression.

I’m by no means an expert on creativity or the artistic process, though much of my work has taken an…


As programmers, we have to use our creativity on a daily basis, utilizing our imagination to bring our ideas to fruition and solve complex problems. As noted computer scientist Maria Klawe has said, coding is today’s language of creativity. However, while computer programming allows for the expression of creativity itself, anyone who has ever worked in 0s and 1s knows that computers operate a little differently. Computer science is still very much an engineering discipline, and programmers are not encouraged to approach algorithmic complexity like Jackson Pollock.

To be sure, CS students know they should bring a “measure twice, cut…


The phrase “Learn to Code” is seemingly ubiquitous today, as are the number of resources future coders can use to hone their skills. While O’Reilly books and YouTube channels offer plenty of opportunities to improve, many self-learners still seek out some kind of interactive tutorial, one in which students can learn on a single, integrated platform. Taking note of this when I took the plunge into the software development space, my first foray into coding was on Codecademy.

On first glance Codecademy is an extremely useful resource for learning to code, offering detailed courses on 12 different programming languages to…


As programmers, we often aspire to be the good kind of lazy. It’s what attracted many of us to the tech sector in the first place. With code we’re able to optimize and in many cases automate our daily tasks, leaving us to spend our time how we please. The same rules apply to the way we write code. Why write dozens of lines — meticulously checking every possible spelling mistake, unaccounted for white space, or forgotten colon until you can feel your eyes beating— when a shorter solution works just as well? …


As anyone who has ever worked with it knows, Ruby is an incredibly powerful object-oriented programming language, one that has enough functionality to be used in production code, but flexible enough to be learned by novices. The creator of Ruby — Yukuhiro “Matz” Matsumoto — said his goal was to make Ruby “natural, not simple,” in a way that mirrors life.

Our fearless leader Matz

One of the most impressive aspects of Ruby for budding Ruby-ists are the vast number of libraries, commonly known as gems, freely available for use. …

Jacob on Software

My name is Jacob. I build software.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store