The last mile of DriverMatrix 1.0.0 was developed during summer 2007. Like every year, I spent the whole summer in the Austrian alps with the Austrian part of the family. This required some preparations. The major resource needed for me to continue working on the development was bandwidth as the protocol by SupportMatrix to display user sessions is VNC and multiple VNC sessions are bandwidth-wise expensive. There were also other traffic needs.
Before the summer began I took care to have good connection in both ends of the pipe: The Israeli office (upgraded to 5M/0.5M which was the maximal ADSL in Israel then - thanks Limor), and the Austrian alps office (upgraded to unlimited 3M/384k - thanks Martin). That was already enough to overcome the distance and feel like next door. OpenVPN eliminated the fact that I was in a foreign network, and I just had the whole office, including the printer and the phone system (thanks to asterisk) at my fingertips.
This luxury followed me also to internet cafe (where I met other nice people working with django while drinking good coffee), when I was away from the office. The laptop connected via wireless, activated the VPN and using a cross cable, a VoIP phone just connected normally with SIP over VPN to the office phone system. I had the local extension, so I could call using 3 digits number to all the other colleagues, and this way managed the project like I was just there. Of course I was reachable also via the Israeli office number for all those left behind in the boiling country, so some people don’t even know that I was away.
Being far had absolutely no disadvantage. Even when a need for technical meeting popped, we just did it over the phone (the VoIP one), while sharing the screen (using GNU screen). This way, all parties could see the screen and type on it at the same time. Such a virtual meeting was also held with non-Codefidence people, like with Meir Kriheli which consulted us regarding some Django issues that popped up, and they got solved over the phone (well, 4 hours phone call). Thanks Meir.
Whenever I needed a break, instead of going to drink a coffee (what I
usually do in the Israeli office), I took a short walk breathing mountains air and watching the scene around, drinking fresh alps water, and practicing my German. This combination generated a far better code, with much higher efficiency.
A challenge was to help test the system with massive amount of sessions as part of the development. This could not have been done directly over the VPN, because of the bandwidth limits. For this we used many virtual machines with many sessions each, and they were controlled using a single vnc session at a time. It was encapsulating multiple vnc sessions within a single one, with time slot modulation. Each time few such virtual machine were active in the foreground, while others were doing their job in the background. While we slept, automatic test scripts (written using xmacro) were on shift, so the 8 CPU cores machine with 16 GB memory were almost constantly busy. There are better ways to do it, but this one did the job simply enough.
The bottom line, it worked and we delivered the beta on schedule. This coding environment is highly recommended.
No user commented in " Coding in the Alps and in internet cafe "
Follow-up comment rss or Leave a Trackback