Latest Posts
Compose From First Principles
on May 22, 2019 - 24 min readThousands of Developers from around the world attended Google I/O 2019 earlier this month. It was a particularly exciting I/O for me, as it was the first time…
Content on Declarative UI
on May 16, 2019 - 7 min readIf you haven’t yet watched the session on Declarative UI Patterns , you should do that now. It is a proper overview of the motivations and goals behind the…
One Concern, One File
on May 19, 2015 - 13 min readMost of us are aware of the notion of having a “Separation of Concerns”. It’s one of the holy truths of computer science. An unbreakable law: something we mustn…
Making React.js and Knockout.js Play Nice
on May 18, 2015 - 8 min readChoosing a JavaScript framework or library to build a project with is a complicated choice, these days. There’s just so much to choose from. There’s the new…
Custom Lucene Tokenizer for Tech Keywords
on May 13, 2015 - 6 min readIn the world of search and text indexing, Lucene is perhaps the most pervasive implementation. These days many developers opt to use technology that uses Lucene…
Clever way to "demethodize" Native JS Methods
on June 10, 2014 - 3 min readRecently I wrote a blog: Functional JavaScript, Part 3: .apply(), .call(), and the arguments object Taylor Smith ended up making a comment about a piece of…
Functional JavaScript, Part 4: Function Currying
on April 29, 2014 - 13 min readIn an earlier post we played around with function currying very briefly. Currying is absolutely essential to Functional Programming, and in this post we are…
Functional JavaScript, Part 3: apply, call, and the arguments object
on April 23, 2014 - 9 min readWe are on a quest to bend and twist JavaScript in such a way that we can do some real functional programming. In order to do that, understanding function…
Functional JavaScript, Part 2: What Makes a Language Functional?
on April 15, 2014 - 9 min readIs JavaScript a “functional” programming language? There is no magic formula for what makes a language “functional” or not. There seem to be languages that are…
Functional JavaScript, Part 1: Introduction
on April 14, 2014 - 4 min readIntroduction JavaScript is a powerful, but misunderstood language. People like to say that it is an object oriented programming language, or that it is a…
Creating a Dictionary<T,V> which doesn't throw a KeyNotFoundException
on March 10, 2014 - 4 min readI find it interesting when there are certain tasks in one language which feel simple, fluid, and elegant to write, when in another language they feel sloppy and…
A Better Query Language: BQL Language Specification
on March 05, 2014 - 20 min readFor some reason or another, it seems to me that SQL has always taken a back seat in the language economy. I have used SQL for years, and very little has changed…
Handling Paged Datasets in Knockout.js
on April 23, 2013 - 13 min readKnockoutJS provides the plumbing to create very powerful web applications, but leaves most of the logic up to the developer. That’s great, and I don’t think it…
Lukemapper: A Super Fast ORM for Lucene.net
on February 11, 2013 - 10 min readLucene is a document storage search engine library that utilizes inverted indexes and has great capabilities. It has been very popular and has been ported to…
3 Tricks to get More out of SQL Server in Common Web Scenarios
on July 03, 2012 - 16 min readLearn several little-known SQL tricks/techniques used to improve query times and enforce business rules with common everyday web-development scenarios Article…