Archive for the ‘IT’ Category

WhyMCA HappyHour – EUHackathon Part II

Here it is the presentation for my speech at #WhyMCA HappyHour about the EUHackathon ’11.




EU Hackathon 2011 #h4t

So this post is about the EU Hackathon 2011 I participated on 8-9 Nov, 2011.
I’m not going to write too much about how cool such experience was, although it is the very first thing that comes to my mind when I think about it: having the chance to work with a kick-ass team, full focused, with limited time, on something related to an important topic, next to other ~50 guys coming from 17 different countries all over the world with the same purpose… it has been just amazing. Not to mention the whole nice context: the hackathon had its opening and closing ceremonies inside the EU Parliament in Bruxelles and the coding session in the Google’s office (kind of a Googleplex).

Read more


The not-so-nice story of a VPS.net outage

This post is about a bad experience I had recently with my previous cloud provider, VPS.net. I want to make this very clear: this is NOT meant to complain or whine, but rather to tell this funny story and make people who are thinking to use this (and other?) service providers aware of what they are accepting.

Truth to be told, I’ve been an happy customer of VPS.net for almost two years: cheap service, acceptable availability, quick and reactive support were the key ingredients of my illusional satisfaction.

My resource was a small virtual private server, where this blog was hosted along with few websites I maintain and my private stuff (mail, svn, backups, small services, things i need to access from everywhere, etc.), nothing critical, no big deal. Actually pretty cool. Unfortunately, as someone say, good things rarely last.
Read more


Master thesis template


When I first started with my master thesis and LaTeX, I did not really want to learn a new markup language. I was rather just looking for an easy-to-guess/easy-to-use template to fill with my contents. I asked different colleagues and friends already familiar with LaTeX for this, but I didn’t get anything compliant with my expectations.

So I learned a little bit of LaTeX from one of the 7830000 tutorials you can find online (as well as from many tips by former colleague Phillip, thanks again ;) ), and built this template.
Even if I don’t have time to further refine this template at the moment, I still think it might be useful for colleagues or students looking for a master thesis template. It comes with two main features:

  • Separated contents and (easy tunable) settings
  • Nice hierarchy for contents (chapters,sections,subsections,images,etc.)

It also includes a couple of scripts that adjust the bibliography to include URLs as a note, and that provide stats for the status of the thesis, as shown below.

Dependencies (TeX packages) include: amsmath, amsfonts, graphicx, xfor, fontenc, glossaries, longtable, multirow, setspace, url, hyperref, cite, setspace, float, epigraph, babel, caption, geometry.

You can get those you don’t have in your LaTeX distribution from CTAN.org

And here it is, > Download <


Reverse shell with ssh

Sometimes you need to access a machine which is behind a firewall or a NAT, such as your box at home. If you have access to another machine with a public address, here is a simple way to do that with just ssh. The following configuration is assumed:

  • The machine you want to access is running ssh daemon, listening on port 2200
  • The address of such machine is irrelevant since it is unreachable.
  • The machine you have access to is also running ssh daemon, e.g., listening on port 2201
  • Such machine has instead a reachable address, such as 6.6.6.6

Now, of course the first thing you have to do is reach the machine with public address from the machine behind the firewall or NAT and establish a connection to be used eventually as channel to forward the ssh connection. The following command does that via ssh, and tells the machine to forward any connection incoming on its port 2202 to localhost:2200 from the command issuer point of view.

ssh -p 2201 -NR 2202:localhost:2200 user@6.6.6.6

At this point you probably got it, you can access your home box by ssh’ing into 6.6.6.6 and then running the following command to access the other machine.

ssh -p 2202 user@localhost

It might also be nice to filter port 2202 from all sources except localhost, just in case your private box is not hardened as much as your public machines ;)


Lessons learned (2010)

I was archiving the docs I brought back from my recent internship at SAP in Zurich, and I just found a very important list ( :P ) I used to take note of useful statements out of my day to day work experience.

“Lessons learned”:

  • Always understand requirements first, and use metrics for them.
  • Avoid scope creep.
  • Assumption is the motherwhore of all fuckups. (thanks Bradley)
  • Read more


Return top

About me