Jekyll2018-12-28T15:31:31+00:00/feed.xmlmarginal propensity to codejust a blog about learning how to code
Removing Single Table Inheritance from Rails2018-12-09T00:26:16+00:002018-12-09T00:26:16+00:00/blog/2018/12/09/removing-single-table-inheritance-from-railsWhen Learn’s main codebase came into existence five years ago, Single Table Inheritance (STI) was pretty popular. The Flatiron Labs team at the time went all in on it - using it for everything from assessments and curriculum to activity feed events and content within our growing learning management system. And that was great- it got the job done. It allowed instructors to deliver curriculum, track student progress, and create an engaging user experience.Fixing Random, Intermittent, and Flaky RSpec Test Failures2018-10-27T15:54:04+00:002018-10-27T15:54:04+00:00/blog/2018/10/27/fixing-intermittent-and-flaky-rspec-test-failuresIn my view, there’s almost nothing more annoying than a randomly failing, intermittent, flaky test failure. Run the test suite locally and everything passes. Run it on a CI service, and your build fails! A single red! 🔴 Rebuild it again, and somehow, magically, it goes green.Living with Legacy JavaScript: Event Proxies, App Seams, and the Road to Rewrites2018-09-25T00:33:12+00:002018-09-25T00:33:12+00:00/blog/2018/09/25/living-with-legacy-javascript-event-proxies-app-seams-and-the-road-to-rewritesWhich Data Structure Should I Use? An Elixir Cheat Sheet2018-08-05T14:14:24+00:002018-08-05T14:14:24+00:00/blog/2018/08/05/elixir-cheat-sheetAs an Elixir novice, I think one of the hardest things about getting started in Elixir is figuring out what kind of data structures to use. My team has recently started going all in on Elixir, so I’ve been trying to brush up in earnest. Often, however, I’ll be reading over some of my team’s code and have a hard time deciphering what I’m even looking at. The syntax looks very similar to Ruby (which I know pretty well), but the patterns, conventions, and data structures are just slightly different. In my mind, that makes sense since it’s a functional rather than object-oriented language: where you would use objects in Ruby, you’re probably spawning processes instead in Elixir.How to Give and Get Better Code Reviews2018-08-04T16:20:01+00:002018-08-04T16:20:01+00:00/blog/2018/08/04/how-to-give-and-get-better-code-reviewsThis post originally appeared on Hackernoon.How Refactoring Helped Me Give Learn.co’s Lesson Page a Crazy Performance Boost2018-07-01T18:07:10+00:002018-07-01T18:07:10+00:00/blog/2018/07/01/how-refactoring-helped-me-give-learncos-lesson-page-a-crazy-performance-boostHow the Lights on Learn.co Work2018-06-15T01:18:17+00:002018-06-15T01:18:17+00:00/blog/2018/06/15/how-the-lights-on-learnco-workI originally wrote this post for the brand-new Flatiron Labs Engineering Blog, but I’m reposting it here.Using Window.postMessage to resize an iframe2018-05-22T03:03:38+00:002018-05-22T03:03:38+00:00/blog/2018/05/22/using-windowpostmessage-to-resize-an-iframeConfiguring Courses with YAML2018-04-07T16:11:24+00:002018-04-07T16:11:24+00:00/blog/2018/04/07/configuring-courses-with-yamlI’ve done a lot of onboarding sprints during my time building Learn.co. It seems like no matter what you build, you’ll always need to iterate on the best way for users to join your platform.How and When to Start Using tmux2018-03-04T03:22:10+00:002018-03-04T03:22:10+00:00/blog/2018/03/04/how-and-when-to-start-using-tmux