Friday
May102013

List Posts

I know that everyone loves list posts, like "5 reasons your pet is trying to murder you" or "7 sexual positions that include wrapping paper." Here is why:

1. They are cheap and easy to throw together. They require very little research. Did you know that 99.7% of all blog posts don't include any original content? It is true. You can look it up on the internet (you won't).

B. People love them. They drive the page views. Even better are the meta "top 10 ways to get page views" posts. Spoiler, reasons 1 - 10 are write content for people who needed a break from farmville.

III. People love to fight about them. Throw comments on that shit, and watch the same 20 people argue about your post, "5 vegan water recipes." Advertisers love serving thousands of ads to the same 20 people who won't ever click through, unless it is an accident. You did disguise one of your ads as a list item right?!?

Four. If you really have a good list like, "17 photos of that make you forget you will die one day," you can break it up over 17 page views (18 if you can do an intro page). This is the ultimate in list making, because you can claim your page views are necessary because it saves your readers time. Don't worry about the fact that your readers get to download all your shitty html and ads 18 times, which will probably double or triple the total payload.

As you can see lists are awesome. Some people worry that by dumbing down their content they will only attract dumb readers. You won't have to worry though you will be too busy cashing your affiliate marketing and ad sense checks.

Wednesday
Nov142012

Election results

I will start by saying I don't understand why people are so drawn to watching election results. Essentially, you are just watching people read numbers. Then, while they aren't reading numbers, there is a bunch of speculation that will all be proven true or false within 24 hours. That said, like a moth to the flame, I too got sucked in by last weeks election results. This year was a bit different for me than 2008. I didn't have cable so my I flipped between news sources with my Mac and my iPad.

I used gigaom's election guide. I tried almost all the sources, here is my short review of them.

CNN was by far the worst of them all. There live coverage was nonexistent and the view clips I saw were not live.

ABC had decent coverage, but some of their talking heads were rough.

Wall Street Journal was ok coverage but the feed was super laggy. It wasn't tolerable so I moved on after a couple tries.

Al Jazeera had decent coverage, but it was a little over produced. I feel like they were trying to hard to fit in with the other 24 hour networks. I don't watch a lot of any news so this could be way off base.

The New York Times had good coverage but suffered from some laggyness as well.

PBS had great coverage. I ended up watching this almost the entire night. Very few breaks, good analysis and no extremely crazy people.

Politico had a fantastic map where you could dig into a state and figure out if your favorite candidate was going to win a senate or house race that nobody seems to care about. (Go Heidi!)

Comedy Central as usual had the Daily Show and Colbert Report live. Those shows were not as exciting as they usually are, because the race had been called by half way through the Daily Show. The sad part is that they probably wrote 5 shows worth of material depending on how the night was going.

I have to say I was able to airplay everything through my Apple TV easily. I thought for big live events like this I would have missed cable, but between this and Hurricane Sandy I find myself quite happy with my decision.

Friday
Aug242012

Choose Wisely

Doing nothing is amazing. I don't mean staring at a wall. I mean, having enough time to do what you think is valuable.

The last couple weeks I have been between contracts. This means I have been able to choose what I do each day. Here are just a few things I have worked on:

  • Prepped my talk for CocoaHeadsDC
  • Studied the source code of OCMock
  • Automated some tedious tasks I had been putting off
  • Prototyped some Mac and iOS apps
  • Researched Cocoa APIs (new and old)

I think it is easy to get caught up in the constant cycle of deadlines. Sometimes when you take a step back, you realize how much you have been putting off. Next time you have a lull in your schedule do something awesome instead of scrambling. Even if it doesn't benefit your career, you will be a be happy you did it in the end. I know there is pressure to make money, but sometimes you just have to unwind.

But just remember these opportunities only come around once in awhile. Don't squander them.

That said I am actively seeking contract work. If you, or someone you know, needs an experienced iOS developer don't hesitate to drop me a line.

Saturday
Jul142012

Convincing Non-Technical Managers that Refactorings are Important

Keeping a code base maintainable is one of the most important part of any medium to large project. Sometimes, justifying it to management and getting it put on the schedule is difficult. One of the reasons that managers are hesitant to do this is because they don't typically understand the cost/benefit tradeoff. It is your job as an engineer to explain why it should be done now.

In the past I have tried using a real world analogy. One I have recently used is types of surgery. For instance, if you have something that could help a lot and is fairly low risk you might compare it to arthroscopic knee surgery. There are still risks, but if you are going to have that code base for a while it is worth taking the risk. The reason I like this technique is everyone has a body and even if they don't know how hard a surgery is, they can perceive of the benefits. The reason it isn't perfect is it still doesn't do a good job explaining the problem you are trying to solve. You can still be the doctor trying to sell a service the patient doesn't need.

Another thing you can do is try to point out pain points your manager has and try to explain how a specific refactor will ease that pain point. For instance, if you have a piece of code that gets frequent updates and those updates take longer than you think they should, it is likely that you could convince your manager to spend some time to make future updates quicker. Make sure if you use this technique that you are fairly confident that you can make the refactor and future updates will indeed be faster. If you don't deliver on this, you won't be given as much leeway in the future.

Another major pain point managers face is software quality. If you spend a lot of time fixing things that should not be broken, you might have a good candidate for refactoring. This is similar to the time saving approach. You can say that we won't have to do this work twice if we do this refactor. In addition to that, there is the obvious improvement to your company's image when you are producing higher quality software the first time.

Throughout my career, I have had managers that mostly let me refactor things when they were needed. There have been times when they needed stuff done because of pressure on them from their bosses. It is important to be sensitive to their pressures too. Just explain to them your position and make sure you are always putting it in terms how how you it will be helping them. Sometimes being a good engineer requires some empathy rather than raw talent.

Friday
May252012

Layoffs not a problem, more of a blessing

This week HP announced it would layoff 27,000 employees by 2014. I am sure some people are upset by this news. But I take a different view. This gives people the chance to examine if they are where they should be. For instance, if you are in the printing or PC division at HP, you should probably refocus your career or take the early retirement they are sure to offer. If you are in one of the core products HP is going to be focusing on, you need to decide if you think HP can succeed in that space.

No matter how HP handles the layoffs, I applaud them for making a decision. Execution on a vision is difficult, but I believe HP has taken a decisive first step. Let's hope for their sake they can continue executing.

If you have been recently layed off, I am truly sorry. I know this will be a difficult time. Try to take this opportunity to refocus or do something completely different you have always dreamed of.