Kai Yen is a technology aficionado with an inherent need to understand how everything works. Absolutely everything.

Loading tweet...

Loader
It’s not like I was doing anything on the computer.

It’s not like I was doing anything on the computer.

Tulip time in NYC! #nyc #tulips (at 73rd Street and Columbus Avenue)

Tulip time in NYC! #nyc #tulips (at 73rd Street and Columbus Avenue)

Something great about trees with no leaves. (at Central Park - Sheep Meadow)

Something great about trees with no leaves. (at Central Park - Sheep Meadow)

Midtown oasis. (Taken with Instagram at 53rd)

Midtown oasis. (Taken with Instagram at 53rd)

Finally got my raspberry pi.  Love it! (Taken with Instagram)

Finally got my raspberry pi. Love it! (Taken with Instagram)

Walk up to the reservoir. (Taken with Instagram at Central Park - South Gate House)

Walk up to the reservoir. (Taken with Instagram at Central Park - South Gate House)

Responsive Design

I recently took a deep dive into responsive design only to find the water really murky just below the surface.  It’s been a frustrating but strangely rewarding time trying to embrace the gospel of responsive evangelists such as Marcotte and Wroblewsky while exploring immature but quickly evolving tools that attempt to work around inherent limitations with even bleeding edge versions of HTML and CSS.

One key thing I’ve learned is that the mobile-first approach is brilliant, but a lot harder to bring to life than it sounds.  This is true for all aspects: ux, design, content, programming.  You name it, and it’s 100x harder.  You could blame the complexity on a lack of good tools, but also that it adds an additional dimension to traditional web design that forces you to rethink everything you know about the web.

If I thought writing about responsive design would make it easier, I would keep going.  Rather, I’ll get back to doing.

-kai

Buy more memory

Just in case you didn’t realize (like me) that 8gb of DDR3 memory is going for under $40…  Buy more memory!   There’s no better bang/buck than that for speeding up your computer.  

Snow Leopard DNS fix

Sometimes when I wake up my work MacBook Air running Snow Leopard, DNS is broken.  I can go to a terminal window and ping things by name, but neither Chrome nor Safari can resolve any DNS names.  I figured out you can just kill off mDNSResponder and it will respawn itself and DNS will be working again.  Like this:

sudo killall mDNSResponder

It happens enough that I wrote it into a little app.  If the above command works for you,  you can download the app, SnowLeopardDNSFix, here.  It might work for you if you have the same issue in Leopard or Lion.  It’s certainly not going to hurt.  Just drop it into your Applications folder and then drag it to the dock.  It’s going to ask you for an admin password as that’s needed to kill processes not owned by you.

If you care, the app is just one line of AppleScript that does this:

do shell script “sudo killall mDNSResponder” with administrator privileges

You could recreate the app yourself using the AppleScript editor in about 30sec if you were so inclined.

Mac OS X Lion Audio Fix

After I upgraded my 2011 MacBook Pro to Lion, I started having audio problems when either plugging or unplugging headphones.  Audio just stops working and won’t come back until I reboot.  I figured out that you can just kill coreaudiod to bring audio back.  I happens to me enough that I created an app to fix the problem so I can just put it in the dock.  You can download the app, LionAudioFix, here.  Just drop it in Applications and then drag it from there to the dock. 

Node.js opens up an entirely new model for architecting and developing massively scalable web apps.  One language for the front-end and back-end, JavaScript, with an efficient, event-driven model.  My main advice… build your back end as an API, and write your front-end as if it’s a mobile app.  Not only will your app scale incredibly well, but you’ll also be able to iterate on a dime without breaking anything.  You’ll thank me later.

Node.js opens up an entirely new model for architecting and developing massively scalable web apps.  One language for the front-end and back-end, JavaScript, with an efficient, event-driven model.  My main advice… build your back end as an API, and write your front-end as if it’s a mobile app.  Not only will your app scale incredibly well, but you’ll also be able to iterate on a dime without breaking anything.  You’ll thank me later.

Just installed Myn’s Warm Z ROM on my EVO today.  I like it.  We’ll see how battery life is.  If it’s not all that, I’ll likely first flash a netarchy-toastmod kernel to see how that changes things.  Sense 2.0 is definitely an improvement over 1.0.  I’m still clinging to Sense ROMs even though my gut is telling me to go CM7 (or other AOSP).  

Just installed Myn’s Warm Z ROM on my EVO today.  I like it.  We’ll see how battery life is.  If it’s not all that, I’ll likely first flash a netarchy-toastmod kernel to see how that changes things.  Sense 2.0 is definitely an improvement over 1.0.  I’m still clinging to Sense ROMs even though my gut is telling me to go CM7 (or other AOSP).  

I feel like I’m the last geek in the world to discover Redmine.  How could this have escaped me for so long?  And, why isn’t there a clone in PHP?!?!  Maybe there’s something to this Rails thing.  

I feel like I’m the last geek in the world to discover Redmine.  How could this have escaped me for so long?  And, why isn’t there a clone in PHP?!?!  Maybe there’s something to this Rails thing.  

I’m a terrible photographer, but when I see something amazing I grab my phone and try to capture it anyway.

I’m a terrible photographer, but when I see something amazing I grab my phone and try to capture it anyway.

With IE9 out now, it begs the question, “will IE7 (or IE8) become the new IE6?”

With IE9 out now, it begs the question, “will IE7 (or IE8) become the new IE6?”