Jacques Mattheij

Technology, Coding and Business

I Blame The Babel Fish

Permalink

One of my favorite writers of all time, Douglas Adams has a neat little plot device in that wholly remarkable book ‘The Hitch Hikers Guide to the Galaxy’, called the Babel Fish. Let me quote the master himself to explain the concept of the Babel Fish to you if you’re not already aware of it: “The Babel fish is small, yellow, leech-like, and probably the oddest thing in the Universe. It feeds on brainwave energy received not from its own carrier, but from those around it.

No politics please, we're hackers, too busy to improve the world

Permalink

If there is one thing that never ceases to amaze me it is that the hacker community tends to place itself outside and by their own perception above politics. This is evidenced in many ways including ‘safe spaces’ and moratoria on discussing anything political because it has no bearing on the more interesting bits of IT. What bugs me about this is that anything you make or do has a political dimension, and that hackers, more than any other profession, create the tools and the means with which vast changes in the political landscape are effected.

How to Improve a Legacy Codebase

Permalink

It happens at least once in the lifetime of every programmer, project manager or teamleader. You get handed a steaming pile of manure, if you’re lucky only a few million lines worth, the original programmers have long ago left for sunnier places and the documentation - if there is any to begin with - is hopelessly out of sync with what is presently keeping the company afloat. Your job: get us out of this mess.

Sorting 2 Tons of Lego, The software Side

Permalink

For part 1, see here. Overview of the software components All the software written for this project is in Python. I’m not an expert python programmer, far from it but the huge number of available libraries and the fact that I can make some sense of it all without having spent a lifetime in Python made this a fairly obvious choice. There is a python distribution called Anaconda which takes the sting out of maintaining a working python setup.

Sorting 2 Metric Tons of Lego

Permalink

One of my uncles cursed me with the LEGO bug, when I was 6 he gave me his collection because he was going to university. My uncle and I are relatively close in age, my dad was the eldest of 8 children and he is the youngest. So, for many years I did nothing but play with lego, build all kinds of machinery and in general had a great time until I discovered electronics and computers.

Just Say No

Permalink

I grew up in Amsterdam, which is a pretty rough town by Dutch Standards. As a kid there are all kinds of temptations and peer-pressure to join in in bad stuff is something that is hard to escape. But somehow that never was a big factor for me, computers and electronics kept me fascinated for long enough that none of that ever mattered. But being good with computers is something that sooner or later also is something that you realize can be used for bad.

To Stay Or Not To Stay

Permalink

It must have seemed like a good idea at the time. Facing a sizable fraction of his own party that wanted to secede from the EU David Cameron made the gambit of the century: Let’s have a referendum and get this behind us once and for all. He never for one second thought that the ‘leave’ faction would be able to win that referendum and the end result would be to cement his own position for at least another election cycle to come.

Pinched Nerve Due To Desk

Permalink

About a week ago I bought a really nice solid wooden table for a song in a second hand store. Hauling it home was quite the job, the thing weighs a ton. Fortunately the legs came off otherwise I’d still be standing in front of the staircase with it. After two days of working I noticed that the pinky and ring finger on my left hand felt numb and wouldn’t move the way they normally do.

YCs Basic Income Experiment

Permalink

Ycombinator has decided to move forward on their ‘Basic Income’ experiment. That’s a pretty bold step and I absoltely commend them on doing this, experiments like this are a lot more valuable than hot air. The one thing I really don’t get is why they start off with time-limiting it. If the outcome of a basic income experiment is going to be used then it had better be as realistic as possible.

The Problem With Electric Vehicles

Permalink

Electric Vehicles (EVs) are all the rage these days. They’re wicked fast off the mark, they are nearly silent at low speeds and they are perceived as ‘green’, what better way to make yourself feel good than to get an Electric Vehicle as your next car. Now, as much as I like ‘greentech’ I see a whole pile of issues with EVs that won’t be easily wiped off the table using appeals to emotion (such as acceleration speed of ‘fun’ of driving) or a (somewhat misplaced) sense of improving the environment.

The Myth Of The Evil VC

Permalink

If there is one story of a persistant nature that seems to pervade the start-up world it is that VCs as a rule are evil, they’re out to get you, will drag you down to their level and then beat you with experience. Some people that are very visible in the start-up world are perpetrating this to the point of being irresponsible. In Three Roads To The Top Of The Mountain I’ve already pointed out that dealing with VCs is a choice, and that that choice comes with both advantages and disadvantages.

My Passion Was My Weak Spot

Permalink

For many years in the beginning of my career I’d been more than happy to work for free or even at a loss as long as the work was interesting. I was so totally in love with computer programming and the feeling I got from making something work and then seeing that creation be used by other people that I completely lost sight of the value that I was creating. This set me up for a series of relationships that - retrospectively - I can only classify as abusive.

Another Way Of Looking At Lee Sedol vs AlphaGo

Permalink

Imagine a contest in which we are going to pit man against machine. But instead of measuring who is best in playing the game of ‘Go’ we are going to measure who is fastest. In the one corner: Human, all of 175 pounds of extremely well trained runner. And in the other corner, a Formula 1 racecar with a remote control running down a straight track. Nonsense, you’d say, that’s not a fair comparison, the car uses much more instantaneous power, and will use a much larger amount of energy during the race, you should handicap that car somehow to make the race a fair one.

Trackers

Permalink

A couple of weeks ago I went to the local shopping centre looking for a thermometer. After entering one store upon leaving without buying anything a tracker was assigned to me. I didn’t think much of it at first, but he followed me dutifully around the shopping centre, took careful note of how I walked. Whenever I visited a store he made a note in his little black book (he kept calling it my profile, and he didn’t want to show me what was in it so I assume it was actually his, rather than mine).

New Employee Questions for Start-ups

Permalink

So, you’re about to be hired by that hot new startup. Great, congratulations. But wait, congratulations may be a little bit too early. Young companies can - and do - have all kinds of problems and you need to be fully aware of the risks and the potential issues that such a company has before you decide to sign on the dotted line. Below a short list of questions that you should be able to ask of any company that is younger than 2 years or that is still clearly in a mode where the income does not exceed the expenses.

CEO

Permalink

In this post I’m going to try to give potential and actual CEO’s (and other C level execs to some extent) some actionable advice when it comes to how they conduct themselves in the hope that this will at some future date save some of you a great deal of misery and in some cases charges of misconduct or worse. My hope is that this will somehow help save a few companies by causing you - the CEO - to change direction before it is too late to do so.

The World That Could Have Been

Permalink

For a very brief (way too brief) time the world was a much better place. A very large publisher (Springer) probably inadvertently decided to sell all their books online for the low price of $0. Silly me, I actually believed this was some kind of masterstroke of try-before-you-buy marketing, where only after you read the book you would decide whether or not you wanted to own the paper version. I imagined myself reading for the next year or so with complete abandon on all the subjects that interest me, and then ordering those books that I felt would stand the test of time.

Cloudy With a Chance of Lock-In

Permalink

re lots of products that came to market in the recent past and that will come to market in the near future that use some kind of cloud hosted component. In many cases these products rightly use some kind of off-device service in order to provide you with features that would otherwise not be possible. Sometimes these features are so much part of the core product that the whole idea would be dead in the water without it.

Volkwagen and the Blame The Engineer Game

Permalink

Volkwagen is a house in deep trouble. The dieselgate scandal just doesn’t seem to go away and even though the company is now under new management it seems that things are getting worse and worse as time goes by. What I really don’t get is this: Does Volkswagen actually believe the nonsense that they put out in order to try to do damage control? A nice sample of The VW reality distortion field at work is here.

A Critique of Makani, the Google X Kite Based Power Project

Permalink

