I’ve always been envious of the photographs of so many of my friends. Tiff, Shawn, Marco, and Dave especially have a phenomenal eye for pictures. I’ve long wished for the ability to take a photograph as well as they can.
This morning, I noticed a lovely sunrise on a slightly overcast day at the beach. I grabbed our O-MD E-M10 and ran down to the water. I couldn’t describe what precisely it was I was trying to capture, but I was sure I’d know it when I saw it.
I started by placing the camera in aperture priority mode, as I typically do. I just couldn’t quite get things the way I wanted though.
I swapped to full automatic, and that didn’t help either.
I spent a moment on shutter priority, but that, too, didn’t get me 100% of the way.
Frustrated, I got bold, and leapt into the unknown. I switched to full-manual.
This is the result:
I’m pretty pleased with myself.
I didn’t set out wanting to take a great picture in manual mode; I just set out to take a great picture. Since I’ve been taking pictures with this camera for nearly a year now, I’ve built up more and more confidence over that time. Thanks to just being patient, and trusting my instincts, I was able to, well, level up my skills.
As it turns out, there’s no shortcut to lots of practice, and time.
It’s only a matter of time before I’m known as that feels guy.
Anyway, the show is great, and unlike most things I’m a part of, short. You should check it out, and subscribe.
For the C# developers out there, today I’ve open-sourced a utility project
I wrote a few years ago. It’s a WinForms app called
and its purpose is to make it easy to get the right combination of
BindingFlags together by way of trial-and-error.
For those that don’t know C#, it allows for really robust reflection. The APIs are very well thought out and really easy to use. Objective-C allows for much of the same introspection — and more — but the API is C-based and, to me anyway, feels comparatively clunky.
BindingFlags are used in many of the
to signal to the runtime what sorts of members should be included as it
performs introspections. Most notably, should only
public members be
included, or also
private as well?
static members be included, or only instance?
While not conceptually difficult, I find myself always fumbling about trying to find the right combination of flags to use. This little app has a sample of nearly any situation I’d run into on a regular basis, including inheritance. By fiddling with the binding flags, I can see what kinds of members are returned.
I thought it’d be useful for the C# developers out there, so I’ve put it on Github.
In 2001, after my freshman year of college, my family and I visited Disney World. As it turns out, it was our last true vacation as a family unit — before girlfriends, wives, children, and a vast geographical separation between us.
At the time, and continuing for years after, Disney was doing a
cash grab promotion wherein you could purchase a small tile
that would be mounted upon one of many massive pieces of granite. These granite
blocks would be placed in the space between the front entrance of Epcot
and Spaceship Earth. This program — and the resulting attraction
— is called Leave a Legacy.
My parents decided to purchase a tile; ours had all of our names within the outline of Spaceship Earth. We never saw the actual tile at the time, but we were mailed a sheet that included “coordinates” of how to find it within the many granite stones that comprise the Leave a Legacy attraction.
In 2007, for our honeymoon, Erin and I went to Disney World, and we visited the tile. It was a novelty, but we really enjoyed getting in touch with my family in 2001.
In 2013, for Erin’s 30th, I surprised her with a trip back to Disney, and we returned again.
This year, Erin and I attended a wedding in Florida, and decided to make a vacation out of it in the week leading up to the wedding. Since we were going to be renting a car, and only a couple hours from Orlando, we figured we’d spend a couple days in Disney World.
The second day, we returned to my family’s Leave a Legacy tile. This time, however, it was a little bit different.
Fourteen years later, the legacy continues.
Many moments in parenting — too many — are inscrutable, terrifying, or frustrating. Some moments are simply humbling. Bringing my son to the tile that my family bought when I was still a student, over a decade before, was amazing.
But the worst offense of all is this: I can see no way to invite people to follow us on Connect. I can share the link. I can even tweet about it. Yet there’s no way to know how many followers we have, encourage people to follow us, or directly engage with anyone who hasn’t already purchased a song from us on iTunes. That feels broken. Somehow people were able to comment, which is great, but it makes me sad that I feel no sense of… well, connection. And I really, really want that connection.
He goes on:
As an artist, I want people to listen to my music. In the short term, Connect’s one and only job is to make my audience feel like I’m listening back.
It’s super trendy to hate the Dave Matthews Band. For those that are my age, DMB was popular when we were in high school or college. The band represents — for many — youthful indescretions and poor taste.
My favorite band for quite a few years, I feel that the Dave Matthews Band is, as they say, Unjustly Maligned.
Antony Johnston asked me to join him on his podcast about defending the indefensible. We focused largely on the album Before These Crowded Streets (iTunes, Amazon, Spotify), but discuss all factors of Dave Matthews Band.
Top Gear writer Richard Porter:
If the idea couldn’t pass muster in the office, in particular at the hands of chief scrutineer Clarkson who worried about this stuff more than anyone on the team, then it didn’t happen. Case in point, we once had this notion that we would re-invent the fire engine. Why were we doing that? Because it seemed like they were too big and too slow and therefore took too long to get to emergencies. The solution was obvious; Top Gear would build a small, high performance fire truck.
The trouble is, if you make a fire engine smaller there’s no room on board for all the ladders, hoses and burly men it needs to do its job. So it has to be big. And then it can’t get through gaps in traffic. So you make it smaller. And then it can’t do its job. And then…
We sat in a meetings for hours debating this round in circles before concluding with heavy heart that the ideal design was a fire engine, as in the sort we already have. The whole idea was thrown in the bin. It would have been easy to have plugged on simply for the sake of seeing Richard Hammond trying to fit a massive ladder onto the roof of a tiny van, but really we’d have been doing it purely for the jokes and, much though it may have seemed otherwise, such brazen comedy chasing was never enough for Top Gear.
Link via Horace Dediu
Some people, often those that aren’t sports fans, have described Apple as their “team”. It’s the group they root for.
As in sports, sometimes the team you root for makes mistakes, and disappoints you. Other times, it makes you proud.
Today, I’m proud of my team.
Nearly every single day, when I arrive at work, this is what I see:
I thought it was an accident the first couple times I saw it, but no, it’s not.
Every. Single. Day. That’s how this individual parks. Across two spots.
Well, that’s not entirely true. Sometimes he’s backed in across two spots, which, unfortunately, does not make me any less angry.
Every single day, this is how my day starts. I get out of my car, grab my computer and my water bottle, start to walk toward the building, and get annoyed.
I have only seen the driver a couple times, and each time I’ve thought about saying something:
Is there a reason you park across two spots?
Why do you park like such a jerk?
If you’re going to park like a jerk, at least have the common courtesy to do so in the farthest corner of the parking lot.
Would you like me to guide you into the spot tomorrow morning? Doesn’t seem like you’re able to get there without some help.
Since I’m a total wimp, and non-confrontational, I’ve never said anything to him. I just hope the stink eye I’m giving him is doing all the talking.
This morning, as I was reflecting on the most passive-aggressive way to shame this driver into compliance with my rules of parking etiquette, something struck me.
This is no way for me to start my day. Not once. Certainly not every day.
As I’ve gotten older, and busier, I’ve come to realize the same thing everyone at around my age seems to realize: time is our most valuable resource. We should only spend our time on things that truly matter.
This man’s insistence on parking like a tool? Doesn’t matter. The only thing I’m doing by noticing it is wasting my own time. By thinking about it, I’m putting myself in a bad mood before I walk into work each day. For what?
It’s just not worth it.
The traffic I hit on the way home from WWDC? Not worth being angry about. What’s more? In this case, the traffic was caused by a pretty rough accident. One that necessitated at least one ambulance. Someone didn’t come home to their loved ones that night, possibly by no fault of their own.
Don’t I feel like an idiot for firing off that angry tweet now? (Yes, I really do.)
It’s not the turn of a year, so I can’t call this a New Year’s Resolution. It’s better that I don’t — those never work anyway. What I can say is, I’m working on being far more deliberate about not letting thought parasites into my world.
Because when I rid myself of these time sucks, I’ll be ready for what’s really important.
In many ways, WWDC is one of the highlights of my year. I get to spend time with my friends — many of them dear friends — that I don’t get to see often. I get to learn about platforms I’m passionate about. I get to be rejuvenated and find my enthusiasm again. It’s always a blast.
This year brought new ideas and behaviors, as well as a continuation of some of the things I love best about WWDC. My immediate reactions were captured on this week’s ATP, which was recorded Monday evening.
With the conference behind me, I have a few more thoughts.
Last year I wrote about a newfound feeling of cooperation with Apple:
Apple’s tone — or perhaps their spirit — was more than just confidence. It was also about cooperation. The spirit of WWDC 2014 was about doing things together.
So many of the features Apple released were about fixing problems that face all developers in their platform, of all sizes. Improvements in iOS 8 and OS X aren’t about giving gifts to the huge corporations. Smaller developers also reap the benefits of all of the same new features and tools.
This year, that continued, but in a new and unexpected way.
I had the pleasure of attending The Talk Show Live this year, as I have every year I’ve been to WWDC. It’s always a blast. Given last year’s guests were so great, no one was sure who would join John Gruber on stage this year.
When Phil Schiller walked on stage, every mouth in the room dropped. The Apple we know doesn’t do this.
As Marco said:
That [Apple & Schiller] agreed at all is a noteworthy gift to this community of long-time enthusiasts, many of whom have felt under-appreciated as the company has grown.
It was a really phenomenal event I was very glad to be able to witness. It meant a lot to me as both a commentator and a developer to see Apple make that step. I hope that Phil’s appearance on The Talk Show was the sign of things to come, rather than a wonderful anomaly.
Apple’s watchOS announcements were a mix of the expected and the unexpected. Developers will now be able to run apps native on the Watch, as opposed to having to phone home to the iPhone for all functionality. This was expected.
Unexpected, however, was Apple announcing APIs to allow for creating third-party complications. They gave me the gift I’ve been asking for. I’m super excited about this, and will be spending the rest of the plane dabbling with some ideas I’m kicking around in my head.
iOS got quite a bit of love — particularly iPad. I’m excited about some of the changes coming to the iPad, though not as excited as some are.
Despite multitasking being quite neutered on older devices, I quickly installed iOS 9 Beta 1 on my beloved but nearly two year old “RetinaPad Mini”. I’ve been playing around with Slide Over and Picture in Picture, and both are excellent. Clearly a lot of work has gone into this beta, and it has more polish than we tend to expect from Beta 1.
A great example is PIP. I made a low-fidelity GIF to demonstrate:
Note that the video will dance up and down in order to prevent the dock from being occluded. Nice touch.
Additionally, iPad now has far more robust support for keyboard shortcuts when using an external keyboard. Though I often travel with my laptop, on occasions when I don’t have my laptop with me, I usually take my iPad with an Apple Bluetooth Keyboard. Having shortcuts like ⌘-Tab will be hugely useful.
The Mac also got some welcome improvements. The forthcoming El Capitan includes a lot of nice touches, such as also supporting Split View, like the iPad. Much in the same vein as the dancing PIP player, El Cap gets touches such as cursor improvements. When you shake your mouse in order to find where your cursor is, it pulls a page from Bruce Banner's playbook and gets quite a lot bigger. Another nice touch.
The new Notes app also looks really impressive, and I’m anxious to try it out, since I’m in many ways falling out of love with Evernote.
Otherwise, El Cap focuses largely on stability and performance improvements, which is welcome.
Despite a terrible taste left in my mouth from the exceptionally awkward end of the keynote, I’m anxious to look more into Apple Music. As a devout Spotify user, I’m not sure if I will find much appealing about Apple Music. However, I do trust Apple in this department, and I’ve heard regularly how great Beats Music is. I’m anxious to give it a shot.
In a lot of ways, this year’s WWDC was the yang to 2014’s yin. Last year brought a grab-bag of new, exciting, and overdue changes. This year, Apple did what they do best: listen, learn, iterate, improve.