Hey, I’m Parker.

Creator of music, photography, and (mostly open) software.

My Favourite Apps in 2012

Below is a list of the apps I wouldn't have wanted to live without this year. To be fair to everyone, I've listed them in alphabetical order.

I know some apps are missing links to various versions, but if I didn't use it, then I felt it was best not to include a link to it on this list.

101 Airborne (iPhone)

At this moment, this is one of only two games which I have installed on my iPhone. I have thoroughly enjoyed playing this game, and it is incredibly well-done, to boot.

Diet Coda (iOS)

When I had to have the logic board in my MacBook Pro replaced, I had to hand in my computer for a week. I am practically addicted to development, and this app by Panic, Inc. of Portland, Oregon, served me well during those tough times.

Dropbox (iOS, Mac)

Dropbox gives me the freedom to aimlessly roam between devices without losing any progress. I can work on my mac for a bit, then pick up my iPad and resume my work right then and there. Dropbox far surpasses the ease-of-use of competitors such as Box.com, and its native Mac application is far less intrusive, as well.

Google+ (iOS)

I'm a social media weirdo. I have to try out every one that comes along. I even tried out app.net for a while (I still have an account there). I started using this app far more after the amazing redesign which happened right around Christmastime. It was indeed an enjoyable occasion. I use G+ to stay in contact with friends who now work at Google and with friends of mine who insist on Google-only living: an Android phone, Google+ to communicate (Messenger), and Google Docs to collaborate.

Google Chrome (iOS, Mac)

Chrome on Mac is absolutely awesome. I use it obsessively.

Chrome on the iPhone is something I had to warm up to a bit more. It behaves far differently than Safari on iOS and the controls are in completely different places. After some adjustment, I've come to appreciate its incredible flexibility and strength in the mobile realm.

Google Maps (iOS)

Apple Maps has yet to lead me to a hospital that isn't there, or on a road that has been demolished, but I still missed the Google Maps speed and accuracy. I have also found that Google Maps is far better for finding nearby amenities, such as coffee, gas, and food.

Google Translate (iOS)

While I am relatively proficient in the language, learning German is a process. I have found this app very helpful during my studies and even when having a causal conversation over Skype in German.

Gmail (iOS)

As with G+ above, the redesign really did it for me. It was, all of a sudden, a reliable, beautiful, and agile experience, to use this app. It was incredibly buggy before (it seemed to be a product from Google's insistence that online mobile apps will be dominant, over native apps), but it has come a long way.

iA Writer (iOS, Mac)

Whenever I have a thought that I want to remember and ponder later, I write it down in a note. This usually happens while I am on-the-go. I will then come back later and review my thoughts and ideas in iA Writer for Mac. I am so thankful that iA Writer offers syncing through services like iCloud and Dropbox.

I have even been known to write essays on my iPhone of 1000+ words while I walk between classes, to dinner in Collegetown, and to and from rehearsals. Two of the three "A" papers I wrote last year (one writes few papers when studying engineering) were written almost entirely in iA Writer for iOS.

Instapaper (iOS)

After much consideration, I decided to include this app on my list. I have used Instapaper for many years now, and have truly enjoyed using it. It has, unforunately, become a repository for articles I'd like to read, but probably never will. I found Instapaper very useful, however, to pass the time during long plane/car/bus rides, as well as long layovers between flights.

iTerm2 (Mac)

Almost all of my development before May this year was done in Terminal.app. While I have appreciated its service, I decided to move on to iTerm2 upon a recommendation from a friend. iTerm2 is light and doesn't have any weird "Mac baggage" which Terminal.app does. It's simple to configure (though there are far too many configuration options, in my opinion), and easy to use.

Lightroom 4 (Mac)

When I first got my Mac, I bought Apple's Aperture to handle photo editing and management. When Lightroom 1 came out, I gave it a try and really enjoyed how lightweight it felt. It's incredibly easy to use, and its catalogs are quite small, relative to Aperture's. It is easily extendible, with custom plugins for exporting photos and custom presets for one-click photo editing. I've since stayed with Lightroom, and never looked back.

Netflix (iOS)

I have a slight obsession with Star Trek: The Next Generation, and, more recently, with Star Trek: Voyager. Netflix has been a wonderful means of distraction when I need to escape to the twenty-fourth century for some R & R.

Pages (iOS, Mac)

Pages is similar to iA Writer, but built for presentation-geared reports and papers. If the formatting matters, Pages is there to save the day. I wrote quite a few lab reports on Pages for iOS.

Paper (iPad)

Paper by FiftyThree is pretty freakin' awesome. It's incredibly agile, and very robust. While I am no artist, it's great for drawing up a quick website mock-up and sending it off to colleagues. I am still in search of the right stylus, however — I am using the Bamboo stylus from Wacom, but I need a tip which has more precision for use with Paper. Let me know if you know of one I should pick up.

Sparrow (iOS, Mac)

I have been using Sparrow since its private beta days, and I just love the thing. Sparrow for Mac is a beaut' and Sparrow for iOS makes managing my Gmail accounts so easy and painless, it's almost too good to be true.

Spotify (iOS, Mac)

Unfortunately, I am not made of money, and my bank account resembles that which one might expect of a poor college student. In my hopes to spend less on music, I signed up for Spotify and have just loved it. I have discovered several new artists that I have come to adore (can it get better than some Babyface or Marc Broussard??), and for that, I am thankful. Spotify for iOS is a bit weird when trying to initialize radio on a 3G connection, but it's something I am willing to live with for the time being.

TextMate 2 Alpha (Mac)

As I mentioned above, I code endlessly. My trusty companion is TextMate 2. In 2006, Nick Rowe showed me what would become the text editor to change my world. After learning all the key bindings, it was hard to switch when I started learning more about vim. So I stuck with TextMate. When TextMate 2 Alpha came out, I was never happier. Rebuilt from the ground up, it has all the memory management I could have hoped for out of TextMate 1. I love this app with all of my heart.

Things 2 (iPhone, Mac)

Pretty much the only reason I've been productive this year is due to Things. I was a beta tester for Things Cloud and Things 2 (both Mac and iOS) and was delighted to find that this task-management application suite so quickly synced all of my tasks, and never failed. I've never lost anything with Things Cloud, and that reliability is important, when it means the difference between getting someting done, and forgetting about it.

TuneIn Radio (iOS)

The BBC World Service News station is one that I have grown to love, many thanks to TuneIn Radio. It gives the user the opportunity to listen to radio stations being broadcast all around the world — even in different languages. I have learned a great deal of German, listening to Deutsche-Welle Nachrichten in this app. It works beautifully over 3G, too, which makes long car rides all the more pleasant.

Tweetbot for (iPhone, iPad, and Mac)

Last, but certainly not least, I must acknowledge my addiction to Twitter. When I wake in the morning, I never fail to reach over, grab my iPhone, check my email, then check my Twitter feed. It usually takes a long breakfast to get through all of them, but I am able to change devices, due to syncing of my position via Tweet Marker. Before Tweetbot, I used Twitter for iPhone 3.5.1 (before that horrid redesign), but really wanted CloudApp support. Tweetbot was the natural alternative and everyone raved about it. After a couple weeks of using Tweetbot on a daily basis, I deleted Twitter for iPhone without hesitation. Tweetbot is the best way to interface with Twitter on any Apple device.

The Immediate Future of Jekyll

Jekyll is a static blog generator created by Tom Preston-Werner, the current CEO of GitHub and one of GitHub's co-founders, and by Nick Quaranto, who is now at 37signals. Jekyll is pretty freakin' popular and it's also the engine that drives GitHub Pages.

After an hour-long chat with Tom, I'm optimistic about the future of Jekyll. He's really excited about where it's headed and has a vision in mind about what he'd like it to become. Here's what we ironed out during our conversation:

Led by Tom, a Jekyll development team, of which I'm the first recruit, will be tackling the problems with Jekyll and continuously improving its functionality and ease-of-use. The focus will remain on making a tool that allows one to easily create and manage a static blog.

Suuuper basic (unofficial) design principles:

  1. Keep it simple
  2. Easy to extend
  3. Solid safe mode (for GitHub Pages)

What we need to tackle:

  1. Fix bugs (!!)
  2. Decrease build time (!!)
  3. Docs for site
  4. TomDoc everything
  5. Release new site
  6. Finish same site generator
  7. Include some faster LSI

Want to help? Check out the discussion label and add in your two cents.
Want to contribute code? Check out the issues and submit a pull request with a fix.

I'm really excited about the immediate future of Jekyll and what it will become in the next 6 months or so and the dev team takes on the issues outlined above. I hope you're as excited as we are to get this project back on its feet.

If you want to chat more or have any questions, you know where to find me.

Email Notifications in Web Apps

Email notifications from web apps have been annoying us for months now. Ever since Twitter, Facebook and other notification-heavy apps began automatically sending notifications to us (alas, without our consent), public opinion seems to have developed a hatred for email notifications. But, I implore you, understand the flipside:

Tweet by Marco Arment

Email notifications in web apps is a way of unifying one's virtual "inbox". Dealing with too many is overwhelming.

Keep email notifications around.

(But, for pete's sake, ask your users whether they want email notifications before you activate them for their accounts.)

An Open Letter to Tom Preston-Werner

I'm a huge advocate of static site generators and have always favoured Jekyll as my go-to static site generator.

Unfortunately, it's fallen out of active development. I've been trying to contact Tom Preston-Werner (@mojombo) about it, but so far: nothing. (To be fair, I have gotten two replies, but they were not productive other than saying that he was looking for new maintainers. That was May 2012.)

So here's my open letter to you, Tom, about saving Jekyll from open-source oblivion.

Tom,

Hope you had a pleasant weekend.

Here's what I wish to see happen with Jekyll:

  1. Start an Org on Github and move the Jekyll repo to that org
  2. Add several maintainers to that org (I'd be happy to help out as a maintainer!)
  3. Add another author or two to the Jekyll gem so that we can gem push and release new versions.
  4. Give at least one other person access to push to the source of jekyllrb.com so that the docs can be updated

Problem I'm trying to solve:

Jekyll is incredibly popular and is an incredibly powerful tool, but is not being actively maintained centrally, so though the world around it is evolving, it is staying stagnant and plagued by the same issues it has been for the last four years.

Solution:

Add maintainers to Jekyll to help deal with issues, push new versions, and update the documentation when you don't have the time.

The great thing about version control systems is that changes can always be reverted.

Thanks in advance for your attention to this problem and willingness to help it continue growing.

Warm Regards,
Parker Moore

iA Writer Needs Print Configuration

I have really adored iA Writer and use the app obsessively on my iPhone, iPad and Mac. It's arguably one of my most oft-used apps. I write all sorts of things with the app: blog posts/ideas (like this one), essays, lab reports -- even the occasional code snippet. It's my writing tool of choice, and I thank Information Architects for writing such an awesome app.

I also print out a lot of my writing. I like to edit by hand with a pen and paper. I like the beautiful typeface that iA Writer provides and the margins on 8.5" x 11" paper (US) are amazing. I've really enjoyed the almost typewriter-like essence of the print-outs which iA Writer provides.

I'd really love some more configuration options for printing, however. While I will undoubtedly hear the argument that iA Writer offers no configuration on purpose, I will argue that the "No Configuration Rule" must only apply to in-app writing, not to the manifestation of this writing in paper form.

The No Configuration Rule is supported by the fact that configuration and modification of the working environment is often a hindrance to one's ability to write awesome content. It's a distraction. But it's a distraction only when writing, not when printing. I'd say this No Configuration Rule thus can only be justified for writing, i.e. on;y be justified for the look and feel of the writing experience in the app.

But that's an argument with too many implications. Let's make it a bit smaller, to the size of a wish:

My only real wish for this app is to allow double-spaced print-outs. That's it. I want to be able to edit my papers double-spaced.

So what say you, Information Architects? Think it's possible? I'd really appreciate it.

A Brief Adventure

I've decided to take next semester off (Spring 2013) to pursue an internship at 6Wunderkinder in Berlin, Germany. I'll be starting work at the end of January and returning to the U.S. around the middle of August. I'm very excited that 6Wunderkinder extended their offer for an internship to me and were down with a 6-7 month internship. I'm pumped to be working with such awesome web and app devs.

So how did this happen? It's a long story that I'll talk about later, but for now I'll give you the abridged version.

In the bleak winter of 2011, I emailed 6W about the possibility of a 3-month summer internship (May, June, July) in 2013. They replied very kindly, basically saying that it was way too early to say whether that was a possibility.

This Fall, I sent them a follow-up email asking if they were still interested. They replied saying that it was a definite possibility and asked that I send along some projects I had worked on. After reviewing my email "project resume", they offered me an interview. Thanksgiving morning, I woke up bright and early to meet Ben on Skype. Great fun, and got to meet Isaac and Alex of the 6W API team, too. Ben followed up with an email offering a second interview.

During the time between the first and second interviews, I decided that I needed a break from my studies - Cornell is a particularly rigorous place and has a tendency to be demoralizing. So it was time for a break so that I could return in the Fall with new energy and vigor. I shot Ben an email indicating my interest in starting to work for them as early as the end of January, and to my surprise, were very interested in having me earlier.

During the second interview, I talked with Isaac and Ben more about what my role at 6Wunderkinder would be and how life in Berlin would look for me. All seemed really cool. When Ben officially made the offer to have me as an intern, I gladly accepted and we discussed logistics.

So there it is! It's amazing what an email can do nowadays when you have congruent interests and a cool, responsive company like 6W.

I'm going to really miss The Class Notes, the Glee Club (no, not like the show "Glee"), and my other friends here, and the ease of college life. That being said, I'm really grateful for this amazing opportunity abroad with a one-of-a-kind start-up like 6W.

Many thanks to Ben Braun, Isaac Wolkerstorfer, Alex Koppel, and the whole 6Wunderkinder team for giving me the opportunity. Thanks, guys!

Israel & Hamas

You may have heard about the recent eruption of violence in Israel and the Gaza Strip. You may have your opinions set, but just hear me out.

So the way the story goes is that Gaza has been firing lots of rockets into Israel and Israel has decided to retaliate by firing its own rockets and otherwise bombarding the Gaza Strip with explosives. So, fire and fire are at work here.

This is wrong. Hamas (the current leaders of Gaza) is wrong and Israel is wrong. There is nothing morally justifiable about what either party is doing.

Many have expressed sympathy with Israel and an acquaintance of mine even posted a video produced by the Israel Defense Forces about why it has the right to retaliate on Facebook. There is absolutely no "right" to kill anyone. No one can justifiably kill anyone else.

Enter: moral excusability. While killing another human being is never morally justifiable, it is often viewed as morally excusable. That is, it is not right to kill another human being, but it isn't wrong (given the circumstances) either. Well, that's bullshit. If something isn't morally justifiable, don't do it.

This eye-for-an-eye thing is getting out of hand. Both parties need to stop hurting each other and begin discussing what can be done to peacefull coexist. Unless Israel kills all the Palestinians in the Gaza Strip, there will never be peace. Unfortunately, it seems like their hawkish Prime Minister, Benjamin Netanyahu, is just about ready to kill off every non-Israeli in the Gaza Strip.

This whole situation is just despicable.

On Grades & the Structure of Higher Education

Higher education is messed up. The incentives for learning and the structure of that learning is all wrong.

So what's this perspective? Well, let's define elements of this proposition. By "wrong", I mean "not conducive to the best mastery of the material" and by "structure of that learning", I'm talking about the overlap of classes — the simultaneous learning associated with taking more than one class during any one period of time. By "incentives", I mean "grades".

Grades

Grades suck. Just about every student who's been evaluated and given a letter to indicate achievement will agree: tears have been shed and jobs have been lost — careers ruined — because of a letter.

At grade-obsessed Cornell University, the grade is the entire reason anyone seems to do anything. High grades are rewarded and low grades are punished. But do grades actually measure the success and mastery of the material, or do they just exist to weed out "smart" from "stupid?" I'd argue that grades say nothing about true mastery. Rather, they say "I can take a test well," or "I can write you an essay you think is good." But they don't necessarily say, "I know this and understand every bit of it." Too often, students memorize but don't truly understand. Grades exacerbate this problem.

Teachers — at every level — should ask more questions which force students to synthesize their knowledge and understanding — and not bother trying to label the "success" or "failure" with a letter. These letters try to boil a student's worth down to an arbitrary orthographic symbol. We, the students, should learn by reading and asking questions. The more time we have alone with the material — for intraspection to develop true understanding — the more likely it is we will achieve true mastery. Until the teachers believe we have mastered the material, we must continue striving for understanding.

Structure

Structure is also a problem. We take up to 6 or 7 courses simultaneously. We ought to focus on just one and work through it until we have achieved true mastery. We must not be distracted by other things. We must immerse ourselves in the topic entirely for an extended period of time.

The simultaneous class system must go. Take a class, perhaps one every three or four weeks, and do not move on until you have mastered the course material. Once one has reached the mastery equivalent to that which the professor believes is true and perfect, then a new topic can be studied. Until then, we mustn't move on — mastery is the highest value of education.

A New System

This new system will guarantee that every student has the same level of mastery and develops a personal connection with the masters and the material. One topic at a time and commitment to mastery rather than arbitrary grades and skewed test results, this alternate system relies on the intuition of the master. Only the master can know when the student has achieved his or her potential.

Incentives are misaligned. Today's schooling is no longer about learning — it's about being told you're learning (often when you're not). It's time we realign incentives and strive to master the material.

Maintaining Inbox Zero

I just finished up reading Matt Gemmell's post on email management. If you haven't read it, you'll want to do make sure you head over to his site and give it a quick read before continuing.

Firstly, I should say that I am a manager, a developer, a web developer and a university student. I get a shit-ton of emails, so don't think I don't know what I'm talking about.

Over the years, I have developed an email attack-plan that works well for me, and I think works well for most people I know. This plan entails a seek-and-destroy method of achieving and maintaining Inbox Zero.

  1. Have a smartphone. Not only are these things super hip, but they're handy as hell for killing off swarms of emails you get throughout the day.
  2. Use your time wisely. Don't twiddle your thumbs while on the bus/train/subway on the way to work. Rather, delete the worthless emails and read through the important ones. Re-mark them as unread until you get to the office.
  3. Leverage the full keyboard. After the longest commute you've ever had to make, you've deleted or archived the bogus emails, so now you just have an inbox of awesome emails to go. Spend a half hour to an hour to get back to Inbox Zero. As Matt suggests, read the ones from your friends first — they're always hilarious/useful/intriguing/important.
  4. Go through your work emails after you've had a good laugh. You'll be in a better mood when you tell the designer you're working with that they're crazy and you won't come off as such a jerk. Win. Be detailed with these, but be very precise and concise - no one likes a long email.
  5. Next, family. They're usually cute and/or stupid. Send a quick reply ("Cute! Love, Parker") and archive. Boom, done.
  6. Resume your daily work. Do not, I repeat, DO NOT leave your mail client open. You should work without disturbances. Let them emails come in and sizzle a little in your inbox. If someone needs something absolutely immediately, they'll have your phone number and give you a call.
  7. Half an hour before lunch, conduct seek-and-destroy operation burrito sandwich with egg and cheese, i.e. achieve Inbox Zero again. You may want to leave the work emails until later when you're not irritable (you're hungry, remember?).
  8. Eat lunch and laugh at animals making fools of themselves or watch an inspiring TED talk. Resume to work once lunch is over.
  9. Take 5 minutes and reply to those work emails you put off. Resume work.
  10. Half an hour before your work day ends, achieve Inbox Zero again.
  11. Turn off anything on your phone that will remind you that emails exist. No notifications, no automatic push emails, no badge icons. You've left work and now you should spend time with you you care about.

Moral of the story: more frequently going through your emails throughout the work day (but in set times that make sense) is the best route. Three is good enough for me on a normal work day, but it's more like 45 times during the school year. So many freaking emails.

At the end of the day, forget you have any technology whatsoever, cuddle up with schnookums (your retarded cat) and read a novel. What a great day you just had.

Ruby and Rails

So there's been a lot of hype about Ruby over the past several years. For those of you who are interested in programming and programming languages, you heard about it right from the start, as its beautiful syntax and ease of use lured many programmers into its use.

While Ruby is wonderful, it wouldn't be what it is today without the existence of Ruby on Rails. This web framework posed the first real threat to PHP. Rails was powerful and agile, and helped web devs create incredible web apps with incredible ease. The generators that came along with this gem made it possible to get a completely functional website up in a matter of hours, rather than days. That was incredible.

I used Rails on and off, switching between it and CakePHP. I didn't really understand Rails' routes and wanted something like CakePHP's bake functionality which creates an entire scaffold with styling and everything. I didn't object to the un-RESTful CakePHP nature of using just GET and POST requests, as I didn't need the RESTful functionality for any of the sites I was creating. I used Rails for a couple projects, but it always felt like I was coding more than was necessary.

I started working at Think Topography this summer and was tasked with building the new Ithaca Hours mobile web app that would facilitate the use of Ithaca Hours. My boss had always used Rails and suggested that I use Rails for the API end of this project. It seemed like the best choice, given the requirements of the project, and so it began: I dove back into Rails.

Once I wrapped my head around routes and the devise/warden authentication framework, I was truckin'. I was making huge progress on this API and learning gobs of information along the way. I was loving Rails and appreciating its incredible power. I was writing tests in rspec, which was a joy when combined with factory_girl.

I recently worked on a project for Moët & Chandon USA that was built upon the CakePHP framework, and I was not nearly as excited about returning to this framework as I expected to be, given my incredible comfort with the language and the framework.

But my work at Think Topography has changed me -- I'm a Rails guy for sure.