Looking for maintainers for django_atomic_*

As I’ll be leaving Iconfinder by the end of August, I’ll no longer be using Django in my everyday life. Therefore, chances are slim at best, that I’ll have the time to work on the atomic transaction signalling (and related) Django modules I’ve written mostly for the needs of Iconfinder:

Currently, they’re all functional for Django 1.6 and 1.7, but I can make no such guarantees about Django 1.8 and beyond. But, as a few people are using these modules in production, I’d hate to see them just wither in my absence. So, if you’re one of these people and wish to take over the task of maintaining them, I’d be very grateful. I’ll happily hand over both the repositories and pypi ownership of the modules – just get in touch at nick@bruun.co.

Boom! Adam Johnson, the author of the MySQL extension Django module, django-mysql, has offered his services in maintaining the repositories going forward. I’m confident they’re in great hands – thanks, Adam!

July 22, 2015 |

AArch64 on the server? Not yet.

For a couple of years now, I’ve been dreaming of building a low-power ARM server cluster for… something. I never really got the process very far; early ARM server SoC providers were either unwilling to respond to inquiries or completely unhelpful. Oh yea, and I never had a real reason for doing it, other than, you know, doing it. A week ago, that dream was reinvigorated by an actual use case. However, I “need” 64-bit addressing, so my drawer of odd ARM development boards I’ve accumulated during spouts of ambition over the last couple of years is useless. But, my iPhone 5s sported an ARMv8 64-bit processor, so surely there must now be some solid 64-bit SoCs out there?

With AMD’s 64-bit ARM server revolution still failing to materialize, Calxeda going belly up and Marvell, Qualcomm and the rest focusing on mobile applications, it turns out the answer is “no.” … -ish. The only real contender with an actual product to show for is AppliedMicro with their X-Gene SoC. Although the development boards sport some pretty serious price tags ($1495 for the basic and $2495 for the fun one), an 8-core 2.4 GHz SoC with 10G Ethernet, a SATA III controller and ECC RAM support touting “Xeon-level performance” surely must be able to do the trick? After all, HP is now shipping microservers with this next-generation piece of silicon (points to the marketing division for repurposing the name “cartridge.”)

As it turns out: no. AnandTech has done an excellent review, pitting the 1st generation X-Gene (the only one available) against some Atoms and low-end Xeons. The results are striking; the archaic 40 nm process with which the X-Gene 1 is produced coupled with the apparently abysmal performance means that AppliedMicro’s big bet fails to deliver in every single way – including performance per unit of power. And in a big way.

As with any benchmark, there are some details to be kept in mind. The compiler generation used in the review doesn’t have the latest in AArch64 optimizations, and this is of course only the first generation of the chip, with X-Gene 2 supposedly to be produced with a more modern 28 nm process. But, none of that really matters. As far as compiling your code and running it in production goes, the X-Gene 1 and the AArch64 environment at large seem to be so far off the mark it’s not even a hypothetical contender at this point. For now, then, it seems we’re still better off in any regard just buying mid-range Xeons and getting on with it.

April 14, 2015 |

Blue dot terror

I’ll admit it; I’m a tad obsessive. For example, I’m a completionist. I scan through every single tweet in my timeline, I look through every single item in my feed reader, and I read every single e-mail that hits my inbox. This is a lot of work, of course, which is why I follow very few people on social media sites, and I aggressively unsubscribe from virtually any and all e-mails being sent my way, that aren’t actually important to me (I do not willingly subscribe to a single e-mail newsletter out there.)

My phone is no exception, of course. Anything, that demands my attention without being of significant importance to me (or, in the case of some social media, my ego,) has notifications disabled. My tolerance in this regard is especially low, as a notification entails vibrating in my pocket, disturbing me and, due to my obsessive nature, forcing me to stop what I’m doing to check my phone. Some social media have recently begun employing “growth hacking” techniques such as attempting to inform me of things, that might be relevant to me, but rarely if ever are. This of course means, that I can no longer have notifications enabled for any of these services. Oh, and then there’s the number in the red circle or, God forbid, rounded rectangle, making sure that if I chose to ignore a notification, I’m reminded of my defiance until I submit to the almighty power of the App every time I try to use my phone – or forever, in the case of talentless app developers, who can’t seem to clear the badge when I actually open an application.

But, while these nuisances are luckily manageable through the multitude of settings in iOS, Apple of course see themselves free to impose whatever terror they desire upon helpless souls like me. I’m talking, of course, about the blue dot:

Since iOS 7, any application, that is updated, is now marked with a blue dot, until the application is opened. That’s the only way to make it go away. While the semi-transparent blue dot of course isn’t anywhere near as agressive nor prominent as the red badge, it’s still there, and visibly so. Why? Most likely to make people check out new applications, when significant updates are made. But, since most updates to apps are arguably in the form of some sort of “fixes,” there oftentimes isn’t any significance to me, whatsoever. If I use an app regularly and there is a significant update, I’ll notice it when I use it. If, as is the case with Snapchat, I don’t use an app particularly often, chances are its utility to me is limited, and I’m not really missing out on anything.

Yet, I’m forcefully made aware of every single bug fix to applications I use maybe once or twice a year. And I cannot disable it without jail-breaking my phone. I’m guessing the argument for this has the word “simplicity” in there – how ironic is it then, that it actually leads to a worse and more complex user experience for people like me?

In lieu of a toggle, I am now forced to open every single application on my phone, every single time it is updated, to get rid of those infernal blue dots. I’m sure it looks great in someone’s aggregate analytics (“let’s ship a bug fix or whatever! It’s great for our usage rates!”)

April 9, 2015 |

What’s in an IPO?

2014 saw the tech IPO market back in full swing with Alibaba, ZenDesk, GrubHub and GoPro among the most notable. Mike Evans of GrubHub gives an enlightening glimpse into the process of actually IPO’ing a company. As is to be expected, there’s a not insignificant amount of red tape and “optics” involved. The only somewhat surprising part to me was the amount of effort actually put in by the investment banks:

The best banks had company on-brand presentations that showed they understood the drivers and culture of the business. They had done lots of research including calling our customers to ask about why they liked the product. They even had video of customer perspectives on the business. I should specifically call out that Citi was head and shoulders above the rest, and clearly wanted our business. It proved to be a good choice because they worked very hard.

I’ve seen investors making silly $5 million bets with much higher risks put in less effort than that.

March 4, 2015 |

I’m an Anti-Braker

A hilariously well illustrated point by Robert Moore Jr., although I’m not sure I entirely agree across the board on the implicit premise of this particular bit:

Now of course big government is getting involved, saying that I MUST have brakes. That this isn’t just about me, and that I could hurt people. What happened to personal freedom? What happened to liberty?

March 4, 2015 |