Archive for August 2011

Wednesday, August 31, 2011

Twitter’s to Become Mandatory

Taylor Singletary:

October 10, 2011 - All URLs, regardless of length, will be wrapped by

I’m not very happy about this, but I guess it’s about monetization.

Tuesday, August 30, 2011

Improvements in Windows Explorer

Steven Sinofsky:

Only 2 of the top 10 commands customers invoke in Explorer are available in the Command bar, the main UI element for invoking commands. This further reinforced our thinking that there was a big opportunity here to improve Explorer by making common commands more readily available. A clear user interface design principle is that frequently used commands should be easy to get to—clearly we had not yet accomplished that with existing designs.

See also the comments by Laurie Voss and Dmitry Fadeyev (via Lukas Mathis). I tend to agree with Fadeyev, contra Voss’s snark, that lots of people using the context menu is a sign that the other methods need to be improved. The other interesting thing is seeing just how often Windows users Cut/Copy/Paste files. I’m still not sold on the ribbon, though, having used it in Office 2011. But, as with Windows Phone 7, it’s nice to see Microsoft explore a different direction.

Making Beautiful Forms

Dion Almaer on Square’s credit card form (via Cathy Shive):

When you get to the CCV/CIN number, see how the card flips and you get a mini version pointing to where the 3 digits will be.

The feedback throughout the experience is fantastic. Errors are handled nicely, and it is just a pleasure to use something so simple.

Saturday, August 27, 2011


Steve Streza (via Gus Mueller):

XPCKit is a Cocoa library for wrapping the XPC C APIs in a handy object-oriented model. It is merely meant as an object-oriented wrapper for the C library, and does not attempt to layer any additional semantics on top.

I get why Apple wanted to use a different set of types for IPC, but I bet lots of people will be writing their own boxing and unboxing code for xpc_object_t and Cocoa property list types.

Thursday, August 25, 2011

Steve Jobs

What is there to say? His accomplishments are obvious. His dogged pursuit of excellence is inspiring. I wish him well. Apple will be different—how could it not—but I think it’s in good hands.

Wednesday, August 24, 2011

Word Breaks for Nerds

Daniel Jalkut:

For most people, the “Standard” setting is probably the right choice. But computer programers are far more likely to encounter words that are separated by syntactic characters such as periods, colons, etc. For us, it makes more sense to have the system pause at these word breaks than to breeze right by them.

Switching to “English (United States, Computer)” takes effect after relaunching.

Friday, August 19, 2011

A Peek Past Lambda

Brian Goetz (via Dave Dribin):

It is my belief that the best direction for evolving Java is to encourage a more functional style of programming. The role of Lambda is primarily to support the development and consumption of more functional-like libraries; I've offered examples such as filter-map-reduce to illustrate this direction.

There is plenty of evidence in the ecosystem to support the hypothesis that, if given the tools to do so easily, object-oriented programmers are ready to embrace functional techniques (such as immutability) and work them into an object-oriented view of the world, and will write better, less error-prone code as a result.

Thursday, August 18, 2011

Scripting Language Comparisons

A huge table comparing PHP, Perl, Python, and Ruby (via Jason Kottke).

Wednesday, August 17, 2011

Kagi’s VisualHub Update

John Gruber:

Their mistake, to my eyes, is betraying the trust of the developers who use their payment services. Tyler Loch is the developer of VisualHub, and he chose to use Kagi as his payment processor. He was Kagi’s client. Now, Kagi is selling something based on Loch’s work against Loch’s wishes.

It’s creepy. I received Kagi’s promotional e-mail at an address that I had only given to Techspansion, when I purchased VisualHub years ago. Before I saw the fine print that it was from Kagi, I assumed that Techspansion had been hacked or sold their customer list.

Tuesday, August 16, 2011

po [NSNumber numberWithBool:NO] Outputs 1


[T]here’s a symbol called NO that was loaded onto the address 0x9374bc6a73a0a1. Since the address is different from 0, +numberWithBool: returns an NSNumber representing a true value.

But when you’re not in gdb, the value of NO is supplied by the preprocessor.

QuickPick Pulled From App Store

Jonathan Rentzsch:

Seth submitted a formal appeal to Apple’s App Review Board on April 7 2011. After seven weeks Apple denied his appeal. Seth asked for a supervisor, was promised contact info, but never received it.


Facing a widening feature gap between his direct-sale version and a bug that Apple won’t allow him to fix, Seth has done the best thing he can do: remove QuickPick from the Mac App Store.

I first mentioned this unfortunate story in April. I have a feeling we’ll be seeing a lot more situations like this once Apple starts requiring sandboxing in November.

Monday, August 15, 2011

Bezos and O’Reilly on Patent Reform

Jeff Bezos, in 2000 (via Kyle Baxter):

