Archive for the ‘Geek Stuff’ Category

Hooked on Source Control

Wednesday, December 10th, 2008

After having used Perforce and Subversion (via Versions App), I am now totally hooked on using proper source controls for my code… Now I can’t function without one… If there was anything I’d learned from working professionally in the past six months, it’s the importance of source control…

Word…

iPhone is the Reason I Wish I Knew C++

Sunday, November 30th, 2008

I knew not knowing the good old traditional c/c++ language would come back and haunt me one day.

The demand for iPhone developers exceeds the supply and I don’t see that changing anytime soon. The going rate for iPhone developers, at least the developers I know and trust, is $125/hour and up. I have some friends who are booked out at $200/hour for the next few months, although $125/hour seems to be the going rate in my network. At that rate, a full-time contract iPhone developer costs $5,000/week and it may take four to six weeks for an application to be developed. Sometimes it will take less and sometimes it will take more. Add to development the other costs – project management, design, QA, and marketing, to name a few. It’s not uncommon to spend $30,000 and up on an iPhone development project. iPhone applications are not cheap.

In this particular case, money is not necessarily the thing I am after, it’s really the excitement and possibility of working on a product I love and use everyday…

Tough Questions

Saturday, November 8th, 2008

A typical conversation with Bryan, my three-year-old….

Me: Bryan, Look. It’s raining.
Bryan: Why is it raining?
Me: Because there’s too much water in the cloud. And when there’s too much water in the cloud, water drops fall and becomes rain.
Bryan: Why is there too much water in the cloud?
Me: Because water evaporates into the air and eventually end up in the cloud.
Bryan: What is “evaporate”?
Me: ….
Bryan: Why is water falling from the sky? Is there a big hole in the sky?
Me: …. Um, no.
Bryan: Is the sky hard (as opposed to soft)?
.
.
.
I need to visit some science 101 sites for kids….

SVN Mania

Saturday, November 8th, 2008

Versions app

I’ve been meaning to set up Subversion for source control on my various projects. After having worked in an environment with tight source controls for almost half of a year, I’ve gotten used to the convenience and peace of mind of having a source control in place. So today I took the plunge and got svn to work with a SVN client, Versions, along with my favorite lightweight code editor Coda, on my MacBook Pro.

Life is good.

CitiMobile, CitiSuck

Tuesday, November 4th, 2008

Firethorn released a pretty cool iPhone app today that allows mobile banking (check balances, transfer funds… etc). But Citibank is simply not ready for this roll out.

First the website on CitiMobile was buggy. Then I found out they don’t service the iPhone. I wonder how much longer I can take their crap before going with BoA or another tech savvy bank in terms of customer-facing applications…

Why am I still banking with them anyway?!

Validated. Professionally.

Tuesday, June 10th, 2008

One of the downsides of working as a contractor doing most of the work at home, alone, was that I never really interacted with my peers professionally. All I had was Google and a few books. So I had to learn and teach myself everything based on what I “read” as best practices. A lot of those learning experiences were trial and errors. But in many ways, this was a good thing because I was a clean slate without the burdens of pre-existing, outdated methodologies an established company may impose on its staff.

So when I decided to take up a “job”, one of my objectives was to find out if what I know is what’s being practiced by my peers. I wanted validation to my methodologies. And I wanted to learn more from others. My new job basically gave me a free reign on most of what I’d like to implement. So I brought with me my methods of client-side development in terms of CSS (and CSS resets), Unobtrusive Javascript programming, semantic XHTML markups, separation of structure, presentation and logic… etc etc. But I still have no idea if there’s more to be learned. Surely there was.

The company decided to hire a technical auditor to audit all the technical aspects of what we do and how we do it. I was thrilled and was really looking forward to learning from this guy. About 15 minutes into my explanation on what I do, I asked if he’d recommendations on how I can improve on what I do. He answered, “Nope. You are ahead of the game. You are doing everything I’d recommend my clients do.”

I was really pleased to be validated by someone who’s job is supposed to magnify and correct inefficiencies and issues. He was surprised I was even using Unobtrusive Javascript programming because so few people even have heard of it, let along practicing it.

So that made my day. Now I know I am actually up to par with the top ranks and I should probably raise my rate. ;)

The Curse of Speed

Sunday, June 8th, 2008

As I am going through the thousands of shots I’ve made in the past few weeks, I realized that the Nikon D300 has made my post production process a nightmare — not because it generated any lesser quality files or colors, but rather the sheer volume of shots I’ve made by taking advantage of its relatively huge buffer — six burst shots a second for a few seconds, and do it abundantly throughout the day — I ended up with hundreds of similar-looking shots I have to go through and decide which ones I want to keep (being as indecisive as I can be)…

Fuji S5 (and previous generation S3 and S2) owners have a saying that “it’s not the number of shots you can make, it’s the quality of shots you capture that matter” And this trip has certainly made that philosophy sink in that much more.

When the D300 and D3 came out, I asked myself if I’d upgrade to them had money not been an issue. Though the D300 is a really solid camera, I now no longer believe the D300 being an upgrade because I just like the files that my Fuji generates more (the film-looking grain, excellent white balance, incredible handling with high ISO… etc). I’ll probably get another Fuji if they ever made a full frame camera. Until then, my next move would probably to get another S5 so I don’t need to swap lenses as often on the field or during sessions.

Strange Week

Sunday, June 1st, 2008

Please bear with me as I go through a series of events that may or may not have anything to do with each other — all in one post. I still think an entry per story/event is still the best way to approach blogging. But time seems to keep running out on me these days, hence the “mega posts”…

