Our Archive

Welcome to your Archive. This is your all post. Edit or delete them, then start writing!

brain.flush(); > Research

After starting this kind of post in 2013, it may develop into a habit. :}

I was definitely right with my optimism in the old post that 2014 is going to be exciting. One of the most exciting things in 2014 was the presentation of my first research paper [1] at the PESOS workshop that took place at ICSE 2014 in Hyderabad, India. It was a great experience and I'm still very thankful for this opportunity! Together with an accepted paper at the EnCASE workshop [2] and one at the CNSM conference [3] I had the chance to contribute to three fascinating publications in 2014.

To gain visibility in the research community it is usually a good start to provide a central place presenting your activities. Following this idea I released my personal website FlorianWessling.de to give an overview of my research activities as well as personal projects.

Talking about personal projects brings me to the next topic: My word wrap plugin and line number ruler patch is making it slowly into the official Eclipse code base. Currently Holger Voormann and Lars Vogel are pushing the code review forward by contributing and triggering the right people to take a closer look at the code. ;) Thank you very much for your effort!

What is left to say? I'm looking forward to a great year 2015 with even more interesting projects, publications, ideas and experiences! The next big milestone I strive for is to finish my master thesis in the next few months and try to publish some of the insights as research paper. :eek3:

[1] C. C. Marquezan, F. Wessling, A. Metzger, K. Pohl, C. Woods, and K. Wallbom, “Towards Exploiting the Full Adaptation Potential of Cloud Applications,” Proceedings of the 6th ICSE 2014 Workshop on Principles of Engineering Service-Oriented and Cloud Systems (PESOS), Hyderabad, India, 2014, pp. 48–57.

[2] S. Gómez Sáez, V. Andrikopoulos, F. Wessling, and C. Cassales Marquezan, “Cloud Adaptation & Application (Re-)Distribution: Bridging the two Perspectives.”, Proceedings of the 1st EDOC 2014 Workshop on Engineering Cloud Applications & Services (EnCASE), 18th International IEEE Enterprise Distributed Object Computing Conference Workshops and Demonstrations (EDOCW), Ulm, Germany, 2014, pp. 163-172.

[3] C. Cassales Marquezan, D. Bruneo, F. Longo, F. Wessling, A. Metzger and A. Puliafito, “3-D Cloud Monitoring: Enabling Effective Cloud Infrastructure and Application Management.”, Proceedings of the 10th International Conference on Network and Service Management (CNSM 2014), Rio de Janeiro, Brazil, 2014

Read More

If you manage your references in Zotero with folders and several subfolders this hint might be interesting for you. When you are looking for a specific reference and view the search results it is sometimes handy to know where this reference is coming from. Just select an entry and keep the ALT (CTRL on Windows) button pressed to highlight the folders your reference is assigned to.

This saved me a lot of time! :)

Read More

ICSE 2014 Banner

Visiting ICSE 2014 and presenting our paper at the PESOS workshop was a great experience! I heard a lot of interesting talks, which will be useful as input for my upcoming master thesis and my research in general. The presentation worked out very well and I got some nice feedback for further research and improvements on our work.

I met so many nice people there who made the whole trip even more entertaining and fun. It was a pleasure to be part of such a big conference, to join interesting discussions and to attend such diversified workshops. :)

Read More

While working at the CloudWave research project I had the opportunity to write a scientific paper together with a few colleagues. I'm glad to tell you that our paper [1] was accepted at the "International Workshop on Principles of Engineering Service-Oriented and Cloud Systems" (PESOS) which takes place in conjunction with the "International Conference on Software Engineering" (ICSE 2014). On top of the joy of having my first scientific publication, my advisor told me that I have the pleasure to present the results of our work at the workshop in India! :eek3:

I'm very happy to get the opportunity of giving a presentation to an international audience and get feedback on our work.

My flight departured on Thursday (2014-05-29) at 11:50 and I arrived at Hyderabad on Friday (2014-05-30) at about 04:00 local time (which is +3,5h compared to Germany). Together with a transfer in Abu Dhabi and driving 1h to the hotel the whole journey took about 14h. The temperature is very high (about 40°C today) and weather.com rates Hyderabad on a scale from 0-10 for the UV-Index with a "11+ Extreme". Sunblock is mandatory! :rolleyes:

Now I'm sitting in my room of the beautiful Avasa Hotel and put the finishing touches to my presentation for tomorrow. :)

[1] Clarissa Cassales Marquezan, Florian Wessling, Andreas Metzger, Klaus Pohl, Chris Woods, and Karl Wallbom. 2014. Towards exploiting the full adaptation potential of cloud applications. In Proceedings of the 6th International Workshop on Principles of Engineering Service-Oriented and Cloud Systems (PESOS 2014). ACM, New York, NY, USA, 48-57. DOI=10.1145/2593793.2593799

Read More

A direct link to a Zotero entry is very useful but using only the title is not sufficient. ;)

I've changed my Zotero exporter to include some additional data such as authors, publication title, date and DOI. The created string is not compliant to any of the well-known citations styles (Chicago Manual of Style, Harvard, IEEE, etc.) but covers the necessary information to retrieve the reference in case Zotero does not work or some other "Zoterocalypse". :D

Zotero Export (Full)

Read More

In addition to my previous post about connecting Zotero and Evernote I present a solution to create RTF links to Zotero elements in Evernote.

For my workflow it would be great to copy an element in Zotero and paste it as clickable link into Evernote, ideally using the title as text and the Zotero select URI as target. This could only be possible if the function of Zotero that copies text to the clipboard supports formatted (i.e. RTF) content. Usually the clipboard contains several data formats when copying something. If you e.g. copy text from a website containing a link the plain text is stored in the clipboard and additionally there is a version preserving the links, font style and color. Now when you paste the contents e.g. into Microsoft Word, all the formatting will be shown as it was on the website. In notepad only the plain text will be visible. The Zotero (export) translator will always fill the plain text area of the clipboard. Based on my experiments even RTF text with a valid RTF header written to the output won't be recognised as RTF text when pasted into Word or Evernote.

So, what can we do? The first step was to change the output of the Zotero export translator (quick copy) as you can see here. The output now contains at least the Zotero select URI and the title (e.g. <a href="zotero://select/items/0_KJ6MZWKT">CloudML</a>). Then I found the shell command textutil which is able to convert HTML to RTF. You can try the following command in the Terminal which converts an HTML link to RTF and copies the result into the clipboard. Pasting in Word or Evernote will result in a clickable link to Google.com with the text "Test".

echo "<a href=\"http://www.google.com\">Test</a>" | textutil -stdin -stdout -format html -convert rtf | pbcopy

Now that we have a way to get HTML links out of Zotero and found a tool to convert HTML to RTF it's time to put everything together. Automator is a tool in OS X that enables the creation of custom services and workflows. I use it to create a service running a shell command for which a keyboard shortcut can be assigned later on. It's straightforward: Create a service, select "Run Shell Script" and add the command.

Automator in OS X

Automator in OS X

It is very important to set the encoding of the shell environment first because it's not set to UTF-8 as it might be in your Terminal. This is the command I eventually used (Set encoding, use the contents of the clipboard as input for textutil and then save the output in the clipboard):

export LANG=de_DE.UTF-8; pbpaste | textutil -stdin -stdout -format html -convert rtf -inputencoding utf-8 | pbcopy

When you save the workflow it's available in this menu: System Preferences > Keyboard > Shortcuts. In the services category you will find your newly created service and can assign a keyboard shortcut.

Keyboard Shortcuts in OS X

Keyboard Shortcuts in OS X

This is my upgraded workflow with the goal to create clickable links in Evernote pointing to Zotero entries:

  1. Select entries in Zotero, press CMD+Shift+C to copy the HTML links
  2. Press CMD+CTRL+Shift+C to convert the HTML code in the clipboard to RTF
  3. Paste links in Evernote
Evernote with RTF links

Evernote with RTF links

Read More

For collecting and managing references and scientific publications I use Zotero because it has a nice browser integration. You can simply click on the Zotero icon and the reference will be automatically saved to Zotero including the full-text PDF (e.g. on IEEE Xplore), title, author, entry type (e.g. journal article, website, thesis, book), etc. You can arrange your findings using folders for different topics and even use an entry simultaneously in multiple folders without having duplicate files. After collecting references I export them in BibTeX format to use them in TeXlipse.

Although Zotero can store various file types such as text, audio, video, images and much more I prefer Evernote for organizing my notes, writing paper summaries and collecting ideas. Now we need a way to connect both worlds. ;)

The Goal

Ideally, I would select a reference in Zotero, press CMD+C to copy its absolute URI, select some text in Evernote, add a hyperlink to the URI and that's it. The result would be a link in Evernote which brings up the reference in Zotero when I click on it. Well, let's see what is possible.

Some apps support a certain URI scheme to give other applications access to their content. E.g. in Evernote you can copy the link of a note and get something like evernote:///view/12345689/s123/.../ which can be used to create clickable hyperlinks between your notes. Zotero is also capable of creating and understanding links but it takes a custom translator-plugin to access it. First you have to distinguish between the Zotero item URI, which is in fact a web URL pointing to the reference in your Zotero online account (http://zotero.org/users/12345/items/XXYYZZZ), and the Zotero select link that is the desired URI in the format zotero://select/items/0_XXYYZZAA. Based on the translator-plugin by nschneid I created my own simplified version that exports only the plain URIs of the selected elements by using the shortcut CMD+Shift+C.

Now that we have the URI for accessing the reference it's time to make use of it. Evernote is a very smart program but sometimes it's too smart. When you create a link it only supports URLs that start with the common schemas such as http, https, ftp, ssh, etc. Using a zotero://... URI the "OK" button is simply deactivated and adding the link is not possible. To create clickable Zotero select links it is necessary to enable intelligent links (right click > replacements). This way pasted Zotero select links are automatically converted in clickable links when you hit enter! :eek3:

(It is possible that the URI is not associated with Zotero and nothing happens when you click on it. What helped in my case is to create a .html file containing a hypertext reference such as <a href="zotero://select/items/0_XXYYZZAA">My Link</a>, open it in your browser, click on it and make sure to allow your browser to open Zotero for this specific URI schema.)

Summary / TL;DR:

  1. Goal: Create clickable links in Evernote pointing to Zotero entries
  2. Zotero: Install my customized translator-plugin (download on GitHub Gist)
  3. Zotero: Select entries, press CMD+Shift+C to copy the item URI
  4. Evernote: Right click > Enable Intelligent Links
  5. Evernote: Paste item URI and press enter
Links to Zotero entries in Evernote

Links to Zotero entries in Evernote

The connection of Evernote and Zotero is awesome for managing references, writing summaries, collecting ideas and organizing research. :}

Read More

It's always funny what kind of crazy stuff is possible by just using bash and basic Unix tools. :eek3:

Most websites hosting scientific publications offer citation information in BibTeX format. Unfortunately some of them think it would be extremely helpful to force you to download a single .bib file containing the requested citation data. Of course you can save the file, open it, select the contents, copy it and paste it into your desired bibliography file. But this is neither convenient nor efficient. :D

At first I tried to find a program that watches the contents of a folder on OS X. A post on StackOverflow suggested to take a look at the launchctl daemon. It's a nice program that can launch a script (or other program) when a file path has changed. Based on that I wrote a small bash script which reads the contents of a directory, copies the first file into the clipboard and deletes the file eventually. For an easy installation please follow the instructions I present on GitHub. :}

Now I can just save the file into this folder and the content is copied to the clipboard, ready to be pasted into my bibliography file. ;)

Read More

Mein Projektseminar habe ich mit TeXmaker geschrieben, was schon sehr komfortabel im Bezug auf die Literaturverwaltung und Gestaltung war. LaTeX nimmt einem da schon sehr viel Arbeit ab und sorgt für ein konsistentes Gesamtbild.

Ein Kommilitone hat in seinem Blog eine gute Anleitung für den Einstieg in LaTeX verfasst.

Viel interessanter fand ich allerdings den Beitrag über die LaTeX-Einbindung in Eclipse und sinnvolles Backup. In Kurzform: Er stellt die Einbindung von LaTeX in Eclipse vor, wie man elegant mit Dropbox für das Backup sorgt und gleichzeitig mit GIT eine Versionierung seiner Arbeit vornehmen kann.

Als Basis habe ich das Paket Eclipse Classic benutzt, da ich für die Java-Entwicklung eine separate Eclipse-Version verwende. Am Anfang aller LaTeX-Bemühungen sollte natürlich die Installation eines LaTeX-Paketes stehen, das für das Betriebssystem geeignet ist. Bei mir war das MacTeX, das übrigens einen sehr komfortablen Update-Mechanismus besitzt.

Zur Einbindung von LaTeX in Eclipse gibt es das Plug-In TeXlipse, das man ganz einfach zusammen mit der nützlichen Extension Bibsonomy über die Eclipse-Updatesite installieren kann (Menü "Help / Install new software..."). Gar nicht empfehlen kann ich den PDF-Viewer PDF4Eclipse, denn der konnte meine PDF mit eingebundenen Vektorgrafiken nur fehlerhaft darstellen. In Adobe Acrobat war dann alles wieder in Ordnung, weshalb ich nicht von einer beschädigten Datei ausgehe.

Dann muss man noch kurz sicherstellen, dass alles auf UTF-8 eingestellt ist, damit man keine Probleme mit Umlauten bekommt.

Außerdem muss man in den Eclipse-Einstellungen unter "Texlipse / Builder Settings" noch den Pfad zur lokalen LaTeX-Installation angeben (z.B. "/usr/local/texlive/2012/bin/x86_64-darwin/", damit alle Programme gefunden werden. Die Programme ps2pdf und dvipdf musste ich manuell eintragen. Die hat man aber schnell im Terminal via "which ps2pdf" gefunden. Bei mir waren sie beide in "/usr/local/bin/".

Manchmal klappt übrigens das Erstellen der PDF nicht, weil man die PATH-Variable noch in den TeXlipse-Einstellungen setzen muss.

Damit alles sicher gespeichert wird, muss der Workspace in ein Unterverzeichnis der Dropbox. Zusätzlich kann man noch das Eclipse-Plug-In EGit installieren und jedes Projekt versionieren. Das Repository dafür kann ganz einfach mit in den Projektordner und wird somit auch via Dropbox synchronisiert und gesichert.

So, dann legt mal los mit LaTeX! :eek3: Zugegeben ist der Einstieg in LaTeX nicht einfach, aber er lohnt sich definitiv. :)

Read More