Two years in San Francisco

Hi all, last time I posted was on my 30th birthday, a whole 2.5 years ago… I never explained where I decided to go to apply my (then) newly acquired software engineering skills. So here we go. =)

After evaluating possibilities in startups, hedge funds and big tech companies I decided on joining Google. The offer wasn’t the highest I had but definitely competitive, their San Francisco office was a charming brick building converted from an old coffee factory overlooking the Bay Bridge, but most importantly it was one of the ‘things I want to do when I grow up‘ since I was 12 years old (I remember reading about the arcade and scooters in offices).

Highlight of the job: view from my desk. Some days at dusk, the bridge directly reflects the sunlight and turns golden, along with the shiny glass windows on Treasure Island in the background:

Sketch from workstation

To fully embrace city life, I rented a tiny (but absurdly expensive) studio apartment in a cool looking high-rise building that’s a few minutes walk from the office. For the very first time, I acquired a few physical items from designers I’ve always admired (Chairs by Charles Eames and Arne Jacobson, Fortuny Pallucco floor lamp, Philippe Starck’s spider lemon squeezer and Zaha Hadid cheese grader).

Anyways, so everything went pretty smoothly for about a year, I joined a team in mobile performance analytics (basically I was selecting a team in SF and made the decision based on conversation with a particularly charismatic skip manager). The job turned out to be quite mundane and neither creative nor very intellectually stimulating. But I found ways to entertain myself elsewhere, such as hanging out with friends, annual ski pass, periodical visits to Disney… Speaking of which, Galaxy’s Edge is absolutely amazing! In my opinion it’s probably the best piece of Imagineering in a few decades!

Then Corona hit in March 2020, I was trapped at home, got depressed, started re-thinking my life again (don’t worry, it’s been amazing how quickly I became totally un-depressed the moment I un-trapped myself and started moving around ^_^).

Anyways, exactly a year later in March 2021, as the world started to open back up, I got out of Google, moved my belongings into a storage unit and went back on the road =)

Yes I finally got a driver’s license… and a tiny car ^_^

Simulating paintings on computer

Recently I’ve been playing around in our CS department and discovered there are actually people working in this field called computer graphics. Given that I’ve been playing with photoshop even before knowing what complex numbers are, this is quite exciting!

I guess I got a little too carried away in this homework item about coding your own non-photorealistic filter.

Anyways, I was never quite satisfied with any of those ‘artistic filters’ that came with commercial software. For example, here’s the photoshop ‘colored pencil’:



and dry brush:

Well, just believe I have tried to adjust the parameters to produce reasonable results…

I head down to MoMa and Metropolitan museum on the weekend and looked at some classical paintings with the intension of figuring out how might one go about programing it. (Since color mixes quite differently on canvas and on screen, there are actually some quite interesting problems to solve in order to make the computer “paint”.)

Anyways, here’s what I ended up with: (I would really like to make a Van Gogh filter…although haven’t gotten anywhere convincing yet…)

Pointillism: (I found this being the obvious one to start with):

real painting (Georges Seurat):

my pointillism filter:

(applied to a fairly ordinary photo:)


classical oil painting portrait:


Just for fun, I also did one for cubism:
(obviously inspired by Picasso’s violin)


my cubism filter:

Anyways, that was quite fun to program (especially for someone who haven’t touched code since high school).

In fact, I even found it rewarding in improving one’s painting skills. For example one thing I figured out was the distribution of luminance in painting is normally quite off from that of the real world, each artistic has their own ‘luminance curve’ and shifts the hue/saturation in a particular way. Umm…maybe coding filters should be added to all fine art curriculum :-P