Archive for the ‘lifehacks’ category

Evernote Firefox plugin version 3.0.0.45382 – do NOT update

2009/03/22

Since few months I have slowly switched all my online notebooks to Evernote. In case you are not familiar with it, it is a great service. You can clip pieces of Web pages, type in notes, attach documents and multimedia files (pictures, sounds) and store them online to be always available through nicely done Ajaxian Web interface. The notes can be tagged, organized into notebooks and full text searched. One of the killer features is that for uploaded pictures, Evernote will do OCR and include the photographed tex into full text search

For each platform there is desktop application that seamlessly synchronizes the on-line notes with local database and also allows create notes using thick client interface with all desktop goodies. If you are iPhone users, make sure you get the free app that allows both access the notes as well as capture notes – textual, pictures or voice notes with the GPS information.

The basic service is free and limits you not by storage taken on the servers, but by transfer 40 MB a month, which is a lot unless you do picture notes. The very reasonably priced pro-service increases the monthly transfer quota to 500 MB and gives few more goodies – like PDF and Doc attachments to the notes. I am fairly frequent user and never used more than one half of that amount. To make clipping from the browser easier, Evernote offers Firefox plugin as well as Safari plugin.

The Firefox plugin is equipped with the self-update capabilities. And this is why I am posting this: if you have not updated yet, stick to version 3.0.0.128, do NOT upgrade to latest but far from greatest 3.0.0.45382. The latest version of Evernote (3.0.0.45382 as of today) is definitely a step back. Unlike the .128 which clips the selected text nicely into the Web, the .45382 always opens the desktop application and creates note there. This is only annoying and there is no obvious way how to prevent starting desktop client.

The real problem is that the captured note contains HTML attachment named ‘Firefox clipping.html’ and does not show the clipped text in the Evernote desktop client. To see what you clipped you need to open the clipping in the browser. To add insult to the injury, the quality of clipping is dramatically worse than in .128. The layout is all over the place, and result looks much worse. It is hard to tell whether this is caused by clipping or by different way how to display result.

If you got to the point of bad surprise after updating, here is how to bring back the version .128:

– uninstall extension

– restart Firefox

– download the previous version of the extension (the .xpi file) from here https://addons.mozilla.org/en-US/firefox/downloads/file/47839/evernote_web_clipper-3.0.0.128-fx+tb.xpi and save it on local disk

– in Firefox, open the downloaded file and confirm installation

– restart Firefox

I hope that somebody at Evernote will recognize that the version .45382 was a bad idea and bring back the clip-to-web capabilities (or at least make it configurable), avoid creation of useless HTML attachments and fix the clipping engine. Until that happens, I will stick with .128.

Fix for 'Sender address is invalid' error on iPhone 3G

2008/11/24

I started to have this error about week ago, out of the blue. I was not aware of making any changes, but suddenly could not reply to an email, send new email or even forward existing email in the iPhone default Mail application. I am using GMail account and because other clients on different platforms worked OK, I suspected either Rogers or Apple. I was trying several possible fixes (and used Safari and Gmail web access – which is not much fun).

Here is what did NOT resolve the problem:

  • deleting and recreating the account
  • upgrading to firmware 2.2
  • resetting and restoring the phone

Finally, the fix was to switch off all Gmail SMTP servers (for no particular reason there were two) and switch on the Rogers SMTP. To do that, go to Settings, Mail Contacts Calendar, click on account, select SMTP server.

I do not remember entering any of these servers, so they must have been created automagically when creating the GMail account in the Mail app. The Rogers account that works is all greyed out, the username and password is set to optional and the part of URL showing is smtp.rogerswirelessdata.c…

Because I have disabled BOTH Gmail server, the Default settings now shows under SMTP ‘No Server’ – but it works 🙂

How to save local copy of YouTube video

2008/11/20

If you want to watch YouTube video on the plane (and Google TechChannel has some amazing collection of videos), here is how to save it to disk, without any tools or third party program, using just your Mac and Safari out of the box.

Go to YouTube page and select video you are interested in in Safari. While playing, press Option-Command-A which opens Activity window. Locate the video stream – it will be the largest item in the list. Double click it, which causes Safari to download it.

After finish, go to download folder, locate the file (usually named get_video) and rename it to SOMETHING.flv. Open with any FLV enabled player – VLC works like charm.

At the end usual disclaimer: you should always make sure you do not violate copyright law or law of the country you reside in. I am not recommending or endorsing any behaviour that would cause violation of copyright law, merely describing interesting technical feature of a popular browser ;-).

Sane version of Twitter

2008/11/18

Since few weeks we have started internally use an interesting microblogging tool named Yammer. It works very similarly to Twitter, which means that you are posting very short posts, focusing on the stuff you are doing or working on. Unlike with Twitter, Yammer is company oriented and your posts will be visible ONLY to the recipients that share your company’s email address.

Yammer is free service with interesting business model: everybody can join your company’s network (if that person has proper email address), but to gain administrative rights, you have to pay dollar a month per user. I actually like this approach because it gives hope that the service will be around and available next year 🙂

Yammer offers browser version (very nicely done, btw), desktop client for both Mac and Windows and (finally) very usable iPhone application. This means that you can follow and communicate with your colleagues even while sitting in the bus or train. You can also post by email and receive posts via email, if you choose so – either as individual emails or as daily summary.

Latest update added option to create groups for really focused communication and managing the channel noise.

So far the uptake and experience within the company was very positive. What I really like is that it allows good alternative and communication middle road between instant messaging (which is too interactive and thus too distracting) and emails (which is too little interactive). It helps create better information flow and keep in touch with people that are out on client’s location – which is very important for a professional services organizations like us. It is also extremly important for distributed teams, and because my crystal ball foretells strong likelihood of geographical expansion in very near future, it may become even more useful.

Too bad this service (or Twitter for that matter) did not exist back in 2003 – I could have used it a lot while working in distributed development team spanning 6 timezones.

Recommended.

About time to break the silence

2008/11/16

Several people asked what is going on with me: no blog posts for almost a month, litlle presence on Gtalk / MSN. It is simpler to answer this way that write same email over and over.

Unfortunately the reason for being quiet is not that I am taking time off and enjoying myself somewhere in Caribbean on a secluded island without internet connection. Those who know me well also know that I would never go somewhere without access to Web for longer period of time than week – and even that would cause serious withdrawal issues. I am in Ottawa or Montreal or somewhere in between – physically or virtually.

Also – I am OK and am doing great as well. Main reason why the blog was quite neglected for last 6 weeks is actually rather lame: work.

We have landed pretty large project with quite ambitious deadline. It is very exciting opportunity in eCommerce space, based on latest and greatest ATG Commerce 2007.1. This project was great opportunity to explore new features and update my ATG skills. If you know the framework, enough said. If you do not know ATG, it is in eCommerce space something like Ferrari or Lamborghini in cars – very powerful with many unique features, rather exclusive and consequently quite expensive. Enterprise Java in its very serious incarnation :-). I have spent lot of time on this project and have gained a lot of interesting insight not only in areas related to coding, but also in deployment, release management, clustering and so on. It absorbed me so completely that I stopped blogging, limited Web surfing, put my Ruby/Cocoa experiments on hold. I am way behind in my podcast listening (all in total, accumulated over 15 episodes only in TWIT network podcasts itself).

So what has changed that I am back ? Did the project end ?

Nope, quite the oposite, we are hitting QA phase which will be followed by Phase 2 enhancements and busiest time is still ahead of us, as we will be live and selling for this Christmas season. And also few more projects are on the horizon.

I simply realized that with the strong upward trend of our business (we had record month in October, November looks also very strong) and very exciting things in our immediate corporate future, I cannot simply put life outside of work and my other “pet projects” on pause and hope I woud get back to it later. Because there will always be much bigger demand on time and deadlines and challenges and delaying can very well be cancelling them.

Rather than postponing the “rest of it”, I am actively searching for better ways how to intertwine these two worlds. I will keep you posted about the progress 🙂

Project Management – in a Nutshell

2008/09/30

A wonderful gem I found here:

I remember telling a friend
that being a project manager
is a little like being a bouncer:
where there’s a problem *here*
and a door *there*
and it’s your job to get the problem out the door.

So
For some a gentle gesture will do
while others need a push
and still others need to be picked up by their pants and carried

But!
In no case should you ever let someone get *further* from the door.
So that’s me.

By Merlin Mann 🙂

I dedicate this to all my friends and colleagues who face daily the Project Management challenges, specially to Peter, Julia, Mike and Milos.

Easy access to log files

2008/08/25

Here is the scoop: I need to provide access to multiple log files spread across multiple directories of multiple machines. For example – the JBoss log files and nohup.out, ATG log files, and so on – so that the testers can see what happened on server side when something looks fishy on front end.

One option would be to write a document that contails IP’s of the machines, create user accounts, make sure that they have just enough access rights to see the files but not disturb anything else …

Other option is to leverage the already installed Python across all the servers. I wish it was Ruby, but one cannot have everything.

On each machine, I created directory – e.g. ~/webaccess and made symbolic links to all log files or log directories required. Then I placed this python script into the directory:


#!/usr/bin/python

import SimpleHTTPServer
import SocketServer

# minimal web server.  serves files relative to the
# current directory.

PORT = 9999

Handler = SimpleHTTPServer.SimpleHTTPRequestHandler

Handler.extensions_map.update({
'': 'application/octet-stream', # Default
'.out': 'text/plain',
'.log': 'text/plain'
})
httpd = SocketServer.TCPServer(("", PORT), Handler)

print "serving at port", PORT
httpd.serve_forever()

and started it as

nohup ./simpleserver.py &

From this moment on, all files linked (actually all files in subtree of server directory) are accessible by going to http://SERVERNAME:9999/ – which shows directory listing for linked files.

On one of the machine, I have placed additional file – index.html that contained links to all other server names.

Thanks to this page for inspiration.