Archive for April 11, 2013

Thursday, April 11, 2013

The Protocol-Relative URL: “//domain.com”

Paul Irish (via Jonathan Rentzsch):

If the browser is viewing that current page in through HTTPS, then it’ll request that asset with the HTTPS protocol, otherwise it’ll typically request it with HTTP. This prevents that awful “This Page Contains Both Secure and Non-Secure Items” error message in IE, keeping all your asset requests within the same protocol.

StatusBoard

Panic’s StatusBoard iPad app looks interesting. But, frankly, I’m surprised they even submitted it to the App Store. I thought widget apps were banned.

Rene Ritchie:

The default Status Board comes pre-populated by several meticulously crafted widgets, including Clock, Weather, Calendar, Mail, Twitter, and RSS. To edit the Status Board you simply tap the gear button. Then you can drag in, drag out, re-size, re-arrange, and re-configure all the widgets until the layout best suits your needs. Different display modes, which vary from widget to widget, include things like lists, tickers, and graphs.

Nick Arnott:

The first feature that I’m really excited about is HockeyApp integration. One of the widgets available in Status Board is a custom graph. HockeyApp has made it incredibly simple to pass URLs from Hockey to Status Board which will feed your widget the data necessary to chart a graph of your crash numbers. You can fit up to 6 different graphs comfortably in Status Board’s landscape orientation, and up to 8 in portrait. I’m hopeful that daily crash numbers are just the beginning. The HockeyApp API offers a lot of useful data, and the data you can graph in Status Board is really only limited by what people decide to make scripts for.

Lex Friedman:

Panic provides instructions, accessible within the app, on how to provide the appropriate data sources. And a relatively new company called StatHat, which aims to make gathering data simple, is offering up Status Board-ready feeds, too.

Federico Viticci:

In addition to the six Instant panels, which are very easy to set up, Status Board comes with its own “expert mode” for Pro panels. Using CSV, JSON, or HTML files hosted on a public server, users can create custom graphs, charts, and DIY panels using personalized icons, colors, data types, and more. As long as you can write a custom, valid JSON file and host it on a server (Dropbox is okay, too), you can feed it to Status Board and turn it into a custom module for the app. Panic provides extensive documentation for the Pro panels, so make sure to check out the PDFs linked inside the app to see the possibilities opened by support for CSV, JSON, and HTML.

Update (2013-04-14): Cabel Sasser:

It’s only been about a day since we unleashed our Status Board app to the world, and we’ve been truly astonished by the amount of cool things people have built to make it even more useful and amazing. Here are some of the greatest things we’ve seen so far.

Type2Phone

Type2Phone is a nifty app that uses Bluetooth to let you type (or paste) text from your Mac to your iPhone (via Nicholas Riley).

Update (2013-04-15): More from Adam C. Engst.

Burning the Page

Laura Hazard Owen:

Merkoski ran technology departments for a number of companies and headed e-commerce initiatives at Motorola before joining Amazon as a technology manager in 2005. For the next five years, he served at the company in a number of Kindle-related roles, helping to launch the first two Kindle models and the Kindle DX.

I think there’s an interesting story to be told about the development of the Kindle, but the review gives the impression that this is not the book to tell it.

Obscure C

Lockless (via John Regehr):

Reordering the three keywords const typedef volatile won’t change the meaning. Neither will moving any (or all) of those keywords before the “struct”. C syntax is very flexible.

[…]

[In] C, the [] array access operation isn’t a sequence point. That means that even though you might expect to have some ordering between the calculation what array member to use, and the use of that array entry, there isn’t explicitly such a constraint in C99.

A Clock in One Line

Greg Slepak points to a fun Obfuscated C Code Contest entry, explained on Stack Overflow.

Re: The Complexity of a Simple Prefix

Benny Kjær Nielsen:

