Testing is a fairly crucial part of building a scalable, reliable application. It’s impossible to confidently deploy simple (or complicated!) changes without being sure that nothing will break. And, working with TeachBack, the last thing I want to do is end up spending my time fixing bugs introduced by fast development.

However, there’s an interesting question to be asked. To what level do you test - and how brittle should those tests be? For instance, when you want to test a redux store, should you raise an action and make sure that the correct dispatches have been sent through the store? If you’re working on a frontend applications, should your tests cover the page layout and UX elements to a fine grain?

Yes, this will help you make sure things don’t break when you ship. But brittle tests discourage refactoring, code cleanup and small changes. If I want to change the behavior of my application (or re-theme my website), I sure as hell don’t want to spend 30% of my time rewriting tests “just so they past”.

What’s the solution here?

I’m a strong believe that simple code tests itself. Splitting out code into small, manageable chunks makes it easier to conceptually test your code. This definitively doesn’t stop you from shipping bugs, but it reduces the environment in which I write buggy code.

Nothing particular here, but I come across a number of useful javascript libs. I rarely need to use them right there and then. I don’t want to bury them in some unknown bookbar, and make them public.

Dragula

Drag and drop library. github

TeachBack - New Website Launch

It’s been on my to-do list for a while now, but TeachBack now finally has moved away from a wordpress installation to github pages & jekyll. Now, I’m able to push the ever so infrequent blog posts to the website without having to remember another set of login details1, dynamically give permissions, and easily work on the website without bothering with custom wordpress plugins.

The move was fairly painless. I’ve previously worked on jekyll, but I felt I couldn’t give enough effort to design a website in an evening. I came across a great theme from Michael Rose, which needed only a few mods to adapt it to our needs. I manually moved over the few blog posts from our wordpress installation (thought I’m sure something great such as this could be used for a larger moved), and hit git push.

Voila!

I can only but recommend using Jekyll for blogs and semi-static websites2. The flexibility and simplicity it offers (ignoring ruby) surpasses anything else I’ve worked with. Add on top of that the bonus of not having to worry about deployment, and there is nothing to dislike.

  1. Oh, and I’m also now not paying $12/month for a VPS to hold a wordpress website!

  2. Posts, comments, etc are all possible. Limitations come in when you need to write customer server software or interact with a database.