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


200 days of Switzerland

I was seriously intentioned to write periodically something about my experience in Switzerland, I really was. But here is the thing, life-related issues took over, and I might even had neglected some of them too much while focusing on work and writing my thesis, at the point to screw up important things.

So, right now it’s gone. And it’s gone really fast. Almost 200 days considering the initial trip, the six months and the few days after. To me, it looks like the day before yesterday.

However, Zürich is an amazing city, and I found Switzerland to be.. well.. actually more or less what I expected, which is really a big win. The landscape is wonderful: lakeside with swans, ducks and gulls surrounded by trees, spanning in a wide range of colors and hiding the buildings in the typical style of the city, and the hills and the snow covered mountains in the background is probably the best example that I’ll always remember.

Amazing Zurich

Read more


Geysers video presentation

A video presentation of the GEYSERS project I’m working on at SAP Research.



Wait… where you said you are ?

So far, it’s really time to write something about this :) … Good news!

As I wrote few posts ago I’m over with the exams for my master degree in Computer Science Engineering at Roma Tre University, and as my study course provide for, it’s time to develop the master thesis. After looking for an appropriate topic for few weeks I found a message on the students mailing list originally sent by SAP Research, that is looking for a student interested in writing a technical thesis in the context of an internship in a highly qualified international environment, working on the GEYSERS project. The project itself seemed one of the most interesting things I might hope to find and SAP doesn’t need any introduction at all. Moreover, some of my favorite topics such as cloud computing, virtualization, networking and SLA management are on the table. The message also reported that the concrete topic of the thesis can be tailored to the student’s skills and research interests and is open to include further ideas and suggestions. What else ? In short, a great opportunity in my opinion. So I applied: sent CV, cover letter, references from my professors, and then i got an interview fixed. The interview was fine, and I’ve been hired. So this is it, i’m starting on October 1st. Did i mention that the location of the research center is Zürich, Switzerland :D ?



Return top

About me