“It always takes longer than you expect, even when you take into account Hofstadter’s Law.”

Hofstadter’s Law (via)

“It’s been cool to see so many Flash sites work on mobile devices. However because there is such a variety of Flash content out on the web, it’s important to understand that not all of it is going to run on devices like the Nexus One, both because of lower hardware capabilities of devices and because of user interface design.” - source

Then why do it at all ? If Flash had one thing going for them, it was the “we-run-on-all-platforms”; now it turns out they’re like Java. They do run on every platform but the definition of running varies wildly.

“If sleep doesn’t serve an absolutely vital function, it is the greatest mistake evolution ever made.”

“Great minds discuss ideas; Average minds discuss events; Small minds discuss people”

Eleanor Roosevelt
“We are at the beginning of a significant change in the industry, and I believe that ultimately open platforms will win out over the type of closed, locked down platform that Apple is trying to create.”

Go: Quickly to your projects


If you’re reading this, you probably already know that I’m:

a. A fan of Terminal.app

b. A fan of Oh-my-zsh

Now a and b got even better, thanks to a little function that helps me cd directly to my projects. I’ve called it go and it’s largely based on the work of @atog (he made the function without the autocompletion) and the rake-completion in oh-my-zsh (I’ve largely copied/stolen/adjusted their code to fit mine).

Look for it here

It’s not the prettiest of functions but it is a handy one.

UPDATE: Be sure to look at the comment by @defv his script is even sweeter (no temp file required)

The intrusion of ads into my stream seems like a fairly small issue overall. I’m used to having my personal life interrupted by branded content from commercials on TV, to billboards on the bus my son and I ride to school, to Facebook and Gmail ads next to my personal correspondence.

On its own, I’m not sure the Twitter ad plan will make that big a dent in a world that is already so heavily sponsored.


Keyboard Macros: The greatest feature you’ve never used.


You might have read my previous post on podcasts and wondered how much time I’ve spent creating that list with its URLs and short descriptions etc.

Fortunably/regrettably (depending on wether you liked that post) this is a matter of minutes thanks to the wonderful invention of Keyboard Macros (available in Textmate and Emacs and probably others).

So if you’re willing to play along and learn something that will save you time (promised) when working with text, please be so kind to copy the text in this file.

In case you’re curious that’s the result of selecting my podcasts in iTunes (pic), copy and a paste.

Selected podcasts

I’m assuming you’ve pasted my text in your favorite editor (Emacs will get you bonuspoints).

Emacs

M-x kmacro-start-macro-or-insert-counter (bound to F3) to start the macro

M-x kmacro-end-or-call-macro (bound to F4) to stop/call the macro

Textmate

Take a look in the Bundles-menu-item, look at the shortcut for starting a Macro, memorize it (you can do this entire thing without ever touching the mouse, think of the kittens!).

Bundle Menu

Let’s dig in

(I’m assuming your caret is on the first line of the file, if it isn’t please do so)

The keyboard commands you need to hit:

Emacs Textmate What am I doing?
F3 Alt-Command-M Start recording the macro
C-a Position caret a beginning of line
Press # two times Typing 2 hashes
C-s (incr search) Command-F Looking for the tab char

Since the text is delimited by tabs, we need to look for the tab character to move our caret along for our next action. In Textmate we can do this by using Find with a regex

Find with regex

In Emacs we can do an incremental search and enter a tab by using the quoted-insert command (bound to C-q), so C-s C-q tab will do the trick. Great! We’ve found the tab character, moving on.

Emacs Textmate What am I doing?
Press # two times Typing 2 hashes (to end markdown title)
C-d (two times) Forward deletes the next two tabs
Press return Moving to a new line
Press > once Creating a markdown blockquote
Command-F C-s (incr search) Looking for the tab char (remember last time)
C-d Deletes tab char
Return Moving to a new line
Type `[link](` Creating markdown link
C-e Move to end of line
Type `)` Ending the link
Press returning Adding another line
C-n Moving caret to the next line
F4 Control-Command-M Stop recording the macro

Phiew. Glad that’s done. What we’ve done now is created a Keyboard Macro, think of it as a small program defined by keystrokes, every keystroke you press in a macro is a command. This way you can quickly create throwaway string manipulation programs.

Knowing your way around a keyboard is pretty vital to the whole damn operation, so (this might come in handy).

Now to execute the “program”.

Emacs Textmate What am I doing?
F4 Command-Shift-M Executes the macro.

Now repeat this step as many times as necessary. See what we’ve done, isn’t that almost indistinguishable from magic.

Finished result

Notes

  • It’s always handy to start a macro with a C-a to know exactly where you start.
  • If you mistype, just undo and move on. The macro will do this undo each and every time, but it’s a program; it won’t care.
  • Keyboard shortcuts are your friend, learn them.
  • This isn’t just for humongous amounts of text, it will work wonders on lists etc. as well
