hello world, read this once everyday

They shall beat their swords into plowshares and their spears into pruning hooks. Nations shall not lift their sword up to nation. Neither shall they learn war any more.

barring maybe a tiny minority, no one likes bloodshed. if your irrational beliefs make you unhappy, you don’t have to keep them. you only have a few decades to live–might as well figure out a way to be happy.

Gotham is the new Helvetica

yeesh. I’ve had more than ‘nuff Gotham for today.


why was my mail (don’t ask what) “[…] processed through and left our SAN FRANCISCO, CA 94188 facility on March 23, 2014 at 1:52 am”?

people are working on a Sunday morning while I read New Republic. I want to go help them :(

[...] force that is at the Ukrainian border now to the east is very, very sizeable and very, very ready →

something must be wrong when a guy whose last name is “Breedlove” starts freaking out

I don’t usually say never but…

…categorically never all caps with a gothic typeface.

platitudes platitudes platitudes

Letters of Note: Why Explore Space? →

"We are suffering from this plague," they said, "while he is paying that man for a useless hobby!"

UITableViews in iOS 7

(assuming a retina screen)

All Table Views

On retina screens, when you ask for a certain row height (by setting tableView.rowHeight or using tableView:heightForRowAtIndexPath: delegate method), your UITableViewCell’s contentView really gets .5pts less than that. The .5pts are devoted to the bottom border. (the bottom border, by the way, is a 0.5pt height UIView of type _UITableViewCellSeparatorView.) Plain table view cells do not have a top border.

A UITableViewCell has a single subview of type UITableViewCellScrollView that contains everything else (presumably to implement the swipe-left-to-delete interaction).

Grouped Table Views

When they don’t have section header text, both section headers and section footers have a default height of 17.5pts. Except for the first section header and the last section footer, which have default heights of 35pts (when they don’t contain text). This makes sense since the first section header has no section footer before it and the last section footer has no section header after it. They give it 35pts to be consistent with the default inter-section space comprised of a section footer (17.5pts) and section header (17.5pts).

The first cell of a section also has a top border that takes up another 0.5pts of your row height. Unlike with the bottom border, though, another 0.5pts of height isn’t taken away from your cell’s contentView. The top border is just later in the cell’s subviews array so it covers up the first 0.5pts of your contentView. Well, at least contentViews don’t have slightly different heights as a function of their position in the table view like in iOS 6.

For full dystopian effect

Read 1984 while listening to Hans Zimmer.

Bret Victor - The Future of Programming →

I’ve independently spoken about each of these four ideas to someone at some point in the past year.

Thanks, Bret, for putting them together in one shareable talk.