The Daily Parker

Politics, Weather, Photography, and the Dog

Quiznos and Sbarro and Rosencrantz and Guildenstern

All four are dead:

Quiznos, the Denver-based sandwich chain, said Friday it had filed for Chapter 11 bankruptcy in Delaware, the second quick-service restaurant chain in a week to do so.

Quizno's bankruptcy filing comes just days after Sbarro, the New York-based pizza chain, filed for court protection in Manhattan on Monday, the second time in three years. Hot Dog on a Stick, another purveyor of quick-service food, in February also filed for bankruptcy protection.

This is unfortunate especially for Chicago-area coyotes, as they are known to like Quiznos.

Shuttered and stopped down

Calumet Photo, one of the last real photography stores, has closed abruptly:

Calumet Photographic, a Chicago-based camera supply and photo services provider that first opened 1939, has abruptly closed its doors and filed for Chapter 7 bankruptcy protection.

Calumet said on its Facebook page that it was closing its stores in the United States, but that its European stores would remain.

In its Chapter 7 filing, in which a company prepares to liquidate, it listed between $50 million and $100 million in assets and $10 million to $50 million in liabilities.

I rented lenses from them for my trips to Korea and Sint Maarten recently, and I found them truly helpful on other photographic issues. This is a big blow to photography.

About this blog (v 4.2)

Parker, 14 weeksI'm David Braverman, this is my blog, and Parker is my 7½-year-old mutt. I last updated this About... page in September 2011, more than 1,300 posts back, so it's time for a refresh.

The Daily Parker is about:

  • Parker, my dog, whom I adopted on 1 September 2006.
  • Politics. I'm a moderate-lefty by international standards, which makes me a radical left-winger in today's United States.
  • The weather. I've operated a weather website for more than 13 years. That site deals with raw data and objective observations. Many weather posts also touch politics, given the political implications of addressing climate change, though happily we no longer have to do so under a president beholden to the oil industry.
  • Chicago (the greatest city in North America), and sometimes London, San Francisco, and the rest of the world.
  • Photography. I took tens of thousands of photos as a kid, then drifted away from making art until early 2011 when I finally got the first digital camera I've ever had whose photos were as good as film. That got me reading more, practicing more, and throwing more photos on the blog. In my initial burst of enthusiasm I posted a photo every day. I've pulled back from that a bit—it takes about 30 minutes to prep and post one of those puppies—but I'm still shooting and still learning.

I also write a lot of software, and will occasionally post about technology as well. I work for 10th Magnitude, a startup software consultancy in Chicago, I've got more than 20 years experience writing the stuff, and I continue to own a micro-sized software company. (I have an online resume, if you're curious.) I see a lot of code, and since I often get called in to projects in crisis, I see a lot of bad code, some of which may appear here.

I strive to write about these and other things with fluency and concision. "Fast, good, cheap: pick two" applies to writing as much as to any other creative process (cf: software). I hope to find an appropriate balance between the three, as streams of consciousness and literacy have always struggled against each other since the first blog twenty years ago.

If you like what you see here, you'll probably also like Andrew Sullivan, James Fallows, Josh Marshall, and Bruce Schneier. Even if you don't like my politics, you probably agree that everyone ought to read Strunk and White, and you probably have an opinion about the Oxford comma—punctuation de rigeur in my opinion.

Thanks for reading, and I hope you continue to enjoy The Daily Parker.

About that iOS "flaw"

Security guru Bruce Schneier wonders if the iOS security flaw recently reported was deliberate:

Last October, I speculated on the best ways to go about designing and implementing a software backdoor. I suggested three characteristics of a good backdoor: low chance of discovery, high deniability if discovered, and minimal conspiracy to implement.

The critical iOS vulnerability that Apple patched last week is an excellent example. Look at the code. What caused the vulnerability is a single line of code: a second "goto fail;" statement. Since that statement isn't a conditional, it causes the whole procedure to terminate.

If the Apple auditing system is any good, they would be able to trace this errant goto line not just to the source-code check-in details, but to the specific login that made the change. And they would quickly know whether this was just an error, or a deliberate change by a bad actor. Does anyone know what's going on inside Apple?

Schneier has argued previously that the NSA's biggest mistake was dishonesty. Because we don't know what they're up to, and because they've lied so often about it, people start to believe the worst about technology flaws. This Apple error could have been a stupid programmer error, merge conflict, or something in that category. But we no longer trust Apple to work in our best interests.

This is a sad state of affairs.

Jeff Atwood won't install your app

Who can blame him? People using iOS and Android have millions of apps to choose from. It's worse than just having too many apps:

Nothing terrifies me more than an app with no moral conscience in the desperate pursuit of revenue that has full access to everything on my phone: contacts, address book, pictures, email, auth tokens, you name it. I'm not excited by the prospect of installing an app on my phone these days. It's more like a vague sense of impending dread, with my finger shakily hovering over the uninstall button the whole time. All I can think is what shitty thing is this "free" app going to do to me so they can satisfy their investors?

For the sake of argument, let's say the app is free, and the developers are ethical, so you trust that they won't do anything sketchy with the personal information on your device to make ends meet. Great! But they still have to make a living, don't they? Which means doing anything useful in the app requires buying three "optional" add-ons that cost $2.99 each. Or there are special fees for performing certain actions. Isn't this stuff you would want to know before installing the app? You betcha. Maybe the app is properly tagged as "offering in-app purchases" but the entire burden of discovering exactly what "in-app purchases" means, and how much the app will ultimately cost you, is placed completely on your shoulders. You, the poor, bedraggled user.

Fortunately, I have a Windows phone, so this is not a problem for me.

O____O

Laws of Programming revisited

Researcher Capers Jones has examined well-known "laws" of programming against the data. The one that jumped out at me:

Cunningham's Law of Technical Debt

Shortcuts and carelessness during development to save money or time lead to downstream expenses called "technical debt" that may exceed the upstream savings.

Empirical data supports the basic concept that early shortcuts lead to expensive downstream repairs. Ward Cunningham's technical debt concept is a great metaphor, but not such a great metric. Technical debt omits projects canceled due to poor quality. Since about 35% of large systems are never finished, this is a serious omission. These failing projects have huge costs, but zero technical debt because they are never delivered. Technical debt also omits the costs of litigation and damage payments for poor quality. I worked as an expert witness in a lawsuit for poor quality control where the damage award to the plaintiff was more than 1,000 times larger than the technical debt to fix the bug itself.

In other words, quality issues cause more damage than programmers think. There's no substitute for early quality.

Shaving the yak

I spent 4½ hours today upgrading three low-traffic websites in order to shut down an Azure database that cost me $10 per month.

The problem is this: I continually improve the Inner Drive Extensible Architecture as I learn better techniques for doing my craft. The IDEA began in 2002, and the industry changes rapidly, so every so often it changes significantly enough that things using earlier versions break when they're upgraded. About a year ago, version 2 ended and version 3 came out, breaking everything that used version 2.

Except, I still had some things out there using version 2, including its clunky data architecture. Therefore, I had to keep its clunky data architecture running on its own Azure database, at a cost of about $10 a month.

The three sites involved date from 2004, 2006, and 2007. All three moved to Microsoft Windows Azure by mid-2012, but unfortunately that means all three used the Azure SDK 1.7, which Microsoft killed somewhere around November 2012.

Upgrading from a dead version to a live version requires some effort. So for 4½ hours today, I dealt with version conflicts, expired publishing certificates, niggling little configuration errors, and a virtual machine that needed a critical upgrade. Along the way I gained 10 Stack Overflow reputation points because other people have felt my pain, but didn't know how to get past it.

This is a good example of yak shaving, and also the fundamental principle of software development: enlightened laziness.* Had a client needed me to do this work, each upgrade would have cost the client around $300 (which, being a salaried consultant, I would not have actually received). So it wasn't horribly expensive, but remember: I did this to save $10 per month.

So, from a commercial perspective, today's activities made no sense. Yet I feel completely satisfied that I solved a problem today that had bothered me for months.

* Why spend 10 minutes on a task when you can spend 4 hours automating it? By these words ye shall know software professionals.

Accenture's troubled past? Oh, really?

My dad highlighted a Washington Post article from the weekend outlining why Accenture may have been a bad choice (as I pointed out at the time) to manage the healthcare.gov project:

At the University of Michigan, students and faculty members are protesting the school’s use of Accenture to help cut costs, citing a report by a committee of alumni and graduate students that said the firm has “a disturbing pattern of problematic past performance.” In North Carolina, glitches in an Accenture-configured computer system contributed to massive backlogs for food-stamp recipients, leading the Obama administration last month to threaten to withdraw the state’s food-stamp funding.

Federal officials have also on occasion criticized the company’s integrity. The U.S. Postal Service Inspector General’s Office wrote in June that Accenture had “demonstrated an absence of business ethics” and said that the agency should consider terminating the firm’s more than $200 million in contracts. The office cited in part a 2011 settlement with the Justice Department in which Accenture paid $63 million to resolve alle­gations of what the government called “kickbacks” and “bid- rigging” in numerous federal contracts. The company denied wrongdoing in the case.

Accenture officials defended their past performance and commitment to ethics, pointing out that the firm has received strong ratings from industry analysts. In the United States alone, they said, the company has successfully worked on more than 1,000 federal, state and local projects in the past year.

Yes, "industry analysts" say they're a great company. What this has to do with their ethics, business practices, or general loathsomeness is left to the reader's inference.