Thoughts by Techxplorer

Thoughts on my experiences with technology

My Honours Thesis is Online

By: Sam Hames

This past year I’ve been studying part time for a Bachelor of Science (Honours) degree specialising in Computer Science at Flinders University. The focus of my studies has been my honours thesis. My thesis explored the following research question:

Is it possible to provide collaborative mapping services on mobile devices in an infrastructure independent manner?

To explore this question I developed an Android based application that could support four core objectives. They were:

  1. have the users own geographic location displayed on a map;
  2. add incidents, represented by a marker, onto a map;
  3. be able to see the geographic location of other users of the application on the map; and
  4. share details of incidents with other users of the application on the network.

The software that I developed uses the resilient Ad Hoc mesh network provided by the Serval Project to ensure that communication between instances of the application are infrastructure independent.

The thesis is available online on my Stuff by Techxplorer website.

The photo “Writing Thesis” was uploaded to Flickr by Sam Hames and used under the terms of a Creative Commons License.

My Expo Poster Won an Award

In November this year my honours course required that I develop a poster presentation. A poster presentation is basically an A1 sized poster that you stand in front of while people wander around the expo. It is a great opportunity for the school to promote the research and projects that have been undertaken over the course of the year by the students.

In the morning members of the school are invited to attend and check out what we’ve been doing. Some are assigned individual students and they must assess their posters. At the same time a group of industry representatives is also working their way through the expo evaluating a number of projects for awards.

My poster, and presentation, was selected for the “Most Outstanding Software Engineering Project 2011″. On Christmas Eve the award arrived in the mail, which was a very pleasant surprise.

The poster is available as a PDF via my bytechxplorer.com site and my honours thesis is also available.

Many thanks to my supervisors for providing feedback on my poster and for giving me the opportunity to work on the Serval Project.

MultiMarkdown, LaTeX and Bibliographies – Part 2

By: vlasta2

In an earlier post I wrote about my explorations of using MultiMarkdown to create a LaTeX document that included a bibliography. Since that post I’ve made some changes.

First, I’m now using the MultiMarkdown Composer application to author my document. I’ve only had it a few days, and so far like it very much.

Second, I’ve written a rudimentary bash script to automate the creation of the PDF document. In my current workflow I keep my source file separate from the output. Mainly because the creation of the PDF from the LaTeX file creates more than 10 additional files and I didn’t want these mixed up with my source files.

The script is as follows:

#!/bin/bash
# script to help in making the document
# set some options
set -o nounset
set -o errexit
# get the current directory
WORK_DIR=`pwd`
MMD_UTILS_DIR=/path/to the/MultiMarkdown/Utilities

# clean up the output directory
rm -f "$WORK_DIR"/output/*

# merge the source files together
"$MMD_UTILS_DIR"/mmd_merge.pl "$WORK_DIR"/index.txt > "$WORK_DIR"/output/latest.md

# convert to latex
/usr/local/bin/multimarkdown "$WORK_DIR"/output/latest.md -t latex -o "$WORK_DIR"/output/latest.tex

# change to the output directory
cd "$WORK_DIR"/output

# run pdflatex
/usr/texbin/pdflatex -halt-on-error latest.tex &> stage-01.log

# run pdflatex
/usr/texbin/pdflatex -halt-on-error latest.tex &> stage-02.log

# make the bibliography
/usr/texbin/bibtex latest.aux &> stage-03.log

# run pdflatex
/usr/texbin/pdflatex -halt-on-error latest.tex &> stage-04.log

# run pdflatex
/usr/texbin/pdflatex -halt-on-error latest.tex &> stage-05.log

The script has been developed to work on my MacBook running the lastest version Mac OS X and that also has the latest MacTeX version installed as well as the MMD Support Files and the MMD LaTeX Support Files.

The “Type ornaments” photo was uploaded to Flickr by vlasta2 and used under the terms of a Creative Commons License.

MultiMarkdown, LaTeX and Bibliographies – Part 1

By: Alexandre Duret-Lutz

In an earlier post I mentioned that I’m using MutliMarkdown to write my honours thesis. A critical component of any academic writing is the bibliography. This is how I’ve integrated the bibliography into my writing workflow.

First I’m using Zotero as my primary bibliographic management and article repository. Mainly due to the ease with which I can import items from the myriad of websites, online databases, and publishers websites from which I’ve been sourcing material.

What makes using Zotero a little awkward is that the current non beta version only works with the Firefox browser and my primary browser of choice is Google Chrome. There is a beta release of Zotero that I may look into further when I have some more time.

Second I use BibDesk to manage the bibliography for the thesis, this is so that when I use the LaTeX format produced by MultiMarkdown as a means of getting a PDF file I can use the LaTeX applications to do all of the heavy lifting in managing the bibliography and reference list. Importantly not everything in my Zotero library is going to end up being referenced in my thesis. So the migration from Zotero to BibDesk also helps in filtering out those items that I don’t need. Fortunately Zotero makes it very easy to migrate data out of Zotero and into BibDesk.

Third I use the MutliMarkdown standard metadata fields to associate the document with the bibliography.

What confused me for some time today was why when I seemed to have all of the pieces in place why my bibliography wasn’t appearing in the final output. The reason, I eventually discovered, is because there was a step in my workflow that I was missing.

My new workflow is as follows:

  1. Use Byword to edit the source files, I have one file for each chapter
  2. Use the mmd_merge.pl script to merge my source files together
  3. Use MultiMarkdown itself to create a LaTeX file using the merged source file
  4. Run the pdflatex application
  5. Run the pdflatex application again
  6. Use the bibtex application to create the bibliography using the aux file created by the second run of the pdflatex application
  7. Run the pdflatex application a third time
  8. Run the pdflatex application a fourth time to create the final version of the PDF file which includes the list of tables, list of figures, and the bibliography

It’s becomming a lengthy process, and one that I’ll have to script at some point, but the output is exactly what I need which is the most important thing.

The “Bibliography” photo was uploaded to Flickr by Alexandre Duret-Lutz and used under the terms of a Creative Commons License.

MultiMarkdown and Lists of Tables and Figures in PDF Output

By: jenni konrad

I’m using the wonderful MultiMarkdown application to write my honours thesis due for completion later this year. The main reason for using the application is that I wanted a single source authoring environment that I could use to output both HTML and PDF formats.

MultiMarkdown does this neatly by having an option to output HTML and another to output in the LaTeX format. The LaTeX format can then be used to produce a PDF file using the pdflatex command or similar application. The author of MultiMarkdown has also released a number of LaTeX Support files which are used to compile the sample documents into the PDF format can can also be used for other documents, such as my thesis.

In my thesis I needed to include a list of figures and a list of tables immediately after the table of contents and before the main content. This caused me some confusion for a while until I realised that LaTeX is a document markup language and that surely there is a way for LaTeX to build a such lists, especially as it was able to build the table of contents.

Fortunately LaTeX does indeed provide this type of functionality in the form of the listoffigures and listoftables commands. To use these commands:

  1. Open the mmd-memoir-begin-doc.tex file
  2. Scroll down to the bottom of the file, looking for the tableofcontents command
  3. Uncomment the two listoffigures and listoftables commands, or the one that you require, by removing the % at the front of the line
  4. If you want the lists to be on a page of their own, add the following command on a line by itself before each of the commands
For example in my version of the file the relevant section now looks like this:
tableofcontents
newpage
listoffigures
newpage
listoftables

Oddly it is necessary to run the pdflatex command twice to get the lists to display correctly. The output of the first run will include the headings for the lists, but not the lists themselves. The second run will populate the lists with the appropriate references.

I still have some further customisation to do, in order to include additional content in the frontmatter section of the document, but for now I can focus on actual writing knowing that the required lists will become part of the document.

The “typesetting” photo was uploaded to Flickr by jenni konrad and used under the terms of a Creative Commons license.