Howdy!

I'm Brian Lauber. I'm an entrepreneur who is striving to make the world a little better each day!

My Backstory

Do you remember what the world was like before you learned how to program? I don’t. But, I do remember teaching myself BASIC XL on an old ATARI 1200XL back when I was in second grade. At that time, programming was simply the most pragmatic means to achieve my more immediate goal of acquiring more video games. As a second-grader, I didn’t have the money to buy new video games; so I just decided that I’d write them myself instead. See? Very pragmatic!

Pretty soon, I realized that I actually enjoyed programming the video games more than actually playing them. In fact, programming itself had actually become a game: I was continually pushing myself to implement elegant solutions to increasingly more complicated problems. Consequently, I began teaching myself numerous languages, design patterns, and strategies so that I could improve my skills at this new game.

I entered Case Western Reserve University as a Math and Physics major. Soon afterwards, I discovered that I had already taught myself more than half of the Computer Science curriculum. So, I began taking Computer Science courses to fill the gaps in my knowledge. Meanwhile, I worked as the teaching assistant for the Operating Systems course so that I could help the other students understand the more advanced concepts of computer programming. Life was good.

And, life just continued to get better after college. I worked as a consultant at Cigital, and thus I was introduced to many new teams and practices. This greatly expanded my understanding of the software development process, and it made me realize that many of the greatest challenges are non-technical. This meant that the game had become more interesting: I was no longer just writing programs to address technical challenges. Now, I was also helping organizations re-envision their core operations so that they could achieve their full potential. Neat!

And, after a few ellipsis… we arrived at the present day. The technology landscape has evolved quite a bit over the last 20-some years. Many challenges that were once considered insurmountable are now within our technical grasp. It looks like there's going to be an interesting future ahead!

Open-Source Projects

I enjoy extracting functionality into reusable libraries. Here are some of the libraries that I have open-sourced more recently:

mongoose-amqplib-plugin

Publishes Mongo lifecycle events to ActiveMQ

mongoose-plugin-plugin

It’s a Mongoose plugin that plugs-in your plugins!

zxc

It’s like “bundle exec” for Node.js

HoldOn

Pause execution until the desired condition is satisfied

package-root

Package-relative ‘require’ statements in NodeJS

Pintium

Search results scraper for Pinterest

Underware

Simplified middleware for pure Ruby

react-radioactive

DRY radio button groups for React

Logbert

Categorical logger for Ruby

Unobservable

.NET-style event handlers for Ruby

capybarista

Extensions to Capybara’s browser automation.

tolerable

OOP, meta-programming, and enumerators in VBScript

Check out my GitHub Profile for more!