How the WWDC Inspired Me

This year’s WWDC has come and gone. However, the inspiration and impressions that were taken away from my experience there will be long lasting. I’ll break down the source of this inspiration into three areas:

  • Labs and Sessions
  • The Human Factor
  • iWalk

Labs and Sessions

I have attended, virtually and in-person, many technical talks and presentations over the course of my career, but Apple sits at the top of the podium. Some developers made the (good) argument that iOS6, under the covers is an incremental upgrade for developers. Many of the sessions were summarized as:

Yea, you know all that manual code you had to write in iOSx…we went ahead and took care of that for you. Oh and this cool feature is now only less than 10 lines of code pops collar.

While this statement is pretty accurate I took away far much more. Though I can’t go into specifics because of NDA on the particular talks, what I can say is that the awesome engineers made a lot of effort to not just handle repetitive and vastly differently implementation of code, but also think of numerous edge cases and handle them with grace. The added layer of pazzaz was that if you need to override anything and “truly” customize a framework component then you have that option. I can’t express what an accomplishment that is…to be given a framework/set of tools that does all of this. It is an excellent example to develop my own code. It is no secret that good/great iOS developers aren’t cheap. We shouldn’t be. This is a highly sought after skill that requires a ton of work to pull off correctly. But where do the experts go to get advice or help? We go to the source…Apple! In most cases this is done through Developer Support, but during the WWDC you can take your code, design or ideas and sit with an Apple engineer to go over what you have written. In order to maximize my time during the labs I picked two very specific topics that I wanted to discuss. The first dealt with CoreGraphics, CoreAnimation and MapKit. A lot of people will bring code that is breaking to the table. My particular questions didn’t have to deal with a specific problem. but more of design pattern implementation. It was good to hear that my methodology and usage is how the engineers themselves would have approached it as well. I was really amazed and grateful to their willingness to help and the general attitude from all the Apple engineers. If they thought they weren’t the best person to answer your question they didn’t just say, “Sorry…good luck”, they went and found someone who could. Just another example to follow from Apple for all developers. This type of attitude is generally found with Mac/iOS developers in the community I am happy to say.

The Human Factor

It was my experience that at the WWDC there were no strangers. It was one of the most welcoming communities/gatherings of like minded people I have been to. I talked with complete strangers while standing the MANY lines, exchanged notes and ideas while in sessions and finally got to meet up with people who I had only conversed with online. This was a great experience. I was blown away when reading my twitter feed with the #wwdc2012 hashtag and seeing the number of tweets from people and organizations who would welcome to public to come and join them at a bar, Denny’s, area of a park or shared office space. When was the last time anyone in any career or social space experience that! Though the #wwdc2012 is an event and experience unto itself #altwwdc had just as much camaraderie. I decided to walk down there on Friday and spend sometime with Appsterdam at StackMob’s HQ. I didn’t know anyone when I arrived, but when I left 2 hours later I had talked with half a dozen developers, met Jana Boruta in person (we had talked over email a number of times), ate some of the best burritos ever and befriended the best French Bulldog ever, Boadie. I loved listening to Victor from TUAW speak, but I think the most influential and lasting moment of the visit lasted just 2 minutes (I had to leave to catch my plan). Mike Lee got up to start a round table discussion about…well anything. As I walked away from the StackMob office I kept going back in my mind to certain words that Mike said. Community, sharing, helping, kindness, positivity. It brought a big smile to my face because it shows the attitude and culture that exists in the Apple community and Apple itself. Everyone in your life you meet, no matter how brief, as an impact on you. Lots of people left lots of small impacts on my life last week. Even the TSA agent leaving SFO. He told me a funny joke

iWalk