If done right—and it could take 2 years or more—we’ll end up with a patent system that produces fewer patents (fewer people will bother to apply for 3 or 5 year patents, and fewer patents means less work for the overworked Patent and Trademark Office), fewer bad patents (because of the pre-issuance comment period), and even the good patents won’t last longer than is necessary to give the innovator a reasonable return (at Internet speed, you don’t need 17 years).

See also Lukas Mathis’ list.

Apple Style Span Is Gone

Ryosuke Niwa (via Jonathan Rentzsch):

This week, I committed WebKit changes r92823 and r93001. They’re perhaps the most important changesets I’ve ever committed to the WebKit codebase because these changesets made WebKit not to produce wrapping style spans on copy and paste and class="Apple-style-span" anymore. In fact, these are two changes I’ve always wanted to make ever since I started working on the WebKit’s editing component in the summer of 2009.

Cleaner markup—yay!

The Infamous Apple “Syntax” Poster

Buzz Andersen:

I’m as much of an Apple fanboy fanboy as anyone, but the more Steve Jobs idolatry spreads through the business world, the more I’m tempted to remind people of stories like this, where the headstrong founder’s bull-headed sensibilities and refusal to listen stymied the efforts of his frequently brilliant staff.

History Of The Stack Exchange API, Mistakes

Kevin Montrose (via Reddit):

This led to the situation where question bodies are safe to embed directly, but question titles are not; user about mes, but not display names; and so on. Ideally, everything would be safe to embed directly except in certain rare circumstances.

This mistake is a consequence of how we store the underlying data. It just so happens that we encode question titles and user display names “just in time”, while question bodies and user about mes are stored pre-rendered.

I’d love to see more articles like this.

Customer Loyalty

Kathy Sierra (via Daniel Jalkut):

Of the four products I appear loyal to, none have ever given me an extrinsic reward. No punch cards, frequent-purchasing discounts, or Exclusive Access VIP Status (Now! With Better Badges!). No leaderboards, no contests, no discounts. But all have given me something far more valuable: enduringly rewarding experiences.

They have upgraded my personal skills, knowledge, and capabilities. They have made my life better. They have made ME better. THAT is the ultimate customer reward. When you give your users that, you still won’t have loyalty, but you’ll have something sustainable, robust, and honorable.

Wednesday, August 10, 2011

Amazon Kindle Cloud Reader

John Gruber:

I think Amazon had this in the works for a long time — a web-based Kindle reader has been around for a while, and it makes sense to improve it in these ways. But surely Apple’s new App Store rules for paid content have motivated Amazon to push harder in this direction.

It’s a good start, although it doesn’t support collections or periodicals yet. With Kindle now fully protected against future App Store changes, there’s even less reason to by content from iBooks.

Update (2011-08-11): A JavaScript bookmarklet to make the text selectable in Safari.

Searching in Safari 5.1

Pierre Igot:

As you can see, you can choose between ”Contains” and “Starts With” and by default, the option selected is “Starts With.”

This menu and these options didn’t exist in Safari 5.0. It’s not exactly an obvious change, so I didn’t notice it.

I had also been caught by surprise at Safari being seemingly unable to find text within a Web page.

Update (2011-10-10): There’s a FindOnPageMatchesWordStartsOnly default.

Tuesday, August 9, 2011

MacBook Air SSD Benchmarks: 2010 vs 2011 vs Lion Encryption

Jason Discount:

My personal take from the numbers is that Lion FileVault comes at a large performance hit on Core 2 Duo machines w/Toshiba drives; a performance hit that I would personally find unacceptable. Inversely, the performance hit on a Core i7 machine w/Samsung drive is 3x less drastic, and thus, for me, well worth it.

Another way of looking at it is that the encrypted, slower SSD on the slower MacBook Air is still way faster than any notebook hard drive.

Lion Is a Quitter

Matt Neuburg:

On the other hand, the fact is that when Lion caused Preview to quit automatically yesterday on my machine, I was using Preview. I wasn’t using it actively at that moment in a way that Lion knew about — there were no open Preview windows, and Preview wasn’t frontmost — but I was engaged in some activity involving Preview. I had switched away from Preview only in order to prepare things in the Finder so that the document I intended to open in Preview would be ready. But when I switched back to Preview with Command-Tab, Preview was gone. That’s not helpful or useful; it’s annoying, confusing, and a hindrance. I had to launch Preview explicitly again in order to continue with my task.

I’ve seen the same issue with Preview, QuickTime Player, and TextEdit. Since I don’t use Command-Tab, it doesn’t really bother me except for the constant appearing and disappearing from the Dock. If there’s no memory pressure, the system should wait a while in case you’re going to switch right back to the same application.

Monday, August 8, 2011

Comparing iPhone Text Editors, v5

Since version 4 of my comparison, I’ve added WriteUp and Write 2. WriteUp is my new favorite text editor because it can jump between search results within a file. However, it is noticeably slower than my previous favorite, Notesy. It takes longer to sync with Dropbox, and sometimes the user interface locks up for a few seconds. It also has less powerful search options, can’t move files between folders, and the Trash button doesn’t always work. So I’m keeping Notesy installed to handle some of those tasks.

