Dead Simple Observables in Python

This is a really quick python module I banged out one evening while watching “Astronaut Wives”. It implements some basics of observables and reactive programming principles. It’s not meant as a serious library for you to use, more of a way to show how simple observables really are.

For a great introduction to reactive programming, check out The introduction to Reactive Programming you’ve been missing, by Andre Staltz.

If you want an observable library to actually use, you can check out Reactive-Extensions, including RxPy for python.


Why wouldn’t I create my own text editor?

I love Vim, except now that I’ve used Atom, I hate Vim. Not because I like Atom, I hate Atom, too. But it’s so much prettier than Vim!

So I’m no longer satisfied with any text editor that I’ve tried. So obviously, I’ll just create my own.

Continue reading “Why wouldn’t I create my own text editor?”


Code Reviews (FTW!)

Code reviews are so unbelievably important for a team, I can’t believe how many teams don’t do them. And it isn’t just the development team, its any team that writes code. Dev, QA, Database, Ops, everyone! If your customer service team is writing macros in Excel, they should be code reviewed!

Let me just start by acknowledging that even a thorough code review won’t catch every issue. Code reviews are pretty good at catching certain types of issues. Silly errors like using an assignment operator instead of an equality operator, or a strict comparator instead of non-strict. These are mistakes that are easy to make, and can often have very subtle consequences that are hard for your tests to catch. Fortunately, they also tend to be the types of errors that stand out to code reviewers (probably because they are simple and everyone’s looking to score points on the review).

Continue reading “Code Reviews (FTW!)”

Code Reviews (FTW!)


You may have heard of one of the latest trends in education. It’s been picking up a lot of steam recently. It’s called grit.

What is grit? A lot of pundits seem to be trying to sell it as something ethereal and hard to define. It’s neither. It’s plain and simple. It means not giving up just because things are tough.

The argument goes that grit is a major factor in whether you succeed or fail in life. The grittier you are, the more likely you are to succeed. This being the case, grit becomes a desirable attribute, and something that kids should be trained in. Ergo, some schools and individual educators have made grit a primary focus of education.

Continue reading “Grit”


Amazon’s new TLS implementation, “s2n”

Original link:

Amazon announced today a new library called “s2n”, an open source implementation of TLS/SSL, the cryptographic security protocols behind HTTPS, SSH, SFTP, secure SMTP, and many others. Weighing in at about 6k lines of code, it’s just a little more than 1% the size of OpenSSL, which is really good news in terms of security auditing and testing. OpenSSL isn’t going away, and Amazon has made clear that they will continue to support it. Notably, s2n does not provide all the additional cryptographic functions that OpenSSL provides in libcrypto, it only provides the SSL/TLS functions. Further more, it implements a relatively small subset of SSL/TLS features compared to OpenSSL.

Continue reading “Amazon’s new TLS implementation, “s2n””

Amazon’s new TLS implementation, “s2n”