Oct 29 2012
Oct 29 2012
This is a somewhat irrelevant post, but after getting “some” experience on thesis writing I thought I should share what I learned, as a future reference for me but others as well. Finding the topic and selecting the exact subject is only the beginning. Producing a good final deliverable is not a trivial task and usually you will find yourself spending time “fixing” things. My goal is to limit that time as much as possible.
So, here it goes (semi ordered):
1. Create a detailed outline of your thesis. This should include specifically how many chapters and which these will be, plus how many and which sub-chapters each one will have. Don’t be vague and create a well thought out list. This will be your guide for writing. It’s not written in stone of course and future changes are welcome, but you should always have a plan, roughly know what comes next and how much work remains until you finish.
2. Study your sources and write next to each sub-chapter all the relevant books/papers. These will essentially serve as the bibliography for the corresponding topic and the resources from which you’ll find the material you need while writing. This is one of the most important steps in this whole process.
3. Learn your writer application. Microsoft Word, LibreOffice Writer, it doesn’t matter. I can’t stress this enough. It took me almost four days to “fix” a completed thesis, after some quick decisions that turned out to be mistakes. More points on this below.
4. Use Mendeley to manage your bibliography. It integrates with Microsoft Word and LibreOffice Writer and it’s one of the best tools I have used. Huge time saver and great organizer. You’ll be sorry if you don’t.
5. Don’t write everything in a single document. Since you have split (as per the 1st point) your document into subjects, write each one in a separate file. You’ll join those when finalizing the project.
6. For each of the files created (as per the 5th point) apply the required document/page template and properties from the beginning. This includes margins, footer and header, etc. DON’T start writing and worry about those later because you will probably mess up your final (combined) document.
7. Learn to properly use headings and related text styles! Don’t number your chapters and sub-chapters by yourself. Use the “outline numbering” feature. This is a must if you want to generate index tables in the final document and most importantly to make image/table caption numbering actually work correctly. My suggestion is that you should start writing your files without any numbering but applying headings where appropriate. I recommend “heading 1” for sub-chapters in the form of X.Y, “heading 3” for sub-chapters in the form of X.Y.Z, plus plain “heading” for chapter titles. I found out that headings 1 and 3 are already suited (graphically) for use as sub-chapter titles, while heading needs to be edited. Later, when every file will be joined together, the correct outline numbering will be chosen, manipulating the order a little bit, so it goes like: heading, heading 1, heading 3.
8. BACKUP. All of the above should be done inside Dropbox, period. Also, BACKUP your backup. When reaching the milestones of your project (e.g. a sub-chapter is finished) place a copy of your folder inside Google Drive as well.
Let me know if you have any more tips and suggestions.
Oct 26 2012
A note about the HoneyBox project: I had to change its name to “HoneyDrive” after I found out that the previous one was registered by a company offering a related security appliance. Links pointing to SourceForge will start to work as soon as they edit the project’s unixname.
Oct 26 2012
Oct 21 2012
Oct 20 2012
Everybody who has tried to find some reliable and easy-to-use guide on packaging will surely nod in understanding when I yell: “I just need a damn command to create a damn package!”. So far I had not found a simple how to and it really bothered me. Perhaps I have not searched enough but after a while you find it pointless to go on and on.
But, I have good news. Thanks to the wonderful gentleman Jordan Sissel there is hope after all. This guy created a fantastic command-line utility that can build various kinds of packages using various kinds of sources! The tool is called fpm and it’s hosted on GitHub. The simplest way to get it is through Ruby gems:
gem install fpm
Creating packages then becomes a quick and easy task. For example here is the command to create a .deb package from Kippo-Graph’s sources, using most of the optional arguments:
fpm -s dir -t deb -n kippo-graph -d php5 -d php5-gd -d php5-mysql \ -a all -m "BruteForce Lab <[email protected]>" \ --description "Kippo-Graph is a full featured script to visualize statistics \ from a Kippo SSH honeypot." --vendor "BruteForce Lab" \ --url http://bruteforcelab.com/kippo-graph -v 0.7.2 --category misc \ --prefix /var/www/kippo-graph/ ./
And then you can manage the application (jn the above case just the directory that was created) through Synaptic:
How cool is that? 😎