My credentials in the wind industry are just about ‘0’, the only reason I’m writing this is because I’ve been a life-long wind power enthusiast, I’ve built (a prototype 2.5 KW 5 meter wind turbine and have a basic understanding of how wind power works and what the limitations and engineering elements are that go into a typical wind power setup. I also live in a country that has a very long history when it comes to using wind power and have a pretty good understanding of the kind of obstacles wind power deployments tend to run into.

Highschool Reunion, Bulllies And Being A Nerdy Kid In The 70's And Early 80's

Permalink

A while ago I received an invitation to a high-school reunion. I didn’t go and I probably will never go to a thing like that. I’m trying very hard to forget that period. I love to learn, but it wasn’t always so. As a small kid, up to the age of 12 I definitely did. During the summer holidays that I would spend with my paternal grandmother in Arnhem I’d eat my way through the public library technology section, and when I was done with that I made a deal with a second hand bookstore called ‘de Slegte’ that if I could read a book I bought in the morning before closing time I could trade it in for free on another book, and if I could read that one before morning I could do it again.

Defending The Right To Be Forgotten

Permalink

One of the hotter topics of discussion at the moment is ‘The Right To Be Forgotten’. The basic idea is that individuals should have control over their online image. Because ‘Google’ is now the front door to the web, for once the European Union got something right and concentrated not so much on the websites that may post items about a person but on the search services providers that caused the information to be found.

Retention Is The Key

Permalink

It seems to be the only thing that web millionaire wanna-be’s care about is growth. It’s true that growth matters but it isn’t always obvious how you can grow a business without either sooner or later imploding it by running out of funds or what to do when growth inevitably plateaus. When a company is just founded growing is easy. After all, from 1 user to 2 users is 100% growth and you should be able to do that in a day or so, maybe even a couple of hours.

We're heading Straight for AOL 2.0

Permalink

Before ‘HTTP’, whenever a new kind of application was invented (say ‘file sharing’, or ‘address book’ or ‘messaging’) someone would sit down with a bunch of others and would discuss this problem at some length. Then they’d draft up a document describing the problem they intended to solve and the protocol layer they came up with to address this problem. That document would then be sent out to various parties that might have an interest in using this protocol who then would supply their feedback and as a result of that a more complete version of the original document would be released.

The Fastest Blog In The World

Permalink

Update: James Hague, aka Dadgum was inspired by this to do some work on his blog and I’m happy to report that now his blog is the fastest blog in the world, 4K transferred and 1 request per page, load time < 75 ms. If you have a blog that’s even faster than that let me know. – Read on for the original post – I positively hate bloat in all its forms.

Divide And Conquer the most powerful concept in programming

Permalink

Divide and Conquer is a name given to a group of algorithms that take a problem and then solves it recursively (recursion is a programming concept where a program uses a simpler version of itself, a bit like those Matroshka dolls). For instance, there is a very elegant algorithm that sorts lists of elements like this named Quicksort. But that’s definitely not the only interpretation of those words. Historically they came from ‘divide and rule’, the concept of getting the locals to fight with each other which allowed a common enemy to rule them.

The 'No True Programmer' Fallacy

Permalink

Computer programmers are a weird bunch. They go around telling the rest of the world who can and can’t be a programmer. There are even studies on the subject to prove that there are ‘two kinds of people, those that can program and those that can never learn it no matter how much effort they put into it’. But that’s total nonsense. It’s like saying that there are only two kinds of people when it comes to swimming, those that can learn how to swim and those that can’t.

Your Head As A Battleground, Dueling Memes

Permalink

There’s a war going on and your head has been designated the battleground. For every battle there are simple objectives: switch your loyalty from one brand to another, make you vote for a certain group or person, join a religion, a certain school or pursue a career etc. Many such battles are waged with simultaneous campaigns. The weapons used are such as images, videos, text, print, music, television programming, product placement and many other strategies.

Evercookies in the wild, Kia, Mazda, German & Polish Newspapers, Piracy Honeypots and more

Permalink

Of all the privacy violating tracking methods on the web there are two that are particularly bad, the first one is called ‘evercookies’ for being particularly hard to get rid of, the other is called Browser Fingerprinting and is impossible to detect. Evercookies are to regular browser cookies just as superglue is to cellotape. Evercookies work by storing cookies on your computer using a large number of different techniques and upon refresh re-creating all of the cookies if you have tried to delete them.

What do you want, a cookie?

Permalink

It started a couple of years ago, became fashionable last year and it’s become just about unavoidable now: the plague of the ‘customer satisfaction survey’. I can’t order a ball-point pen online without being mailed a link to a questionnaire to give feedback. Either from the company directly or - worse - from some third party they outsourced the survey process to. These outsourcing companies tend to outsource everything else as well, which is one of the reasons they need the survey in the first place: it’s the only way they’re going to find out what happened between you and their various subcontractors, who can’t be trusted to accurately report their dealings and so the company relies on you, the customer to ‘close the loop’ and do their QA work for them.

1,000,000 Websites

Permalink

Over the last couple of weeks I’ve run some analysis on the one million most popular sites on the web. External resources, risky business What started off as a simple question (how many sites use externally hosted resources) turned into an ever expanding project to answer questions about websites engaging in risky behavior. The reason this interested me is that I believe that every externally hosted javascript is essentially a huge gaping hole in a website.

Sell it or run it, there is no middle ground

Permalink

In the how to sell your company article I wrote at length on the process of how to go about selling your company once you’re ready for that. Which makes it seem as if there is no choice, either you sell your company, or you don’t. Simple as that. But every now and then a founder comes up with the exceedingly clever idea that he or she can have their cake and eat it too: Why not hire someone reliable to run the company, either find a qualified person externally or promote one of the employees to general manager, take off to Ibiza and watch the money roll in while lying on the beach.

What You See Is What You Get

Permalink

What you see is what you get was a way to distinguish between word processors and layout software that used ‘markup’ and those that allowed you to interactively manipulate your documents in an on-screen representation of what the final output would look like. HTML editors started out as mark-up aids and rapidly moved to a what-you-see-is-what-you-get approach where the visual representation was the final product. Unfortunately, the final product as presented to the user these days has another aspect to it that means that what you see really is no longer what you get, you get much more than what you see and not everything that you get is desirable or even good.

If you've got nothing to hide...

Permalink

The Past Since 1851 Amsterdam had a registry that recorded the following innocent pieces of data about the residents: Name, Date of birth, Address, Marital Status, Parents, Profession, Religion, Previous Addresses and Date of Death if deceased. For many years this system served well and was kept meticulously up to date. Which undoubtedly well meaning civil servant long before World War II came up with the brilliant idea of registering religious affiliation during the census is lost in the mists of time.

Ham or Spam? Gmail not to be trusted for important mail

Permalink

I’m not a gmail customer in the normal sense. While I do have a gmail address that I use for access to some old spreadsheets in google docs (that I need to migrate away from there to Open Office but still haven’t had the time for) I don’t use it for email. But I am a gmail customer in another sense. I communicate a lot with people using email and a very large fraction of those people now uses gmail either directly or by having google handle their email under some other domain.

German BND Aided NSA in spying on Dutch, French and Austrians

Permalink

According to this article in ‘Der Spiegel (German)’ Deutsche Telekom (the largest German telecommunications infrastructure operator) aided the BND (the German intelligence service, the ‘Bundes Nachrichten Dienst’) in tapping internet connections to Austria, France and the Netherlands (and most likely others), apparently in collaboration with the NSA which also gained access to the data, which carried traffic from many other countries besides those that the connections led to. Because of the strength of the German internet backbone and its central location any international traffic involving one of its neighbouring countries is likely to pass through Germany on the way to its destination.

Do Not Disclose Your Salary To Recruiters

Permalink

Recruiters are not my most favorite people in the tech eco-system. They’re the people that will contact you on behalf of some client (the company that pays them) in order to try to find new employees. They typically get paid a fairly hefty sum per employee found and if ever there was a moment when the ‘you are the product’ meme was even remotely true it is when you are dealing with a recruiter.

Fifty

Permalink

So, it has finally happened. I just turned 50 and I can’t say it was something I was looking forward to. First the good news: today seems to be a day like any other so if you’re younger than I am, from the far side of the great divide, I’m happy to inform you that there is nothing that feels abruptly different. The bad news is that even though nothing feels abruptly different plenty of things feel as if they’ve been changing subtly over time and not all are for the better.

Computers Are Brain Amplifiers

Permalink

The lever, the transistor, the vacuum tube and the computer all have something in common. They’re amplifiers, they allow a relatively small change or capability in a domain to have a much larger effect. Let me give you some examples: The crowbar is an instance of the lever concept, using a crowbar a relatively puny human can lift enormous weights simply by trading the distance that one end of the lever moved by how much the other will move.

Let's talk about your backups

Permalink

Hard to believe, but the most frequently encountered ‘to-fix’ during due-diligence has to do with what you’d think would be a formality: having proper backups. On an annual basis I see quite a few companies from the inside and it is (still!) a total surprise to me how many companies have a pretty good IT operation and still manage to get the basics wrong when it comes to something as as simpel as having backed up the data and software that is critical to running their business.

The Army Of the New Independents

Permalink

Almost every first world country has them: A legion of newly minted companies with just one person active in the company. They’re called 1099’ers, ZZPers, Freie Dienstnehmer and so on depending on the location but other than that the situations are quite comparable. For many of these newly minted independent contractors their decision to go that route was born out of necessity rather than a choice made freely. One day they showed up at work, decided what to have for lunch that day and before they could consume their lunch they were out on the kerb with their box of personal belongings under their arm and the local equivalent of a pink slip in their pocket.

All the Technology but None of the Love

Permalink

This post has been re-written several times, so please forgive me if it does not come across as coherent as I would like to. The main reason for the re-write was this post by Martin Wedge. Originally I planned to scrap the whole thing but maybe having a different perspective will help, I’ve deleted those parts that he covers and have tried to massage the rest into something resembling a continuous whole but there are still big gaps, apologies for that.

All Programming is Bookkeeping

Permalink

Programmers tend to loathe writing bookkeeping software. Just thinking about doing something so mundane and un-sexy as writing a double-entry bookkeeping system is probably enough to make a whole raft of programmers contemplate switching careers in earnest. This is interesting because at heart all programming is bookkeeping. If a program works well that means that all the results come out exactly as expected, there is no room at all for even a little bit of uncertainty in the result.

Please do not be a One Trick Pony

Permalink

Paul Simon has a song called ‘One Trick Pony’ with a bit in it that goes like this: He’s a one trick pony One trick is all that horse can do he does one trick only It’s the principal source of his revenue In the world of programming being a one-trick-pony is not an option. What it means is that when that one technology that you’re currently married to becomes obsolete you’ll be instantaneously out of a job or out of customers.

Saving a Project and a Company

Permalink

I often get the question what it is exactly that I do for a living and usually I can’t really talk about it due to non-disclosure agreements and possible fall-out but in this case I got permission to do a write-up of my most recent job. Recently I got called in on a project that had gone off the rails. The system (a relatively low traffic website with a few simple pages) was built using Angular and Symfony2 used postgres and redis for its back-end, centos as the operating system for the unix portion of the system, 8 HP blades with 128 G RAM each in two blade enclosures and a very large HP 3par storage array underneath all that as well as some exotic hardware related windows machines and one special purpose application server running a java app.

Good Consultants vs Bad Consultants

Permalink

Bad consultants make money off their customers, good consultants make money for their customers. That’s it. That’s the whole trick. If you make money for your customers you can basically write your own ticket (within reason, but reason translates into ‘more than you can spend reasonably’). Bad consultants typically enter a job at some hourly rate, pull in their buddies (also at hourly rates), start ordering hardware with kick-backs (unknown to the customer) and leave right around delivery time (or are kicked out) because what they deliver is either not cost effective or simply does not work.

If Growth By Itself Was Good Then Getting Cancer Would be Good News

Permalink

Disclaimer: the cancer analogy is in no way meant to cause mental grief to anybody, I’ve lost enough family members to it that I realise such an analogy may be a step too far for some, but I feel that in this case its use is justified. If you do feel offended by this in any way then my apologies. One of my favorite VC bloggers wrote an article that I’m pretty sure was meant to be serious but that had me in stitches.

Whose Phone Is It Anyway?

Permalink

When telephones were still solidly connected to the wall, either by being bolted on to it or by an umbilical (sometimes consisting of one or more phone extension cords) it was pretty clear who owned them, the phone company did. And bad things (such as disconnection) would happen to you if you connected something to the network that wasn’t authorized. When computers were still unconnected to each other using networks it was pretty clear who owned them too, the company or person that paid for it did.

My New Vehicle

Permalink

After looking over many advertisements for all kinds of super nice looking vehicles I’ve decided to go with this baby: It was custom built for me by my eldest son, he spent a ton of time on it and the result is really quite nice. I had a whole pile of weird requests so buying a bike off-the-rack was out (I did quite a bit of shopping around but I could not find anything with these specs).

It is not about the money, Silly! It is all about the time.

Permalink

One of the oldest business sayings that stuck into my head was ‘Time is Money.’. It’s deceptive in its simplicity, it generates in the mind of the beholder of this simple 3 word adage that there is a direct equivalent between time and money, and that that equivalence runs both ways. Ways in which you see this at work in every days life are people working (spending their time) in order to get some money.

Choosing a Web Framework/Language Combo - Ruby On Rails

Permalink

In case you’re tuning in late, the previous installment in this series is here. This is an absolutely ridiculously long blog post, feel free to either totally ignore it or to read only the top portion, it will likely contain all you need or want to know to keep up to date with what’s happening here. The rest is more of a detailed log of what I did to be able to get back into it quickly if I decide that ‘Ruby Is the One’.

Moniker.com is being murdered

Permalink

For many years I was a ‘bulkregister’ customer, I landed there after Network Solutions went mad. Then Bulkregister was bought by enom.com and it went from good to bad to worse in a very short time. I called around to my colleagues to see where they were registering their domains and they pointed me to a small but scrappy upstart registrar called Moniker, the brainchild of one Monte Cahn. Monte was awesome, he worked like a demon and rightfully claimed never to have lost a customers domain.

The Several Million Dollar Bug

Permalink

In case you landed here without any context and have no idea who I am or what this article is about this article should give you some background. For years we were skating on very thin ice. Our only advantage that we had over competitors is that we had figured something out that they had not. Which is that Netscape, Microsoft and pretty much every other browser vendor had made a small but crucial mistake in implementing HTTP.

Charities, Direct Marketing and Your Privacy

Permalink

A recent comment on Hacker News gives a little bit of insight into how charities and non-profits determine who to target for donations and how they deal with requests for removal from marketing lists. I’m more than a little shocked at the contents. The author, Tom van Antwerp goes into some detail about how his employer, the Ayn Rand Institute operates. (Surprising that such a bastion of capitalism isn’t able to turn a profit because of the useful services it provides for which it commands a fee, rather than to rely on donations to survive, but let’s leave that aside, there’s probably a joke in there somewhere.) I work at a 501(c)(3), and direct mail is absolutely worthwhile.

Google Web/Search History Disable does Absolutely Nothing

Permalink

There seems to be some kind of misunderstanding about the Google Search/Web History disable switch that google provides to its more privacy conscious users. It’s not exactly the most advertised feature (you won’t find it in your profile page) to begin with, but once you do find it (it’s on the history page, you have to click the little ‘gear’ on the top right and then click the button to switch it off) there is no guarantee whatsoever that google does anything except for changing what they display to you.

Choosing a Web Framework/Language Combo - the SRS Test Application

Permalink

After creating a short-list of languages and frameworks to be evaluated (see here for the first installment in this series) the next step is going to be a lot harder. It involves getting my hands dirty and at a minimum going through the website of the framework, looking at each in turn to see if they actually match the criteria and then to decide whether or not to build a ‘toy’ application in that framework or not.

A Western Kid Living in Communist Poland

Permalink

In this HN thread I commented on how the story about the People’s Republic of Donetsk reminded me of my days in communist Poland. User bernardom prompted me to tell this story, so here it goes (I’ve slept on it and I don’t think it will do any harm, even though all the participants are alive (and well)). I got my driving license in 1986. My dad and his wife were looking to buy a new car and were going to trade in their old Citroen 2CV.

Ripe For Disruption

Permalink

Disruption is something that you can usually only establish after the fact. A decade later or so you can look back and say ‘x’ disrupted ‘y’. Microsoft did it to IBM. Disruption usually plays on a larger scale, for instance, the semi-conductor industry all but destroyed the vacuum tube industry (for certain purposes though vacuum tubes had hard-to-beat advantages potentially good enough for a niche revival). On the web disruption takes place at a smaller scale.

Choosing a Web Framework/Language Combo for the Next Decade

Permalink

Learning Romanian is rapidly turning into a huge exercise in Yak-Shaving. You often see the question “What stack should I use to develop my application on?” posed but rarely do you get any insight in the actual process once someone decides to answer it specifically, so both as an analogy to rubber-ducking this and showing you what went on while I made my choice I’ve decided to document the whole process.

Learning Romanian

Permalink

I currently find myself living in Romania for a bit. One thing that bothers me is that if I spend time in a place where I don’t speak the language and make the locals speak English to me all the time (provided they can!) is that it feels like I’m rude and not making an effort to meet them halfway. Why should (many) be the ones to adapt rather than me (one)?

When Sued Don't Tweet

Permalink

The employer of one of my coding heroes, John Carmack is currently being sued by ZeniMax over unspecified IP that he may or may not have taken with him to his new spot. He responded to the suit and inquiries by the general public with tweets here: Oculus uses zero lines of code that I wrote while under contract to Zenimax. And a slightly older one: No work I have ever done has been patented.

The Raspberry Pi as a poor mans Transputer

Permalink

One of the most interesting architectures to come out of the 1980’s was the Inmos Transputer. The idea behind it is that you string together a large number of CPU’s each with their own memory and connections to neighbouring transputers (using a series of ‘links’) into a computing fabric. A recent comment on HN suggested using a cpu-per-process as a means of achieving very high degrees of security. This made me wonder if you couldn’t use a Raspberry-Pi Compute Module to achieve this goal, and that in turn led to researching the kind of buses that would be suitable to hook up a large number of processors.

Journeyman Project Trip 1 United Kingdom

Permalink

In January I came up with a weird idea, to go and visit total strangers in return for ‘food and board’ in order to do useful work for them. (see: Will Work For Food And Lodging for how and why this started). They say no battle plan ever survives first contact with the enemy, and in a slight variation on the theme, in this case the battle plan did not survive first contact with the audience.

Will Work For Food And Lodging

Permalink

In the past, the various professions were organized as guilds. If you wanted to become a cabinet maker you’d enter into an apprenticeship arrangement with a ‘master’ cabinetmaker and you’d be taught the tricks of the trade over a several year period. As your final examination you would be required to make a masterpiece (that’s where that word comes from) and then, if the master accepted your work you could call yourself a cabinetmaker.

The Five Year Itch

Permalink

I’ve read a number of articles recently on ‘nomadic techies’, people that live as sparse as possible while moving from place to place every few days, weeks or months and how this impacted their lives, a backpack, a laptop and an online business or consultancy seem to be the main ingredients. This spate of articles has caused me to look at my own life to date in a new light and I think I too have been bitten by the nomadic bug only with me it seems to last on average five years before I reboot my existence, and I have a rather large backpack.

The Freedom - Responsibility trade-off for Entrepreneurs

Permalink

I started my first business (a computer programming consultancy) when I was pretty young (21), in 1986. At the time I had worked for a little over a year and a half for the application programming department of a dutch bank. The department had 100 employees divided into several teams and about 35 people hired from companies such as BSO and Volmac (loosely termed ‘body shops’, not a very nice term).

Happy Anniversary WWW

Permalink

Today marks the 22nd birthday of the world wide web. At 21, a very short year ago, the WWW became of the age of majority in just about every country in the world. For a person to go from ‘child’ to ‘adult’ usually means losing a few illusions and getting more in touch with the real world. It wasn’t any different with the World Wide Web. From an age of exuberance and endless possibilities in its formative years through unruly teens we now reach the age where adult matters take over, and the WWW finds itself drafted into service.

Make a bigger Haystack

Permalink

The NSA apparently has the capabilities to eavesdrop on just about anything you do on the web or on the internet in general. If you haven’t read that article yet please do, it’s quite a bit of insight into the capabilities of the spying agencies. Of course, as a dirty foreigner I’m a bit more pissed of at this than a US citizen would be (they are technically exempt from such monitoring which makes it a-ok).

Love To Learn (2) Highschool Horrors

Permalink

A while ago I received an invitation to a high-school reunion. I didn’t go and I probably will never go to a thing like that. I’m trying hard to forget that period. I love to learn, but it wasn’t always so. As a small kid, up to the age of 12 I definitely did. In the summer holidays that I would spend with my grandmother in Arnhem I’d eat my way through the public library technology section, and when I was done with that I made a deal with a second hand bookstore called ‘de Slegte’ that if I could read a book I bought in the morning before closing time I could trade it in for free on another book, and if I could read that one before morning I could do it again.

The Destruction Of The Web

Permalink

Search engine spam was invented the moment search engines started to be good enough to send significant volumes of traffic to websites based on keyword searches. Before the days of Google search engines used strictly ‘on page’ factors to figure out how important a page was for a certain subject or keyword. This led to all kinds of pollution on the page, such as people filling out their pages with 1000’s of copies of the keywords they wanted to rank high for.

Sound Sensor Failure

Permalink

Since about 6 days now, I’ve been almost completely deaf in my right ear. The reason behind it is as trivial as can be but for some reason or other it seems as though it isn’t going to clear by itself. All I did wrong was to clear my throat while lying on my side and this in one smooth movement underpressured my ear and allowed the Eustacian tube on that side to become clogged.

Why Stuff From China Is So Cheap

Permalink

This is most likely the most disturbing video I have ever seen, and just to make sure that you can’t just click through I’ll make you work for it. Please take my hint and Don’t watch this video, instead, just read the text, it is disturbing enough and it will tell you all you need to know and a little bit more besides. http://www.youtube.com/watch?v=8GiHE9cItsE The original title for the video is “Chinese Workers accidentally touched High Voltage Electricity Wire, and Catch Fire”.

How to go bankrupt

Permalink

It’s fairly rare that I can write about the jobs I take on, this one is an exception to that rule and there are some lessons here that can help any entrepreneur, even the ones that are doing well. This is a tale about trust and growth, it has a very unfortunate ending. Going bankrupt is exceptionally easy if you go down one particular route. You simply buy something for about the same or more than you’re selling it for and you forget to factor in all your variable costs and/or overhead.

Love To Learn

Permalink

My lucky break was not finishing my education. It’s probably hard for an outsider to see the upside in having your home situation implode just when school starts to get serious, to go to work for a boss doing some menial job in your teens, no diploma, no future as far as anybody could see. But this helped me in so many ways that I really should be grateful for it.

The API Paradox

Permalink

APIs are great, they allow companies to expose parts of their engine for inclusion into the products of others to increase adoption and to facilitate the development of features and products around a common set of data. In theory APIs are a win-win, both for the party that exposes the API as well as for the party that uses it and since the mid 90’s APIs have become more and more common.

AppGratis Apple AppStore Appeal

Permalink

In a heartfelt appeal to Apple from AppGratis founder Simon Dawlat we gain insight into the ridiculous situation around Apple’s appstore review proces. Seemingly on a whim Apple decided to toss AppGratis’ app from the appstore. A new reviewer is apparently all it takes to endanger the jobs of 45 employees and to kill a product that clearly filled a niche, both on the consumers side (with millions of happy users downloading the application) and on the side of the apps that are being promoted.

available jobs, March

Permalink

I have received a number of requests to find people for IT companies, both in the Netherlands and elsewhere in Europe. If you’re interested in any of these let me know and I will put you in touch with the company. Job 1, Location: Amsterdam, Position: CTO/VP of Engineering, mobile cloud gaming network Job 2, Location: Cyprus, Position: Ruby Developer, gaming Job 3, Location: Amsterdam, Position: Java/Scala Developer, online travel company (4 positions) Job 4, Location: Amsterdam, Position: Ruby/Javascript Developer, online travel company (3 positions) Job 5, Location: Hilversum, Position: tester, PHP & selenium, online video network Job 6, Location: Uitgeest, Position: PHP developer, ecommerce Job 7, Location: Uitgeest, Position: Project Manager, ecommerce Recruiters: please do not contact me because of this posting.

Come and help save posterous from oblivion!

Permalink

A couple of years ago I got wind of the fact that geocities was about to die and along with many others I did my bit to save geocities, the site now lives on (or as much as I could save of it) as reocities.com. At the time I didn’t think too much of it, a small thing to do really. But over the years, after many thousands of emails from people that are insanely happy that their old webpages, photos of loved ones (sometimes deceased) and tons of other memorabilia have not been lost it became clear to me that this really was something that had to be done.

Suffering from depression? Don't do that start-up!

Permalink

I hope this post will save some lives. With some regularity I read articles about some amiable, accomplished and brilliant young kid that decides to end their life in the start-up scene. Invariably they’ve managed to come a very long way along some perceived curve of success and then there is a snag. Either they plateau in their growth, the start-up tanks or there is some other hiccup that causes trouble.

Domain Knowledge or a lack thereof

Permalink

I believe that a lack of domain knowledge is the root cause of a lot of very bad software that gets developed and I think that it is up to computer programmers and their managers to deal with this. Acquiring domain knowledge is an essential component in the development of software that really works well for its users. A programmer that has to automate a warehouse but that has never picked an order and doesn’t have a clue about actual logistics is going to be writing far less effective software than someone that has done a few shifts on the floor.

how to make a quick buck

Permalink

In 1992 I had bought a license to a little known real time micro kernel based operating system called QnX. QnX was a pretty interesting development for me, it was the first time that I used an OS that used message passing for its internals and that ran the file system, the network system, the scheduler and all other i/o as separate processes. Quirky, but interesting and an opportunity to learn.

Disqus bait and switch, now with ads

Permalink

Looking at the site earlier today I suddenly noticed a couple of links to sites that I would never ever think of endorsing through my blog. A ‘what is this’ link explained that this was disqus’ way to thank me for using their comment system, a chunk of my webpage in between the comments section and the article body was claimed in order to attend visitors to my website to interesting content which they claim I ‘recommend’.

Computers I have known

Permalink

Over the years I’ve owned quite a few computers. An endless series of PC compatibles that mostly differed from each other in CPU speed or memory capacity. But before the PC era computers were a bit different in that they differed vastly from each other. The advent of the PC homogenized personal computing to a large extent, this is now due to the proliferation of mobile platforms and various tinkerer devices (Raspi, Arduino, etc) changing again but for the longest time it seemed as though x86 was what computing was all about.

Introducing The Paper Bay

Permalink

Over the last couple of weeks I've been working off-and-on on a little side project. The idea is that there are lots of people that are not in a position to visit a university or that don't have a public library with 'access' at their disposal but that do need to be able to read scientific papers. Ever since the advent of the world-wide-web the funding for public libraries has slowly but surely dried up.

When Haskell Is Not faster than C

Permalink

This article is in response to an earlier one comparing Haskell and C, which made the claim that Haskell beats out C when it comes to speed. On a Hacker News thread I made the bold claim that the C code is rife with problems and that it is tempting to fix it. I’ve earned a good part of my life’s income to date taking other people’s C code, cleaning it up, making it work and then making it work better.

A World Without Power

Permalink

The 14th of August, 2003 was an interesting day in many ways. I’d just taken the family down to Toronto to spend a day there and pick up our newly minted passports at the Dutch embassy. We had some fun in the city seeing the sights, visited Niagara Falls and were on the way back on a sunny August thursday afternoon. What could possibly go wrong? We pulled into a gas station just outside of Barrie.

Elon Musk and the Hyperloop

Permalink

For a while now there have been tantalizing hints that Elon Musk is at it again. His usual way of approaching a problem is to look at an industry, find some fatal flaw in it, fix that flaw and then leave everybody else in the dust, wondering why they didn’t do what he did. He’s one of the most interesting people on the planet at the moment and there isn’t a week that I do not come across some bit of information that re-inforces that view.

Thank HN: Our friend is safe and sound

Permalink

Hello again, Hackernews. I tried to post this on HN but the limit is 2000 characters. Two weeks ago to the day I asked for your help in finding a lawyer for a HN’er that was about to be arraigned in front of a Delhi judge. The original thread: http://news.ycombinator.com/item?id=4739649 To say that the results were overwhelming would be an understatement but I don’t have more superlative words in my vocabulary.

Stick to what you know, a tale of an investment gone wrong

Permalink

After moving to ‘the Island’, a place I won’t make too obvious here to protect the innocent and the guilty alike we settled down and built a house. We got to know a lot of people and were quite happy to employ a few of the people there to help run our various businesses. We had money in the bank and a very positive outlook on life, the breathtaking nature and some hard earned time-off had renewed the store of energy that I had come to rely on over the years.

This white powder will kill me one day

Permalink

There are lots of bad things that you can insert into your system through various ways that all seem to be represented in physical form as white powder. Heroin, Cocaine, various other chemicals that people will consume in order to alter their state of consciousness. I hate drugs, with a passion. I’ve seen up close in many people during my years in Amsterdam what drugs can do to a healthy human body and it isn’t pretty.

How to build a windmill part 2, parts, nuts, bolts and blades

Permalink

Yesterday I wrote up a post that I had on my list of the last couple of years but never got around to. My all time favorite project, building a windmill and some of the stories behind it. I made a promise to open source the design, and today I finally hope to make good on that promise. This comes with a word of warning though, I am flooded with work at the moment so I do not have the time to make this a picture perfect release.

How to build a windmill

Permalink

Windmills have always fascinated me and for a long time I was dreaming of one day building my own. Where I live there are still machines from the 1600’s that are just as magnificent today as when they were first built. When you see one standing in a field rotating and converting passing air into usable energy they look like simplicity incarnate, but nothing could be further from the truth. They’re complicated beasts even the most humble water pumper or a decorative item in someone’s garden.

Life as a Service

Permalink

I’m not actually a citizen of this country, I’m a subscriber. I was born on a rainy morning, the 20th of March 1965, 3:15 am on the outskirts of a big European city. There wasn’t much to do for me other than to drink my milk so I’m kind of surprised that I don’t remember the man with the contract that I signed within a few hours of being born. Stupid me.

The Pendulum Swings, Again

Permalink

In the early days of computing, computers were physical monsters, occupying large rooms or even whole buildings. Acess to them was closely guarded, you were lucky if you had access at all, let alone close-up and personal access. That was reserved for the system operators, the people tasked with the relatively boring job of babysitting the machinery, fixing it when it broke and shunting jobs in and out of the queues.

My brush with a patent troll

Permalink

Back when the web was only a limited affair and the most exciting thing on it in the realm of imagery was the ‘coffee pot webcam’ I came up with a way to make a real live video stream that worked in a browser. A few months earlier I’d made a very basic version of this using ftp upload of images to a server and then a cgi script to get them out to the browser by refreshing the page but this was horribly slow, on the order of one frame every 10 seconds on a very good day, with an annoying flash in between the frames.

Things you'll never see, hear or use

Permalink

There are lots of different things that you use each and every day. Tons of sounds that you hear every day and lots of things that you can see for yourself. But there is also a class of sounds, views and utensils that once were so common that every person (in the developed world at least) came into contact with them almost every day of their lives. And in spite of that those things are gone, pretty much forever except for maybe the time when you view and old movie.

Be nice to those that serve you

Permalink

A while ago I was in Germany on a business trip, to strike a deal over licensing a bunch of software that I wrote with a German company that was operating in a related field and that wanted to branch out. We weren’t established in the German market at the time and I figured that it is better to have a chunk of the profits without the work than to have nothing at all.

All targets are moving targets

Permalink

When one business sues another to protect their income stream for the most part this is an admission of failure. Failure to realize that the market never stops moving and that as a consequence there is no such thing as a guaranteed income stream is a mistake that can cost you dearly. Savvy business owners realize this early on and plan for the future, even when it looks as if their product lines will have indefinite life and that the competition is asleep at the switch.

The scale of programming complexity

Permalink

With some regularity the question of whether or not anyone can program comes up. It irks me that this is positioned as a black-and-white matter, as if there is some kind of bit that flips that determines whether or not someone can program or not. Of course it isn’t that simple. The question of how good someone can theoretically learn how to program is almost entirely divorced from how well they actually can.

Acqui-hire is just another way to spell failure

Permalink

Being acquired is one if the positive outcomes of starting a company, it means that some other - presumably larger - company agrees with the vision and the product created by the smaller entity and has decided to express this agreement with an offer that was substantial enough that the owners of the smaller company thought that it was good enough. It turned their risky venture into a much less risky one and gave them compensation for the risks taken into a account weighed against the possible future payouts multiplied by the risk of continuing to run the business.

Those that can do, those that can't blog

Permalink

There is an old proverb that says that “Those that can do, those that can’t teach.”. Now, I don’t really agree with that proverb at all. In fact, some of the people that had the most profound impact on my life were my teachers, from my school days and then later those that took time out from their professional life to spend it on me to transfer some of their wealth of knowledge.

Deadbook, the long-term Facebook

Permalink

There are approximately 7 billion people in the world. The average life expectancy is somewhere around 67.5 years, a bit higher in the developed world, lower in other parts (with Angola a shocking low at 40 years!). So in the next 67.5 years a very large fraction of 7 billion people and possibly even more will die (more than half of those alive today + half of those that have not yet been born), and not that long afterwards the rest, with a few outliers to get older than 100 or so.

Tim Cook memo line by line

Permalink

Apple just won in their case against Samsung and Tim Cook has posted a memo to Apple employees. I’m not one of those but I feel pretty upset about the stupidity of this lawsuit, the verdict and patents in general. Here is the text of the memo with my comments: Today was an important day for Apple and for innovators everywhere. Yes, it was a very important day. Innovators - real innovators - were given a chance to show that there is a huge difference between minor features, interface elements and true innovation, as well as between obvious solutions to simple problems and non-obvious ones.

You are not the customer you are the product

Permalink

One of the most tiring memes that float around free services is that if you are not paying for them you must be the product, as in you are ‘sold’ to advertisers. Being ‘sold’ to advertisers is not unique to free online services - insofar as this actually happens. There are companies that specialize in selling your ‘profile’, these are called credit bureaus and direct marketing bureaus. Most online services do not operate like that (though, for sure some of them do).

Startup Game

Permalink

Every now and then I get really weird ideas. This is one of them :) How about a startup game? Not unlike monopoly, but with a lot more realism to it. The game would start off with a (possibly faily high) number of people being given a fixed amount of savings, say $5000 (play money). After that they’d be given several opportunities: take an idea from a stack of predefined ideas that are ‘open’ by bidding for them, or a random idea from a blind pile.

First employee or co-founder?

Permalink

If you’re good at what you’re doing and you have friends in the start-up scene then there is a chance that at some point you will be offered the chance to join a newly minted company. Imagine two guys, one has the idea for a product, the second can sell it. They incorporate, maybe they have a bit of savings, maybe they have a third guy with some money as an initial investor.

fix the bugs and do not forget to fix the class of bug and the process too

Permalink

When you’re in ticket-closing mode it is all too easy to find the cause of some issue, fix it, close the ticket and move on. But that’s a little bit too fast. You’re missing out on three things when you go about it that way! The first is relatively easy, that bug that you just fixed was not caught in testing, so before you actually fix it you need to write a test that fails, if only to prove that the issue really goes away after you’ve applied your fix.

Evergreen Investor Scams, Kooks & Crooks

Permalink

Some ideas are so tempting, would be so unbelievably great if they were true that they will never die out. And investors, especially the non-technical ones typically have very little in terms of defenses when it comes to evaluating these when they land on their desks in the form of an investment memo. Especially if they’re nice people, angel investors looking to help out a fellow would-be entrepreneur. What drives this cycle of recurring nonsense (other than greed or hope) I’ll never know, but recur it does and even though I see only a very small fraction of all the proposals sent to all investors I have still seen some of these repeated over the last 20 years or so.

Prior art for Apple's 'interactive search' patent

Permalink

Apple is suing Samsung and has successfully obtained an injunction because of a novel interpretation of the term ‘irrepairable harm’. Tough luck for Samsung it seems. Apple had their patent filed December 1, 2004. At the time for almost 13 years I had a program out there with a bunch of customers that they used to search their own internal documents collected in chunks of data called ‘books’. The reader for MS-DOS, titled book.exe was created using a C compiler from a piece of source code called ‘book.c’, which clearly documents the way this instantaneous seach worked.

So you're making good money. STFU

Permalink

Every now and then someone hits the jackpot. An easy concept, maybe an app or a small website that makes a ton of money. Or one of those 10 year overnight successes. Congratulations! Seriously! I’m really happy for you and I hope that it will last you for a long long time to come. One thing you probably don’t want to do (edit: if your ‘trick’ can be easily cloned) is to brag about it in an open forum.

301 redirects a dangerous one way street!

Permalink

Best practice has it that when you move content around for whatever good reasons you have that you should do it using a 301 redirect. If you’ve done this in the past and it looks like it works the way you intended then good for you. What you probably didn’t realize is that browsers cache 301 redirects agressively and there is nothing short of a complete cache wipe by the user that you can do to re-vive a url that has been redirected.

Domains for Sale

Permalink

Below is a long list of domains that are for sale. The domains listed range in quality from ‘junk’ to ‘excellent’ and beyond, and are priced accordingly. Some have traffic, some are associated with operating, profitable businesses. Offers to be made by email only (jacques@mattheij.com is my email address). After you receive a confirmation that your offer is acceptable you should initiate an escrow process with Escrow.com, no other escrow services will be used.

The rise of the destructive programmer

Permalink

In the early days, even if the fruits of the labour of programmers could be used for destruction (for instance, to compute the trajectory of a missile) the work itself was as far as I can see always creative. Codebreaking, a long time programmer pastime is all about reading or at least being able to read, and so not about destruction. Even if it may appear that way on the surface, especially with the word ‘breaking’ in there.

The death throes of an industry

Permalink

An industry is dying. That’s should be sad thing but this time around it is actually a good thing. That industry is the media industry, the companies that got insanely wealthy by playing both ends - their consumers and the providers of their merchandise, the artists they pretend to represent - against the middle. They are not going to go without a fight, that’s for sure. To date we’ve only seen the warmup, if that, and we’re headed for the real showdown.

Getting to 'No'

Permalink

Most of sales is concentrated on getting to ‘yes’, in fact there is a book with that exact title and many more that aim to achieve the same goal. Over the years I’ve found that for many customers my job is not to get to ‘yes’ but to get to ‘no’. For some reason or other I discover during the pre-contract phase talks about some job or other that the fit between what they need and what I have to offer is sub-optimal.

today I wrote some code

Permalink

And I used to think that was all there was to it. Sure, I would test my code but typically that was limited to testing whether expected input produced expected output. Since about a year I’ve become a convert in the school of testing. Test, test, test. Only after all the edge cases have been tried and code coverage is as high as I can get it without contortions I’ll say that code actually works.

The Starter, the Architect, the Debugger and the Finisher

Permalink

It could easily be the title of a Peter Greenaway movie. Every software project that is remotely successful needs all four of these. If you can embody all of them in one person in the same project then all I can say is ‘lucky you’. But over the years I’ve found that depending on the project that can be four or more people. I know people that are great at starting projects, they are always on to something new and great.

Your Genetic information is not just yours but it is family property

Permalink

When you submit a sample for genetic analysis you are not just making a decision for yourself. You are also making a decision for all of your children, their offspring and all of your ancestors, your brothers and your sisters and their offspring. In fact, you’re making a decision for everybody that is a blood relative. With the number of bits present in a typical genetic sample this is still more than sufficient to identify people that have not consented (or that might not even exist yet, or any more) to having their genetic data analyzed if you did not submit your sample in an anonymous way.

What you could do if you were google and had their databases

Permalink

I’ve been wondering for a long time what exactly the added value of Google+ is to Google, and why it is that they are pushing it as hard as they do. After all Google has tried ‘social’ before and many voices have been raised effectively saying that Google should concentrate on their core business, search and leave social to others. But what if they had no choice? What if they actually needed social, and needed it badly?

C Preprocessor Hell

Permalink

Lisp programmers should stop reading right now because they’ll likely suffer severe injury of the jaw muscles as they laugh themselves silly at how hard it is to do some things in C. The C language has a pre-processor (typically called cpp) that is both infuriating and powerful. How powerful is usually best described as ‘just too little’ and it has happened more than once that I found myself almost - but not quite - able to do what I wanted to do.

Due Diligence survival guide part II, nuts and bolts

Permalink

The second part of this mini guide. the first part is here: http://jacquesmattheij.com/Due+Diligence+survival+guide . What I’ve done is to analyze the lists of questions and main subjects from past due diligences to give you an idea of the areas that are generally touched on. Note that this is not a ‘full’ list by any stretch of the imagination, every company is different and I spend a fair amount of time customizing the process to the target company.

There is no shame in failure

Permalink

If you plan to go and do your own company, or a company together with a bunch of buddies or some other wild thing you plan then I want you to realize this to the core of your being or you probably should not even start until you do: you very likely will fail but it doesn’t matter one bit. The only thing that really matters is that you try and not succeeding is already much much better than never starting Every business, even the very largest eventually fails.

Programmers Salaries at google $250k (and up)

Permalink

Recently I had the pleasure of meeting with an old friend. We caught up about all the stuff we’d been up to since we last saw each other several years ago and one of the things he mentioned was that he’d gone to work for Google as a programmer. Offhandedly he remarked that ‘what you read in forums about salaries at Google is not correct, I’m pushing $250k per year’. And that’s for someone approaching 30 years of age, programming, not a manager or something like that.

So you're considering a liberal arts degree

Permalink

As usual I get a ton of mail on subjects that are controversial. One of the more painful ones was the fact that the Dropping out is probably not for you post gave people the impression that I’m against studying the arts, literature or any other non-hard science. I guess it was to be expected the way I phrased things there so let me take a moment to correct this perception.

Electronics for programmers

Permalink

If you came in to information technology from the ‘soft’ side and you view a computer as a chunk of black magic that allows your screen, keyboard and network connection to function and you are curious about what goes on inside then this article is for you. We’ll start off with some very simple concepts and slowly expand to more complicated stuff, I’ll try to write this in such a way that a minimum of prior knowledge is required.

I am a programmer

Permalink

Admitting that may be career suicide, or possibly it will cost me dearly because ‘software engineers’ are raking in the big bucks these days, but the fact of the matter is that I’m a programmer. It’s what I do best and it is the job title that I associate with most because it feels as though the biggest chunk of me will always be most likely to blurt that out when people ask me what my job is.

Dropping out is probably not for you

Permalink