The main subject of this blog post is the “Re:” prefix used in the “Subject:” header line of most email replies, but the implicit subject is how MailMate handles the huge gap between theory and practice when dealing with many email headers. The story of the “Re:” prefix is in many ways a typical email header story. What may seem like a simple problem quickly becomes very complicated when 40 years of email history has made its mark.

Google Inactive Account Manager

EDW Lynch (via Scott Beale):

Inactive Account Manager is a newly announced feature for Google users that lets them decide what will happen to their Google data after they die or are incapacitated. Should a Google user’s account become inactive, the account can be set to delete itself after a set time frame of inactivity. Alternatively, the user can designate one or more trusted contacts to receive the user’s Google data […]

More companies should offer this.

Yummy Cookies Across Domains

Vicent Martí (via Jeff Johnson):

As we’ve seen, by overflowing the cookie jar in the web browser, we can craft requests with evil cookies that cannot be blocked server-side. There’s nothing particularly new here: Both Egor’s original proof of concept and the variations exposed here have been known for a while.

As it stands right now, hosting custom user content under a subdomain is simply a security suicide, particularly accentuated by Chrome’s current implementation choices. While Firefox handles more gracefully the distinction between Parent Domain and Subdomain cookies (sending them in more consistent ordering, and separating their storage to prevent overflows from a subdomain), Chrome performs no such distinction and treats session cookies set through JavaScript the same way as Secure HttpOnly cookies set from the server, leading to a very enticing playground for tossing attacks.

AppGratis Pulled From the App Store

Simon Dawlat (via Jeff Johnson):

Friday, April 5th was the day Apple decided to pull AppGratis out of the App Store, leaving our 12 million iOS users wondering where one of their favorite apps had gone, my 45 employees wondering if they’d still have a job next week, my partners and investors in shock, and myself with an absolutely crazy situation to deal with, thousands of miles away from our headquarters.

Despite Apple’s purchase of Chomp, searching the App Store seems worse than ever, so there’s clearly a role for apps like this. I’m no longer surprised when Apple pulls apps, even established ones. However, the process seems needlessly confusing and rude: last year an App Review team member had agreed that AppGratis was in compliance with the same rule it later told the Wall Street Journal that it violated.

Pathways Into Darkness

This classic Bungie game is now available, free, for Mac OS X (via Peter Cohen).

Stuck iPhone Power Button

When my iPhone 4S was about 18 months old, the power button stopped working. I first noticed this when it was vibrating in my pocket and I was unable to silence it. Then I found that the power button no longer moved at all. I was unable to turn off the display and sleep the phone. Judging from Google searches and the Apple support forums, this is a longstanding and common problem. Like the antenna problems, it began with the iPhone 4, which Apple is still shipping. It seems to be due to a design or manufacturing flaw, as it affects many users such as myself whose phones were never dropped or physically damaged.

There are workarounds for a stuck power button. You can go into Settings ‣ General ‣ Accessibility ‣ AssistiveTouch to enable a special on-screen button. It appears as a white circle, which you can drag around the screen when it gets in the way. Tap the assistive button, and you can access a software power button, which can both sleep and power off the phone. You can wake an iPhone using the Home button. To power it on, you must plug it into a Mac or battery pack.

I quickly found the software power button frustrating. I also worried whether continuing to use the phone in this state would make it worse. Would it become inoperable at an inconvenient time? I’ve read accounts of power buttons stuck in, such that the red slider to power off the iPhone keeps popping up. All you can do is tap Cancel and have it pop up again.

You can replace the power button yourself—in theory. The process looks far more involved than changing a Mac’s RAM or hard drive.

If your phone is less than a year old, it’s under warranty. Apple is well aware of this problem and can replace the power switch or give you a refurbished iPhone. (Be sure to make a full backup and unregister any authenticator apps before wiping the phone.)

If your phone is 1–2 years old and you paid $99 for AppleCare+, you can also get it fixed for free.

If you didn’t buy AppleCare+ or your phone is more than 2 years old, Apple will fix it for $199. This will also give you a new 90-day warranty. Your carrier upgrade eligibility will be unaffected.