Write 2 is polished in certain ways, but I found it uninspiring now that there are several very good apps in this genre. It does not let you pick which folder to sync, so it can’t be used in concert with other editors, and it’s disconcerting that the textured background does not scroll along with the text.

Droptext 1.2.1 Elements 1.5.1 Locayta Notes 2.0.1 Nebulous Notes 4.3.1 Notely 1.3 Notesy 2.0.2 PlainText 1.4.1 Simplenote 3.1.4 (Premium) Write 2 1.1 WriteRoom 3.0 WriteUp 1.4
Choose Folder on Dropbox Yes No No Yes1 Yes Yes Yes Yes2 No Yes Yes
Nested Folders Yes Yes No Yes1 Yes Yes Yes No Yes Yes Yes
Works Offline No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
Choose Font No (Helvetica) Yes Yes3 Yes Yes Yes4 No (Georgia) No (Helvetica) Yes Yes Yes
Font Size No Yes Yes3 Yes Yes Yes4 No Yes Yes Yes Yes
Font Color No Yes Yes3 Yes Yes Yes No No No10 Yes No10
Background Color No Yes No Yes Yes Yes No No No10 Yes No10
Multi-File Search No Yes Yes5 No Yes Yes9 Yes Yes Yes Yes Yes
Search Results List No No Yes No No No No No No No No
Jump Within File No No No No No No No Yes6 No No Yes
LF Line Breaks Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes
Sort by Name Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
Sort by Modified No Yes No No Yes Yes Yes No7 Yes Yes Yes
Rearrange Lines No No No No No No No Yes No No No
Versions No No No No No No No Yes8 No No No
Price $1 $5 free $2 $2 $5 ads or $5 $20/year $2 $5 $3

1. Rather than syncing everything, Nebulous Notes makes you choose individual files as “auto-saves,” which is a drag.

2. Simplenote seems to be much slower than the other apps at picking up changes from Dropbox. It was often 5 minutes out-of-date, and sometimes hours or days. You can force it to sync, but to do that you have to go to the Simplenote Web site.

3. Locayta Notes is the only app I saw that lets you set font and color options per-file.

4. Notesy lets you set both a variable-width font and a fixed-width font, which is a good compromise between choosing just one and choosing per-file.

5. Locayta Notes does some sort of indexed/prefix search, coupled with auto-correct, which didn’t work well for me. Some words it didn’t find at all. When searching for “cat” it would find lots of useless matches of “at” but totally miss “wildcat”.

6. Simplenote’s results-jumping did not work for me with files containing basic Unicode characters such as é and . The tech support person was not able to tell me which subset of characters to avoid, so the only solution seems to be to stick with ASCII.

7. The option is there, but in my experience the modification dates shown in Simplenote, if I’m using Dropbox, have little relation to when I actually edited the files. The tech support person said this is not the normal behavior and is looking into the matter but has not yet found a solution for me. Even going by the displayed dates, the sorting is sometimes out of order.

8. Simplenote’s versions feature is like the one in Lion and works within the app—very cool.

9. Excellent options for searching by word (Boolean AND), phrase, or regular expression. You can also choose whether to search everything or just the filenames.

10. You can’t pick colors, but there are several preset themes to choose from.

Friday, August 5, 2011


SQLite creator D. Richard Hipp (via Reddit):

There are several document-oriented databases available today and they are growing in popularity. But all existing document-oriented databases have their own proprietary and incompatible query methods, meaning that it is hard to move an application from one database engine to another. And the query methods that are available tend to be very low-level, meaning that a lot of the query logic that used to be handled automatically by the database engine must now be manually coded into the application by the programmer.

UnQL aims to remedy this situation by providing a common database query language that can be used to access document-oriented databases from multiple vendors. This helps developers write portable applications and avoid database-vendor lock-in. UnQL also strives to provide a very powerful and rich query language that transfers much of the complex algorithm-picking logic back to the database engine, saving lots of code in the application, and lots of developer time and frustration.

CouchDB’s Damien Katz is also involved in UnQL, and Hipp is working on UnQLite. This looks promising.

Tuesday, August 2, 2011

iCal’s Missing Months

Khoi Vinh:

It shows all seven days of the week, obviously, but what it’s missing is an overview of the whole month, which to me is a necessary complement. By contrast, here’s how iCal looked and worked in previous versions of the operating system.

Note that the single month view can be expanded to a two-month or even three-month view by pulling on that bar just above the “April 2011” header to reveal additional months. Very handy.

The weekly and monthly views are missing the “mini-month” displays, which I found quite useful. Now I do a lot of flipping back and forth. My least favorite parts of Lion are the new iCal and Address Book, and the page-turning animation and regressions in Preview. Most everything else has been working well.

Monday, August 1, 2011

ATPM 17.08

The August issue of ATPM is out: