Read my book

I wrote books about Webpack and React. Check them out!

Wednesday, November 30, 2011

Lean UX - Better Software, Faster?

As you might well know, most software projects are considered failures. We've developed software products for a long time and we still don't get it right. What's going on?

I believe it has something to do with the intrinsic complexity of software development. Barriers between various stakeholders definitely aren't helping the situation. In addition we're bound by basic laws of communication. In this post I'm going to provide some kind of way, lean UX, that can help us to deal with these issues better. Read on if that rang a bell.

Saturday, November 26, 2011

Book Review - New Programmer's Survival Manual

Disclaimer: I was part of the tech review team of this book and received a copy of it for free. There was no obligation to review it, however.


I don't consider myself a "new" programmer anymore. I've seen my share of projects and technologies. Given this I'm probably not in the exact target market of the book. Nevertheless I managed to glean a few things from here and there.

In this review I hope to highlight the good parts of the book and help you decide whether or not to pick this puppy up. As mentioned in the disclaimer I was a part of the tech review team of the book. Big thanks to Josh and The Pragmatic Programmers for allowing that! It was a nice learning experience.

Overall I was happy with the resulting book. It's one of those books I wish every newcomer to the field would read early on. That's when it provides the most value. Read on for more impressions.

Saturday, November 19, 2011

Python Package Updates - speccer 0.7.5, pyqa 0.6.1, iterplus 0.2.5, pypandoc 0.5.0

I released new versions of some of my Python packages during this week and one old PHP project. I also released a totally new one, pypandoc inspired by my earlier post. This post summarizes the most important changes made.

Wednesday, November 16, 2011

Linkdump 9 - Consulting, Programming, CSS...


This time my collection of links focuses on consulting, programming and CSS. I hope you find something useful there! Check out the previous one for more of these.

Saturday, November 12, 2011

Testing User Input in Python

Apparently Python's generators are great for testing user input. This is just one way of many. Previously I've used a scenario based scheme. In scenario based testing the idea is to set up a multi-line string that mimics the user input and the excepted output. The test runner then asserts that against the actual implementation.

This can be seen as a form of acceptance testing. The solution I'm going to present here works on unit level. I guess these two methods could complement each other in some situations.

Pandoc - The Markup Converter

If you checked the packages I linked to at my previous post you might have noticed that their descriptions had pretty bad formatting (plain text without oompfh). This has to do with the fact that PyPI doesn't support Markdown syntax. Since I like to write Markdown and rather not convert my files to pure reST I decided to handle the conversion at my setup.py (package metadata).

During my research I came upon Pandoc. There are even Python bindings available for it! Sadly those bindings require exact path to Pandoc utility. This isn't cool since I want the conversion to work anywhere. There might be some nice way to locate it but I didn't bother doing that. Instead I found a nicer solution that works as well.

Friday, November 11, 2011

Utilities - pyqa 0.5.0, iterplus 0.2.0, speccer 0.5.0

Nothing's more fun than building some utilities that make it easier to build more utilities! I just spent some time wrapping up a few of these, namely speccer, iterplus and pyqa. Depending on the sort of development you do, you might find some of these handy. I've developed them mainly for my own consumption but I really don't mind if someone else wants to use them too.

I've discussed speccer, a testing tool, briefly earlier. I developed iterplus based on my post about infinite lists in Python.  pyqa is something I came up with to make it easier to write those scripts that ask a bunch of questions and then generate something based on those. Each utility is available at PyPI. The following examples should give you a better idea of them.