Building the Marketplace Feed

The "Feed", the new feature I spent the last three months grinding out for the Firefox Marketplace. The Feed transforms the FirefoxOS app store to provide an engaging and customized app discovery experience by presenting fresh user-tailored content on every visit. The concept was invented by Liu Liu, a Mozilla design intern I briefly hung out with last year. Well, it quickly gained traction by getting featured on Engadget, presented at the Mozilla Summit, and shown off on prototypes at Mobile World Congress. With more traction came more pressure to ship. We built that ship, and it sailed on time.

Planning Phase

The whole concept had a large scope so we broke it into four versions. For the first version, we focused on getting initial content pushing into the Feed. We planned to build a curation tool for our editorial team to control the content of the Feed, with the ability to tailor different content for ... »

If you want to test local Browserify modules in your project with Karma, you'll have to take an extra step. One solution is to use karma-browserify that bundles your modules with your tests, but it has downfalls requiring files that require other files. That really sucks since we'll often be unit testing local modules that depend on at least one other module, and thus it'd only be useful for like requiring simple NPM modules.

Another solution uses Gulp to manually build a test bundle and put it on the project JS root path such that local modules can be resolved.


It's the final table of the tournament. There are 8 players left. I have an above average size stack about 8 times the the size of the pot (M=8). I'm in early position, UTG+1, with JJ. I raise ~2.2x. It folds around to the BB. The BB is the chipleader, a southern guy who isn't much of a thinker. I just saw him 3bet shove over a shortstack with 99, and raise/call with KQo. He 3bet shoves, putting me all in.

After a few seconds of thinking, I called. I was getting 2.2:1 odds on my call (call 34k to win 71k), and guessed that it was good. I was willing to take the variance hit in order to secure a chip lead to take down the tournament. Trying to learn how to risk a probable cash-out to make a go for first place (reduce the ITM% to increase the ROI%). I said that I guessed 2.2:1 odds was good against his shoving range, so let's do the math and see if that checks out.


Books Got Back

Books. A weird word if I start to think about it. Maybe because they've been becoming strangers to me over the last 16 years. I guess somewhere along the way, books became subconsciously tagged as boring. Though recently, I've been coming home with armfuls of books from Powell's. After a decade of school, the thought of reading on my own accord had left a bitter taste. But now I've phased out television to catch up with an old friend.


Browserify and Gulp Workflow for React

The JS world moves quickly. New web tools are adopted faster than new Spidermans (men?) are produced. One second, people are talking about AngularJS, RequireJS, and Grunt. The next, it's React, Browserify, and Gulp. Who knows, by tomorrow we could have some new shiny things called McRib, Modulus, or Chug. But the new workflows that come along never fail to keep development interesting and never fail to make our lives easier. Kay, it's time to freshen up. Let us answer: what is so streets-ahead about these new web technologies?