“As anyone who uses MS Word will tell you, software that goes out of its way to be extra helpful often turns out to be a hindrance.”

Damn skippy. via

Podcasts


Ever since I discoverd podcasts I haven’t bothered complaining about my commute. These are the ones to which I’m currently subscribed.

Entertaining

Mark Kermode and Simon Mayo’s Film Reviews

Mark Kermode discusses the latest film releases with Simon Mayo. Lively, controversial and unmissable movie discussion. Broadcast live on Fridays at 2pm on BBC Radio 5 live. link

Basically this is a movie review show, each week they go throught Britain’s top 10 at the box office and review the upcoming movies. This has “boring-as-hell” written all over it, except it isn’t. If you take anything away from this list, let it be this one. If you like movies and don’t mind and an opiniated reviewer (with big hands) bookmark this and enjoy it. And hello to Jason Isaacs.

The Bugle - Audio Newspaper For A Visual World

Great Britain and the United States of America, two countries divided by the once-mighty Atlantic Ocean. However, John Oliver and Andy Zaltzman, fully-qualified Grand Masters of Satirical Jabber, will bridge that watery rift through the healing medium of link

Satirical look at current events and politics. I stopped reading political news because the Bugle’s version is better.

Jonathan Ross

Weekly highlights from Jonathan’s Saturday morning show on BBC Radio 2: Top name TV, film and music guests, plus Jonathan’s unbridled wit. link

This one is going to stop in a few weeks, as Jonathan Ross is leaving the BBC, Jonathan might qualify as the worlds worst interviewers as he’s consistently talking more than his guests, but when you can talk like Jonathan that’s nothing to worry about.

The Pipeline

The Pipeline is an interview show hosted by Dan Benjamin, talking with people who create things. Guests include Zeldman, Kottke, Vaynerchuk, Coudal, Mann, Siracusa, and more. link

Dan Benjamin interviews internet-celebrities. Only listened to the Kottke one but I’m hooked.

Scott Mills Daily

A daily slice of Scott, with more silly features, crank calls and Oh! What’s Occurring?, taken from his show every day on Radio 1 from 4pm to 7pm. link

This is my backup-podcast. If all the other haven been listened to I can safely fall back on this one, mindless chatter and some games. I’m a fan.

The Film Programme

Interviews and analysis from the world of cinema. Francine Stock talks to directors, writers and critics about the latest film releases, classics on DVD and movies on television. link

This one I don’t follow religuously, depends on who the guests are.

Technical

The Ruby Show

Once known as Rails Envy, The Ruby Show is the most popular and longest running Ruby and Ruby on Rails podcast, bringing news and discussion about the latest topics in the Ruby community, hosted by Jason Seifer and Dan Benjamin. link

Quick way to keep up with things in Ruby land.

The Changelog

The Changelog is a blog & weekly podcast that profiles what’s fresh and new in Open Source (FLOSS). Open Source moves fast. Keep up. link

Some good technical shows.

Late Night Cocoa

Late Night Cocoa is a podcast for novice and experienced Cocoa Developers. Each episode we interview a Cocoa developer to discuss a specific aspect of Cocoa Development. link

I’ve been listening to this one since they first came out, don’t really like the new format but still recommended to learn a bit on Cocoa.

Pragmatic Podcasts

Guiding You From Journeyman to Master link

I mostly skip this but the manage to produce a few nuggets once in a while.

Hanselminutes

Hanselminutes is a weekly audio talk show with noted web developer and technologist Scott Hanselman and hosted by Carl Franklin. Scott discusses utilities and tools, gives practical how-to advice, and discusses ASP.NET or Windows issues and workarounds. link

Started listening to this when he had a mac developer on the show and somehow forgot to unsubscribe, topics mainly include .NET, windows and more shenanigans like these. The stackoverflow-episode was good though.

The freezer

Sadly these shows seem to have stopped.

The Talk Show

The Talk Show with John Gruber and Dan Benjamin. link Gruber vs Benjamin. Nuff said.

The Rissington Podcast

A podcast about the web and other stuff link

Lovely use of English language, very rarely any real technical content but I liked it.

Stephen Fry’s PODGRAMS (Audio & Visual)

Stephen Fry, British actor, writer and director presents Stephen Fry's Podgrams. link

Listening to Stephen Fry is always worth it.

Core Intuition

Daniel Jalkut and Manton Reece discuss Mac programming, independent development, Apple news, and more. link

Mac devving.

Russell Brand

The Russell Brand show has finished and there won’t be any more podcasts from this programme. Thanks for your subscription. To find more podcasts from Radio 2, go to bbc.co.uk/radio2. link

I hated this the first time I heard it, then had to listen to it a few times in a row and I was hooked. His last episode was a team effort with Jonathan Ross in which they managed to upset Britain and Russell was fired from the BBC and Jonathan had to issue public apology. It was epic.