Category Archives: Tools and Utilities

Developer productivity tools for iPad

I have tried doing development on my iPad and I found some tools which I liked:
Python – Pythonista
Java – Jedona

I was able to write some interesting programs while on the go on both my iPhone and especially on iPad. However I have realised that for better productivity it is better to use remote desktop solution to login into my Windows and a VNC solution to login into my MacBook.

Windows Mobile App (Previously called RD Client)
RealVNC Client

I have a static IP available for my home network however one can easily use solution like noip.com to get static domain name to work using the DDNS client built in your home router. I usually configure a port forward on my router to RDP into my windows or VNC into my MacBook if the router does not support VPN server. For better security I have setup a VPN server on my router and I do a VPN connection into my home network effectively eliminating the need of opening ports / do port forwarding.

Using the above approaches I no longer have to carry my laptops around and I use my iPad to do some work directly on iPad or via remote connection to my computers back home.

To manage my personal Linux servers on cloud I use Blink. Combined with Mosh I have found Blink to be a solid solution to SSH into my Linux boxes and do my work.

Blink

This type of setup has greatly reduced the amount of hardware I need to carry around. With one iPad and an iPhone I can work on most of my hobby projects and also do some of my office work.

Finding class inside a bunch of jar

Many times there are some Java linkage errors and I have to find out in which jar files the class files are located. So this has lead me to find out tools which can do this job for me. I usually get the job done by using this excellent open source tools named Jar Explorer inside Github. It is basically a platform independent Swing based utility which allows you to recursively search inside Jar files located inside a folder for any class name String. So it is possible for me to search for a class named “LoggingEvent” inside a folder containing lots of jars and it outputs the list of all the jar files where it found classes containing the text “LoggingEvent”.

However when you are connected to Linux consoles using ssh and don’t have access to X Windowing system then you have to rely on either text based java program or pure vanilla shell scripting. For this situation I use the following snippets of code which I found from a Stackoverflow article.

On Linux/Mac
for i in *.jar; do jar -tvf "$i" | grep -Hsi ClassName && echo "$i"; done

On Windows
for /R %G in (*.jar) do @jar -tvf "%G" | find "ClassName" > NUL && echo %G

A free ScreenCasting / Presentation Tool

I have used Wink from debugmode.com for my basic presentation needs. I used this software to create flash videos for demonstrations and tutorials. This tool is free and it does the job well for small to medium duration presentation. I tried using Wink for Windows 8 and I found out that Windows 8 didn’t allow Wink to run. I will post that error later on. So I knew it was time to switch to another tool. I listed my requirements and they were coming to the following:

Mandatory Requirements

  • The tool should work on Windows.
  • The tool should be free.
  • Doesn’t really has to be open source.
  • There should not be any time limit on the recording.
  • Watermarking is OK but it should not blur out any part of recording.
  • Should allow me to record full screen presentation (my favorite mode).
  • Audio recording should be allowed.
  • System audio recording should be allowed (Only microphone recording doesn’t cut it).

Optional Requirements

  • Capability to export video in HTML5 or Flash movie format
  • Basic scripting support so that I can add controls like ‘Next’ and ‘Previous’.
  • Some option to cut out unnecessary parts of video.
  • Some effects like highlight and annotation is a bonus

My first few queries took me to a number of software which were either feature limited or time limited. So I decided to do some research on comparing the available software in the screen casting / presentation domain.  I found this link to be invaluable in narrowing my research. I ultimately found out that ActivePresenter Free Version from  Atomi Systems fulfilled all of my mandatory requirements as well as optional requirements. I decided on this tool based on the following points.

  • Very easy to install and configure. A real no brainer.
  • The performance of the tool was quite good. Although I didn’t like the non-cancel-able progress of video export. But it does the job well so I am happy.
  • The tool itself can be hidden so while making a presentation I can hide the tool into the toolbar and keep it discreet.
  • It records both microphone as well as system audio which is a mandatory requirement.
  • The documentation and tutorial for the tools are available in plenty.
  • There are sample projects on the website.
  • There is a paid version of this tool for 99 USD which is a deal if I decide to upgrade.

I think it is better to use a tool which follows the ‘Freemium’ model so that when the need arises for more functionality one can simply upgrade the tool and re-use the existing experience with the tool. I am hopeful that ActivePresenter Free Version will work stable and I can continue to use it for some time to come. Thanks to Atomi Systems for a free tool that comes in as a drop in replacement for Wink.