Designing a better Todoist Help Page

I am currently improving Todoist. It's a great application that I know has a lot of passionate users and manages over 5 million tasks.

My first goal is to polish and improve the current features before adding new. Here is how I have improved the help page — which is critical as Todoist offers a lot of expert features.

The old help page looked like this:

Old help page of Todoist

The redesigned help page looks like this:

New help page of Todoist

Design · Tips · Todoist Comments 2. Sep

The essence of minimal product design

Minimal product design

Inspired by Ray Sison.

Google Search is a prime example of a product that conquerors complexity and enables users to search through 25 billion pages in a fraction of a second.

Design · Posters · Stuff Comments 1. Sep

What we can learn from the Digg 4.0 disaster

The new release of Digg 4.0 seems to be a complete disaster. At least based on user riot.

Why?

What would have been a better plan?

  • Iterative improvements:
    Evolve code, design and ideas gradually!

Some products that have improved gradually over time:

Evolution of products

Code · Code improvement · Code rewrite · Design · Tips Comments 31. Aug

Slow Dance

Slow Dance

Have you ever watched kids on a merry-go-round,
or listened to rain slapping the ground?

Ever followed a butterfly's erratic flight,
or gazed at the sun fading into the night?

You better slow down, don't dance so fast,
time is short, the music won't last.

Do you run through each day on the fly,
when you ask "How are you?", do you hear the reply?

When the day is done, do you lie in your bed,
with the next hundred chores running through your head?

You better slow down, don't dance so fast,
time is short, the music won't last.

Ever told your child, we'll do it tomorrow,
and in your haste, not see his sorrow?

Ever lost touch, let a friendship die,
'cause you never had time to call and say hi?

You better slow down, don't dance so fast,
time is short, the music won't last.

When you run so fast to get somewhere,
you miss half the fun of getting there.

When you worry and hurry through your day,
it's like an unopened gift thrown away.

Life isn't a race, so take it slower,
hear the music before your song is over.

— David L. Weatherford

Life · Stuff Comments 31. Aug

Vim Cast: Why vimgrep is super useful

In this screen cast I showcase how vimgrep works and why it's super useful. You can use vimgrep to find text in files - - directly from Vim.

Code · Stuff · Tips · VIM Editor Comments 28. Aug

Vim 7.3: Persistent undo and encryption!

ultimative vim configuration

Vim 7.3 was released about a week ago. I have been a Vim user for around 6 years now and I love that it keeps getting better. In this post I will highlight the two features that excite me most, namely:

  • Persistent undo: Ability to undo and redo on file reload. Super useful at times.
  • Blowfish encryption: Vim 7.3 can encrypt and decrypt files. Useful to store sensitive information such as passwords or server logins.

Persistent undo

Persistent undo is like a local version control system that you don't have to manage. I think I will use this feature a lot.

To set it up simply put this in your .vimrc:

set undodir=~/.vim/undodir
set undofile
set undolevels = 1000 "maximum number of changes that can be undone
set undoreload = 10000 "maximum number lines to save for undo on a buffer reload

To get more help simply type:

:help new-persistent-undo

Encryption

Vim 7.3 provides Blowfish encryption and a elegant interface to use it.

To encrypt a buffer simply type this in command mode:

:X

This will prompt you for a password. When you save the file it will be saved encrypted. When you open an encrypted file you will be prompted for the file's password. It's easy to use and quite elegant.

MacVim with Vim 7.3

MacVim is hands down the best graphical interface of Vim and yesterday it was released with Vim 7.3. Be sure to upgrade as it comes with a lot of fixes and it feels a lot snappier than MacVim with Vim 7.2.

Additional posts on Vim

I have done about 20 posts on Vim now. Check them out, especially check out my ultimate vimrc if you want a vimrc that kicks ass :-)

Code · Code improvement · VIM Editor Comments 25. Aug

cronwrap: Another cure for Cron's email problem

Chronos

cronwrap is a simple Python script that can improve your cron jobs. It offers following features:
  • ability to send emails ONLY when errors happen. cron sends an email if a command outputs anything (which leads to massive spamming). Another problem with cron is that only stdout is sent (makes debugging difficult).
  • ability to send emails if a command runs for too long.

Source: cronwrap on github

Installing cronwrap

$ sudo easy_install cronwrap
$ cronwrap -h

Usage

Will email a timeout alert to cron@my_domain.com:

$ cronwrap -c "sleep 2" -t "1s" -e cron@my_domain.com

Will email an error alert to cron@my_domain.com, since the command crashes:

$ cronwrap -c "blah" -e cron@my_domain.com

Will not email any reports since it's a successful run:

$ cronwrap -c "ls" -e cron@my_domain.com

Will email a successful report to cron@my_domain.com, because verbosity is turned on:

$ cronwrap -c "ls" -e cron@my_domain.com -v

Help and usage:

$ cronwrap -h
usage: cronwrap [-h] [-c CMD] [-e EMAILS] [-t TIME] [-v [VERBOSE]]

A cron job wrapper that wraps jobs and enables better error reproting and
command timeouts.

optional arguments:
  -h, --help            show this help message and exit
  -c CMD, --cmd CMD     Run a command. Could be `cronwrap -c "ls -la"`.
  -e EMAILS, --emails EMAILS
                        Email following users if the command crashes or
                        exceeds timeout. Could be `cronwrap -e
                        "johndoe@mail.com, marcy@mail.com"`. Uses system's
                        `mail` to send emails. If no command (cmd) is set a
                        test email is sent.
  -t TIME, --time TIME  Set the maxium running time.If this time is passed an
                        alert email will be sent.The command will keep running
                        even if maxium running time is exceeded.The default is
                        1 hour `-t 1h`. Possible values include: `-t 2h`,`-t
                        2m`, `-t 30s`.
  -v [VERBOSE], --verbose [VERBOSE]
                        Will send an email / print to stdout on succefull run.

Hope you find it useful and happy hacking!

PS:

I would like to say happy Whyday! Time flies so fast and I can't believe it's one year since he left.

I wrote about him on 21. august 2009 ( _why's way of living ). His influence lives on even if he is gone — a true legend!

_why lunatic strip

Wilderness trip to Sweden

I was on a trip to the Swedish wilderness with some friends — one week without Internet or phone.

Here are some shots.

Sweden wilderness - Night

Sweden wilderness - Night 2

Sweden wilderness - Lake

Sweden wilderness - Mushrooms

Sweden wilderness - Mushroom collecting

Life · Stuff Comments 4. Aug

♥ > $

Love beats money
Life · Stuff Comments 4. Aug

Dreams

All people dream, but not equally. Those who dream by night in the dusty recesses of their mind wake in the day to find that it was vanity.

But the dreamers of the day are dangerous people, for they may act their dream with open eyes to make it possible.

— D.H. Lawrence


Thinking Statue

Life · Stuff Comments 21. Jul

Spring Summer Fall Winter and Spring

His mind becomes cleaner and clearer.
He watches the sunset with no worries.
He recalls old memories and they do not trouble him.

Lotus

Life · Stuff Comments 20. Jul
© 2000-2009 amix. Powered by Skeletonz.