The below is a post I originally posted on my first (failed) blog. While that blog didn’t work out quite right, I hope to keep many of the same ideals at heart when continuing (and hopefully maintaining) this blog, so I decided I may as well repost it here.


It is currently 2:14am on Wednesday, October 16, 2013. “Today,” (well really yesterday) at a ScottyLabs meeting (a student organization at Carnegie Mellon (CMU) that lies at the nexus of design and technology), my interest in the group showed through enough to the point where they entrusted a few low-level permissions to help out developing the various projects they’ve been working on right now, namely Print@ScottyLabs. As happens all too often, I am realizing just how much I have to learn: about technology, about college, about people, about everything.

But looking around (maybe I haven’t looked very far), I don’t see one central place where I can go to get help with all of this stuff, or at least the tech stuff. Obviously I can ask people if I really need it. The support structures are supposedly in place. In my experience, though, when you approach people for help on general topics, you get tossed back to the Internet as they say, “Google it.” While things certainly can be found on the Internet, for someone who just wants to be able to read about the answer without being overwhelmed by the details, it seems like there’s no good place to start.

What I Want

In this spirit of aggregating pieces of knowledge on the interwebs, I’d like to document my process of learning and researching. Here are a few of my goals:

Personal Reference

I want something to look back on if I can’t remember something. Say I’m wondering why in the world I even started this thing: I could look back at this post. It’s one thing to be able to find a site you had visited in your history, but it’s another to be able to read about exactly what you were using that site to do. Documentation is vastly underappreciated.


Everyone says it’s good to think about the way you think. I spent a lot of time in high school contemplating the effects of information overload due to the Internet, and I’m sure that as I start down this process, it’s only going to get deeper. In writing down my thoughts like this, I’d like to get some sort of structure to my learning so that I can keep the floodgates at bay.

Public Roadmap

If there are 300+ million people in America and 7+ billion people around the world, then statistically, there has to be someone just like me who’d like to have such a road map. If this is you, it’s my hope that these ramblings are useful.

Where to Next

So it’s getting pretty late and I’d like to get back to what I was learning about: MVC. (EDIT: It’s still late, and it’s even worse this time because I have exams this week… A+ Jake…) So hopefully, I’ll have time to keep developing this, whatever “this” is. I’ve been told that “There are only two hard things in Computer Science: cache invalidation, naming things, and off-by-one errors.” I have no idea what cache invalidation is (yet!), but the “naming things” bit is spot on.

So here goes nothing… I’m sure that in the very least it’ll be fun to look over these entries 5, 10, 20 years from now and think about how quickly things changed.

Jake on the Web

If you cared enough to read that far, you should consider following me on GitHub or paying a visit to my homepage. If this post was about one of my open source projects, make sure to star it on GitHub! I love hearing what people think, so feel free to comment, open an issue, or send me an email.

Vim and Haskell in 2016 on OS X

Stephen Diehl’s article “Vim and Haskell in 2016” does a great job of outlining the quickest way to get a quality Haskell development experience. His post presumes Ubuntu; here we presume OS X. Continue reading

Let’s Have a Chat about Encryption

Published on April 17, 2016

SML Dev Setup

Published on March 09, 2016