Rethinking My Music Storage

I’m not a huge music collector, at least not compared to some other people I know. I do have about 150 GBs of music in my iTunes collection — lots of it being video game soundtracks I enjoy listening to while I program.

A few things I have not liked about my historic setup:

  • Because the collection was 150 GB I could not store it on my main computer’s SSD (which was 256 GB in size).
  • iTunes sucks. I don’t want to get into details here but as a music player and organization tool it’s awful.

Some goals for my new setup:

  • I want to get rid of iTunes.
  • I’d like to store my music on Dropbox, preferably in a way where I can control which Music (if any) gets synced to my other Dropbox setups.
  • I have recently become a Spotify member. It’s got a nice collection I feel I can lean on AND it has some tools the player UI to support local files as well as streaming songs which I think will be key.

With all that said, what I’m up to:

First thing, I made a new iTunes library on my desktop and have started re-downloading my old iTunes music purchases. I have lots of music that is still DRM wrapped and these new downloads do not have such DRM.

Next, I’m going to slowly start to put the music into Dropbox. I’ll have a root level Music folder but inside I’m going to split the collection into Rare and Common. Common being for songs that are streamable from Spotify and thus being a folder I can selectively NOT sync on my other computers. The Rare folder will have all of my video game soundtracks and other albums I find to be incomplete or missing on Spotify. As I said, I like how Spotify can bring in local music into playlists and even lets you control the source folders and I’m hopeful this will work nicely.

We’ll see how it goes over the next few weeks. I’d love to hear if anyone else has an exotic setup like this.

Also, next up for a rethink is photos. Again, I’m really not happy with the current Apple solution and am thinking of alternatives. Feedback welcome.

You Don’t End Schindler’s List with a Pepsi Ad.

It’s Friday. I’m actually a little low energy and so I decide to go out and pick up a late lunch. I’ll eat it in my car listening to a podcast and get some outside / sun time. The podcast of choice is Startup, a podcast about starting a business to make podcasts. It’s a good show, with interesting stories and high production values. It’s in season 4 so we are well past the pitch stuff and into the real forced growth issues that all VCs seem to face.

Today was a particularly powerful episode of Startup with lots of emotion. It even had me a little teary eyed. Then the end came, but it was not the true end. We still had an upbeat MailChimp ad, read by the same podcaster who just seconds ago had us all in tears.

It was one of the most drastic shifts of emotional voice I can remember and it had me rolling my eyes with bewilderment.

You don’t do this. You don’t play the heart strings of your audience and then shove an ad down their throat while they are in the moment. You don’t end Schindler’s List with a Pepsi ad.

The producers of this show are professionals. They are listening to these audio cuts many, many times over, but I suspect they aren’t doing it with the Mailchimp ads weaved in. Maybe they should.

The lesson here, once again is empathy. We need to constantly work to put ourselves in the shoes of our audience. If you have something important or emotional to share with your audience, you don’t weave it into your revenue system. I totally accept the need to use ads for some systems but if you must show ads, maybe for a show with an arc like this you show an extra one in the beginning so you can end clean? Doing it like this just seems emotionally tone deaf for me.

The World Needs a Better Core Data

Lots of WWDC predictions out there this week. Here’s a dream of mine. Sadly one that I’ve given up on, at least from Apple.

A Better Core Data.

  • Tracking state is 1970s thinking. We should be tracking changes over time and rendering the current state of the object graph.
  • Migrations, the number one feature. As you add new entities to a store, you do so through a migration. Change a column name, you do it through a migration. The current Core Data migration story is embarrassingly complex and very fragile. We need to have trust in our migrations.
  • A single, focused, persistent store format. Allowing people to choose between XML, Binary, SQLite, InMemory and Custom adds more pain than it solves. Keep things simple. One on-disk format.

A Walled Garden of Shit

From the App Store Review Guidelines:

We have over a million Apps in the App Store. If your App doesn’t do something useful, unique or provide some form of lasting entertainment, it may not be accepted.

I sure wish they would take that guideline to heart and start rejecting some of this shit.

So PBG got an iPad and found some shitty iPad games and I’d like to say these are the exception — but they’re not. There are tons of these crappy apps on the store and while it helps inflate that “total app” number for Apple it really hurts people browsing around trying to discover new apps.

WEIRD IPAD GAMES!

iOS Development: Things to Like; Things to Hate

Things I like about iOS Development

  • I like writing code in the Objective-C language.
  • I like Apple’s provided frameworks and tools. They are, on the whole, very good.
  • I like the iOS community’s enthusiasm for great products. It is very inspiring.
  • I like that people will pay you good money to build apps for them in iOS. Though this is has good and bad implications.
  • I love attending, and over the last few years running, CocoaHeads in Philadelphia.
  • I like that the community on a whole is not very secretive. There is a sense we are in this together and people constantly help each other out sharing tips, code and war stories.

Things I hate about iOS Development

  • I hate the exclusivity of the AppStore distribution.
  • I hate that I can’t side load apps that people build that Apple doesn’t approve of.
  • I hate that I have to sign my apps.
  • I hate the learning curve and the bugs of the signing process for all but especially for people new to iOS.
  • I hate that Apple has a shitty code validator during app signing that will complain when I have methods on my objects that look like private methods on their objects.
  • I hate how shitty AppStore search and discovery is.
  • I hate the corporate politics that let apps get featured in the store because of “connections”.
  • I hate how people continue to manipulate the AppStore ranking system and I hate how little Apple seems improve the situation when many small developers livelihoods are at stake.
  • I hate how the Radar bug system doesn’t have tools in place to involve and update the original bug reporter on progress being made. From a third-party perspective most bug reports might as well go into a black hole.
  • I hate how in the pit of my stomach I believe that, on the whole, the iPhone and its brethren have not improved society. I think the majority of mobile software has only helped to empower “generation ‘me'”, a generation that is “friends” with everyone, but no one. This deserves a post on to itself someday.
  • I hate the iOS / Mobile bubble. The fact that people are spending way too much building apps and are not getting a proper return of value on the investment.
  • I hate that building products is way riskier than consulting (bubble related).
  • I hate that Apple hasn’t shown more interest in providing a library management system. Thankfully we have CocoaPods but since it’s on the outside there is a fear it might not be able to keep up as the tool chain evolves.
  • I hate that back when Apple first started to integrate OCUnit into Xcode it enviably killed like 3 or 4 other very promising testing systems because the thought at the time was “well Apple made their choice and will build on it” when in fact Apple never did. Only recently did we see XCTest and it is, right now from a functional perspective, a method renamed version of OCUnit with no new features.
  • I hate how Xcode Bots doesn’t have pre and post scripts.
  • I hate (hate is a strong word — let’s say disappointed by) the growing community of “Apple Celebrity”. The once full time developers who can build great things but now choose to spend the majority of their time blogging, podcasting and tweeting all day. They partake in a low impact ping pong match of opinions on weekly events and news that frankly doesn’t mean all that much in the grand scheme of things.

Star Trek: Into Darkness, Nitpicks and Plot Holes

This is Spoiler Country. If you aren’t ready for spoilers, you might want to skip this post.

I haven’t even opened my M&Ms and we already got nitpicks.

  • Why did Khan use his blood to save the girl and have the guy drop a ring into a glass of water to destroy the lab in London? What if when proposed with this opportunity the man called Starfleet police instead? What if he let Khan cure his daughter first and then call Starfleet police? Why take these risks? Can’t Khan with his superior intellect blow up that lab on his own?

  • How does Spock use a “cold fusion bomb” to freeze a volcano when cold fusion in real science generates heat/energy?

  • Wouldn’t suddenly freezing an active volcano have other bad side effects for the planet? Volcanos help a planet release pressure. Where is all the pressure going to go now?

  • Was the Enterprise really designed to function under water? To be able to use thrusters under water?

  • Why are we hiding the Enterprise under the water just outside the village when the goal is not to be seen? There is no fucking reason for the ship to even be in the atmosphere of this fucking planet. There are shuttle crafts and beaming for this kind of stuff.

  • Kirk gets stripped of command, sent back to the academy and reinstated as first commander in like what, 5 on-screen minutes? Give him 5 more: Pike dies and he becomes Captain once again. For a movie with a theme of learning responsibility (which is sadly a repeat of the first movie) this just feels wrong.

  • How does Spock rationalize breaking the prime directive via freezing an active volcano but looses his shit about letting the natives see a starship? What a fucking hypocrite.

An aside on the “The Prime Directive” for you ignorant sluts out there…

The Prime Directive, Articles of the Federation, Chapter I, Article II, Paragraph VII:

Nothing within these Articles Of Federation shall authorize the United Federation of Planets to intervene in matters which are essentially the domestic jurisdiction of any planetary social system, or shall require the members to submit such matters to settlement under these Articles Of Federation. But this principle shall not prejudice the application of enforcement measures under Chapter VII

Jonathan Archer:

Some day, my people are gonna come up with some sort of a doctrine, something that says what we can and can’t do out here, should and shouldn’t do. But until someone tells me that they’ve drafted that…directive, I’m gonna have to remind myself every day that we didn’t come out here to play God.

Jean-Luc Picard:

The Prime Directive is not just a set of rules. It is a philosophy, and a very correct one. History has proven again and again that whenever mankind interferes with a less developed civilization, no matter how well intentioned that interference may be, the results are invariably disastrous.

Fuck the Prime Directive we have a volcano scene to shoot, I mean to stop!

Khan’s plan makes no sense!

After the events of the first movie Admiral Marcus wants Starfleet to be militarized and needs more powerful weapons. Admiral Marcus starts searching space for an edge of some kind and discovers the Botany Bay. Marcus unfreezes Khan and finds out he has super intelligence and strength. Marcus convinces Khan to help him build long range torpedoes and advanced starships to help militarize Starfleet. Khan goes along with this plan but after a while something changes and Khan leaves the secret base.

  • What a coincidence, they unfreeze 1 of 73 and it just so happens to be Khan once again. Why not give some screen time to Joachim?

  • Khan went into cryostasis in 1996, before First Contact and before we had warp capability. How the hell does he know how to make all this shit?

  • Why didn’t Marcus unfreeze more if not all the other super smart people? Surly more super intelligent people would help him get better weapons and faster too — Mythical Man Month not withstanding.

  • Why does Khan not demand the rest of his people be unfrozen right away? Perhaps Marcus doesn’t trust Khan, but if that’s true then shouldn’t Marcus have a tail on him. How does Khan get away with so much stuff while under Marcus’s nose?

Based on his character and behaviors let’s assume Khan was working with Marcus as a ruse. Khan knew a day would come where he would betray Marcus to enviably get back his frozen comrades and the advanced starship he had built with all the cool long range torpedoes and shit. This is his plan:

First he’ll take the long distance torpedoes he developed for Marcus and hollow them out. He’ll put his frozen friends in them. He then blows up the lab in London where he and Marcus were doing research and development. I’ll assume the torpedoes we’re not being stored there (maybe they were already onboard the super starship?). I’ll also assume the reason he attacks this base an no other is to help stunt Marcus’s development of advanced weapons.

Khan knows the attack will kick off a protocol meeting of high end Starfleet leaders. He’ll fly a fully armed craft right up to the windows of the meeting room and shoot. However, killing everyone at this meeting is not Khan’s goal. If it were he could just use another ring bomb and be done with them all. Apparently the goal is to scare Marcus and leave a trail to make it clear he is hiding on Kronos. He figures this location is the perfect excuse for Marcus to use those long range torpedoes with all the friends hidden in them.

  • Khan’s taking an awful risk no one will notice he switched out the contents of these torpedoes with people. If Marcus doesn’t trust Khan you’d think he’d have some cameras and shit on him, like Gus on Walt. You’d think Marcus would notice all the frozen people are missing.

  • I have to imaging there was a lot of manual labor for this plan, to hollow out these torpedoes and swap in the cryo-tubes. Why didn’t Khan just unfreeze people right there and then while he had access to them all? Why hide them and make up a convoluted plan to get access to them again later?

  • Khan seemed to be firing that gun pretty recklessly into the meeting room. What if hit Marcus? Considering Khan needs Marcus alive to order the torpedoes with his friends hidden in them be used, it all seems pretty dumb. Maybe he got some pointers from Neo who has no problem shooting guns right at the person he is trying to free.

  • If there was an attack on Starfleet London don’t you think the main headquarters would be on lock down? How the hell does an armed craft get anywhere near the windows of an Admiral’s meeting? Wouldn’t there be some shields or something?

  • Does Khan really expect the Enterprise will fire all 72 of these torpedoes at his location?

  • Why was the Enterprise given so many torpedoes for one target anyways? They at best need 3 or 5. Seems like overkill to me.

  • Why didn’t Marcus keep any for himself and his ship?

  • Have these torpedoes been updated to land softly on a planet after being fired?

  • I would think cryo-tubes are pretty fragile. How does shooting them at warp speeds, traveling through planet ozones and landing effect their ability to keep the people asleep?

  • If things are so volatile with the Klingons how does the away team fly to their home planet without being noticed from the Enterprise which parked in neural zone?

So instead of firing the torpedoes like Marcus ordered, and as Khan planned for, Kirk takes Khan prisoner instead. I have to assume being taking prisoner was not part of Khan’s plan. If it were it means he assumed a starfleet captain would have been ordered to fire but not done so. One might argue Khan specifically worked things out so Kirk would have been the one given the mission; that Khan knew Kirk would ignore the order and do the morally right thing. In reality though Khan actions killed Pike, Kirk’s father figure which pissed off Kirk a ton. It took the advice of ever officer under him to change his mind from killing Khan using the torpedoes to taking him prisoner.

Beaming as a plot device

With no real cause or reason the first reboot movie had Scotty figure out a whole new style of beaming that let’s people beam onto ships traveling at warp and long distances. It’s been some time since the events of the first movie and Starfleet is apparently using this new tech everywhere (at least when it helps the plot).

  • Khan can beam from Earth to Kronos but we can’t beam Spock out of a volcano?

  • Why can’t we beam to Kronos from Earth like Khan did?

  • Kirk, Spock, Uhura and two red shirts are surrounded by Klingons about to be killed, why can’t we beam them up?

  • Can’t beam Khan up to the Enterprise from Earth during the end movie chase scene because he is moving too fast on a ground transport BUT we can beam people to him? WTF! THIS MAKES NO SENSE?!?

  • Why didn’t they just beam Kirk and Khan to the Admiral’s ship instead of that space jump scene? Probably because he had shields up — but if he had shields up why didn’t Kirk and Khan smash in to them after being shot out from the Enterprise? Oh I know, Laaaaaazzzzzzyyyyy wriiiiittttiing.

Spock Prime

Old Spock you money grubbing son of a bitch. Why are you here? Fan service? Did you even come to the set to film this scene? Looks like you did it over Skype(1).

1: Props to RTM for that joke — just had to steal it! :)

Hey Spock Prime, give these kids chance to stand on their own! We don’t need you here.

So you do realize that using knowledge from the future to change the past has dire consequences. Well that’s good to know. What? Fuck it all and tell them about Khan anyways. So much for Vulcan oaths.

For Young Spock to call Spock Prime and ask about Khan sure does seem like a shot in the dark when there are a lot of other things going on.

Why is Earth space so fucking empty?

  • Right before the final space battle the Enterprise is visually kicked out of warp above Earth space. If they weren’t kicked out of warp by the Admiral’s ship they would have traveled lightyears past Earth.

  • Wouldn’t being kicked out warp that violently cause more damage to the ship?

  • Why didn’t they pull out of warp right when they were being fired upon in warp. The Admiral’s ship would have zoomed right passed them ala Spaceballs.

  • Why does the enemy ship in these modern movies always have to be bigger and scarier looking? One of the great things about Wrath of Khan was that Khan disables the Enterprise with the Reliant, a much smaller ship.

  • The final battle happens right over Earth space. Why aren’t other ships there? If they were there but not shown, don’t they question this mysterious higher tech ship firing on their fellow ship? Let alone the flagship of Starfleet?!?

  • The first movie of this reboot had Nero torture Pike for codes to deactivate Earth’s “defense grid”. Apparently even as advanced as Nero’s ship was he was scared of Earth’s defense grid. Where the fuck is the defense grid now? Why is it not helping to defend starfleet’s flagship from being attacked?

  • The Enterprise has lost all power and is slowly falling to earth. Why can’t one of the dozens of ships and/or space docks that should be floating around Earth beam the crew off? Shield are obviously down as they barely have enough power for life support.

Answer: Earth space is empty is because it’s convenient to the plot. The reason the final attack happens above Earth at all is so we can have that sequence of Khan slamming the starship into the Starfleet Headquarters which looks sexy as hell in the trailer but doesn’t effect the plot at all. What’s different after that crash scene? Nothing. Khan jumps off the ship no problem (WTF?!? How is he still alive?) to start the chase scene.

  • Related: Having the Enterprise underwater was for the trailers too. It helps tease the idea that the Enterprise would crash into Earth at some point as we saw it inside the atmosphere of an M-class planet and we also see a ship crashing.

We may be out of popcorn but not nitpicks!

  • In the heat of the final battle, Scotty begins to fall and Kirk grabs him. Kirk begins to fall and Chekov grabs him. Little Chekov who weighs 90lbs soaking wet, pulls them both up the to railing. Space muscles!

  • When Kirk dies they figure out they can bring him back with Khan’s blood. Why Khan and not any of the other 72 frozen people in those tubes? Hell they probably had to take one out when they put Kirk under while they were waiting for Khan’s blood. I suspect coming out of cryo requires care and handling. I bet the guy they kicked out in a hurry, to make room for Kirk died. Poor guy. OMG I hope it wasn’t Joachim! :(

  • Why would injecting human blood (even if it is “magic” human blood) into a Tribble be a good idea for science? Seems like a waste to me. You have to imagine better experiments could be performed on that blood.

  • Bring Khan back alive they say. As if Spock can kill a man who’s blood brings others back to life?

  • When Scotty blasts Khan with a phaser set to stun it knocks Khan out, at least for a minute or so. At the end of the movie, for Uhura using the same phaser it takes like 10 shots to do the same thing. (Maybe his genetic enhancement gives him the power to become less susceptible to the stuns after the first experience (ala borg)? Nah, I don’t give the writers that much credit.)

  • At the end of the movie we never hear what happened to Khan. Did we keep Khan alive? Is he in jail cell? Are we using his magic blood to keep other people alive now?

  • What happened with the Klingons? We’re told we are on the brink of war and I have to imagine the events of the movie, where like 30 or so Klingons were killed with starfleet weapons, have only escalated things. The movie ends with a year of time passing but all is well on Earth. No war, plenty of time for a ship re-commissioning party. When I saw Kahn’s ship smash into Starfleet Headquarters I said to myself oh shit, Klingons are going to take advantage of this and attack Earth in the next movie. Guess not. :(

What year is it anyways?

It’s 2013, I don’t like being spoon fed that in the mid 1990s there was a Eugenics War with genetically enhanced humans and we also had perfected cryostasis too. I was alive in the 90s, there was no war and no frozen people, just grunge rock.

For me and I think most people, the best sci-fi is where everything in the story’s timeline matches up to your own until the event of the story. For example, if I’m in a movie theater in 2013 and we have a movie taking place in 2016 where aliens are invading Earth, I’m pretty likely to let my imagination stay with the movie. If I’m in a theater in 2013 and a movie tells me aliens invaded in 2010 it breaks my illusion immediately. (Unless there is a related multi-demential plot device with a pretty girl who throws me ammo and health in which case I might allow it.)

Movies usually fix this kind of stuff. Take for example early drafts of Back to the Future that reference 1982 as the current year but then changed it to 1985 for the official release. The Matrix did the same, referencing the year as 1997 in its early drafts and then upping the year as the screenplay saw revisions:

You believe the year is 1997 when in fact it is much closer to 2197.

You believe the year is 1998 when in fact it is much closer to 2198.

You believe the year is 1999 when in fact it is much closer to 2199.

With a reboot like this who’s story origins come from 1960s TV it’s hard to work around the “1990s Eugenics Wars” issue I’ll accept but for us nerds who are quick at math and paying attention to the years and ages being thrown around in a movie screenplay like this it still bothers us.

Closing Commentary: The Wrath of Copy and Paste

While I’ll commend the acting and special effects I really have to roll my eyes at the writing in this movie.

I feel like the writers room started with a wall of index cards, one for each reference and action scene they wanted to make and then they wrote a story to make these connect. The writers were not interested in trying to tell a new unique story with these characters. They were interested in creating another trek-themed, reference-filled, no thinking action movie that placates to the masses. Arguably they have succeeded at their goals, I just had higher expectations.

Movies should stand on their own and this one doesn’t. This movie uses way, way too many callbacks to Star Trek 2: Wrath of Khan. In fact “callback” or “homage” aren’t really the right words, this movie flat out plagiarizes Wrath of Khan to the point of distraction.

One example, there is the scene where Kirk is questioning his new prisoner and while explaining his past, his true identity, the camera zooms in, a long dramatic pause, “My name is Khan.” Now for anyone who isn’t familiar with the previous movies this is a meaningless event. Even Kirk and Spock “in-character” have no reason to react to the reveal of this alais. They might as well keep calling him John Harrison for all they care.

Hey old Spock, ever have trouble with a “John Harrison” in your days? Nope. Ok thanks anyways.

I’m sure many people enjoyed how they mirrored the Spock/Kirk death scene but for me when Spock died in Wrath of Khan it meant something more. For one, we left the theater with Spock dead. There was a significant ending where Kirk and the audience get to come to grasp with the realities of what had just happened. There was real tension that this was the end for our favorite vulcan.

When Kirk dies in this movie there isn’t much tension if you are paying attention to things and know modern hollywood. The screenplay doesn’t even give the audience enough time to grieve and collect themselves before starting the next sequence, a huge, over the top crash scene that doesn’t impact the plot at all.

Again I’ll give the actors credit, the performance of that death scene was extremely good. They matched the emotion level of the original which is a classic scene for all movies. What doesn’t click though is that the original pair of Kirk and Spock had been adventuring together for years and were extremely close friends. This version of Kirk and Spock had known each other for a year, maybe less, and have not really demonstrated a true friendship bond yet at least not at the same level as their predecessors. Having such an emotional scene copied and mirrored doesn’t really make that much sense when you don’t take into consideration this version of the characters. This version of the characters were not ready for that scene.

I think nostalgia was important for the first movie to help people make connections from the past to this new crew but I was hoping with this second film, now that it has its own timeline and canon, would be able to break out and do new things. It sadly did not and now I’m left to wonder if they ever will or if this new Trek series will simply be a collection of continued nostalgia rehashes from archives, albeit very pretty rehashes.

A Mac Pro Guy Getting By in an iMac World: Storage

Recently I decommissioned my much beloved Mac Pro which served as a lowly file server since I moved to my loaded 27-inch iMac last year. The iMac is working out great though I would have still preferred a new Mac Pro for it’s overall expandability, particular to this post — it’s extra hard drive bays.

On the iMac, I use the 256 GB SSD for my boot drive and have the second internal 2 TB (disk-based) drive partitioned into three other drives, one for a nightly SuperDuper! mirror of said SSD, another for a Time Machine backup and then the final one for 700 GB of misc storage. This “misc storage” used to be for my iTunes library and backups of large downloads like Xcode/Mac OS X installs, but that’s changed now as you’ll see below so I might roll this back into the Time Machine partition or rework it to have a Windows Bootcamp drive again (like I had on my Mac Pro).

All in all, the built-in storage I get with the iMac works fine for day-to-day work but I still needed something for my archives: my monthly backup of cloud/server assets, archives of my video/screencast work and my iTunes library (which has ballooned with WWDC videos and slides).

For a while I debated getting a Drobo, particularly one of the newer Thunderbolt versions. From the outside it looks like a great system but at $850 with no hard drives included I just couldn’t justify it. So what did I end up with?

I bought a pair of Western Digital, My Passport, 2TB Portable External Hard Drives ($139 on Amazon). My digital closet sizes up at around 800 GB right now so I expect these should meet my needs for a good while. I got two of them and use one as my main archive drive and then the other to backup the main. They use USB 3.0 for transfer and while the speed isn’t crazy awesome, it totally meets my needs. I love the small form factor and the fact they do not need an additional power supply. I often throw the backup one in my bag for IndyHall if I’d like to have my iTunes library with me (it’s way to big for my MacBook Air’s SSD). I also love that I’m not using some complex RAID format. I can plug these drives into any Mac and get access to my files.

Anyways, I’ve been using these drives for three months now and all is working well. If you are in the market for some extra external storage, I highly recommend. I’m actually considering buying a third to start a rotation of sorts at IndyHall. With that I believe I’d be safe losing all my home gear to a theft or fire and still have all my digital stuff safe.

LessConf Diversity

I read the following LessEverything blog post and tweeted:

Maybe the irony is lost on me but this reads like pretentious bullshit.

@stevenbristol askes:

it’s not at all meant to be. Can you tell me how?

Sure. Let’s tale a look…

You Are Welcome at LessConf, Please Come

The title is nice enough, grats on that one.

Considering this is the last LessConf and what a unique event it is, I’d like to send a special invitation to people not of “privilege” to attend.

I wonder what he means by “people not of ‘privilege'”? Like money? People who can’t afford to attend conferences?

Allan and I are certainly irreverent, sometimes crass, but we always try to included everyone.

irreverent (adjective): showing a lack of respect for people or things that are generally taken seriously

crass (adjective): lacking sensitivity, refinement, or intelligence

Yeah, I can see that.

And by “include everyone” of course he is referring to his conference that has people apply and only after deeming them worthy are they given the privilege of buying a ticket.

That’s how we’ve always been: You know the person at the office who is a bit weird or shy and no one ever invites to lunch? I always invite that person along for lunch. That’s just the kind of people we are.

Ok so now you are defining “people not of ‘privilege'” as people who aren’t social at work or deemed by you as “weird”. Seems off to me but moving on…

LessConf, like most conferences, is filled with white heterosexual men, “people of privilege.” And that’s great, except that it’s also not great.

Ah so people of privilege are “white heterosexual men” and you seem torn if this is great or not so great. I wonder what he means by all this. I hope he explains. (Spoiler: He doesn’t.)

We would like to extend a special invitation to persons who are not white heterosexual men to join us.

I’m no English major but doesn’t that statement mean the invitation is still reserved for heterosexual men of the non-white denomination?

More to the point, using a phrase like “not white heterosexual men” to group the “diversity” you are looking to bring into a conference community is pretty tasteless in my opinion.

LessConf should be a place where all people feel free to be themselves; where everyone is loved and accepted and safe.

And appreciated gratuitous use of the word “and”.

I don’t care who you are or where you fit in, I would like you to fit in at LessConf. Here’s a coupon for $100 off the price of the ticket. LessConfLovesMeTheWayIAm

Please do come and feel safe to be and express who you are.

This is from LessConf 2012: (A photo of what I assume is a group of white heterosexual men hugging.)

If adding diversity to your conference was a real goal you wouldn’t announce it mere weeks before it opened. The whole thing smells like you haven’t sold out and are trying to use the “diversity” angle to sell more tickets, and very poorly at that.

Best I can tell this conference is something you hand made, picking the speakers, picking the attendees. If it’s not diverse you have no one to blame but yourselves.

Here’s an idea if you really want a diverse conference get people of diverse backgrounds to be on the planning committee. Let them attract a diverse speaker roster. Let the diverse speaker roster help attract a diverse audience.

Maybe Steven and company do want a diverse conference but I have to say making moves this late in the game with the above post is a pretty poor attempt.

Xcode Documentation Downloads

Rather that use the Mac App Store and re-download Xcode each time I need to install it on a new Mac, I take advantage of developer downloads directory and grab the Xcode DMG file so I can put on my USB disk and move around from Mac to Mac and avoid the duplicate downloads.

Xcode however no longer includes the documentation, so the first thing that happens after you launch is a 1.3 GB download for the docs.

Xcode Documentation Downloader

Apple, please consider adding a download with a snapshot of the documentation in place. Maybe even a LAN sync option so it could grab the docs from my desktop (or my co-workers) instead of saturating my internet connection all the time.

Instapaper Gripes

First let me say that I really like Instapaper. It was one of the first apps that gave my iPad real purpose, and I use it pretty much daily. While the comments below might be negative and trite, there are tons of great things to love about this app too, so don’t take things too seriously. If you aren’t already using Instapaper, I’d recommend reading the the MacStories review to see what Instapaper is all about.

A lot of these gripes are based on personal usage (described early in gripe 1) that, in theory, mirror large scale usage. I’ll be the first to say that I could be way off on that. I’m not currently aware of whether Marco captures the kind of usage data that would help him evaluate the effectiveness of the Instapaper user interface, or if he has ever made those numbers public.

The big idea here isn’t to gripe on the Instapaper app for the sake of griping, but I want to start discussing interface design, the tradeoffs we make, how design evolves, and so on. I figured this post would be a good place to start, since I am unhappy with some of the choices made in Instapaper, despite the fact that it is a really good product.

Aside: Gripes, while numbered, are not sorted by importance.

Gripe 1: Always showing the collection chooser is a waste of space.

When you first launch Instapaper, you’ll be taken to the Read Later collection. Before I talk about that collection, let’s talk about overall layout and navigation.

Collections

This view tries to accomplish two things at once. First, it’s a collection chooser (overlaid in orange), which lets you switch the collection you are currently browsing. Second, it’s a collection browser (overlaid in blue), which lets you browse the articles of the selected collection and load an article to read.

I’ll take a stab in the dark and say that I am an average Instapaper user. My Instapaper usage is as follows…

Each week I’ll see various articles on the web shared to me via Twitter or mentioned in email. I’ll mark them as Read Later using my desktop browser’s bookmarklet or the built-in Send to Instapaper features of apps like TweetBot. I probably send anywhere from 15 to 25 articles to Instapaper a week. When I do find some time on the couch to read, I’ll open up Instapaper on my iPad. The collection I’ll be browsing is always the Read Later collection. I have to imagine this is the same for most others as well.

If this is true, and the majority of the user’s time is spent in the Read Later collection, I cannot understand why the interface has been designed to dedicate 15% of the screen to collection choosing, which is not something that is common in typical use. I feel like giving this space back to the collection browser, along with some ideas on improving the preview cells of articles, could greatly improve the browsing experience on Instapaper.

Coincidentally, TweetBot for iPad has a similar, always present, sidebar, but here it doesn’t bother me nearly as much, since I do frequently use it to switch collection contexts. With Instapaper, the collection chooser is, for the most part, just dead space for me.

TweetBot

Gripe 2: Centering the title in the collection browser looks misaligned because of the system clock.

Can not be unseen.

Alignment Why?

And, yes the TweetBot screen has the same problem.

Gripe 3: The “grid” default collection layout style is questionable.

I know there are many popular grid-oriented apps out there for presenting content on iPad. For me, I find the use of the grid in Instapaper to be more of a distraction than anything. I don’t like the flow of my eye path as I have to browse the collection in a grid.

Grid eye path

I’d much prefer a purely stacked list of article previews. I feel that this eye flow is better, and, as a bonus, it has great synergy with the vertical scrolling motion.

Thankfully, there is an option to toggle this behavior in Settings. I don’t think it was there immediately upon 4.0’s release, as I vividly remember not liking the grid and not seeing a way to turn it off, but sure enough, I found it while I was prepping this article. Woot!

Aside: The launch image always assumes a grid so on a fresh launch it looks a little clunky to see the grid and then see it go away in favor of the users preference. It’d be nice if the launch image were made more user preference neutral in the future.

Gripe 4: Different collections should have different preview cells.

There are many different collections, but only one basic cell design for the article preview cell. I find this unfortunate because the user’s goals when exploring the different collections are quite varied and could benefit greatly from expanding the different cell preview designs. It would be great if Instapaper could offer some user preferences to suit their needs. Some examples:

Preview Cell Design for “Read Later”

Scenario: I’m browsing the Read Later collection from my couch. I have an hour to kill and want to catch up on things. The sort of the Read Later collection is based on when I added articles, so I’ll see the most recent at the top. My goals for this view are:

  1. to remind myself about the article I added
  2. to determine whether I want to read it now

To remind myself, the preview cell offers a mix of article title, source domain, author, and a short blurb. For me, the blurb is usually overkill. It could be subbed out for more useful information.

While very helpful in reminding me about an article, the preview cell does very little to help me determine whether I should read one article or another. The cell does provide a series of dots which, if you use Instapaper over time, you might come to realize represents the length of time that the article will take to read, and how much of it you have already read. Personally, I’d like to see that changed into a more descriptive, text-based description and drop the “percent of article read” feature. After all, to do it in text would be verbose, and I’d like to think that the majority of users read these web articles in one sitting (again, I don’t have numbers on this).

What I’d really like to see is Instapaper start to take advantage of the friends I’ve added to it and the global data it has, in order to help me realize what of the things I’m browsing is worth my limited time. Which articles have been liked by my friends (show me a few of their tiny little avatars) and what articles are making an impact globally (using global read and liked counts)?

Preview Cell Design for “Liked”

Scenario: I would assume that one of the main reasons I’d be in the Liked collection is because I’m trying to find an article I’ve read and Liked previously. I probably want to reference it myself or send it off to a friend. For me, this would usually involve searching, but I’m going to wait to talk about that later. As for the preview cell design, again we see the same design used in Read Later. How to improve?

In a word, dates. If used often, the “Liked” collection will span months and months of articles. Knowing when an article was published and when I Liked it would help me find what I’m looking for during a browsing session.

Preview Cell Design for “Archive”

I feel like the design for the preview cell in the Archive collection should be a hybrid of my proposed Read Later and Liked preview cell designs.

I also think that the Archive collection (as well as maybe Liked) might do something to help group up articles I’ve read by the same author or from the same site.

Preview Cell Design for “Friends”

More than improvements to the the preview cell, what this collection really needs is a list of my friends. Show me who is actively reading and linking stuff. Let me browse their history, as a collective or as individuals. (I go on about this in more detail in gripe 9).

Gripe 5: Archives and Liked collections should load more articles as necessary.

For what are probably many valid reasons, Instapaper only loads a small portion of your Archive and Liked collections. When you browse to the bottom of these collections, it just stops. If you want to load more, you need to visit settings and tell Instapaper to load more articles for these collections. This seems clunky and non-intuitive to me. There is nothing at the bottom of the list to even suggest that you should go to Settings in order to see more articles.

What I’d prefer to see here is some sort of button that allows users to manually load more articles, or perhaps Instapaper should passively load more by making an endless scrolling list.

Gripe 6: Respect my eye line.

The article view does a great job of letting the content own the space. There is a navigation bar, but unless you interact with it, it will eventually fade away while you read.

Article View Navigation

There are two ways to bring the bar back. One is by tapping somewhere that isn’t otherwise interactive. The other is by scrolling to the bottom of the article — this is my gripe.

When I read articles in Instapaper, my eye line or reading zone (shown below overlaid in blue) is the very top of the screen. I literally read 1-3 lines and slowly scroll the page up little by little when I’m reading an article.

Reading Zone

Eventually, I’ll be almost done reading the article and — BAM — the navigation bar comes up and covers my reading zone. What follows is an unpleasant scrolling dance that I don’t even want to describe.

I understand that it makes sense to automatically show the navigation bar towards the end of the article, but the algorithm needs to be tweaked in order to make sure that the reading zone of the user would never be hidden by the navigation bar, which, from my experience, it clearly can.

Gripe 7: Questionable archive icon and popover menus.

When you finish reading an article, part of the reason the navigation bar comes back up is because you have an action to perform:

  • Like the article by tapping the heart icon.
  • Archive the article by tapping the trash can and choosing “Move to Archive”.
  • Delete the article by tapping the trash can and choosing “Delete”.

Archive Menu

I feel like the choice of a trash can for the non-destructive action of moving an article from my Read Later collection to the Archive collection is unfortunate and likely confusing to some new users. Trash cans in a computer context mean “I never want to see this file or object again.” A trash can is not a suitable icon for transferring an article, even if the destination is an archive. Ultimately I feel like each of these three actions should have their own icon and remove the popover entierly.

Aside: One alternate way this plays out is if you Like an article first and then tap the trash can the Delete action is removed leaving only Archive. Why would you ever want to present a popover menu where there is only one action? Again my recommendation would be to drop the popover entirely but should a case like this come up just assume the one remaining action and suppress the popover.

Gripe 8: Search is too elementary.

Search in Instapaper works like this: there are various search buttons in the app, and when you tap on them a modal window pops up. Then you type in some terms and a search is done against the full text of all the articles you have in Instapaper. The search happens on Instapaper’s web servers. The results are presented in a list and then, upon tapping an item in the list, you jump to another modal window with the webpage of the article.

Search UI

There are many problems with this experience:

  • Search requires an internet connection. There is no way to simply search the stuff you have locally.
  • In order to accept the search terms and present a result list, Instapaper uses a modal view that fills only 50% of the screen. Half the screen is left underutilized. Why is this not happening inline in the collection browser area, as I would have expected?
  • There is no way to control your search context. The only option is “All.” For example, you cannot do a search for something in your Liked collection.
  • There is no way to reorder the results; they are presented in an unknown order. There is no way to sort specifically by the liked on date or search term relevance.
  • When interacting with a result, the article is presented in a modal webview instead of the expected Instapaper article view. One of the major points of Instapaper is that it filters out a website’s frame for easier article reading. Why not a proper article view here?

Overall search comes off as a minimum viable shipping feature, good enough to ship, but not where it should be. If it were just a young feature that would see improvement over time, I wouldn’t gripe as much, but search is actually the main unlock if you choose to pay extra for a monthly Instapaper subscription. In that context, I really think it’s important that search sees improvements soon. I don’t think it’s right to reward subscription buyers with such an elementary feature.

Gripe 9: The friends collection

Another young and hopefully to-be-improved-upon feature is the social aspect of Instapaper. The current version allows you to connect various friends, but the interface can be pretty clunky at times. For example, you have to add friends with one view and then remove them with another. Why does this require two views?

Add/Remove Friends

However, the real problem is the collection browser itself.

As I’ve said before, I really think this view needs to include the avatars of the people who are sending me this content. I know people by their avatar a lot better than by their twitter handle, and this change would make visually browsing things much faster. Also, I want the power to isolate a friend and just see what he or she is promoting. Let me browse by my friends, and then browse what they are sharing specifically.

At the bottom of the Friends collection is a toggle to show “Shared Links” or “Liked by Friends.” First off, it’s really awkward to have a toggle between a noun and a verb. Something is amiss.

What does Instapaper mean by “Shared Links” — these objects are called articles everywhere else in the app — why the difference here? Best I can tell, “Shared Links” represents URLs that people have posted on Twitter, Facebook, Tumblr, and other services. I get that there is a naming challenge here, but I am not really happy with the current solution of “Shared Links.”

In fact, I truly wonder if there is any value in having two distinct sub-collections in the friends category. Why not just one collection, and make it clear in the preview cell how this article came to the reader, i.e.: “Liked on Instapaper by Manton Reece @manton” or “Posted to Twitter by Thomas Fuchs @thomasfuchs?”

I think this, plus the power to browse and isolate content per friend, would be a nice improvement.

Gripe 10: Drop “The Feature” collection.

Described at the top of its view, The Feature is:

Daily editorial selections from the finest articles saved with Instapaper.

I never use this feature/collection. I have enough content to fill my reading time, and the idea of reaching out to this specific collection of content seems strange.

It’s unclear how many articles are posted per day. The blurb says “editorial selections” as if to say, “these aren’t selected by robots,” but then no human editor names appear either. Who is the editor? What makes these articles so “fine?” What is the focus here?

When I click on an article, it doesn’t even load a standard Instapaper article view. Instead, it loads the website. Why would it do this? For me, Instapaper is about an offline, clutter-free reading environment. This provides neither. It feels like an ad.

Maybe I wouldn’t gripe as much if this collection didn’t stare me down every time I opened the app. It just sits there in the static collection chooser area, which I never use. I wish I could turn it off.

Gripe 11: Settings

When I tap Settings in the lower left corner, I get a popover that is about 1/3 the height of the inner view (thus I need to scroll to see everything). Every other navigation-based item in this app has made use of the full screen of the iPad. If Instapaper didn’t have an iPhone version, is this how the Settings view would have been designed? I doubt it.

Settings Popover

The Settings view should fill the screen and fit in with the visual style of everything else, probably as a collection browser if the static collection switcher style design is staying. With this extra space, you can be more specific about things, like using labels as well as icons for the various friend services.

Gripe 12: Android

First I want to say thanks to Instapaper for doing an Android version. It was very handy to have a portable tablet version of Instapaper around when iOS 6 bugs were making my iPad less than useful. I will gripe however, that on Android you are not always following along with the Android-isms. For example, I found the behavior of the hardware back button to be somewhat inconsistent. Android apps should feel like Android, and iOS apps should feel like iOS.

The biggest problem with the current Android version is the lack of scroll position saving during orientation switches, which for me are usually involuntary as I move my Nexus 7 to reach for a glass of water or something. I’ll come back and my article is not where I was. Very frustrating.

On Gripes

Again I’ll say that I really do like Instapaper, both the service and the apps overall. My gripes are meant as feedback and kickoffs for other user interface discussions. Please do not take offense.