The following piece pre-supposes that if you are in school or university you’re doing so to learn something that is: a) useful b) a marketable skill c) does not put you in debt for the next 50 years even if you do graduate d) is something that you actually wish to master If those conditions are not met, please ignore the rest of this post, you have already made some bad decisions and the question of staying in or dropping out is the least of your problems.

I hate cut-and-paste

Permalink

Me, I blame the IDEs. Coding used to be hard. Not because programming itself was overly hard, but mostly because editors absolutely sucked. How much the typical development environment in the 70’s and 80’s sucked is hard to convey (except for a very lucky few, and those would have likely been using DEC and WANG gear). I got in on the tail end of the punch card era. Punching your own program is lots of fun.

Does it scale? Who cares!

Permalink

Web developers the world over are always terminally worried about whether or not their application will scale orders of magnitude without keeling over. It’s a funny thing, because plenty of those applications would have stood a fighting chance if their builders were not that worried. Worries like these lead to premature optimization, and premature optimization is a huge timesink. It also makes it harder to change your application once you become aware of what it was that you should have been building (as opposed to what you actually built).

My Heroes

Permalink

A while ago I got into an argument about ‘heroes’. Whether I look up to Steve Jobs more than Bill Gates or Larry Ellison or something to that effect. The funny thing is that I look up to none of them. Sure, they’ve created wealth beyond belief and they’ve been very influential in their own right, I even use some of their products. But they’re not my heroes. My heroes are a pretty odd list, it contains names that may not even ring a bell to most people.

It takes three years to build a business

Permalink

Recently I came upon a post on hacker news about a man that had quit his job and that recounted his failure, after a full six months. http://news.ycombinator.com/item?id=3102143 First of all, I’d like to thank the author for having the guts to write this out, some of it is really painful and he’s quite the man to stand up like this in front of large community and speak his mind. That alone marks him as someone that will one day make it big.

How much of your privacy are you willing to give up in return for a lollipop?

Permalink

On http://www.takethislollipop.com/ there is a nice little movie that shows you what the implications of enabling a facebook app could be in a way that is hard to ignore. I sent the link to my s.o. and a bunch of friends and extended family and the responses I’m getting are interesting to put it mildly. Of course being the messenger is a pretty sure way to get shot at but it certainly seems that this video is a way to break the ice and get people to think a bit more about their online privacy.

Are you a programmer with chronic headaches? If so please read

Permalink

Until I was 30 the word ‘headache’ didn’t even exist for me. I never really understood what other people were going on about. But that changed. From mild and short ones it went to longer and worse ones rapidly. I’m not the kind of person that complains about health issues but it got to the point where I couldn’t sit behind the screen for any length of time without my eyes wanting to close themselves without permission because of the splitting headache I would develop.

hey google, I want my cache links back

Permalink

Since a day or so the google cache links are gone. They’ve moved into the ‘instant preview’ non-feature. If they’re there at all (and in plenty of cases they seem to be missing). Now that’s a pretty dumb move. If it isn’t broken please don’t fix it. For the longest time google made good on their promise to keep their search page simple and easy to use. Now, bit by bit the search page is getting more filled up with cruft that you don’t need and stuff that you do need gets removed.

CS Paper writers, please show your code!

Permalink

I love reading papers and books about computer science. Anything at all that I can learn from how to be better at my chosen profession (I’m still mostly a programmer, even if I do other stuff as well) is great. That said, I have a handicap. It takes me an hour or more to get my head wrapped around a bunch of mathematical expressions, when I could probably digest the code in a few minutes.

Your first customer as a co-founder

Permalink

For many business people that go ‘the long way to success’ with a software development background (see http://jacquesmattheij.com/three+roads+to+the+top+of+the+mountain)) there is a natural progression of advancement: being employed consulting product development developing a service I’m not saying it’s a law and that you have to follow all these steps, but I’ve seen enough people make it that way and also enough people that got stuck to identify a fairly common pattern. The first two steps are relatively easy, and anybody with some healthy ambition and skills can easily check those off.

The Google Wallet, a lifetime log of your purchases

Permalink

With some astonishment I’ve been reading through the terms of service of the google wallet system, which is rumored to launch today. http://www.google.com/wallet/privacy.html The basic idea here is that google will have access to your full payment history, associated with your google account, so right next to your search history, and if you use gmail next to your emails as well. Already there are a lot of data protection agencies worried about the amount of data that google has at its disposal.

TechCrunch sets new standard for editorial behavior

Permalink

Of all the publicly aired dirty laundry slugfests the message by Paul Carr in his resignation last week was one of the worst ever. Really, the level couldn’t possibly get any lower. Or so I thought. I don’t think I’ve ever linked to a TechCrunch article from this blog, but this time I’ll make an exception: http://techcrunch.com/2011/09/16/paul-i-accept-your-resignation/ sets an improbable new low for a new editor to an online publication. Way to go to keep the moral high ground on this one, not only is the new editor willing to lower himself to the level of those slinging mud, he’s happy to descend a little further down and shows that he cares less about the publication he works for than he cares about his own ego.

A good memory, a programmers most important tool

Permalink

Over the years I’ve read in quite a few places that programmers are somehow ‘special’, that there is something unique about the ability to program, and that if you haven’t got that (whatever it is) that you won’t make the cut. It is rumored to be genetic, and it is just too bad if you don’t have it, better forget about becoming a programmer. Just what it is is something that we unfortunately can’t tell you, let’s call it the programmers gene.

Ways to increase the runway for your start-up

Permalink

For a start-up one of the most critical single numbers is ‘cash on hand’ (well, that goes for most companies but for a start-up it is even more critical because there is no income stream yet to match expenses in the pre-launch phase). Typically the amount of cash-on hand divided by your fixed expenses gives you your remaining runway (the amount of time that you have before you have to take off).

The Unofficial Hacker News FAQ

Permalink

The Unofficial Hacker News FAQ The Official FAQ is here: http://ycombinator.com/newsfaq.html Here is a small sample of stuff that pops up with some regularity, if you want me to add entries please mail me jacques@mattheij.com, if you ask a question that is hard to answer it may take a while before I can post it . Please note that I’m not affiliated with HN in any way other than being a user, the majority of this stuff has been gleaned from observing HN closely over a long period of time and various little bits of information that were dropped by PG in HN threads.

Twitters new and blazingly fast interface

Permalink

For a couple of weeks now I’ve been frustrated by twitters new interface. At least up to some date you had the choice to stick to the old interface. In their infinite wisdom twitter made everybody that still used the old interface switch to the new one by force. Hint: if people stick to your old interface rather than to migrate to the new and shiny one then they probably have their reasons.

Have yourself some Raspberry Pi

Permalink

When Acorn won the contract to produce the ‘BBC Micro computer’ I’m fairly sure they never knew what influence their creation would have on the generation of kids that had these as their first computer, either at home, a friends place or in school. History is about to repeat itself, but on a much larger scale. The BBC Micros sold for a whopping 2000 guilders when I was a kid, it took me months and months of really hard work to be able to afford one, sans disk drives (that took a bit longer still).

The hidden cost of funding

Permalink

When you are running a successful start-up company and you have the choice between attracting outside capital and growing organically there are lots of things to consider. One thing many people presented with this choice will fail to notice is that the simple act of going after funding (even if successful) has costs associated with it that you will need to recover in the funding round itself. And if the funding round is not successful then you will be in a worse position than if you had never attempted to find funding in the first place!

Due Diligence survival guide

Permalink

What is due diligence? If you’re running a company and you are doing something that either requires an investment or attracts the attention of competitors or other parties interested in buying a part or all of your stock or your business then sooner or later you’ll run into the words ‘Due Diligence’. The response to those words ranges from indifference to fear or even hostility, mostly based in a lack of understanding or familiarity with the process.

The ghost in the room Rachmaninoff plays Rachmaninoff, an early attempt at Hi-Fi recording

Permalink

A friend of mine in the Dutch small town of IJmuiden (on the coast, mostly known for its huge steel mills) asked me if I wanted to relieve him of an old player piano sitting on the first floor. I didn’t have any use for such a device but I found a man that did, the owner of the Dutch pianola museum. A whole day of work with pulleys and rope (and lots of swearing) later I’d managed to maneuver the pianola out over the staircase hole and slowly down the two flights of stairs.

How to Improve the quality of your software find an old computer

Permalink

Developers tend to like their machines as big and as fast as they can get them. Who would blame you if you spent all day with your tools that you’d get the best tools possible? Nobody will, but there is a problem inherent in owning the latest and the greatest hardware and software in order to develop mainstream applications. The problem is that the majority of your users will be one or even two generations behind the machine that you develop with and most likely test on.

The Clock Frequency of our Universe

Permalink

Sometimes I can’t sleep at night with silly questions keeping me up. Last night it was this: if there is such a thing as a Planck length (1.6 x 10^-35), and there is such a thing as a ‘speed limit’ for the universe as we know it (c, the speed of light, or 300,000,000 meters per second), then there should be such a thing as the ‘Clock Frequency of our universe’, the maximum distance you can travel per second / the smallest possible distance.

warning do not do business with SEDO

Permalink

I decided to see if I could sell some of my domains, and picked SEDO because they are pretty visible. While setting up the domain I noticed they do ‘domain parking’ as well, which will take the traffic on unused domains and monetize it via ads associated with keywords that you tag the domains with. So I figured that maybe instead of just using the service to sell domains I could also use it to generate a bit of income offsetting the annual cost of the domains.

Double your price! (and no, I'm not kidding)

Permalink

A couple of years ago, one sweltering hot afternoon in Toronto I was visiting a friend, a long time internet entrepreneur named Richard. Richard and I got to talking about our businesses and at one point he asked me how much I was charging for the product on my website. I gave him the figure, it was $4.95. He started laughing. “Double it!”. Right. Double it. My inner skeptic said ‘no way’, but it kept nagging.

How not to handle open source feedback

Permalink

This is nice example of how not to deal with feedback on your software: http://bugs.mysql.com/bug.php?id=52725 An end user that gives a very detailed and complete report about a major issue in a piece of software gets given the runaround to produce ‘test code’ whereas the example given is perfectly clear without any test code. Proof that it does not affect just ‘one user’ and that people run in to this with some regularity: http://bugs.mysql.com/bug.php?id=11748 , http://bugs.mysql.com/bug.php?id=5446 and probably some more but you get the idea.

The start-up code of conduct and ethics v 0.1

Permalink

Introduction With more and more people getting on the online start-up bandwagon and with greater numbers of them than ever before doing this for the very first time I feel there is a need for a ‘code of conduct and ethics’, to make sure that people and companies signing up for these new services will not be left hanging at some point in the future if circumstances that were unforeseen at the start come to pass.

a C Heisenbug in the wild

Permalink

Just today while reading some code I came upon the following little gem: assert(someinitialization() == FALSE); In code that has been in production for a long time but that exhibited subtle bugs, which mysteriously vanished whenever someone tried to debug it, so they left the debugging on (with a considerable performance penalty) just to avoid having to fix the problem. I figured I’d take a crack at the issue and started to simply read the code looking for anything out of the ordinary having to do with debugging.

No User Serviceable Parts Inside

Permalink

When I was a kid and for the first time interested in electronics (to me that meant anything that did not involve just wires, switches, batteries and lamps) we were just coming out of the ‘tube’ era in to the solid state era. So naturally, ‘tube’ hardware was to be found left, right and center, and any clever big city kid knew the garbage collection days for the whole place by heart.

augmented reality with mass appeal

Permalink

Every now and then technology makes a quantum leap while you’re not paying attention and then it seems as though you’re living in the future when you finally ‘get the news’. Augmented reality is a thing that everybody has been thinking about and toying with but besides Layar I’ve yet to see examples of it that didn’t strike me as either frivolous, contrived, stupid or a combination of all of the above.

productivity tips for the easily distracted

Permalink

For the last two months I’ve been working on re-factoring a big chunk of C code. It’s a fun job and I really like doing it but I felt that I wasn’t putting in as much time as I would have liked. I am very easily distracted and it takes me a long time to get going again after a distraction occurs so I figured I’d have to do something about it or I would end up feeling bad about taking on this job because even if the pay is by the hour they would of course like to have the job done at some point.

it is good to have friends

Permalink

For the last couple of weeks I’ve been pretty quiet on the blog. If you’re wondering why, read on: In the start-up business, people are always telling each other what it is that you need most: co-founders, a minimum viable product, you’ve got to be agile, and who knows what else. But an overlooked factor is that of a solid network of long time friends. The value of such a network may not be readily apparent, it’s not going to show up on your balance sheet, when you get an investment nobody will do due diligence on your business related friendships.

a really good talk and animation about education

Permalink

Education is one of the most important things that we as a society are engaging in, in part because it ensures the transfer of knowledge from one generation to the next, but also because it sets the direction for all possible future paths for our society. Recently I came upon this quite amazing talk by Sir Ken Robinson, with an equally amazing animation to go with it. If you have 11 minutes to spare and you think education is an important subject or simply if you have children then please watch the video below.

I remember IANA

Permalink

Today it is exactly 12 1⁄2 years ago that one of the great leaders of our world died. I’m not thinking of some president or other official lording it over a stretch of land, but I’m thinking about one of the most humble and benevolent rulers the world has ever had, a person without whom you’d likely never be reading this, and he’d be the first to frown at the term ‘ruler’ being used in association with his name.

Living in the zone

Permalink

Living with a programmer must be a pretty frustrating experience. For example, programmers speak about this mystical place called ‘the zone’, where they hang out when they’re at their most productive. The Zone is real. At least, it is for me, and probably you are familiar with some variation of it. The best I can compare it with for non-programmers is the feeling you get when you’re totally immersed in a book or a movie, when the world around you seems to disappear and the only thing that remains is that which you are concentrating on.

crunch time for spotify

Permalink

According to the official blog there are some major changes coming to everybody’s favorite music service, Spotify. And the changes are not going to make many people happy, a maximum limit to play a track 5 times for free and 10 hours worth of free usage per month. The reasons behind these changes are probably complex, in part driven through a desire to push more users to convert to paying members and in part by necessity simply to be able to pay the licensing fees.

attitude does not scale

Permalink

Interesting developments on Hacker News, the comment scores are no longer visible and there is a concerted effort at trying to preserve the perceived quality and the atmosphere of the place in spite of very rapid growth. Whilst I very much appreciate these efforts and hope sincerely that they succeed (HN is still my favorite haunt, even if I stopped contributing it is the best place to stop off for a bit of ‘light reading’ on a variety of subjects that interest me after a couple of hours of hard work) I’m somewhat pessimistic on whether that’s even possible.

The dropbox endgame

Permalink

The more I look at Dropbox, the more it intrigues me. Dropbox is one of the most basic applications ever. Storage ‘in the cloud’, executed to perfection. File synchronization, online backup, sharing and versioning all in one very slick and easy to use package. It’s one of those things that could have a million competitors but for some reason no serious competition has materialized to date. For the last weeks I’ve been wondering what Dropbox will do in the future.

Hacker News is for hackers not startup founders

Permalink

In this http://news.ycombinator.com/item?id=2438564 thread HN user ‘Icey’ points out that PG has said that “HN is for hackers, not startup founders. There just ends up being a disproportionate amount of stuff about startups, because YC is in the startup business.” (http://news.ycombinator.com/item?id=2403868)..) I’m aware of the name ‘Hacker News’ and that it tends to suggest that the focus should be on hacking, but the original name of the site was ‘startup news’ and it looks as though I’ve been advising lots of people to join HN for all the wrong reasons.

Free, Public Data Sets

Permalink

I’m a data junkie, I have to confess to that. Hi, my name is Jacques and I have a problem. Whenever I see a large chunk of structured (or even unstructured!) data pass by I just have to have a copy. It’s not that I’m a packrat, it’s just that large gobs of data are always inspirational in some way or other. What could you do with that data, in what new ways could you slice and dice it to get new insights, in what ways can you combine it with data that you already have to enable you to do new things.

A tale of two programmers

Permalink

When MSX and Atari ST were still ‘hot’, I contracted for a short while for a game company in the Netherlands, called Aackosoft, in Leiderdorp, a small town near The Hague. The reason it was only short was because the company failed spectacularly (the financial director came in one night and started shredding documents, I just packed my bag and left). Other than the management, the people working there were great.

The best thing since sliced bread?

Permalink

When Amazon was awarded their ‘one-click’ patent software, people the world over cried foul, and rightly so. There wasn’t anything in that patent that warranted protection because of either an absolutely brilliant and special advance of the state of the art or lots of research. Personally, I think that it should have never been awarded on the simple grounds of being utterly obvious. If you can sell in 10 clicks, you can sell in 5, as well.

Brian Chesky

Permalink

img.alignright {float:right; margin:0 0 1em 1em} a img.alignright {float:right; margin:0 0 1em 1em} [img 00:24] Startup School Transcript October 16 2010 Brian Chesky - Founder, Airbnb Link to video: http://www.justin.tv/startupschool/b/272180383 [img 00:40] Brian Chesky: Hey, guys, can you hear me? Alright. Thank you for waiting it out, and today I’m basically going to talk about the first thousand days of Airbnb. When I got the e-mail from Paul Graham, he asked me to speak, and I said, alright, what should I talk about, and Paul said, you should talk about when you were powerless and obscure.

How to damage your brand in one smooth shot - Way to GoDaddy

Permalink

Apologies for the tone of this piece but I’m pretty angry right now. GoDaddy’s CEO, Bob Parsons, went out of his way to do his bit for the community. He traveled all the way across the world to Zimbabwe to rid a local village of a troublesome elephant, and got the locals to slaughter the animal wearing GoDaddy hats. Way to go, what a great guy. There isn’t a snowballs’ chance in hell that this whole thing was scripted from the start, of course.

Auto submission bots on Hacker News

Permalink

It’s been two months since I stopped contributing to HN and since then pretty much every blog post that I’ve written has been submitted to HN - many of them within seconds of my clicking the submit button on my blog. It’s all in good fun, but it seems that the race to post my stuff in order to harvest the associated karma got a little out of hand with some negative side effects, both to HN, and to me.

the mobile phone superpower you have never heard of

Permalink

Meet the Myriad Group. 3.7 Billion apps shipped to over 2.2 billion phones. The Myriad group brings social networking and other applications to a vast range of devices from the lowest of the lowly phones to the most advanced smartphones, but they concentrate on the low end phones and for a good reason. They’ve got a software product that allows android apps to be run on non-android devices and their whole strategy seems to be that any application should be available to any phone through a series of very clever hacks.

Ios, Android, WP7 - who cares?

Permalink

Right now there is a big battle going on for the domination of the mobile operating system space. Own the mobile platform and you own the world. Where have we seen this before? Oh, right. On the desktop. There were at some point at least 5 OS’s (with two major contenders in Windows and the MacOs) competing for that same holy grail, world domination through the desktop. You bought your computer based on the software you wanted to run.

Advertising as a revenue stream

Permalink

With all the attention shifting to freemium and charging directly for the product, I think it’s time to make the case for advertising as a valid way of creating or augmenting the income you make from a web property. Over the years, I’ve shifted ‘models’ several times. Initially, it was all advertising, then we moved to subscriptions, and now we have a mix of both. Typically, the ads bring in about 40%, while the subscribers the remainder.

41,000,006 reasons why I think we're in a bubble

Permalink

The hallmarks of a bubble in tech are many, but in general, it is agreed upon that: high valuations without corresponding track records, an increase in the number of deals, lots of hype, media frenzy, turnover and profits no longer matter, the prices of 'subject' domains going through the roof, everybody trying to get in on the action, are all good indicators of a bubble in progress. Right now, I think it is safe to conclude we’re in a bubble, even if some experts are pretty outspoken in stating the opposite.

when crisis hits

Permalink

In the lifetime of any business there will be at least one, and possibly several crises that are ‘life threatening’. In other words, if you deal with them in the wrong way, your business may cease to exist. During the decade+ that I’ve been running ww.com, we’ve had several such crisis situations, and even though each of those probably aged me a year or so in a few weeks’ time, we somehow managed to stay alive through all of them.

venture capitalists are not record labels

Permalink

I’ve seen more than a few people comparing record labels to venture capitalists recently and this is not a nice comparison to make. Let me try to explain why I think that comparison is (a) false and (b) not nice. True, there are some similarities: Both VC's and record labels invest money in risky ventures Both VC's and record labels tend to have more legal experience than the parties they deal with Both VC's and record labels hope that by scoring the occasional hit that they can offset the losses from those ventures that did not work out Both VC's and record labels have a revolving door where 'hopefuls' pitch (or send in demo tapes) in order to get a chance at being 'funded' But that’s as far as any comparison should go.

my newest computer

Permalink

If you post this to Hacker-News I’ll flag it! Hello there. Today is my birthday, and like any self-respecting nerd the best birthday present you could give to me is a ‘geek toy’. Tablets are all the rage, but I just received something better than that. It runs Unix, it runs indefinitely on a single charge, it works in bright daylight and as far as I can see it functions in spite of subtle bugs in the code.

How to be a Consultant, a Freelancer, or an Independent Contractor

Permalink

This is a series of pages that guide you through the creation and operation of a successful consulting business. I’ve written this after running a fairly successful consultancy business in the mid-90’s and reviving this business in 2008. I’m primarily active in software, so some of the things in here will be skewed in that direction, but I’ll do my best to keep it general, and to make it ‘location independent’.

taking stock after 13 years

Permalink

Today ww.com celebrates its 13th birthday. Since the day that it first started it has had quite a bit of effect, in spite of only being a ‘lifestyle’ business. We never set out to change the world, we simply set out to make something useful and we wanted to do so by writing our own ticket. In spite of that we managed to have quite a bit of impact. Here is a short rundown of the things that stand out for me as having changed the world for the better: we created > 75 man-years of salaried work we gave some people their first gigs in tech when nobody else would have given them the time of day we gave a few million people their first taste of live video on the web we gave a few million people a front-row seat during two space shuttle flights we kept one of our (part time) employees debt-free through college we paid off the student loan of another we jump started the career of at least one of our employees to go on to greater heights than the ones we achieved we bought a house for an elderly Canadian couple that was living in terrible conditions, they still live there today we helped individuals and companies with little bits of money, traffic or a combination we paid an indecent amount of money into the tax coffers On the downside of the ledger, some people have used our service to pester other people, and this has caused some grief.

make something people need

Permalink

Make something people want, the new mantra of starter-upper types all over the world seems to have taken root. It’s a great little soundbite, and it’s the essence of the reason behind many start-ups that failed, they were making something but not something that people wanted. You could do a lot worse than to have that tacked to the wall above your monitor. It beats ‘build it and they will come’ by a considerably margin.

You can't do that

Permalink

For the first couple of years of my career (for want of a better description), whenever the words ‘you can’t do that’ were used I took them literally. It meant to me that whatever it was that I had set my head to was not possible. So I turned the other way to study some other problem, one that presumably was solvable. Then one fine summer afternoon I got hired by a guy that wanted to create a random code based on microscopic glass beads.

How to make the Hacker News homepage

Permalink

Getting to the Hacker News homepage is easy right? You just write some trashy article, stick a few adsense tags on it, post the link, fire up your sockpuppets or tweet your buddies to upvote your posting and you’re good to go. Bzzzzzzzzzzt. Wrong. This will have two effects. The first - and most immediate - is that you will likely be getting a lot of less than positive feedback, your posting might get flagged and you will likely lose respect in the eyes of the HN population, which is a pity because once you’ve found this community you will only realize how valuable it is in the longer term.

The worst program I ever worked on

Permalink

Most contract jobs fade pretty quickly in memory after the work is done, but some you remember for the rest of your life. This is one of the latter variety. This happened long ago, at a (fair sized) company that shall remain nameless. The software was a chunk of code that had been maintained by a single guy that had been fired recently and was a core component of a commercial system.

How to Sell Your Company

Permalink

A while ago an anonymous HN user wrote an ‘Ask HN’ titled: “HN: Just received an offer for our company, what now?” That thread contained some of the best advice that I’ve seen on HN and with the thread now deleted (for good reasons, which is why I’m not linking to it here) and my promise to summarize it, I felt I should do as good a job as possible to organize the advice in that thread in a more structured form, which is why it took quite long to do the job.

Three Roads To The Top Of The Mountain

Permalink

Improving your financial situation substantially compared to where you are today can be done in many different ways, here I’ll outline three of them and one of those three in a lot of detail. Of course there are many more roads, think of this article as a general map. In the end, money is a tool, not a goal in and of itself, but by temporarily declaring money the goal the discussion gets simplified to the point where you can measure your headway in a very straightforward manner.

Idea Dump, March 2011 Edition

Permalink

It’s always fun to review these ideas a few weeks after I first had them, usually the majority looks bad on this second ‘review’ and they don’t make the cut. Sometimes I feel pretty bad about that, especially if someone goes and makes one of the ones that didn’t make the cut into a killer :) I’ve been asked a few times now why I do this, John Graham-Cummings started this whole thing with his 1000 bad ideas post, and I followed up with post of my own.

What a programmer does for a living

Permalink

What a programmer does for a living is best illustrated by writing a program yourself. So, today, you’ll write your first program! “But I don’t know how to!” Don’t worry, you’ll manage, it is not all that hard. The program is going to be in a language called “English”. If you’re reading this, chances are that you already know English, so that will make it a bit easier than if you had to learn a new language for this.

We do get out of bed for less than 10000 dollars per day

Permalink

I just read Seb Marshall’s latest and I don’t know whether to laugh or cry. Of course we get out of bed for less than 10,000 dollars per day, and I’m pretty sure that Sebastian would be right there lining up for $5K per day, no questions asked. And probably substantially less than that, just to be able to finance another year of freewheeling travel in a few days of hard work.

Those Gray Beard Hackers And Their Tall Stories

Permalink

The other day I wrote a bit about how I got in to programming and the most common criticism was ‘but you are some kind of gray bearded guru, and I’m not so I can’t relate’. Pretending that there is no gray in my beard no longer fools anybody, however ‘gray beard’ usually does not refer to someone in their 40’s but to the likes of Postel, Woz and Ritchie. So, to be lumped in with them is flattering but really does not do justice to the gap between the gods and mere mortals like myself.

Salary negotiations for techies

Permalink

Technology people are without a doubt the most inept group when it comes to negotiating for compensation. There are two major problems that dog them. The first is that they usually actually like their jobs. As long as they get to work with the cool tech and the neat toys, they’ll sleep under their desks if they have to. The second is that they are spectacularly bad at estimating their own market value.

Your own company?, You can do it!

Permalink

When I was 17 and a high school drop-out I went to work for a bank. My mom was ecstatic, I had a job, in spite of my failure to ‘get an education’. Never mind that the job that I got was mailroom gofer. Now, don’t get me wrong, there is nothing wrong with being a mail runner for a bank. And run I did. So fast that people complained about it because I made them look lazy :) What I really wanted was to run my own company, but without the required background knowledge that would have been a huge risk, and as my mom told me, at least now I had a job.