So I finally got to meet ????????Sebastian in person after having read and left messages on each other’s blog for seemingly eons (in blogsphere time, that is). We had a series of very interesting and only-if-we-had-time type of conversations over dinner in San Francisco. How I enjoy intelligent conversations…

On my new “job”, one reason I took the job was so that I could finally jump into Flash and Flex full time. But all that hope is all but gone now. Due to the relative shortage of qualifying candidates the company needs to develop the project using Flash/Flex, they’ve decided to switch strategy to meet the internal deadlines using JSP, CSS, Javascript, Ajax with a dash of Flash. It’s good and bad news all rolled into one. On one hand, I am glad they made the call because this means my existing skills in CSS and Ajax would make the development process a lot more rapid. But I am also disappointed that I won’t be leveraging the project to further develop my Flash/Flex skills. But I guess this is all good considering the baby girl is arriving anytime this week now… Lack of sleep makes learning new things an impossible task.

Also, given my relatively unique combination of skills and experience in interaction design and programming, it seems like both the design and tech teams are trying to leverage my strengths to their own advantage in all-but-invisible company politics. OH Crud…

Then came Thursday morning — just another normal working day for me. But that morning almost became a traumatic day for me as I, along with dozens of other Caltrain passengers, witnessed someone almost got run over by the very Caltrain I was supposed to catch for work. Luckily the train missed him by about 1/3 of a step, ending up clipping him on his right temple (at which spot blood seemingly came pouring out nano seconds later). The train would’ve crushed him if only he’d accidentally stepped into the track 1/10 of a second earlier….

The blow knocked him almost unconscious. Unable to stand straight, he almost fell towards the track, which would have been fatal. Fortunately a couple of cyclists were close enough to drag him away from the train, which was just about to come to a complete stop. Everyone was shocked and froze as if nobody believed this was happening — me included. I called 911 and was told by the dispatcher that a flood of calls also came in at the same time about the same incident.

The fire fighters were the first there at the scene along with its own medic unit. Then the police came one after another (3 on motorcycles with 2 others in 2 separate cars). The ambulance, of all services, came the last — looooooooong after the fire fighters arrived. Caltrain also dispatched a supervisor almost immediately, arriving after the ambulance.

It was a shocking experience that reminded me of the collapsing of the NYC Twin Towers on 9-11, of which I also witnessed as the towers crumbled…

I learned a few useful things having watched the entire event unfolding: (a) Fire fighters are awesome. If anything, they need more funding, not to be cut back! They were the first responders and the very last to leave besides the Caltrain supervisors. (b) Police weren’t really all that helpful except to be there to “investigate” what happened. They showed no urgency nor sympathy towards the person who was injured (as I saw a couple of them were even smiling and laughing as they rode away on their motorcycles — the little respect I had left for the cops was diminished that much more). (c) Look both ways when crossing the road, train track, whatever… (d) Humanity usually shows its best side at the worst of times. (e) Life is fragile. That very well could’ve been me.

Then came Sunday. Grace scheduled two photo sessions for me almost back to back. Now I have around 5,000 photos (along with ones from Missouri) to post process in the coming weeks… And the baby is coming…. and the looming deadlines of the new job… Oh, life…

Survived First Day of Work. Tired.

Monday, May 5th, 2008

So I survived my first full day of work. Though I spent most of the time reading the Internal documentation on the projects, I still felt like I over used my brain for the entire day.

One thing about returning to a full-time job is that I am not working alone anymore. And I get asked questions from time to time, which also helps sharpening my mind a little more. Being able to bounce ideas off of other is an important learning process, especially I’ve hit a certain plateau in terms of programming techniques. I needed to be with other programmers and artists to move to the next level.

Another advantage is I am forced to walk to take public transit (which is slightly cheaper than driving to work). I have to walk 15 minutes to and from the Caltrain station, which is just like when I lived in NYC. This will definitely help reduce some of that fatherly fat around my belly.

So the week will progress on with meetings after meetings in handing off workload to me to start implementation. Good times.

Full Time Employment Again (Almost)

Saturday, May 3rd, 2008

After almost four years of freelancing and eating Bryan’s food scraps, I finally caved in and signed a short-term contract with a local startup as a Flash developer. Since the company is in this super stealth mode, I don’t want to reveal too much about what it is. But I sure look forward to learning some enterprise-level skills after having worked almost entirely independently.

Actionscript has come a long way with v3.0. But I was surprised how fast I picked it up with my first Flash project a while back considering how much I hated Flash. It’s going to be interesting to see how I will be using it in an almost entirely Object Oriented environment using Model, View, Controller concepts — both of these things I actually wrote on my white board earlier this year as my new year resolutions for 2008…

I will probably hop on the “full time” train once I have checked out the potential of the project. I am definitely not going to repeat the same mistakes when I was a full time employee last.

Ah, life.

Hacked, Again

Thursday, May 1st, 2008

My blog had been breached once before with the same attack. But it’s happened again even though the WordPress version being attacked the 2nd time was definitely newer than that previous attack. I hadn’t been on my own blog for weeks. And the only reason I found out was because I installed Firefox 3 Beta 5 on Grace’s machine, and the new Firefox (working with Google) has this new feature that can detect “bad ware” like that.

wiredatom attacked

Basically someone “somehow” inserted a line of Javascript code into a couple of my blog entries and pretended to be “statistics” code. But in reality, it’s a script that behaves as trojans, presumably for Internet Explorers…

After some troubleshooting and searching, I removed all the codes and requested my site to be reviewed by Google in order to be considered safe again in its database…

More Firefox Graphics Fun

Tuesday, April 22nd, 2008

Continuing my following of Firefox’s beta graphics, here’s another for Firefox 3 Beta 5.

firefox_3_beta5_graphic

It can be seen here.