Archive for August 2010

Tuesday, August 31, 2010

Developer Color Picker 1.5

Panic’s Developer Color Picker lets you copy colors as source code (NSColor, CSS, HTML, etc.).

iAd for Developers

David Smith:

I was willing to try out iAd because it did one thing that no other platform can offer—a seamless purchase experience. The user never leaves the current app to complete the purchase, so the user experience is about as good as you get. However, I think that Apple has found itself falling foul of exactly the same problems they called out when the unveiled iAd.

It cost him $15 for each download of his $0.99 app. Part of the problem may have been the app’s 3-start rating, though. Interestingly, he got a much higher click-through rate with AdMob.

Thursday, August 26, 2010

Briefs in App Store Limbo

Rob Rhyne has open-sourced Briefs after waiting three months for Apple to accept or reject it. Jeff LaMarche:

…in that time, the app review team has allowed other prototyping applications onto the app store: applications that do the same basic tasks that was created to do. Interface was approved several weeks after was submitted to the App Store. LiveView and Dapp were both updated just yesterday. iMockups was approved about a week ago.

But Briefs still sits in the queue and nobody can be bothered to even say what the exact holdup is or what needs to happen before a decision will get made.

Tuesday, August 24, 2010

Why Python’s Integer Division Floors

Guido van Rossum:

I made the same choice because there are some interesting applications of the modulo operation where the sign of a is uninteresting. Consider taking a POSIX timestamp (seconds since the start of 1970) and turning it into the time of day. Since there are 24*3600 = 86400 seconds in a day, this calculation is simply t % 86400. But if we were to express times before 1970 using negative numbers, the "truncate towards zero" rule would give a meaningless result! Using the floor rule it all works out fine.

Keeping Mint’s Unique Referrers List Clean and Useful

Shawn Blanc:

I did a bit of research and compiled a list of 286 unique Google domains, many of which send traffic via search results, Google Reader, and translating. Additionally, it’s not that helpful to see all the unique visits coming from the Tumblr Dashboard, someone’s Facebook wall, or an Instapaper/Read it Later/Pinboard account.

Xbox System-on-a-Chip

Jon Stokes (via John Siracusa):

It would have been easier and more natural to just connect the CPU and GPU with a high-bandwidth, low-latency internal connection, but that would have made the new SoC faster in some respects than the older systems, and that’s not allowed. So they had to introduce this separate module onto the chip that could actually add latency between the CPU and GPU blocks, and generally behave like an off-die FSB.

Thursday, August 19, 2010

Type-Savvy Logging Macro

Vincent Gable has written a nifty macro that, given an expression, prints the code for the expression and the expression’s value, no matter whether it’s an object, scalar, or struct. For example, LOG_EXPR(self.window.frame.size) prints self.window.frame.size = {320, 480}. No need to type format strings or conversion functions.

App Store Director Developed “Animal Farts” and “iWiz”

Wired (via Jesper):

Apple has long been an icon for quality products, but its overflowing iOS App Store is a crapshoot: Nuggets of quality are buried in a vast, steaming heap of inanity. In fact, the man who oversees the App Store process runs a side business selling fart and urination apps.

Phillip Shoemaker, director of applications technology at Apple, who runs the App Store process, sells iPhone apps in the App Store under the company name Gray Noodle.

Choosing this guy to be the head curator sends a great message.

Sunday, August 15, 2010

Kindle and iPad Displays

Keith Peters used a USB microscope to take photos of text displayed by an iPad, a Kindle 2, a newspaper, a magazine, and a book.

Wednesday, August 11, 2010

Don’t Auto-Update Safari Extensions

Lex Friedman (via John Gruber):

Thus, the mythical A Decidedly Un-Evil Extension, which could provide the definition of any word you double-clicked on, could seem noble and safe. After a few months of swelling popularity, the extension’s nefarious creator could update the extension with <iframe> evilness, and start gathering personal information about you, from the webpages you visit.

With auto-updating, you probably wouldn’t know that the extension had been updated. Even with manual updating, you have no way of knowing whether the new version has been vetted for security.

Finger Tools

Matt Gemmell:

On a touchscreen, you often have a simplified interface, with very few options, commands or tools. I was thinking about how to improve interaction in canvas-based applications (drawing, painting, charts, diagrams, etc), and it occurred to me that you often have fewer commonly-used tools than you have fingers. So, I created a UI concept/prototype that I call Finger Tools (or perhaps Touch Tools, or the Tool Glove, or some other such thing).

When you multi-touch, each finger is assigned a tool, which you can then use with a single gesture. Clever.

Tuesday, August 10, 2010


Awarepixel’s BetterSource is a Safari 5 extension that opens a new tab with a syntax colored display of the current page’s source (via John Siracusa). It can also show HTML that was dynamically generated.

Monday, August 9, 2010

P ≠ NP

Greg Baker mentions a supposed proof from Vinay Deolalikar of HP Labs that P ≠ NP. This is somewhat like the Fermat’s Last Theorem of computer science, with most people believing it to be true, though the proof was elusive. P vs. NP is a more interesting question, however, and the consequences would have been staggering if the result had turned out the other way.