One of the earlier days I was there I had a free afternoon so I walked across the street, bought a huge bottle of water and just took off around the city. My dad lived in San Francisco for a bit when I was young so I walked down memory lane and saw a few tourists sites, but I also purposely got lost at least twice. Why? Because that is the only way to find new ideas and experiences. I would stop at random cafes and bars to get a bite to eat and just chat for a minute or two with a random stranger or shop owner. After about 4.5 hours I made it back to my hotel and was absolutely exhausted, but a walkabout that I’ll never forget. Many people have the misconception that developers are just wrench turners who are are emotionless and work in a field that doesn’t have depth. Oh little do they know that those called to this service, and that are passionate about true software development, are in themselves artists who can create beautiful, while functional, aides to our lives. Especially Mac/iOS developers. Yes I said it and will defend that stance with extreme prejudice Walking around and enjoying the solace of the city all to myself helped me think through major design considerations and upcoming app functionality…this wasn’t inspired or given to me by a forum or tech talk, but just being in the city and separating myself from my usual surroundings. Growing up my dad always taught me to be adventurous. Do things that frighten you. Explore places that seem distance or that don’t have a clear path. Though I haven’t been able to be take the unknown path as often I would have liked in my life I took as many as I could in San Francisco while at the WWDC.

Things End Up How They Start Out

It is a truism that I live by. Things end up how they start out. During Tim Cook’s keynote he talked about about the amazing accomplishments that Apple has had over the past year in regards to sales and engineering, but you could tell that wasn’t Apple’s intrinsic motivation. The focus is, and has always been humanity. Creating beautiful products and services that enrich our lives. For some of us it is implicit and helps our daily lives be a little more productive, but for others showcased in the video it is very EXPLICIT. With the products that Apple has created they get to experience life in a tangible way that medicine, science, government or most other technologies companies haven’t to date. When you think about that in terms of humanity, what Steve Jobs and the rest of Apple have done really did change to world….one small dent in the universe at a time. There are many people that I didn’t get to meet that I really wanted to because of time and schedules. I wanted nothing more than to shake their hands and say thank you. Thank you for all that you give to Mac/iOS developer community through assistance, open-source projects and amazing apps. Maybe next year! It is truly inspirational.

Inspiration from Bill Atkinson

It surprises many people that I talk to who aren't developers when I mention other developers from the "early" days that really inspire me.  Much like how musicians, artists, writers, actors, etc. today will speak of their predecessors who inspired them.

The story that completely changed my thought process on programming and technology in general was that of "Rounded Rects Are Everywhere!".  Today people just assume that technology is easy to create and Adobe Photoshop, Pixar Animation, and Facebook have always existed.  Alas, the trail blazers before us were truly revolutionary and in my case what inspires me are those rounded rects.

The story goes that back in 1981 Bill Atkinson created the functionality in QuickDraw that would draw ovals and circles very quickly.  I know it doesn't seem glamours with technologies like augmented reality and facial recognition, but back then it was way ahead of it's time. Remember, that most processors in '81 didn't have the ability to process floating point values. So the question becomes if you can't use square roots (resulting in floating point values) how to do the necessary calculations. Multiplication/division…yea I guess you could, but the 68000 processor was still pretty slow at that.  Bill figured out a way to do it with just addition and subtraction.

"Bill's technique used the fact the sum of a sequence of odd numbers is always the next perfect square (For example, 1 + 3 = 4, 1 + 3 + 5 = 9, 1 + 3 + 5 + 7 = 16, etc). So he could figure out when to bump the dependent coordinate value by iterating in a loop until a threshold was exceeded. This allowed QuickDraw to draw ovals very quickly."

As excited as Bill was and demoed this to Steve Jobs, he was posed the question about making rounded rects.  Bill tried to dismiss the idea as a waste of time, but Steve showed him how prevalent rounded rects are in everyday life.  Later that afternoon Bill returned with the solution.  As such rounded rects have since become indispensable.

What I take away from this story and why it inspires me so much is Bill didn't throw his hands up when faced with a programming limitations, but thought outside the box and used a very straightforward solution to solve a seemingly complex problem.  The second aspect that I take away is to be inspired by what is around us and that we use everyday and to incorporate that into application design.