<< Previous | Home | Next >>

Android & iOS Automation

Been trying to get a handle on the iOS and Android versions of the OptionsHouse app. The first thing I always like to do is to look into automation for any kind of a project. It's useful for testing and just doing general lazy programmer type of things.

My first attempt was to use http://www.sikuli.org/ which is a general purpose image matching based test automation framework. It worked well enough with the simulators on Android and iOS but what I really wanted was to be able to run on the device.

So next on my list was http://appium.io/ which has really impressed me so far. I have it working with my Galaxy S3 and in the iOS simulator (fighting Apple's cert-provisioning-hoop-process atm) though it's been a  learning curve and the still in development nature of the project coupled with the lack of docs is somewhat challenging.

Btw you may want to pair it with http://junit.org/ and http://jython.org/ to put together a sandbox to play in and speed up development. Or check out the node.js support in Appium (very cool!).

I really ought to go to sleep .. but this is so much fun! =)

A really good presentation on how to design APIs

You may enjoy reading this presentation if you're into API design:



5 Things that will make your Agile project fail

A good read and something I've experienced in some projects which sometimes need addressing:



Great SeaJUG meeting on 5/21 - Spring!

We've got a great presentation lined up for the Seattle Java User's group on 5/21 at Expedia on Spring tech in case you are interested. Check out http://www.seajug.org for more details.


Intro to Continuous Delivery

Check out a video of me and Gabe talking about Continuous Delivery.


and if your organization needs some help in software development: product planning, development, qa, release management or automating processes feel free to reach out :)

cool stuff

despite how you may feel about js :)  http://goo.gl/bw6ue


Can't recommend System76 enough

I had blogged about my awesome made for linux system76.com laptop a while back. But the support they have exhibited in providing detailed painless upgrade instructions to the latest version of ubuntu just reinforces my belief that they are one of the better choices if you're looking for a linux laptop. They seem to have upgraded some of their hardware choices too!


Boys and their toys

If you are ever interested in dabbling in small form factor embedded linux devices you may want to check these bad boys out (some I own, the rest I plan to get eventually :)
  raspberry pi
  cotton candy (a little pricey)
  zotact mini-pc

TED Conference in Vancouver

 It appears that this year's TED conference is happening in my wife's hometown -Vancouver, BC. I'd highly recommend going to it if you can.


Some of the best talks from the conference:



LinuxFest Northwest in April

heads up - http://linuxfestnorthwest.org/ is happening in April up in Bellingham in case you're interested. I've given some talks at previous ones on things like python, java and android. It's actually a great litle grassroots style weekend conference and makes for a nice road trip to scenic Whatcom county.


New Linux laptop

Used to be back in the day you cut your linux teeth by buying a desktop, dual booting ( or VM'ing later on) windows and working out all the kinks to get a lean mean linux machine setup. If you really wanted a challenge you bought something like a sony laptop ( totally proprietary hardware) and spent eons of time building custom kernels with the correct modules to get everything to work right. It was a very enlightening experience to say the least. Ah, to be young with lots of free time on my hands again :)

Anyways, since I don't have the time anymore and Linux is way more mainstream now I highly recommend buying laptops from https://www.system76.com/. I've been extremely please with my super duper all decked out box from them which runs an OS which can actually take full advantage of all that juice! 

Netflix freezing in Windows running on a VM?

I've been a very long time Netflix user, especially streaming since I rarely get the luxury of watching movies on TV. Hollywood and other players make it a little difficult to watch netflix on Linux machines. Apparently they're more scared of the small minority who want to abuse the system rather than genuine end users.

So I run Windows XP within a VirtualBox VM ( those factory installs of Windows come in handy despite the fact you're forced to buy them). But running Windows XP was causing all kinds of audio twitching and the video would stop playing after a minute. Quite annoying.

Turns out all I had to do was to dedicate 1 CPU to it instead of the 2 that I had. Everything's been working fine after that.



I am working on a little project to setup a tool to index, x-ref and provide search to multiple source repositories running in the gigs and came to know of this awesome little server side java project which uses lucene under the hood called opengrok. I must say I am very very impressed with it so far. I am still in the process of setting it up but the search engine genes ( I worked on one in the early 2000s) and excitement for the potential are pretty cool!

if you ever have a need for indexing and searching large amounts of search data keep opengrok in mind.
you can browse/search like this:



I've been playing around with Android pretty much since the start ( almost got hired at TMobile a couple of years ago when I wrote a yelp app for the G1 while interviewing there - in retrospect, probably a good thing that I didn't end up there :). Luckily for the last few months it's been a day job and not just for weekend side projects.

The trajectory of this Linux based OS is nothing short of amazing: http://goo.gl/BlxQe

Some dev friendly links:




happy hacking!


Software KVM Switch

Really cool x-platform software kvm switch:


Remember to RTFM otherwise you'll waste time figuring out why the client cannot connect to the server :)


The Great Canadian Motorcycle Adventure

3 Amigos


I've been planning a motorcycle trip with some folks for quite a few years now. The stars finally aligned and we were able to do it! Left Seattle for Surrey on friday, spent the night at my uncle's place and started out Sat morning. Dad had rented a Honda Shadow from CycleBC( highly recommended btw!), my uncle was on his Suzuki and I was on my Sportster custom. I think this was Dad's first motorcycle trip in the west. The last motorcyle he rode was probably his Royal Enfield back in the day in India. He started out carefully as he always does but by the end of the trip he was tilting the Honda like a pro on the curves coming down from Whistler.

The first stop was at Chilliwack for some yum yum Tim Hortons goodies :) Then onto Hope where we stopped for gas and some grub. The drive up from Hope to Lilllooet via the Fraser Canyon was really nice. Tunnels on the way, the river on the side and mountains all around. Lots of nice curvy roads. Spent the night at the Reynolds Hotel which was recommended by a young fella at Lytton while we were gassing up. Btw I would recommend Dina's place for food.


The next day we rode down to Whistler via Duffey Lake and Pemberton. A couple of hours and a really nice ride with lots of beautiful mountains all around. But I think the best ride was down from Whistler to Vancouver along the coast via the Sky to Sea highway. Simply gorgeous curves!


Finally back to Vancouver and Surrey via Richmond on Sunday evening. Then I headed out back for Seattle that evening itself making it back by around 11 pm. It was a really fun weekend motorcycle trip!


Looking for a few good devs ...

I am in the process of putting together a crack ( no, not the smoking variety :) team to work at the intersection of android, java & c/c++. If you or anyone you know is interested in working with me on a really cool project utilizing productive agile/xp techniques please contact me at nimret at nimret dot com.


Adventures in puppet land

Some key learnings from a past project utilizing puppet to do infrastructure management in case you're interested :)

  1. puppet's DSL is imperative and not procedural. This can be somewhat frustrating to folks who are used to procedural languages.
  2. It can be quite "interesting" to do loops though a later version of puppet does have the ability to write manifests in ruby.
  3. watch out for some puppet gotchas.
  4. use hiera for configuration management.
  5. buy a good book.

happy puppet'ing!


Help support my sister's charity/rainier climb!

So my sister Jasmine has become quite the mountain climber these days. She's climbed things like an 18,000 ft+ volcano down in Mexico, a couple of 20,000 or so ft peaks in the Himalayas and probably others she hasn't told us about cuz she probably doesn't want us to worry. Must be those monkey genes .. which are obviously dormant in me!


So she climbed Mt. Rainier on the weekend of the 18th of July 2012 to raise money for a charity that she sponsors every year called Asha in case you're interested in donating for a good cause.

Please donate here - thanks! :)


Release AutomationI

I've been looking into Release Automation & automated infrastructure management lately. Here's some useful tools you may want to check out in this space:

http://vagrantup.com/ - fire up custom VMs from the cmd line - nice!

http://puppetlabs.com/ - tool for infrastructure automation.