CLENotes v4.2.1 available @OpenNTF

It’s been a while since I updated Command Line Email Client for Lotus Notes but it’s done now. Version 4.2.1 is now available.

Changes:

  • Fixed bug when signing and encrypting mail.
  • Moved maildbinfo-command to Mail.py from External_Functions.py.
  • Added default return code 0.
  • Added support for multi-byte files for –file-body option by Yasuhiro Onoda, IBM Japan

Updates may not happen very often but CLENotes is not dead. On the contrary,¬† it’s very much alive and history continues… ūüôā

OLViz: visualizing text with a single line

The next version of One Word Visualization visualizes a given text with a single line. I call it One Line Visualization and let’s abbreviate it as “OLViz”.

Visualization of "OLViz"

Idea of OLViz is to use a single colored line in 3D space to represent text. The way its done is to calculate MD5 hash from text and then use that hash as seed for Processing‘s random generator. Line vector coordinates, color and rotations are randomized and since each seed is unique then all texts have unique one line visualization. Continue reading “OLViz: visualizing text with a single line”

Bug in Automation

@KemiraGroup¬†discovered a little bug in my automation code for tweet statistics. I tested with Firefox and Safari and it worked for me… but then Peter Sj√∂holm (@sjoholm)¬†informed that the bug manifested itself in IE8 & XP. I reproduced using IE6 and XP and then fixed the bug.

The reason why bug happened was because of one little comma… The excerpt below shows the bug in the list that is used to generate bar chart with Google Charts.

['Thehomedepot',0],
        ]);

The code below has no comma and it works.

['Thehomedepot',0]
        ]);

The bug fix in the code generation is below.

LAST=len(rankingDict)-1
i=0
for company,tweetCount in rankingDict:
  if i==LAST:
    htmlFile.write("['%s',%d]\n"%(company.capitalize(),tweetCount))
  else:
    htmlFile.write("['%s',%d],\n"%(company.capitalize(),tweetCount))
  i=i+1

Python, Google Charts and Twitter Statistics

I post weekly statistics of DJIA and OMXH25 companies’ tweeting activity where companies are ranked by the number of tweets during the previous week (Mon-Sun). ¬†See this¬†Top tweeters (DJIA) 23.4. ‚Äď 29.4.2012¬†as an example.

But how do I do that? I do it automatically, using Python, Python Twitter API, MySQL, Google Charts¬†and cron. Continue reading “Python, Google Charts and Twitter Statistics”

One Word Visualization

I generated, using Processing programming language, a few visualizations of Twitter account names (here and here). The language’s web site introduces Processing well: “Processing is an open source programming language and environment for people who want to create images, animations, and interactions“. There’s also a good introduction to the language available at IBM developerWorks.

The algorithm I used is very simple but results can be quite appealing (well, at least I think so and there’s certain beauty in simplicity…)

The source code of the algorithm is below. The basic idea is to take a single word and based on it’s characters and length, generate random seed, color and (x,y,z)-coordinates in 3D space. Drawing is done one line and one rotation at a time. The final image is ready after five hundred rotations (see the demonstration of the code, requires Java. Also displayed in OpenProcessing.org).
Continue reading “One Word Visualization”

About the history of CLENotes

A little about the history of my open source project Command Line Email Client for Lotus Notes, or CLENotes, available at OpenNTF.org.

The time period of this history is from 2002, when I first released it at IBM alphaWorks, until now, 2011.

This is “reprint” of my entry in developerWorks blog plus some additional comments.

In the beginning: The Reason

History of Lotus Notes Command Line Email Client started around Spring 2002 while my work involved to use some pretty resource-consuming software products in my laptop (Thinkpad T20, if I remember correctly). Continue reading “About the history of CLENotes”