Nov 04

In one way or another you are using task lists, I’m sure.

A task list – as the name suggests – is a list of tasks. How does it normally works?

While you are coding your brain (and/or the brain of your pair) try to escape :) It creates thoughts like:

  • I need to test this and that as well
  • Here it might be cool to clean up the campground
  • The name of that class did not express the intention any longer, what is more suitable?
  • ..

These ideas of other tests and possible refactorings keep you from the current task. To keep focus write them down. Free your mind. If you finished your task, take the next one from the list. New ideas? Add them. Let the task list evolve. Clean up your list frequently. If you have tasks that you won’t do shortly, create user stories and sell them to your product owner.

This practice allow you to keep focus on the current task without loosing your ideas. You’ll have less context switches. It makes you more productive. Try it!

TDD Task Lists With IntelliJ IDEA

I use this Task Plugin. It is simple and easy to use. Every action can be triggered with the keyboard. Changing keyboard mappings can be done classically with IDEA’s keyboard mapping. Because of the missing Insert key on my MacBookPro I remapped Add Task. To go quickly to the Task Tool Window you can either map it to a key or use the switcher (Ctrl-Tab on OSX):

Tagged with:
Oct 11

I found Fluid, a little helper that converts a URL into an application. E.g. I created an app for Gmail:

Oct 09

The Problem
The project structuring of SoapUI (not the Pro version) is limited. When you use the maven-soapui-plugin to automate your tests, you will define multiple plugins – each pointing to a different project file. Your pom.xml will be messed up with sequences like these:

          <plugin>
            <groupId>eviware</groupId>
            <artifactId>maven-soapui-plugin</artifactId>
            <version>${soapui.version}</version>
            <executions>
              <execution>
                <id>soapui-test-xy</id>
                <phase>test</phase>
                <configuration>
                  <projectFile>${basedir}/src/test/soapui/bkr.xml</projectFile>
                  <outputFolder>${project.build.directory}/soapui</outputFolder>
                  <exportAll>true</exportAll>
                  <printReport>true</printReport>
                  <host>localhost</host>
                </configuration>
                <goals>
                  <goal>test</goal>
                </goals>
              </execution>
            </executions>
          </plugin>

The Solution
The solution is very simple. Instead of executing your functional tests with maven just run them from your unit testing framework:

  @Test
  public void test_bkr() throws Exception {
    SoapUITestCaseRunner runner = new SoapUITestCaseRunner();
    runner.setHost("my-host");
    runner.setProjectFile("./src/test/soapui/bkr.xml");
    SoapUiConfigLogger.logConfig(runner);
    runner.run();
  }

Now you have full flexibility of how to organize your tests:

  • package structure
  • test-class name
  • test-method name
  • test-groups (TestNG)
  • ..

I want to test external services that are already running. If you want to test your own services you have to start-up and tear-down jetty. Either you try to use @Before.. and @After.. annotations or you bind your tests to maven’s integration-test and use pre-integration and post-integration for that.

Tagged with:
Oct 09

One very useful IntelliJ IDEA feature is the Multi Clipboard (Cmd-Shift-V). Outside IDEA you can use Clipmenu.

Keep in mind to change it’s default Shortcut Cmd-Shift-V to e.g. Ctrl-Shift-V, so that you don’t overlay IDEA’s shortcut.

Tagged with:
Oct 05

I’m using Google Reader for my feeds. At work I want to access some private feeds. My plan was to have a reader that can handle private feeds and can sync with Google.

I tried Gruml and NetNewsWire that both sync with Google. Unfortunately both can’t handle private feeds. Gruml is beta and you see that. Don’t know what I have done wrong, but Gruml stop working. NetNewsWire is not very informative. I can create private feeds, but I don’t know if it is syncing or not. The refresh button didn’t work as expected. The shortest automatic sync interval is 30min!

My peers using Vienna, now I know why:) With Vienna I can easily add a private feed and see if it is syncing or not. It can’t sync with Google.

So I’m still looking for a tool that can handle my two use cases: Private Feeds and Google Reader Sync.

Tagged with:
Oct 03

I have my MBP for more than 4 month and today I found out that there is a forward delete (⌦) :)

Symbol Key Description
delete This is the delete key at the upper right corner. It works like backspace in Windows and Linux. I’m a Mac-Newbie so I expected a forward delete first
Fn+⌫ ⌦ is not available on laptops. You can emulate it on a MacBook with Fn+⌫

Men, why it took me so long?

Tagged with:
Oct 03

This time I’m looking for a RSS reader that can sync with Google reader. After some minutes I found NetNewsWire and Gruml. First I tried NNW because it is not Beta. Everything is fine, except that I can’t use the Google features like sharing items, following shared items of friends, star items, .. Next, I installed Gruml. Voila. All the Google features are available. It is Beta, so far no crash or other problems. I’ll try it.

Tagged with:
Sep 27

Here is an update to my last post about Journler. If you have two user accounts, e.g. one for work and one for private use, you can store your Journler directory at a shared resource. Now change the group of all files to staff and give the group write permissions.

[sourcecode language="text"]
admin$ mv ~/Documents/Journler /Users/Shared/pim
admin$ cd /Users/Shared/pim
admin$ chgrp -R staff .
admin$ chmod -R g+w .
[/sourcecode]

Tip: To prevent you from trouble, it is best to quit Journler before open it with another account again.

Tagged with:
Sep 25

I’m searching a tool for collecting and organizing notes. This is better known as Personal Information Manager. I checked some personal wikis like VoodooPad and took a quick look at Yojimbo and Evernote. Finally I found Journler. The development of this software has ended, but the current features seem to be enough for my most important use cases:

  • Be able to tag content
  • Be able to search content by tags
  • Be able to use spotlight for search by tags
  • Be able to write rich text
  • Be able to export content (in case that this version won’t run with future OSX’s)

Why tagging? Our confluence wiki at work is a good example. Without tags the search is mostly a search and not a find.

So let’s take a tour of Journler.

Set Up

To enable the Spotlight Search you have to import the meta data of Journler (this requires admin permissions)

[code language="bash" gutter="false"]
mdimport /Applications/Journler.app/Contents/Library/Spotlight/JournlerMetadataImporter.mdimporter
[/code]

Check with mdimport -L if the path is part of the importer list.

First launch

Starting Journler the first time gives you some entries to play with. To delete these, select them and press Command-Delete.

Journler at work

Create a new entry (Cmd-N), write your content. Ok, now tag your content. Press Ctrl-Shift-Tab to move from the editor to the Tag field. Enter your tags, separate them with a Comma or a Tab. Press Shift-Tab twice to go to the Title field. Your first note is entered.

Search content

If you’re insight Journler press Option-Cmd-F. Type what you’re looking for. The search starts immediately. If you want to use Spotlight press Cmd-Space and start typing.

To narrow down the result, it is good to add journler to your search: E.g. journ product should bring the Journler productivity notes up even if you have a lot of files that are named with productivity.

To walk through the search result press Cmd-7 and use the up and down arrows. Press Cmd-8 to go to the entry/editor.

A Goody – Smart Folder

One goody that I discovered already is the smart folder. You can create rules that will be applied to your entries. Here is a sample to create a folder with the recent entries:

Summary

The first hands on sessions are promising. My use cases are fulfilled.

Here are the shortcuts we used so fare:

Cmd-N : New Entry
Cmd-7 : Entries List
Cmd-8 : Goto Entry/Editor
Ctrl-Shift-Tab : Go from Editor to Tags
Shift-Tab : Go up
Tab : Go down
Option-Cmd-F : Find in Journal

Tagged with:
Sep 25

Henrik Kniberg seems to had a great session with Mary Poppendieck about Social Technical Systems.

You must see this amazing presentation about What Motivates You! Great style, great content.

I wasn’t so wrong when I wrote about bonus systems.

Tagged with:
preload preload preload