Erik Zaadi

The tales of a coding manager addicted to dad jokes

Recent Posts

Mocking Python imports

Writing unit tests with Python is a joy, especially with the excellent mock library.

You can tweak the language and mock almost anything to your will, making testing even the smallest of units very easy.

HOWEVER , mocking imports, when a class / module depends on imports which you might not have on your machine, such as windows modules (oei vei) when you are (and you should be) on a nix machine.

Solarized color scheme for Octopress

Created a solarized theme for octopress.

Inspired by Ethan Schoonover’s own homepage.

The source is as always on github.

To add this to your own Octopress instance :

1
2
3
cd /my/awesome/octopress/dir
git clone http://github.com/erikzaadi/solarized-octopress-theme .themes/solarized
rake install["solarized"]

zsh users : run

1
rake install\['solarized'\]

instead of the last command

Customize

To toggle between light and dark mode, edit sass/custom/_colors.scss and change $sol and ``$solarized`:

1
2
$sol : light; // light or dark -  Recommended: set $solarized  to the opposite of this
$solarized : dark; // code syntax highlighting theme

Screenshots

Dark

auto installing vundle from your vimrc

You should be using vundle

Vundle is a vim plugin manager, ala pathogen.

Vundle allows you to specify in your vimrc what vim plugins you wish to load, and it’ll automatically download (git clone if possible) and enable vim plugins.

Vundle can get a name of a plugin as it appears in the vim plugin directory, a github :user/:repo style string, and even a full git url.

1
2
3
Plugin 'Syntastic' "uber awesome syntax and errors highlighter
Plugin 'altercation/vim-colors-solarized' "T-H-E colorscheme
Plugin 'https://github.com/tpope/vim-fugitive' "So awesome, it should be illegal 

Vundle also updates your vim plugins with a simple command :

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.