This commit is terribly troubling. Google is asserting copyright over a software product that an employee wrote using his own time and equipment. Now Google may have very liberal open-source contribution policies, and this one copyright assertion may make very little difference to this open-source project, but the underlying principle–that a company owns code that […]

Continue reading

In: rants | Tags:

Here be dragons. This bug was the bane of my existence for two weeks. The dreaded EXC_BAD_ACCESS. The trouble with this crash is it gives you basically zero information, and often the frame (backtrace) is invalid (so, less than zero information: wrong information). So the first step is to look at the backtrace. Unfortunately, the […]

Continue reading

This post has been a long time in coming.  I stopped reading HN over a month ago, so I’ve had some time to cool off.  I’ve been struggling to put my thoughts into words, and so this post has sat in the drafts folder until today I realized that it’s as well-thought-out as it’s ever […]

Continue reading

In: rants | Tags:

31 Jul 2010, by

Revenue Sharing

Problem If you’ve read any of my previous posts, you know that revenue sharing is mostly evil. Everyone who has ever held an iPhone has an idea for an app that will (in their mind) make them millions. The number of people who can execute on those ideas, on the other hand, is exceptionally, vanishingly […]

Continue reading

I discovered the weirdest behavior *ever* today. For some bizarre reason, this line of code works fine as long as you are drawing into a “screen” context (e.g. one set up by drawRect). If you are drawing to a bitmap context (e.g. UIGraphicsBeginImageContext), it will for some random reason set the stroke color to transparent […]

Continue reading

There’s much ado today about the pain gun which HN thinks will be turned around and used on civilians. They’re probably right. But in the long run, that doesn’t matter. You see, pretty much every piece of technology ever invented started out looking pretty evil. Computers were a way to rapidly calculate bomb trajectories. The […]

Continue reading

In: rants | Tags:

This is, more or less, how I taught myself x86 assembly. By reverse-engineering Skype. http://www.secdev.org/conf/skype_BHEU06.pdf It wasn’t quite that difficult back in the 90s. And these guys got way further than I ever did. But a lot of the binary protection (polymorphic checksumming, dynamic calling, a really clever packer, RSA verification, etc) is close or […]

Continue reading

As part of some SEO I’ve been doing, I’ve been wanting to track an outbound link (specifically, to the app store) as a goal in Google Analytics. The roundabout explanation is that the Google Documentation for tracking outbound links is wrong, because they want you to track it as an event (and events cannot be […]

Continue reading

In: Code | Tags:

Just for fun, I’ve thrown together a quick&dirty landing site for Timely from some templates.  I’m interested in seeing whether having a high-quality landing page causes an uptick in sales as well as whether AdWords is profitable for a decent niche iPhone app.  Will report back with results. In other news, my consulting landing page […]

Continue reading

You know what sucks?  US Broadband.  More specifically, caps seem to be getting more and more popular. Now I have nothing against caps, in theory.  Charging by usage works fine for electricity and water.  The problem is: Growth.  Data is one of those resources that you keep using more of.  GMail has solved this problem– […]

Continue reading

Powered by WordPress