The belt sander and the battle for privacy. A body hack.

Permalink

My government has gone nuts. It’s tough to admit it, but they’ve enacted laws here that would have made the former Stasi, the VoPo’s, KGB, and other secret services in the former SovBloc countries drool with envy. And if those countries had adopted laws such as these we’d have condemned them roundly for the privacy violations against their citizens, and we would have pitied those citizens for having to live under such regimes.

The Need to Code

Permalink

Computer programming is one of those things that I’ve never managed to stop doing for long enough that anybody noticed. Once, I took a two year break because I was tired of the kind of code that I was writing, but as soon as an opportunity presented itself, I got back into it. It’s scary. If you add up the number of hours that I’ve spent in conversation with editors, compilers, and debuggers over the years, I don’t doubt that they add up to more time than I’ve spent in conversation with human beings.

Review What You Fork on GitHub

Permalink

Open source is, in my opinion, the way of the future. Sites like GitHub and competitors make it extremely easy to collaborate with people from all over the world on projects, and with a click of the mouse you can take an existing project and ‘fork’ it to adapt it whichever way you want. This is a very quick way to get started on something new. After all, most software projects have a lot in common with other projects, and if you are aiming to producing another open source project anyway, you might as well build on the foundation of already written and debugged code produced by the efforts of others.

Microsoft just bought Nokia for $0

Permalink

When I saw that burning platform memo last week, I thought “ohoh, this is setting the stage for Nokia development being halted, and Windows Mobile to be brought in as the rescuer.” So, I’m not at all surprised at the announcement made today. After all, when you describe the situation as one in which desperate moves are to be expected, what is the most desperate move you could possibly come up with?

Giants through misfortune and what we can learn from them

Permalink

With mounting amazement I read the story of Daniel Kish (The Blind Man Who Taught Himself To See). Becoming blind pretty much sums up my biggest fear, I find it hard to even begin to imagine what that must be like, and closing your eyes for a few minutes and trying to get around in a room is not quite the same because you know that you can open them at any moment and resume your normal life.

Dealing with burn-out

Permalink

In the period of 2003-2005 I was suffering from a fairly serious case of burn-out. I had pretty much all the symptoms even if I didn’t know about them (I only learned about the clinical side of burn out afterward) and didn’t feel like being near a computer, or thinking about, or doing any kind of business. I wasn’t suicidal, and if I was, I’m not sure I care to remember or admit to it, there are limits to what I’ll put out here for the world to see.

About This Website

Permalink

Hi there! As you’ve probably gathered from the URL, my name is Jacques Mattheij. Born in 1965, just in time for the PC revolution to get underway, I’ve been playing with technology since I was old enough to hold a screwdriver (my dad gave me an old typewriter to demolish, I don’t think he foresaw that his would be next). First it was mechanical stuff, then electrical, then electronics, and pretty soon thereafter software.

Microsoft's Bing versus Google, some observations

Permalink

I’m going to try to not rehash any of the points that have already been made ad nauseum in the tech press elsewhere, instead I’ll try to lift out some things that so far stood out for me that I think have not had any attention at all. Both of these have to do with the only piece of numerical data that we have about this whole thing. The first centers around the ‘gameability’ of Bing and the success rate that Google claims to have had with their purposeful injections of gamed pages in to the Bing index.

Idea dump, February 2011 edition

Permalink

Not many ideas this month, too busy writing code, and for the first time an idea sent in by someone else. If you want an idea to appear in next months dump, either anonymously or with your name attached to it feel free to mail me (jacques@mattheij.com). Coming up with these is always lots of fun. (68) BigEye BigEye is an idea about a field that I know just about nothing about, so chances are that it’s already been done.

Bing search results showing up in Google

Permalink

If you try the following query: http://www.google.com/search?q=site%3A.bing.com%2Fsearch Note that that does not search for ‘Bing’, it searches for pages indexed from Bing. You get about 20,500 search results from Bing. This would not be such a big problem normally but it seems that Google is incorporating Bing search results and crawling Bing search pages, which seems rather odd for a company that has just accused its competitor of doing just that (never mind that Bing only used its toolbar as a url discovery device, including all the context available at the moment of discovery, not to ‘copy search results’ but that sounds a lot better in the press).

Tell HN Your Subdomains are safe

Permalink

