Monthly Archives: December 2012

I am currently looking for contract work so now’s the chance for you to hire a good developer. My main skills are C, C++ and x86 assembler. I also have experience writing multithreaded and cross platform applications.

So why should you hire me and not someone else with a similar list?

I want to build up a positive reputation and the best way to do so is to have satisfied clients – if I don’t think I can do a job well I will simply turn it down instead of doing it badly

Used to working on tight schedules in the corporate world

I write clear and maintanable code – check out the vapoursynth source code for an example

It took a bit longer than I anticipated to get R17 done but it’s finally done enough. The highlights are:

User contributions! – this is the first release where several fixes and parts were contributed by other people

The new Expr filter (similar to mt_lutxyz) which can evaluate expressions per pixels during run-time

A subtitle filter based on libass (inappropriately named assvapour)

Lots of bugfixes, for example AVISource should now be usable with all formats and alpha output

Even stricter checks for filters – the ongoing work to detect common coding and API usage errors continues

With this release a few more popular scripts can be implemented using only VapourSynth filters, however the work will continue to recreate the missing common filters from masktools. I would appreciate some help in implementing equivalents to mt_edge, mt_inpand, mt_expand, mt_inflate and mt_deflate. It’s a simple project and good for someone who wants to get started writing filters and help out, I just happen to want to start with the challenging stuff. MVTools. The core part of several of the most powerful Avisynth scripts and a something that could certainly use a rewrite.

Previously I’ve discussed how computers work so now it’s time to take a look at how humans work. I personally think this is something programming textbooks neglect to take into consideration, for example humans generally work very badly when confronted with binary operations and bit-wise shifts the first time. It can also be somewhat detrimental to their mental state. So this post is about negative thinking and what You Can Do To Break The Pattern! My personal trick is to always keep the law of attraction in mind when I code and so should you! Get the positive thinking going by putting some comments telling yourself that YOU CAN DO IT! or maybe that it’s simple. See this example from Avisynth:

And indeed that is simple! Just imagine what this technique can do for your mental health. No more feeling like a rejected PHP coder, instead you’ll be the coolest PHP coder in a basement within two blocks. Guaranteed or your money back!

Personally I prefer to apply the law of attraction in a slightly different way. For example I write my goal in every single comment. See this code snippet: