Usability - Productivity - Business - The web - Singapore & Twins

By Date: June 2012

Testing your mobile applications on real devices

Unless you are hiding under a rock, you develop mobile XPages applications. Since emulators only get you so far (the iOS emulator only runs on Mac where you don't have a Domino Designer), you want to test the app on the real devices (after you convinced your boss to buy all them). For "always on" developers with access to a development server that isn't an issue. When you are "on the run" and all you have is Domino Designer, it just doesn't work. When you try to connect to your Domino Designer "Preview in Web Browser" from anything else than localhost ( or ::1) you will get an Error 500 Access violation.
With a little creative configuration you can get around it! Review this post and you (almost) know what to do. Instead of "proxy mode" you use "listener" mode, let's say port 88. Configure the target address to Port 80. Once set you can connect to your HTTP preview from "outside" on port 88. This can be the iPhone emulator on your OS/X host talking to the Domino Designer Web in your Windows VM or any mobile phone talking to your local real or virtual machine. A little step for a developer... Of course: local preview doesn't magically support authentication (I tried really hard hacking the local names.nsf), so you need a real server to test that one.
As usual YMMV

Posted by on 26 June 2012 | Comments (0) | categories: XPages

Business Travel Essentials

As working professional you are at risk of a sedentary lifestyle short of rushing at the airport. Getting some regular exercise is crucial. While hotel gyms seem to be a good place, it is better to be able to exercise wherever you are.
Enter FitDeck. The Office and Travel decks are my latest additions to my travel essentials:
FitDeck Travel FitDeck Travel
Shuffle the deck, pick some cards, execute, repeat. They have other great decks too.

Posted by on 17 June 2012 | Comments (0) | categories: After hours

How does an ideal Notes Client deployment look like?

In recent customer discussions the question popped up: " How does the ideal Notes Client deployment look like". The intention of the question was less around the technical aspects, but the user experience. Technically you would have a shared install, a good widget catalog, some sensible policies, automatic login and continious defragmentation in place.
The question is: what should the user see?
There are components in Greenhouse and on OpenNTF. You also can roll your own from mobile websites or Java Code. You want to understand some RegEx. Don't expect your users to do that.
Chris Miller published his top 10, here comes mine. I distinguish between "official IBM", "community supported" and "custom stuff around LiveText". Here you go:
  • Official IBM Plug-ins

    • The build in Sametime client. While I have little use for the Buddy list, it provides the presence awareness for all Notes applications
    • The build in Activity plug-in. It allows me to keep my IBM Connections Activities offline, make sure to install them
    • The Connections Files plug-in: Seamlessly work with your files from connections, drag & drop files and links to files
    • The Notes learning widget: Have learning information at your fingertips
  • Community provided

    • Wildfire: Update all your status information in Connections, Twitter, Facebook, Sametime etc... from one convenient location
    • Bob Balfe's Attachment viewer: Preview attachments in the sidebar
    • The file navigator: Provides access to the file system, drag and drop like the Connections plug-in, but with local files
    • Discussion Add-on: One of my favorite "hidden gems". Copy any document (presumably eMails) with one click into a discussion database. Mini tool to enable sharing information with a team
    • Sender analytics: Find out more about an eMail sender (right click action)
    • Snippets: Single store for text snippets, attachments etc. Invaluable tool if you repeat with repeated information to different people
    • Connections alerts plugin: Stay in touch with the happenings on Connections while working in your Notes client
    • IBM community newsletter generator plug-in for IBM Connections: Generates newsletters and other interactions for your IBM Connections communities. Inbox still rules for notifications
    Not mentioned here: Sametime SUT, Softphone or Headset management - useful but vendor specific. Add them if you have them!
  • Custom configuration & 3rd Party

    The challenge here: find identifiable patterns that allow you to link text to external actions. Here are some examples:
    • \#([A-Za-z0-9_-]+)(?![A-Za-z0-9_\]-]): identifies Hashtags and provides the value with and without hashtag to search bookmarks or twitter or [insert-whatever-here]
    • \b([A-Z]{3}) ([0-9.,]+)\b: Match a currency (3 letter currency code, number behind)
    • /\b(1Z ?[0-9A-Z]{3} ?[0-9A-Z]{3} ?[0-9A-Z]{2} ?[0-9A-Z]{4} ?[0-9A-Z]{3} ?[0-9A-Z]|[\dT]\d\d\d ?\d\d\d\d ?\d\d\d)\b/i: Tracks UPS shipping numbers
    • TripIt: for the frequent traveller (add it as url based widget with authentication)
What am I missing here?
Is is quite some work to configure all of this, but is is worth the effort.
As usual YMMY

Posted by on 15 June 2012 | Comments (1) | categories: IBM Notes Lotus Notes Show-N-Tell Thursday

Share your application setup

There are situations where you want to document or share (eventually with yourself) the list of all applications packages you have installed on your Ubuntu Linux system. To do that you have a 2 step process: document the packages and document the repositories. A sensible approach is to do that in a "ready to install" way. With a little help from AskUbuntu, here is the solution:
#! /bin/sh
# Run this on the source system
sudo dpkg --get-selections > ~ /Desktop /packages

# Run this on the target system (after copying the packages list and activating the repository
sudo dpkg --set-selections < ~ /Desktop /packages && sudo apt-get -u dselect-upgrade
And for the list of repositories:
#! /bin/sh
# listrepositories - script to get all the repositories incl ppa installed on a system
# ready to be reloaded using apt-add-repository
for APT in ` find /etc /apt / -name *.list `; do
    grep -Po "(?<=^deb\s).*?(?=#|$)" $APT | while read ENTRY ; do
        HOST= ` echo $ENTRY | cut -d / -f3 `
        USER= ` echo $ENTRY | cut -d / -f4 `
        PPA= ` echo $ENTRY | cut -d / -f5 `
        #echo sudo apt-add-repository ppa:$USER/$PPA
        if [ "ppa.launchpad.net" = "$HOST" ]; then
            echo sudo apt-add-repository ppa: $USER / $PPA
            echo sudo apt-add-repository \' ${ENTRY} \'
You need to listrepositories > addrep.sh to get the script to copy to the target system
As usual YMMV
References: Packages, Repositories

Posted by on 12 June 2012 | Comments (0) | categories: Linux

Change partition layout on LUKS encrypted LVM volumes

This serves as a reference on what to do if you have (a) LUKS encrypted disk(s) that contains a LVM layout and you need to alter the partition layout
  1. Back up your data! While everything typically works out, you want to be save, so back up your data (and make sure the backup is readable)
  2. Boot from stick
  3. If not installed, install support libraries
    sudo apt-get install lvm2 cryptsetup system-config-lvm
  4. If not existing, create your mount points (presuming LVM contains 2 volumes here)
    sudo mkdir -p /luksdisk/root
    sudo mkdir /luksdisk/home
  5. Probe the drivers
    sudo modprobe dm-crypt
  6. Open the volume (it might be a different disk/partition on your system)
    sudo cryptsetup luksOpen /dev/sda5 crypt1
  7. Show the physical volumes
    sudo pvscan
  8. Find the volume groups
    sudo vgscan --mknodes
    sudo vgchange -ay
  9. List them (memorize the name - I presume it is mylvmdisk here)
    sudo lvscan
  10. Start the LVM GUI and make all necessary changes
    sudo system-config-lvm
  11. When done, mount the volumes
    sudo mount /dev/mylvmdisk/root /luksdisk/root
    sudo mount /dev/mylvmdisk/home /luksdisk/home
Reference: Ubuntu Geek, LinuxWave
As usual YMMV

Posted by on 11 June 2012 | Comments (0) | categories: Linux