Several people have by now mailed me to ask if the subdomains of ww.com that I made as a gift to HN members are safe (see http://news.ycombinator.com/item?id=1796231 ) since I’ve bowed out of being an active HN member. Rest assured, your subdomains are safe and well and will be as long as I’m the owner of ww.com, something that is unlikely to change in the foreseeable future.

Startup School 2010

Permalink

Startup School 2010 has just finished and the speakers were, in a word, amazing. I so much enjoyed listening to some of them, that I’ve asked PG if there was a transcript available somewhere, and if there wasn’t, if he would give me permission to make one. No transcript existed and permission was granted, so here they are: (this is a lot of work and it will likely be a while before the job is complete).

Tell HN So Long and Thanks for all the Bits!

Permalink

All good things must come to an end, and so does my participation on HN. It’s been fun! I learned a lot, got to know a bunch of great people and have made new friends and found a business partner here. For over two years HN was the first site I checked in the morning, the last I would check before going to bed. The downside for me is that I’m a person that is of an addictive nature and I can’t do things half, so either HN is going to continue to dominate my days from now until eternity or I quit.

Andrew Mason

Permalink

img.alignright {float:right; margin:0 0 1em 1em} a img.alignright {float:right; margin:0 0 1em 1em} Startup School Transcript October 16 2010 Andrew Mason - Founder, Groupon Link to video: http://www.justin.tv/startupschool/b/272180613 [applause] Andrew Mason: Hi, everybody. I’m Andrew. I asked Paul and Jessica what they thought I should talk about, and they thought the most useful thing, which I can totally understand, is kind of like talking about all the ways I screwed up and the failures, since a lot of you are probably struggling with the same sort of thing right now.

Mark Zuckerberg

Permalink

img.alignright {float:right; margin:0 0 1em 1em} a img.alignright {float:right; margin:0 0 1em 1em} Startup School Transcript October 16 2010 Mark Zuckerberg - Founder, Facebook Link to video: http://www.justin.tv/startupschool/b/272178321 Jessica Livingston: So, we’re going to do some Q&A and then we’ll open it up to the audience. Someone time-, keep us on track for time over there. So, as you know, I like to talk about the early days ((of when startups have)) started.

Programmers think differently than non-programmers

Permalink

For some reason there seems to be the impression amongst ‘programmers’ (those that program a computer at various levels of competence) that they think somehow ‘differently’ as compared to ordinary mortals. At the same time this myth has been repeated so often by now that even non-programmers are starting to buy into it. As far as I know, there is absolutely nothing unique about the way programmers think (and I’m saying that as a programmer, so my perspective is probably slightly skewed but I’m trying hard to keep an even keel here).

Idea dump, January 2011 edition

Permalink

I’m going to try to do this every month, you can find older editions of this elsewhere in the blog, the numbering continues from the previous installment. (64) OnlyUsers A system that manages a database of netblocks belonging to ISPs and the major search engines and blocks accesses from everywhere else. Included in the blocklists would be zombie nodes and other machines known to be used for things like comment spam and so on.

Everybody please calm down regarding WikiLeaks and Julian Assange

Permalink

The last couple of days have been quite a roller-coaster ride for those following the news, I just read an article about a 16 year old kid that got arrested and that’s what is prompting me to write this article. I understand the sentiments about ‘cablegate’, Assanges arrest and the way governments deal with those they deem to be thorns in their sides are running very high, possibly to the boiling point.

Anonymous attacks the websites of the Dutch police and the public prosecutors office

Permalink

A rough translation of http://tweakers.net/nieuws/71263/anonymous-legt-site-openbaar-ministerie-plat-na-arrestatie.html (Dutch) : “A group of people operating under the moniker ‘Anonymous’ has successfully attacked the website of the Dutch public prosecutors office as well as the site of the dutch police which was running on the same server. This was apparently in response the arrest of the 16 year old boy from Zoetermeer in response to the attack on Mastercard.com. In the meantime the site is sporadically accessible again.

HackerNews, now with downvotes!

Permalink

For a long long time people have been complaining about the inability to downvote articles on HackerNews, which means that articles can only be voted ‘up’, and no amount of karma gave you the option to counter an upvote. It looks like that has changed. A controlled experiment shows that the ‘flag’ option is now counted as a component in the ranking of articles on the front page, effectively allowing you to vote an article down.

The Next WikiLeaks

Permalink

It is my opinion that in spite of being at the peak of its visibility since launch that WikiLeaks is done for. The American response to the perceived damage done by wikileaks has been right in line with the one usually reserved by the Chinese government when dealing with people that try to spread information that does not sit well with it. First deny, then to try to control the information flow through technological means, finally to attempt to jail those spreading the information and now open calls by politicians to kill the perpetrators, with specific mentions of firing squads and assassinations.

Rejected by some incubator ? Prove them wrong!

Permalink

This post is top on HN right now: http://news.ycombinator.com/item?id=1967058 , comments have been switched off so I will have to write this here rather than on HN, but I think that if you’ve been rejected by any angel/incubator or VC you should not take that as a rejection that should cause you to become employee #x in a company that has been funded by that very same angel/incubator. After all, if you were looking for a job then you would not have been applying with your fledgling startup for funding and / or contacts and expertise.

idea dump, December edition

Permalink

I’m continuing the numbering system from the previous thread. (63) Chattical A forum that is based on chat rather than posts, where the conversation happens in real-time. Someone posts a subject, which can be voted on as usual, but the page with the subject then becomes a chatroom where the original poster is the moderator. When the moderator steps out for more than an X amount of time the conversation is closed and archived.

When your userbase gets away from you, make something people want, indeed

Permalink

This posting really should be labeled ‘turning around the titanic’, part #2, but I feel the current title about actually covers the payload better. Since July 10th I’ve been working hard at reviving camarades.com, and since September 1st I have a partner in business, a young Englishman named Charles who is a pleasure to work with and whose skills in using modern tools far outweigh mine. In that time we have accomplished 9% compound growth monthly, rebuilt the entire website from the ground up and added lots of new features.

Ron Conway

Permalink

img.alignright {float:right; margin:0 0 1em 1em} a img.alignright {float:right; margin:0 0 1em 1em} Startup School Transcript October 16 2010 Ron Conway - Partner, SV Angel Link to video: http://www.justin.tv/startupschool/b/272178470 Ron Conway: The timer is working. I have a hard job right now, because I have to keep you awake after consuming pizza. But if I fail, I have a backup plan, my good friend MC Hammer is here, and if I see enough people dozing off, Hammer is going to come up and dance to get the adrenalin going.

Paul Graham

Permalink

img.alignright {float:right; margin:0 0 1em 1em} a img.alignright {float:right; margin:0 0 1em 1em} Startup School Transcript October 16 2010 Paul Graham - Partner, Y Combinator; Founder, Viaweb Link to video: http://www.justin.tv/startupschool/b/272180509 [applause] Paul Graham: Hey guys! Thank you, thank you, Andy! That was a really good talk. I wasn’t in the audience, I was walking back and forth behind that curtain there, listening to it. It was very distracting, I don’t even remember what I’m going to talk about [laughter] because I couldn’t concentrate on my own talk, because yours was so much more interesting.

Dalton Caldwell

Permalink

img.alignright {float:right; margin:0 0 1em 1em} a img.alignright {float:right; margin:0 0 1em 1em} Startup School Transcript October 16 2010 Dalton Caldwell - Founder, Picplz; Founder, Imeem Link to video: http://www.justin.tv/startupschool/b/272178844 Jessica Livingston: The next speaker is Dalton Caldwell. He was one of the founders of Imeem and now he is the founder of a new company that is working on a new iPhone [edit: and now, Android] app called Picplz. Download it now, it’s a photo sharing app for your phone.

The Funnel

Permalink

Running a freemium website is probably best compared with taking water from the sea to some point inland in a very leaky bucket. Every step you make, you lose valuable water, and by the time you reach your destination your bucket will be almost empty, with some luck it is still slightly wet. The water in the sea in the analogy represents the masses of people that might visit your website.

Reducing the Size of the Holes

Permalink

To reduce the amount of loss you can attack each of the points in the funnel where users abandon the road to the goal. Analyze them, AB-test potential solutions to figure out what works and what does not. Plugging a hole typically involves trying to state a testable hypothesis as to why your users are abandoning you, setting up a test case and running an AB test with the ‘original’ as the A and the new situation as the B.

More Buckets

Permalink

More buckets is a way of saying that you could do the same thing in parallel. Some interpret this as ‘more websites’, which could be of a different sort. Others read it as affiliates, multiple people that are all carrying water from the sea. Which ever interpretation you give to it, the idea is that by doing things in parallel, you can increase the total turnover in a given amount of time.

Fewer Holes

Permalink

Every hole in the bucket causes a loss, so one obvious strategy to reduce the loss is to reduce the number of holes. The most blunt sites have a ‘free’ product that is paper thin and a single step from the homepage to sales. Other sites take a more gradual approach. Personally I’m a big fan of a very simple, but useful, free product with an extremely feature complete up-sell that you present at every possible turn.

A Larger Bucket

Permalink

Using a larger bucket is analogous to getting more traffic in at the top of the funnel. You can achieve this in many ways, for instance, through media buys, user participation, and so on. What’s very important is that you make it possible to track conversion end-to-end from a certain source all the way to sales related to that source. Like that you can make informed decisions about which traffic works well for you, and which traffic does not.

Taxes

Permalink

One thing that has bitten more than one freemium company is to forget to reserve taxes. Typically wherever you’re incorporated you pay sales tax (VAT, BTW, MwST whatever it is called where you live) over the sales to the inhabitants of that same economic zone. You need to reserve for this because if you get found out to be in arrears this can be levied until many years after with huge fines attached, so best make sure you get this done right.

Recurring vs One shot sales, ISPS

Permalink

Most of the parties in the freemium business sell subscriptions, aka as recurring billing. This means that you will sign up for a payment on a regular basis until you cancel. There is a number of good reasons why you want to use this model as opposed to ‘one shot’ sales: it lowers the price point to what a user will pay every month instead of what they will pay over time.

Mucho Dinero

Permalink

How much money can you make with the freemium model ? Well, it all depends, typically on those two key values, conversion and retention. Let’s take a very conservative example to give you an idea of what you can achieve with relative ease. If you’ve got 100,000 uniques per day in your ‘free’ bin and you convert at a lousy 0.01% that’s only 10 sales every day. Sounds bad right ?

Moving to Freemium

Permalink

Web businesses reach the ‘freemium’ stage through many different avenues, but they all have the same ending, somebody needs to pay for the running of the business and there’s profit to be made. It is one ‘monetization strategy’ that you could follow to earn a living on the web. Some web businesses started out with something simple and developed unexpected traction for their product, then found out they needed to pay their bills somehow.

Handbook Freemium

Permalink

In the light of the ‘Offer HN’ meme that suddenly sprang up (and which seems to have died down, including the ‘offer’ and ‘offerless’ sections), I wondered how I could contribute myself. This little booklet is the outcome of that, it is the result of me realizing that the most concrete thing I have to ‘offer’ is some experience and a chunk of my time. A lot of companies on the web use the ‘freemium’ model.

Everybody Pays

Permalink

Contrary to the words in the introduction, that only a very small number of users become customers and end up paying, you should strive to find a way to get everybody involved (guests, users, customers) to pay in some way for their use of the service. Typically, guests contribute eyeballs, and they pay with their time. Eyeballs can be used to get advertisers to pay for the guests and users in stead of them paying their own way.

Affiliates

Permalink

Affiliates are people or companies that use the access they have to people to help both you and them to make money. In practice it’s a lot harder than it seems though. Affiliates and you don’t have your goals aligned. You intend to make money off your paying customers, but an affiliates primary motivation to join in a relationship with you is to make money, period. And this opens the door to some very nasty tactics, many failed companies can attest to how hard it really is to run a successful affiliate program.

Respect

Permalink

Respect is one of those terms that gets thrown around a lot without people actually slowing down and meaning it. Respect in the context of the freemium model to me means that it can only work if there is respect all around, from users to the people that run the company, between users and from the people that run to the company to the users. If any of those is not present you are in for a very rough time.

Life Cycle

Permalink

Like just about every other item in the universe, accounts in a freemium product have a life cycle. If you ever hear a freshly minted freemium product owner say ‘we’re growing at 50% monthly, we will be rich!!‘, you know they haven’t yet worked out what their product life cycle is. And - make no mistake - that life cycle is always there and when you hit the inflection point where sales no longer outstrip deletions it can cause a world of trouble if you are not very well prepared.

Grandfathering

Permalink

As you progress towards optimal conversion you may find that you’ve made a mistake in the past. Mistakes that have happened in a traditional business are usually easy to correct, sales have been done or not, and those that haven’t can be done under different conditions. But in the freemium model, once subscribers are on board they expect to be given that level of service, support and other forms of attention at the pricepoint agreed upon for an indefinite period of time.

Communication

Permalink

Communication is a key ingredient in the freemium business. It is important to know when to communicate with your customers, and what is the right venue to do so. Typically, email is only used at the two ends of the freemium cycle, on account creation to confirm the details and to make sure the credentials supplied are legit, and upon account termination to make sure that the person really intends to terminate the agreement.

My list of ideas, if you're looking for inspiration

Permalink

When I saw jgc’s 1,000 (bad) ideas post I was hoping that it would actually have 1,000 ideas in it. Sadly not, but I can imagine he did not want to throw all his ‘good stuff’ out there for the world to see. Since I have more ideas than I have time, here is my list. Plenty of the ideas below are bad or even ridiculous, but there is some good stuff in there too.

Pay it forward, HN style

Permalink

The last couple of weeks there has been this amazing development on HN, where people are offering goods, services and lodging completely for free! Typically the header will be “Offer HN: [something]” The whole thing reminds me of the movie pay it forward (if you haven’t seen then please go and do so). Because threads on HN tend to disappear just as fast or faster as they come I’ve decided to put them all together here so they’re easy to find in the future.

PayPal robbed my bank account

Permalink

PayPal has a pretty bad reputation when it comes to dealing with inbound payments that sit in your ‘paypal account’ pending withdrawal. It’s not unheard of that they freeze your account without provocation and only release the funds up to 6 months later (or not at all, in some cases). Over the last weeks I’ve found that it can get worse. Fortunately the amount involved is not large enough to put me out of business but I’m definitely not pleased with what is happening here, they dropped one of my accounts briefly below zero without any reason to do so and banks just love it when an account without overdraft permission goes below 0 for a while.

WW.com subdomains are all active

Permalink

Feedback or questions: jacques@mattheij.com or http://twitter.com/jmattheij The day before yesterday I offered free subdomains of ww.com for anybody that wanted one in this thread: http://news.ycombinator.com/item?id=1796231 The response was quite overwhelming, which is why it took a while to extract the information from the post and create a suitable zone file. All of them that came within the first 24 hours have been created now, they’ve been live since last night. Somebody in the original thread already pointed out that these are not true subdomains because there is no delegation involved, but I hope it was clear that that was not the intention.

Why you should or should not get a co-founder

Permalink

Having a co-founder is, like everything else a mixed blessing of benefits and disadvantages. I think it’s time to enumerate them so that you have a little guide to decide if you should actively pursue having a co-founder or not, and if you do what kind of qualities to look for and which to avoid. If you feel I should add more items or flesh them out (or if there are mistakes in here) mail me: jacques@mattheij.com or pm me via twitter: http://twitter.com/jmattheij Many thanks to icey, wheels, daeken, rojisan, brownies, aristid, ismarc and the others that helped to improve this by commenting on it and proofreading it.

Down with URL shorteners

Permalink

URL shorteners are a plague on the web. They serve no purpose other than to create a short link to be able to send a longer url via some limited channel (email, chat, sms, twitter, other mobile services) to a recipient. Partly to blame are CMSs that output urls that are simply way too long. But URL shorteners are not a solution, they’re a problem in their own right. If a url shortener goes down (see vb.ly) for whatever reason then immediately there is a gaping hole in the web because these short, throwaway urls have a habit of nestling just about everywhere they shouldn’t be seen.

Autonomous driving cars one big step closer to reality

Permalink

According to this article from the German financial times: http://www.ftd.de/auto/:autonomes-auto-pkw-schlaengelt-sich-fahrerlos-durch-stadtverkehr/50180284.html (in German) The development of such driver-less vehicles has been under way for a considerable time (for instance the Darpa challenges), and has been part and parcel of science fiction pretty much as long as the genre has been around (for instance in the American popular TV series ‘Knight Rider’). So far however the actual implementations lagged considerably, but this is as far as I know the first time that a car was able to successfully navigate city traffic without any modifications to the infrastructure, it behaved just like any other car on the road.

AB Testing make sure you are optimizing for the right variable profit

Permalink

AB testing is testing several ways of doing the same thing side-by-side in order to optimize some variable that you measure during the testing period. For instance, you could try two forms side-by-side, and this will tell you which one of the two ‘converts’ better. Now almost everybody assumes that when you increase all these variables that you will find the global maximum for your business, but it is extremely easy to throw the baby right out with the bathwater when doing short term tests like this.

Welcome to the Pit of Despair...

Permalink

The title is to be read in one of those scary voices. The Pit of Despair is a term that comes from a very cruel animal experiment that was designed to make a model of clinical depression. In the jargon of World Wide Web start-ups it refers to the period just after a successful launch. When you launch, for a very brief moment, sometimes only a few hours, if you’re lucky a few days or even weeks you are ‘newsworthy’.

How we improved the SEO performance of WW.com, a mini how-to

Permalink

Note: before cutting and pasting through to ww.com to see what the site is all about, please read this: ww.com is a webcam site with 100’s of live streams at any time of the day, we do our best to separate out the SFW and NSFW content but this process is not 100% perfect so if you are at work please do not visit the site unless you are sure that you want to take that risk.

Beware of being too open about your company on Hacker News

Permalink

People like Patrick McKenzie have set news standards for openness about your corporate well-being, complete with pie charts of turnover and costs. But being too open about your new idea may be a mistake. Recently Zachary Burt (zackattack) launched a website called awesomenessreminders. It didn’t take long for the first imitations to appear, by the hands of none other than mr. ‘Enso’ himself, Alberto Amandi. Grounded in the negative attitude these could be seen as parodies of the original, after all, jerkness and fail are only going to get you so far.

Turning around the Titanic, part 1, triple the signup rate

Permalink

For a long long time I’ve been wondering what to do with ww.com, the site that has been my bread and butter for the last decade. I’ve tired of the concept of webcams, that happened about 5 years ago or so, and since then I’ve found it hard to get motivated to work on the site. On top of that there was still an issue with the shares to be resolved, which essentially meant that if I worked on it I would have to probably pay more for it.

Good System Administrators are Blind

Permalink

When you’re a system administrator, and not one of the ‘BOFH’ variety, you have at your disposal all the tools that you need in order to snoop on your users. A certain SRE (search reliability engineer) working for google had all that power, and then he decided to abuse it. http://gawker.com/5637234/gcreep-google-engineer-stalked-teens-spied-on-chats Now of course, it is inevitable that google employs people that have access to your data, but like every other person that has access to sensitive information good system administrators are ‘blind’.

Selling really does start at 'no'

Permalink

There is a book called ‘the selling starts when the customer says no’. It’s been both lauded and trampled for a variety of reasons, but the core, that selling is a job that has a clear starting point, the point where you encounter an obstacle, is one that I believe is very true. Plenty of times you come across people that have a great product and that have the potential to do very well for themselves but for some reason it does not take off.

Adventures of an imperative programmer in the land of fp

Permalink

Over the past year and a bit I’ve been trying to really ‘grok’ the functional way of programming computers. I’ve been doing it the ‘other’ (imperative) way for over 30 years and I figured it’s time for a change, not because I expect to become suddenly super productive but simply to keep life interesting. I also hope that it will change my perspective on programming. Think of this piece as an intermediary report, a postcard from a nice village in functional programming land.

Facebook to overtake Google in the next 18 months

Permalink

Google has been around for a little over a decade now, and facebook a little over 6 years (tx jackowayed). Both of these companies have steady growth and seem to find a permanent spot in the lives of the people using them. I think it’s fair to say that plenty of people can’t imagine going through their (work) day without using a google product, either search, gmail, maps, news or youtube.

The Start-up from Hell

Permalink

The start-up from hell. True story. That ‘true story’ is mandatory here, some of the stuff that you are about to read will sound so outrageous that you might think that this is a work of fiction. That, sadly, is not the case. To protect the guilty I’ve changed some of the names, they arguably do not warrant such protection but I don’t feel like fending off lawsuits. This story starts somewhere in 1987, I’d been working for an architectural company in the city of Delft on a cad program to design structural components and after the contract ended I was looking for a new gig.

So you were thinking of using adsense to generate income? Think again!

Permalink

A couple of years ago, when I was still firmly in the ‘advertising is not a revenue model’ camp I had a pretty heated discussion about what you could achieve with income sources like adsense. I always was of the opinion that advertising should be treated like the icing on top of the cake, and that it never should be your primary source of income. There are several reasons for this.

Polll vs Epoll (2), measuring the ATR on a very high volume site

Permalink

Web servers do their work by advancing a connection through several states. The first thing that happens is that a new connection is ‘accepted’ from a client that wishes to connect to the server. Then the server will be a delay until the client sends the request followed by the server reading the request from the client. Requests may span more than one read, so you may have to wait for a bit before the next part of the request becomes available, this is repeated until the request is complete.

Poll vs Epoll, once again.

Permalink

Introduction If you’re reading this blog with some regularity and you’re not a technology person, specifically a systems level programmer with a working knowledge of C and what goes on in the guts of webservers this may not be for you. If you’re curious or you are part of that category by all means read on. Apologies about the formatting of this post, I’m doing al this on a tiny little screen, I’ll try to fix it.

Who will get us out of this mess?

Permalink

I’ve been involved with the web pretty much since trumpet winsock was the way to connect your PC to the net and mosaic was the way to browse this new things called ‘web pages’. It didn’t take long before someone asked me if I could make some software using a technology called CGI to process the data typed in to a form by a user. Since then a lot has changed.

In defense of wikileaks

Permalink

I’m no fan of Julian Assange, I think the way wikileaks has in recent times converted their ultra clean reputation in to a part of the propaganda machine was less than elegant and will hurt wikileaks in the long run. BUT… The concerted effort that is taking place to label wikileaks a threat to security, to suggest that wikileaks (and by extension Assange) have blood on their hands because of the leaking of documents that contain the names of Afghan informers is absolutely dishonest and you shouldn’t fall for it.

Assume Absolutely Nothing

Permalink

I have something of a reputation for fixing obscure bugs. At some point in time you could probably call this a weird kind of hobby, the idea was that if you really had tried everything and you still didn’t find your problem, that I would take a wager for a dinner, either I find and fix the bug and you buy me dinner or I buy you dinner. It was a fun thing to do.

Are you suffering from burn-out?

Permalink

With some regularity people on HN are wondering if they are burnt-out or the suggestion is made that someone is burnt-out. To make it a little easier to see if you may be suffering from burn-out or not you may need an outside reference. The reason why this matters is that burn-out is a serious condition, and ignoring it when you are suffering from it may cause longer term problems of an even more serious nature, including heart trouble and mental health issues.

I'm a tool freak

Permalink

If there ever is going to be a tool-freaks anonymous I’ll probably be a founding member. This started when I was very young, at the ripe old age of three I came in to the possession of a screwdriver (and a garbage found typewriter, which I both got from my dad for my 3rd birthday). Pretty soon other tools followed, pliers, a small hammer and a universal wrench. By the time I turned five there wasn’t much that I couldn’t demolish!

The pros and cons of 'fuck you' money.

Permalink

Resdirector on Hacker News asked a very interesting question: http://news.ycombinator.com/item?id=1511104, how did your life change after fuck-you money? For the jargon challenged, fuck-you money is defined as the amount of money that allows you to maintain your lifestyle at some desired level. Technically, I’m not currently in the posession of ‘fuck you’ money, but I do have an asset that allows me to ‘maintain my lifestyle’ and it has been doing so for more than a decade.

Those niggling last little bits of a project

Permalink

I’ve been trying very hard to enumerate my shortcomings so I can work on reducing or eliminating them. Of course you can only know yourself so much, so in order to get a better grip on this I decided to ask the people nearest to me to be frank and to tell me what I should improve. One thing stuck out, not because it was a ‘big thing’ but because it was mentioned several times.

How David can beat Goliath, smaller companies competing with larger companies

Permalink

When you’re a small company and you get a large competitor in your niche that starts to go after your customers it can look pretty scary. Goliath approaching is an awesome sight, and some people tend to give up right there and then in order to avoid the confrontation. But that’s a mistake, in my opinion. One of the sentences that used to be bandied around to describe the ‘worst case scenario’ for a start-up company is the ‘what if microsoft enters our niche’, today most of the times when you hear someone say that sort of thing microsoft has been replaced with google.

You are NOT the CEO

Permalink

In a recent hacker news thread a person asks for some advice on how to fix the underperforming sales division of a newly created start-up ( http://news.ycombinator.com/item?id=1380381 ). At some point in the thread he writes: “We are working on that now. It might give us more breathing air but still will keep us with a CEO (him) that I cannot trust professionaly.” I practically fell off my chair when I read that.

How to get better at estimating software projects for freelancers and teams

Permalink

Getting better at estimating is hard, but first, a word of warning. Before the estimation can even begin you have to have at least a limited draft of a specification that both you and your customer are willing to sign off on, you because you are confident that you can build it and your customer because having that implemented will make them a happy customer. Happy customers are repeat customers, repeat customers is where you will make in time the most of your money.

running a start-up is great, growing a business is boring

Permalink

When you’re a techie founder of a start-up, one day you wake up and you realize that starting a business is great, but that the more successful a business gets the more mundane the work that needs to be done. In the end, the biggest pay-off is not in the initial idea, the spark of genius that drives the company forward initially, but in the enormous machinery, the life-support system that brings that spark to market and that makes it profitable.

Burn-out visible in the brains of patients

Permalink

According to this article (dutch) scientists working for the Radboud University in Nijmegen, the Netherlands, have succeeded in showing physical evidence of the presence of burn-out symptoms in patients. For those that don’t read dutch, a rough translation: “The universities call this a break-through because so far there are plenty of countries where burn-out is not recognized as a real phenomenon, one of those countries is the United States. By showing through objective means that burn-out is real the door is open to recognizing it as a real issue instead of a purely mental one and makes possible diagnosis and treatment.

Hacker, Painter, Bricklayer and Watchmaker

Permalink

The question ‘is programming art or engineering?’ has caused a lot of people to get quite upset with each other. I’d like to answer the question in a way that will hopefully put it to rest once and for all, but even if that doesn’t happen I hope it will give some perspective to those ‘dug in’ on either side of the argument and unable to appreciate that the other side may in fact have a point.

Dutch Judge rules mentioning filenames in usenet postings on website is illegal

Permalink

A dutch judge has just made it illegal to mention the filename of an upload to usenet, ruling that this is a violation of copyright law. The article on the popular dutch tech site tweakers (in dutch!) quotes technology lawyer Arnoud Engelfriet, who assisted FTD (the defendant) as completely stunned: “Talking about unauthorized media files, or even publishing the links to those files is not a violation of copyright, this has been confirmed in every lawsuit in the last 6 years.

In Memoriam René Sommer

Permalink

René Sommer is no longer. I got the message rather late, a few days ago I was exchanging some email with an associate at Logitech, and asked him to pass my regards to René, and to my surprise the answer came back that our friend had passed away. René had died last year, October the 5th of 2009, way too young at 58. We were never close friends, but we did meet on several occasions and it made me appreciate him very much, read on to see why.

The ideal mobile computer interface

Permalink

I think the ideal mobile computer interface is not a series of buttons, or a touch screen, multi-touch or single touch doesn’t really matter, that’s just a detail. Computers are here to do work for us, media consumption is great but it is also an activity that for the most part is exclusive (unless you’re talking about background music), but there are plenty of times when you are in the need of some information and not simply looking at some movie or browsing the web.

Wholesale Privacy violations in the European Union

Permalink

The European Union is usually heralded as a place where privacy still has some meaning, with the exception of England, which people seem to see in a different light because of the prevalence of surveilance cameras. Today, while searching for something else I ran in to this page: (dutch) http://www.security.nl/artikel/30389/1/Overzicht_anti-privacy_maatregelen_Nederlandse_overheid.html , which enumerates a series of anti-privacy measures that have been taken in the Netherlands since 2001. tapping requirement for internet traffic allowing the police to perform preventive frisking a general identification duty an RFID chip in the passports all public providers of email and internet have to supply lists of their customers on a daily basis to a government institution camera usage without any oversight rising enormously the secret service gets access to all immigration data anonymous travel by public transport no longer possible because of a personalized chip card that you have to use the creation of an electronic ‘per child’ file which is accessible to a series of government institutions an electronic medical datbase (with a very convoluted opt-out procedure) 6 month requirement to store location data of mobile phones finger prints in passports finger prints on id cards you have to have either a passport or an ID card when you are 14 years or older a database of fingerprints of all people that are 14 years or older a DNA database of ‘offenders’ or those that have ever been caught up in the dragnet around a rape case That’s just 10 years, or to be precise only about 8 1⁄2, and we had a close call on being forced to carry a GPS based reporting device in our cars in order to pay an extra tax on the use of public roads (never mind that that effect could be achieved cheaper with an extra tax on fuel, which is already outrageously expensive here).

Mistakes I've made, and what you might be able to learn from them.

Permalink

I’ve been running my own companies since 1986. That’s 24 years now, with some brief stints of employment if a contract was so time consuming that the dutch regulators took it as being equivalent to employment (they do that here to stop employers that try to avoid paying in to social security by hiring all their employees as free-lancers). At the high point of running ‘TrueTech’ we had about 20 full timers and partners, and a bunch of free-lancers.

A chair needs at least three legs, so does your business

Permalink

A chair needs three legs to be stable. On two (or less) it can’t stand by itself, and it’s funny but the same seems to hold true for businesses. When you’re relying on only one ‘line of business’, or even worse, just a single or only two big customers for your survival then the first hickup will immediately bowl you over. It’s possible to survive a hit to your income stream, but how much of a hit you can survive depends on how much cash you have in the bank and how big a portion of your total income that hit represents.

You will die. Get used to it.

Permalink

Technology gatherings seem to have a disproportional number of people that are true believers when it comes to anti-aging and ‘uploading’ your brain to a computer. One of these is to cheat death by increments, the other the technological equivalent of an afterlife. The first through direct intervention, reversing the normal process of aging, the second by decoupling the mind from the body and letting it continue to function in some kind of substitute substrate, usually presented as a computer.

A challenge, identify this HN user, I tried twice and failed

Permalink

A typical case of me and my big mouth. I figured that a basic analysis should reveal who wrote this: http://news.ycombinator.com/item?id=1197027 Because of the size of the sample. So I wrote a bit of code to compare against other HN comments, and figured that that would turn up the user quickly. But I was wrong, after two tries (Daniel Markham and John Graham-Cummings) I have to admit that my simple analysis has failed.

Cheap bandwidth and server capacity, HN special.

Permalink

Hey there HN’ers, After my post a while ago about what I pay for bandwidth I got a bunch of inquiries who my hosting party is. I’ve asked them if I can go public with the numbers, the answer is yes, so here is the deal that I’m getting with all the figures and specs of the machine. Note that this is not the same as the offer on their website, it is substantially better, both in payment terms as well as in the monthly fee.

The Page Space Wars, a cyber war for territory in Googles index

Permalink

This post on HN: http://www.skorks.com/2010/02/how-to-become-a-spammer-as-a-programmer-regardless-of-people-following-you-on-twitter/ And the one that it refers to have me thinking about what SEO, spam and other tactics really are about and how you can draw the line between what really qualifies as ‘spam’ and what is still ‘clean’. It’s a surprisingly hard problem, it seems that everybody has their own definition of what qualifies as spam and what does not. Let me outline a bunch of commonly used (and imo very spammy) SEO techniques to illustrate what this is all about: Tactic 1, the link farm: A bunch of ‘feeder’ websites is created that rank high for certain keywords and that basically are just gateways in to the ‘real’ site, the payload.

readwriteweb.com Canvassing HN'ers for their 'HN Love'

Permalink

I’m wondering if this has happened to others on the HN leaderboard. Jan 11th I was approached by Dana Oshiro from ‘readwriteweb’. Initially it was just some friendly banter but after the third email it was pretty much an open door that the idea is that I post or write about the stuff that is sent to me. So I stopped responding at that point because I definitely do not think it isn’t ok to try to game HN in this way, if you want your stuff posted simply make an account and post it yourself, the community will decide either way, you don’t need me for that.

Asynchronous Life

Permalink

After talking to ‘david927’ and more recently ‘morphle’ my interest in a longtime dormant project called ‘softbricks’ has woken up again. The idea behind softbricks is a computing fabric that you can create out of simple building blocks connected to each other in two or three dimensions. Think ‘lego’ but make it calculate. The question then becomes how simple can you make a brick, how many ‘gates’ do you need to make it all work.

Define 'Correct'. Conways 'life' and the central clock

Permalink

Programmers can usually agree on whether the answer to a given problem posed is ‘correct’ or not. For instance, in most languages there is an equivalent to the program: print 3+4 And we expect the output of the program to be ‘7’. But when you look at cellular automata the concept of ‘correct’ output is more complicated. For instance, take ‘life’, by Conway. I assume that everybody is familiar with the game of ‘life’, but in case you’re not, in a nutshell the ‘cells’ on an infinite grid are governed by a few very simple rules: if a live cell has less than two neighbours it will die (‘loneliness’) if a cell has 3 neighbours and is empty it will ‘come alive’ if a cell is alive and has 2 or 3 neighbours it will continue to be alive if a cell has more than three neighbours it will die (‘overcrowding’) In spite of the simple rules, the ‘life’ cells can exhibit extremely complex patterns, and in fact can be used to build a computer that will calculate anything you want, given enough resources (time, and ‘cell space’).

installing squeak

Permalink

download squeak image: http://damiencassou.seasidehosting.st/seaside/pier/Smalltalk/squeak-dev?_s=m_ucALRZBre5S7ct&_k=irxftMPq&_n&10 download squeak VM for your machine http://squeak.org/ install the vm: cd Squeak-3.10-1 sh INSTALL ok, that didn’t work for a 64 bit machine next try: seaside http://seaside.st/download/pharo#16819391 seaside vm installed in /usr/local/squeak symlink to /usr/local/squeak/Seaside-3.0a5.app/Seaside.sh /usr/local/bin/squeak/dev VM complains about streaming server, so copy image from squeak.org release VM to /usr/local/squeak/Seaside-3.0a5.app/Contents/Resources/ On running the VM again, this time the sources are missing, download sources from http://ftp.squeak.org/3.9/SqueakV39.sources.gz to

Is HN Changing - Growth

Permalink

HN has grown since the time that it was launched, but how much it has grown is dependent on which metric you use. For the purpose of this analysis I’ve only looked at the users that actually contribute to HN, so that’s people that post and / or comment. As far as I could resist the temptation I’ve tried not to analyze the graphs but to simply present them with some explanation of what you are looking at, I’m curious what kind of non-numerical trends you can pick out.

I'm a terrorist (and so are you!)

Permalink

Today on HN someone posted this link: http://www.telegraph.co.uk/technology/twitter/7016266/Man-arrested-under-Terrorism-Act-for-Doncaster-airport-Twitter-joke.html About an English man that got himself arrested for - get this - a tweet. It’s gotten to the point where you can apparently spend a night in the slammer for tweeting about stuff. If that isn’t a sign that ‘the terrorists have won’ then I don’t know what is. What’s next ? Thinking ? Writing ? So, here I’m going to have to confess… I’m a terrorist too.

Decoding Clojure

Permalink

This is a terrible mangling of a piece of code by Eric Lavigne (thanks!), I take full responsibility for any lines starting with and the afterword. I’m a total newbie when it comes to clojure, so when I got my hands on a little clojure program to play the game of ‘island-wari’ I went and dissected it bit by bit, clojure manual in hand to see how it works. The original code did not contain any comments at all so this was a both trying to figure out what the langauge does and what the program does.

Is HN changing ? Part 2

Permalink

I took the feedback on the original posting to heart, specifically the following items: there was an error in the graph, I misspelled a tag which caused ‘technology’ to be there twice dead links were not visibe, this skewed the graph, this was remarked several times. the legend was less than legible I’ve corrected those elements in the graph and have put a new version of it in the place of the old one.

Is HN changing ?

Permalink

HN visitors are generally worried that HN is changing, and most of the worries center (obviously) around whether or not it is changing for the worse. I thought it would be nice to either know that it really is changing or lay the matter to rest, so I sampled a bunch of postings done since HN was started and tagged them with a number of categories. Of course I can’t go through all of the items that have been posted through the years but it will give some insight.

baby steps in clojure

Permalink

I’ve set my mind on learning a functional programming language this year, and after long reading and puzzling I’ve decided that it is going to be clojure. Other contenders were Erlang, Haskell, common lisp and scheme. Clojure seems to have a lot of direct application to the kind of stuff I’m likely to do and it looks like it is gathering a fair amount of steam. Hga on Hacker news posted this http://news.ycombinator.com/item?id=1033503 very helpful comment so I started reading from the top adding stuff I found along the way.

Can we stop the language bashing please ?

Permalink

With some regularity articles are being penned about the shortcomings of language x,y or z. It doesn’t matter which language has it’s turn, be it Perl, PHP, Python or something else, they all seem to get their share of trash heaped on them from time to time. Invariably these articles become very popular and get linked from all over the web because they appeal to a very human instinct, the fear of the ‘other’ and the group against the individual.

cuda for the absolute beginner

Permalink

My brand spanking new graphic card is ‘CUDA’ compatible so I figured I’d give it another try. The steps to get it working are: install a cuda compatible driver install the cude tools install the sdk (this contains the example code) compile the examples Meanwhile I’ve upgraded to kubuntu 9.10, and at the last step this lead to some headscratching. It seems that the cuda code will only work when you use gcc 4.3, not the latest 4.4 (it will throw a weird error about not being able to declare ‘memcpy’ weak).

The Lambda Calculus

Permalink

I’m trying to get my head wrapped around the Lambda Calculus because I want to get a more thorough understanding of functional programming. Through the years there have been many times when I thought it is high time to learn ‘lisp’, a little while ago I had a long look at the source of ‘news.arc’ and it started to become a bit clearer how lisp and other functional languages achieve real work, but to say that I fully grok it would be a serious overstatement.

Small really is good, the case for micro clouds

Permalink

With some reluctance I welcome the coming of the cloud. It’s the logical next step, to offer services to a large number of users should be cheaper than to set them up for yourself due to economies of scale. We should all be better off. But for now the prices aren’t that competitive, only in very specific use cases (I need 10,000 servers tomorrow and then I won’t be needing them for the next year or so) is there a very clear economic advantage.

The Agony Of Choice

Permalink

The title really says it all, choosing is painful. I’ve been reading ‘Coders at work’, and this line jumped out at me, from the ‘Joe Armstrong’ chapter. When I learned how to code, the mid 70’s to early 80’s, on small machines, you had exactly one choice of language, it was ‘BASIC’. The only difference was which dialect (and those dialects had so much in common that if you were proficient in one you could switch to another one in a matter of days).

Third parties

Permalink

Occasionally you’ll find that you can land a job that is too big just for you. At this point you can do one of several things. You can refuse the job because it is too big, accept only part of the job, or accept the whole job and farm out the bits that you can not do. The latter is interesting, because it allows you to put a margin on the work that you contract out, but that comes at a price, the fact that you are now responsible for other peoples work.

Estimating

Permalink

Estimating is part art, part science and a small amount of voodoo thrown in for good measure. The art of estimating The art part is to be able to look at a specification and to get 'within the ballpark' of what a job is going to cost you in time and hence roughly what it should cost. The science of estimating The science part is in the feedback loop between your past estimates and reality as reported by your time registration system.

Pricing

Permalink

What price to pick ? This is a tough one, even for seasoned consultants. There is a joke that a price is never right, if something gets bought it was too cheap and if it sits on the shelf it was too expensive. Hourly rates Your price should be a reflectance of your skills level and your reputation. In the beginning of your consultancy career I would suggest to lowball the price, but not too much.

Invoices

Permalink

Everybody knows what an invoice should look like. Or do they ? On the off chance that you don’t know, here is what goes in to a typical invoice: your name, address and contact information, logo if you have one the customers name, purchase order number if any, and address, if known contact person the date the invoice is sent line items containing: count, description (can be extended over the next lines), unit price, total price a sub total with all the line item total prices added up any discounts that apply the applicable taxes over the total the grand total payment terms (such as 'payable within 7 days) payment information, such as your bank account number, international routing information and your bank branch id optional in some places, required in others, tax id, chambers of commerce registration id When an invoice is sent, make a todo item to verify that it actually got paid.

Insurance

Permalink

Insurance companies make a great play about selling you all kinds of insurance for all kinds of mishaps. The short version of my advice here is: Don’t, except for liability. The longer version: If you are the kind of person that wants to have certainty about everything in life then probably freelancing is not for you. It is not without risk and some of those risks are so expensive to insure against that if you did it you’d effectively be working for the insurance companies.

Contracting

Permalink

Contracting means that in stead of being paid by the hour you get paid by the job. Small difference in principle, huge difference in practice! If you get paid by the hour there is an unwritten contact between you and the customer that you will do your best to make those hours count, but there is no actual agreement on how many hours a certain job is going to cost. As soon as that is the case you are working ‘fixed price’, and then the rules change dramatically.

Skills

Permalink

Plenty of skills lend themselves to an independent or freelance work method. Whether yours is one of those is of course the big question, but in general the skills required should be reasonably hard to come by, should allow you to create a relationship with your customers that is repetitive in nature, and should have a remuneration high enough to justify the overhead of running a small company. Though it is technically possible to do just about any job as a freelancer being an assembly line worker or something like that is not normally done.

Politics

Permalink

Politics is one of the worst aspects of being in business for yourself, at least, it is to me. There are plenty of people that seem to enjoy the game and that relish the thought of using their skills at politics to establish a position that they would not be able to achieve on merit alone. I’m not one of them. Chances are that you are also not one of them, but politics, alas are a fact of business life.

Intellectual Property (IP)

Permalink

Intellectual Property is a tricky matter. Lots of lawsuits every year simply because people are either mistaken about their rights or confused. Or both. When you work for a boss the situation is clear-cut, you are employed, they own the product of your work. When you work as a free-lancer the situation is much less clear cut. If you work for hourly rates and your work is ‘transient’, in other words you do not create a product such as a book, a piece of software or a design then there is no issue.

Finding and keeping customers

Permalink

Finding and keeping customers is hard. The problem with describing this part of running a small business is that every small business is different in this respect. Customers will establish your reputation, which will bring other customers, but how do you get your first batch, it’s the proverbial chicken and egg problem. Instead of giving you a set of ‘must-dos’ I’m simply going to list those things that seem to work for me, you’ll have to modify them to suit your own situation.

Tools

Permalink

In order to run your consultancy business you will need several tools, I’ve tried to make an exhaustive list here: A computer Something good enough to do wordprocessing and spreadsheets on, if you are a creative person (such as a programmer or a designer) that uses a computer to generate the product make sure that it can run the software that you need for your work comfortably. A place to work This is probably one of those items where you go ‘of course’, but still, it is not always that clear cut.

Taxes

Permalink

Taxes are unavoidable. In fact, I hope you’ll pay lots of tax! That means you are doing a half decent turnover and that you have a good profit margin. Joking aside, I’m sure you’ll want to pay your taxes, but not too much. That’s where that bookkeeper comes in. Ultimately though, the responsibility to pay your taxes is yours, not your bookkeepers, and you should be diligent in making sure that you can pay your taxes when they are due.

Self Discipline

Permalink

Self Discipline is the art of motivating yourself and keeping at the job when nobody else is around to tell you what to do. Being your own ‘boss’ literally means that you have nobody that make sure you are in the office at 8:30, that you put in a productive 8 to 10 hours and that you take your breaks. You are in total control. That is a great feeling, but not everybody can handle that freedom with the same ease, though I’m fairly sure that given enough time everbody can learn how to do this.

Presentation

Permalink

Presentation has everything to do with how you come across to (potential) customers. If you look sloppy you will be assumed to be sloppy, and this will reflect on your work. On the other hand if you look like a fashion model then people will assume that you spend time that you should be working on grooming yourself or that you are too expensive. Somewhere in the middle lies common sense.

Incorporation

Permalink

Incorporation is the act of creating an entity that has a life outside yourself. The connection between a corporation (a legal person) and real people is usually in the form of shares. There are several reasons why incorporation is usually a good idea, and not many why it isn’t, so most people that go the consultancy route will at some point incorporate. Depending on your geographical location your choices will be more or less varied, but in general almost every country has a general palette of choices: single person operating as a company This is not really a company yet, but it is usually the prelude to one.

Ethics

Permalink

Business ethics is something you get an opportunity to practice almost every day. Ethics is about two things: Professional integrity (your reputation) This means amongst other things that you say it like it is, and that you bill for the work done (and not for what you can get away with). It means that if someone asks your opinion on something that you haven't a clue about that you say that it is outside your expertise, instead of making up an answer on the hoof and hoping you get it right.

Dependencies

Permalink

Dependencies are both comforting and terribly dangerous for a small business. If all or most of your work is coming from a single customer you are setting yourself up for a painful episode. Best to minimize these situations, even if the temptation to work for that one huge customer that always pays on time is tremendous. What will happen is this: as you work for that one customer all your other customers are finding other ways to satisfy your needs.

Customers

Permalink

Customers are your most precious resource. It takes a long time to build up a portfolio of good customers that you have a long-lasting relationship with. Ideally your customers know what they want, are able and willing to pay for it and value your contribution. In practice though, it is not always that clear cut. Plenty of customers do not know exactly what they want, but hopefully they have a good idea, and together you can fill in the blanks.

Conflict

Permalink

Conflicts are bound to arise sooner or later. There are several kinds of conflicts: financial A financial conflict can be initiated by you, the consultant, for instance because a bill has not been paid. There are several ways to deal with this, it depends very much on your relation with the customer to date and your expectations of your future with this customer. You really do not want to be in this position to begin with, so the assumption is that something has changed, or there is some genuine oversight.

Bookkeeper

Permalink

As soon as you can afford it, which should be within several months of launching your fledgling business, get yourself a bookkeeper. You could save a few bucks by doing your bookkeeping yourself, but in my opinion that’s wasted money. Unless of course you are running a bookkeeping consultancy! For everybody else it is better to stick to the thing they can do best and spend a little bit of money on a professional bookkeeper.

Banks

Permalink

Banks are great tools, but you have to make sure, like with any tool, that you are in control. It’s very easy to come to the conclusion that you are at the mercy of the bank and that you have to jump through all kinds of hoops in order to please them. This is not true, even though it may feel like that at times. Banks are there to serve you, and you are their customer.

A simple way to store and retrieve tree based information in the Django object relational model (ORM)

Permalink

Django is a pretty neat piece of software, but if you want to stick to using just the Django based ORM and not resort to putting hard coded SQL in your code then there are some things that are quite difficult. One of these is the storage of tree-based data in Django. For instance, a nested comments set. You could store these ‘naively’, but it would require a lot of extra trips to the database in order to retrieve a tree or a portion of it.

installing django on debian etch based server

Permalink

Notes on installing django 1.0 on Debian Etch 64 bit, using mod_wsgi install the apache dev package apt-get install apache2-threaded-dev upgrade python to v 2.5 apt-get install python2.5 apt-get install python2.5-dev rm /usr/bin/python ln -s /usr/bin/python2.5 /usr/bin/python make a django directory mkdir /home/django cd /home/django install mysql python bindings mkdir mysql cd mysql wget http://voxel.dl.sourceforge.net/sourceforge/mysql-python/MySQL-python-1.2.2.tar.gz tar -zxvf MySQL-python* cd MySQL-python* python setup.py build python setup.py install cd .. get, build and install mod_wsgi wget http://modwsgi.googlecode.com/files/mod_wsgi-2.5.tar.gz gzip -d *.gz tar xvf *.tar cd mod_wsgi-2.5 ./configure make make install echo LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so > /etc/apache2/mods-enables/wsgi.load cd /home/projects/django wget http://www.djangoproject.com/download/1.1/tarball/ gzip -d Django*.gz tar xf Django*.tar cd Django-1.1 python setup.py install cd ..

CUDA for beginners

Permalink

Notes on getting started with the NVidia CUDA architecture. this is in ‘sh’ script format so that you can copy and paste including the comments, but be sure to go step by step, your machine may not match mine (ubuntu 9.0.4), and you will have switch users and exit X windows at some point. Uninstall any existing NVidia drivers that you have or you might run into trouble later. First, you have to get the CUDA implementation and toolkit for your machine: http://www.nvidia.com/object/cuda_get.html Shut down X windows run the cudadriver file as ‘root’ sudo sh cudadriver_XXX (fill in details of your file here) you can restart X at this point.

The story behind ww.com / camarades.com.

Permalink

This is all done from memory without any fact checking, chances are I’m misremembering stuff or leaving out important pieces, in that case please forgive me, it’s late! I may revisit this at some point to correct and revise it. Personal note, I’m a high school drop-out, have been coding since roughly 1978 (when I was 13 or so) and if it weren’t for a few very nice people would have never ever gotten where I am today.

The Value of Typing

Permalink

In the dark and distant past of personal computers, before widespread use of networks and data carriers (for a personal computer your choice was cassette tape or, if you were really really rich a floppy disk but no distribution net existed), if you wanted the latest game, here is how it went: You took your money to the local newspaper stand to pick up a copy of one of those glossy games magazines, took it home and you TYPED in the code that made up the program.

Italian comedienne prosecuted for insulting the pope

Permalink

These things get me hopping mad. Italian comedienne Sabina Guzzanti is being prosecuted by the Italian government because she insulted the pope. Regardless of the specifics of the case let’s try to see what this is all about. In Europe there still exist two classes of people, ordinary folks and the ‘betters’, such as the pope and the remnants of royalty. These ‘superior’ beings enjoy protections from the law that are not afforded to ordinary mortals.

Junk DNA ? No Way!

Permalink

There is a large amount of DNA that does not ‘code’ for any known proteins, this DNA has been labelled ‘junk DNA’, reminiscent of garbage bags and messy basements carrying the leftovers of evolutionary dead-ends. I don’t believe any of it. Nature is much too frugal to use 90% of our most precious molecules as a garbage dump, I think it is functional, and probably all of it rather than just some of it.

manufacturing in Asia

Permalink

Over the last two decades more and more manufacturing has moved ‘offshore’, in other words to Asia. This is strange, if you really think about it. People have traditionally made and consumed items locally, quality was high and even if stuff wasn’t cheap you could afford what you needed. That’s all gone out the window now. Container ships carrying just about everything (clothing, shoes, furniture, toys and so on) ply the seas with goods manufactured thousands of miles away from the point of consumption.

Music

Permalink

Music has always been a very important part of my life. As long as I can remember back (about to age 5, I can’t see much beyond that except snatches of images) there are tones around me that colour my life. Sometimes bright, sometimes darker but they’re always there. Music is a very special art to me. Paintings, statues and other works of art perish with time, get lost or destroyed.

adhd, ritalin and evolution

Permalink

My kid is pretty active, and pretty smart. It wasn’t long after he was born that the term adhd started to be bandied around. I didn’t like it one bit. For one adhd ends on the ’d’ of ‘disorder’, secondly I don’t think there is anything wrong with children that are active. They just stand out because the others are not. In fact, I probably prefer the active ones over the not so active ones.

the cost and value of bits, and their content, signals and noise

Permalink

Information has value, and the value of information is like any other commodity a measure of its scarcity, so as we have access to more and more information the value decreases, eventually approaching 0, but never quite getting there. From today, when we are overloaded with almost free bits of information travelling backwards in time: the cost of mobile communications, per minute airtime charges the cost of landline communications up to the mobile phone era the cost of a telegram the cost of a single message relayed by messenger Similar curve: the cost of a web page (almost all of them are free to be viewed, including this one) the cost of an e-book the cost of a printed book the cost of a hand copied manuscript The storage of information follows (physical cost of a bit) a similar curve, and over time we can expect the cost of storage to also drop to almost 0.

mushrooms and couriers

Permalink

After Eckart Wintzen died I received an invitation to go to the ceremony, and since Eckart in spite of having known then man only for a very short period before he passed away has probably had more influence on me than anybody else in a long long time I went there, in a pretty dark mood. The speeches were long (15 speakers in all) and at times very emotional. In true Eckart fashion we all received a handkerchief to take care of that.