Blog Posts

HTTPSing Your WebsiteSeptember 06, 2017

Getting HTTPS on your site is all the rage these days, for some good reasons. Google's search rankings take into account whether a site is HTTPS or not. Google Chrome is going to start telling people your site is "Not secure" under certain circumstances, starting in Oct 2017. (It already shows a less obtrusive "i" symbol.)

Keep Reading →
Two years ago I switched careers from animation to programming. I talked about my first week's of bootcamp experience in my first post on this blog but never really put the whole story anywhere. It was a pretty non-traditional trajectory, which is all the rage these days, so I thought I might write it up and see if anyone gets anything out of it. Inspiration or entertainment or whatever…

Keep Reading →

JavaScript NLP Tree ParserJune 22, 2015

As part of the Crowd Parser project, I was working on a more sophisticated dependency tree parser to make an improved negation layer and make sure the positive/negative words used to score the tweet were actually referring to the keyword we were looking at.

Keep Reading →
Crowd Parser was our final thesis project at Hack Reactor. Our team of 3 had 3 weeks to work on this project, so we decided to get a little ambitious. The key things we wanted to work on were: (1) Big data, (2) Natural language processing (NLP), (3) Large-scale data visualization...

Keep Reading →

Hack Feed - Legacy ProjectJune 01, 2015

The "legacy project" at Hack Reactor was part of our introduction to real-world coding situations, specifically a very common situation where you have to take over and add to an existing codebase. A previous team had built an app (in this case Hack Feed, a pretty cool app that gives you an enhanced UI to view Hacker News)...

Keep Reading →
ItemChimp was a weeklong group project - our first group project at Hack Reactor. This app allows you to compare reviews for products on online stores - specifically Wal-Mart and Best Buy so far. Usage is simple - you search for a product by keyword, and the app will bring up keyword search results from both stores...

Keep Reading →
If you've ever tried to process emojis in JavaScript, you will understand that they are the devil. Most people dealing with emojis in text data just either pass them through untouched, or remove them as garbage that doesn't need to be evaluated. The second approach...

Keep Reading →
The power set problem is one of those algorithms that turns out to be a bit trickier than they appear on the surface. Like the five stages of grief, there are 3 common stages for being assigned a power set problem. "This looks pretty simple, it'll probably take about 10 minutes." "This problem is a hell from which I will never escape." "Oh, actually it was pretty simple If anyone is on stage 2, I…

Keep Reading →
I was talking to some of my classmates the other day about how we always get native JavaScript array methods mixed up. Even if you're fairly experienced, it's easy to get them confused with Underscore.js methods and array methods from other languages, if JavaScript isn't your only language. So I made this cheatsheet!

Keep Reading →

D3 Animated Cluster GraphMay 03, 2015

(The data in the demo above is randomly generated dummy data and changes every time you refresh.) As part of our Greenfield project (our first group project), I'm working on using D3 to display our data (reviews collected from different retail sites) in a cool way. My idea for this chart was that each dot represents a single review. The color indicates what site it's from, the size indicates how…

Keep Reading →
Based on a suggestion from the Cracked forums, I made Poetry Pal (name courtesy Brandon Ellis). It gives you a template to write different forms of poetry (haiku and sonnet are currently available) and checks your syllable count and rhymes (meter checking is on the todo list).

Keep Reading →

Dumb Express.js MistakesApril 22, 2015

My excuse here is going to be that I'm new to Express.js, but hopefully this will help someone else who is also new. I spent a couple of hours banging my head on a pretty dumb mistake due to a misunderstanding of Express middleware. An Express middleware function is a function that can be run in the middle, between your route and your explicitly written callback, taking data from the function…

Keep Reading →
Play it here! For hack night a couple of weeks ago, I followed a 30-minute live coding demo by Mary Rose Cook where she made a simple Space Invaders browser game using only vanilla Javascript and HTML - no libraries, no frameworks. I added some minor improvements of my own, mainly: Different colors for the bullets, player, and invader "Start Game" / "Play Again" buttons, with "Game Over…

Keep Reading →
We had an assignment where we came up with an algorithm to solve the classic n-Queens puzzle . (The problem in brief: Given an n x n chessboard, place n queens on it so that none of them can attack each other. For any given n, how many configurations are there where this is true?) This is obviously a computer problem because by n = 13, for example, there are 73,712 combos, which nobody should be…

Keep Reading →

Breadth-First Tree TraversalMarch 31, 2015

As part of our data structures sprint, we implemented a bunch of data structures, most of which had a good amount of resources out there adequately explaining how they worked. One thing I had a bit of trouble finding good explanations for was a breadth-first tree traversal using a queue as a helper, so after finally figuring it out, I thought I'd try to lay out how it works. So let's start out…

Keep Reading →
We learned about bind() today, which is apparently pretty hard to wrap your head around, but I think I got it. Official documentation here: I guess there's two main reasons to use bind() : You need to permanently attach a context to a function no matter how or where that function gets called later. You need to permanently attach some default arguments to a function that are always passed in…

Keep Reading →
So it's week 1 of the Hack Reactor course proper.  My class is the 5th Remote Beta class (all instruction conducted online), or HRR5.  I guess now's the time to share some first impressions. Before the course They get you off to a pretty good start with 3 weeks worth of precourse work, which is good for both confidence building and actually teaching you stuff.  Some interesting assignments…

Keep Reading →