Update (2010-08-11): is tracking articles and discussions about the paper.

iPads in Education: DRM Hell

Fraser Speirs:

[This way is] fraught with hassle but is about the best that I could design. I have a Mac mini that will be the “canonical” computer for App Store purchases. Once bought on this machine, iTunes Home Sharing will make sure it appears on all the other machines.


This is a hole in Apple’s App Store infrastructure that the massive interest in iPads for education is exposing, in a way that the iPhone and iPod touch never did. One can hope that someone at Apple is looking at ways to solve it.

AnandTech’s Mac mini Review

Anand Lal Shimpi:

The idle battery life advantage comes from lower idle power, presumably through heavy OS and hardware optimization. While I measured 8W at idle under OS X, running Windows 7 (power saver mode) on the Mac mini resulted in a 12W idle power without any changes to the hardware. Granted I don’t have identical hardware by another manufacturer to confirm that this isn’t negligence on Apple’s part to optimize its firmware for Windows 7. However in the past we’ve shown that systems from Lenovo, despite having similar specifications to Apple notebooks deliver worse idle battery life. I believe it’s safe to assume that part of the reason Apple is able to make such a bold claim about the mini’s energy efficiency is because it is the only desktop that can be sold running Mac OS X.

He also compares the 2010 Mac mini with a PowerMac G5, which actually bested it on one of the Photoshop tests.

Stay 1.0

Cordless Dog’s Stay is a new utility that stores window configurations for each combination of displays and automatically restores them when you connect or disconnect a display. I’ve been doing this sort of thing via AppleScript for a while now, but it’s nice to see an application that makes it easy. Most Adobe applications don’t work with it, presumably because they don’t support Mac OS X’s accessibility features.

Friday, August 6, 2010

App Store “Try Before You Buy”

Jonathan Rentzsch:

Apple willfully ignored 25+ years of commercial software distribution trial-and-error market experimentation and education.

Try Before You Buy won a long time ago, but for some inexplicable reason Apple seems to want to drag us back to the days of Egghead Software outlets.

Aside from the approval process, I think the lack of demos is the biggest problem with the App Store. As a user, I can waste time reading reviews and still get the decision wrong, or spend a few minutes actually using the app to quickly know whether it’s what I want. As a developer, I want as low a barrier as possible for people to try my apps, and I definitely want to avoid situations where someone buys the app, finds out it’s not what they thought it was, and I can’t even give them a refund.

Ironically, due to the closed architecture of iOS and the App Store, Apple is in position to offer the best try-before-you-buy experience. The OS could track and enforce the demo period, preventing piracy and making it standardized and easy for both developers and users. The app could simply ask the OS whether it’s running in demo mode. When the demo period is over, you could purchase in-app and continue, with all your data, without even having to re-launch. Instead, Apple is promoting lite apps, which pollute the App Store and offer a clumsy upgrade path.

Thursday, August 5, 2010

Interarchy 10

Interarchy 10, modern looking despite being written largely in Pascal, adds some interesting new features, such as plug-ins for running commands (implemented as Perl scripts) on the server via SSH. The new Interarchy File Transfer Protocol (iFTP) apparently uses this architecture to offer better performance by supplying its own scripts that re-implement SFTP.

Tuesday, August 3, 2010

iOS Background App Kludge

iOS 4 includes seven multitasking services, but none of them are conducive to running a utility service in the background. An application can run in the background to get updates from the GPS, but Apple won’t allow it to run in the background to get updates from IM, Twitter, or a mail server. (Apple’s own Mail app is exempt from this rule, of course.)

The developers of Pastebot wanted to run their app in the background to listen for updates from their companion Mac utility. Their solution is to use the multitasking service that lets apps play music in the background (via John Gruber). They thoughtfully included a silent audio clip so that this kludge would be invisible to the user and not drain the battery. Apple rejected the app, saying that the music must be audible.

So, instead, you must create or buy a silent audio clip, put it in iTunes, sync it to your iPhone, and select it in Pastebot’s settings, all to work around Apple’s decision to forbid normal background processing. This makes the app more difficult to use and wastes the time of both the developers and the users.

Apple Removes Antenna Videos

Eliot Van Buskirk:

Apple deleted videos depicting the signal loss of the iPhone 4 and other smartphones from the U.S. and Asian versions of its website, after (and others) criticized the way videos confused a reception issue associated with the iPhone 4’s external antenna design with a general absorption problem suffered by all radio devices.

The new page talks about Apple’s testing process and labs. I suppose the idea is to convince people that there is no reception issue compared with other phones. But if you’re already seeing it with your own eyes and ears, this is questionable logic. The message starts to look like, Apple did all this testing so they must have known about the problem. Or, how did their $100 million lab miss detecting something that ordinary users found right away?

Monday, August 2, 2010

ATPM 16.08

The August issue of ATPM is out: