Erik Zaadi

The tales of a coding manager addicted to dad jokes

Recent Posts

The Wedding Dance
Blog now hosted on Amazon S3

After migrating my blog from wp to octopress (see previous post), I started thinking that it might be a waste using a (shared) hosting account just to serve static files. Since I use Amazon Web Services a lot, I thought I might give Amazon S3 a shot.

There’s a zillion posts out there of how to make a static site in S3, including for octopress sites, so I won’t bother you with repeating the steps here (see the links in the end of the post).

mv {word,octo}press

After my wordpress blog was hacked twice, and I got a warning from google that I host malware (!), I decided that enough is enough, time to ditch Wordpress and hope never to see php code again.

I managed to resist the urge to roll my own blog engine (haven’t we all been there?), and decided to use octopress.

After being victorious over ruby and rvm who thought it’d be hilarious to make me go crazy while making earthquake work, I thought I might give octopress a shot.

Startup weekend Haifa (2011)

Last week, a Startup Weekend event took place in Haifa.

Being somewhat of an addict to Startup Weekend, I attended.

Although the location was a bit smaller and less equipped than the previous Startup Weekends in Tel-Aviv (Yaffo), the organizers worked hard to make it a fun and enjoyable experience.

I pitched an idea there that didn’t get enough votes unfortunately, although I had a lot of positive response from people.

I joined a team called VideoChef, with some really great people.

Jenkins on Nginx – Take 2 - Static file handling

Updated the wiki with a Nginx configuration that handles all the static files for Jenkins, really improves performance.

Jenkins on Nginx - Fixing artifacts downloading problem

For those of you using Nginx to proxy Jenkins, be sure to copy the updated nginx server config from the wiki page https://wiki.jenkins-ci.org/display/JENKINS/Running+Hudson+behind+Nginx.

I added some proxy buffer specific parameters that fixes artifact downloading..

Connecting Jenkins to self signed certificated servers

I’ve recently needed to connect our Jenkins CI server to several internal servers such as Jira and IRC (Fun post coming soon on Jenkins@IRC..).

The problem with these servers are that their SSL certificates are selfsigned. This causes Jenkins to fail when connecting to the servers with the following error (Which you can see in the Jenkins log):

1
2
3
4
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException:
PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target

To solve the problem, instead of going through Java keysigning hell, download JavaSSL.zip, extract the files and open a command prompt or shell to the extracted folder.

The small things

Lately I’ve been going deeper and deeper down the nix rabbit hole at my new work.

The deeper I go, the more I undestand what a nix n00b I am. I’ve had so many OMG/AHA! moments, and it reminds me a bit of the period I (re)discovered the Mac, and when my journey of the open source world began.

Here’s a small example that’ll make anyone with nix experience chuckle, since it’s so basic:

Automating Egged Bus Wifi Connection

On my commute to work I travel by bus, with wifi.

It’s one of those wifi’s you have to open a browser and click on some license agreement in order to connect.

After agreeing, the browser is redirected to a page filled with commercials, earning yet another referral point to the company that set up this wifi.

Annoying as it might seem, this is not the end of the world, as you overcoming it by clicking is not that bad.

Making the touchpad work with two finger swipes on ubuntu 10.10 installed on a Lenovo laptop

Once you’ve tried a mac, it’s hard to use a touchpad without multitouch capabilities.

On Ubuntu 11.04 this should work out of the box, but the script below will allow you to control the settings better than the UI.

Save this script somewhere on your disk:

1
2
3
4
5
6
7
8
#!/bin/sh
sleep 10
xinput --set-prop --type=int --format=32 "SynPS/2 Synaptics TouchPad" "Synaptics Two-Finger Pressure" 4
xinput --set-prop --type=int --format=32 "SynPS/2 Synaptics TouchPad" "Synaptics Two-Finger Width" 8 # Below width 1 finger touch, above width simulate 2 finger touch. - value=pad-pixels
xinput --set-prop --type=int --format=8 "SynPS/2 Synaptics TouchPad" "Synaptics Two-Finger Scrolling" 1 1 # vertical scrolling, horizontal scrolling - values: 0=disable 1=enable
xinput --set-prop --type=int --format=8 "SynPS/2 Synaptics TouchPad" "Synaptics Edge Scrolling" 0 0 0 # vertical, horizontal, corner - values: 0=disable 1=enable
xinput --set-prop --type=int --format=32 "SynPS/2 Synaptics TouchPad" "Synaptics Jumpy Cursor Threshold" 250 # stabilize 2 finger actions - value=pad-pixels
xinput --set-prop --type=int --format=8 "SynPS/2 Synaptics TouchPad" "Synaptics Tap Action" 0 3 0 0 1 2 0

Open System => Preferences => Startup application and add a new startup item :