Archive for November, 2012


November 24, 2012 Leave a comment

So last night I was sleeping peacefully when my iPhone and Nexus 7 lit up the bedroom like a beacon in the dreamscape. Startled by this (it’s almost as bad as the phone ringing in the middle of the night), I jumped up, wide awake, to see what the urgent message was about.

The message was something to the effect of, ‘Someone tried to get into your Facebook account and we’ve locked it.’ Since the account was locked, I knew it could wait until morning, so I went back to sleep. Kudos to Facebook for being proactive with my account security.

So what I needed to do this morning was change my passwords on my accounts. I was due for a password change anyways (I try to do it once a quarter or so), so I thought I would share my little password generation method with the masses in hopes that you’ll find it helpful.

We all know that passwords are a pain in the butt. They need to be something that you’ll remember, but they can’t be something that will be easily guessed. The days of using “password” as your password should be long, long gone. However, I do use a password that can be easily remembered. I start out with a phrase or word that is meaningful to me. For example, on my wedding day, I made a promise to my husband, so I’ll start with that word:


One thing that you should always do is use a mixture of both lower- and uppercase letters in your password, so let’s change the first letter to an uppercase letter.


It’s still a pretty simple word to guess, right? The second step in my password generation is adding an adjective or an emotion to the word. Not only does it make the password harder to crack because you’re changing the password to a phrase, it also makes it easier to remember. My promise to my husband makes me happy, so I’ll add a word that indicates this.


The exclamation point at the end drives the point home and makes the password even more secure.

The next thing we want to do is we want to change the vowels to symbols that look like their alphabetic counterparts. This is a loose interpretation of leet speak and it adds another layer of security to your passphrase.


The last thing I do is add an indicator as to what service this password is going to be used on. Now some people might find this odd, but this gives me the ability to use the same password or phrase on all my accounts but still have unique passwords for each. I am going to use this password for my Facebook account, so let’s add that to the mix.


One approach to this might be if Facebook is the first thing you go to in the morning, put the FB at the beginning. If you have a Twitter account that you tend to go to after you go to Facebook, you could put that at the end, so you’d have


Your password still has meaning to you, but is much more secure because you’ve added these different layers of customization and security to it.

Happy surfing and feel confident knowing that you’re surfing safely!

Categories: Security

Todo.txt CLI Enhancements.

November 11, 2012 1 comment

I need to do have a To Do list. As I get older I find that I can’t remember things nearly as easily as I used to be able to and because of this I end up forgetting to do something that needed to be done. Because I tend to have a strong perfectionist streak, I feel really bad when I forget something. So I decided I really needed to do something about it.

I’ve read up on GTD (Getting Things Done) and have incorporated many of the principles into my workflow. Since I was originally all Mac based, I originally went with OmniFocus from the Omni Group. OmniFocus is a brilliant program and syncs well between the Mac, iPhone and iPad. However, one of the challenges with using OmniFocus is for those of us that use cross platform solutions; there’s no way to get to my OmniFocus setup from a non-Apple environment. When your primary laptop is a Linux based machine, that’s not going to work out so well.

So then I moved to Remember The Milk. While it is definitely not a strict GTD type of environment, Remember The Milk has lots of cross platform goodness and a pretty good web-based application. I liked the theory of it a lot, especially the ability to enter things in using a natural language such as “Take out the garbage on Thursday by 10:00 p.m.” The problem with RTM was that I just could not wrap my head around the web application. I know that this is kind of odd, because I write web applications for a living, but there was something that just felt too complicated about the app. I believe that one of the primary things about a GTD app is that it should do it’s function but stay out of your way as much as possible.

And this is where the KISS, or “Keep It Simple, Stupid” principle comes in. I decided to move my ToDo needs to a plain-text file that synchronized between my computers using Dropbox. I could access it from home and from work. I decided to do all this using Gina Trapani‘s todo.txt CLI.

Todo.txt is sheer simple brilliance.

Not only can I use any text editor to manage my plain-text ToDo list, ToDo.txt CLI also gives me the ability to easily manage my tasks right from the command line. As long as I can get to my server, I can get to my tasks. Couple this ability with the excellent, simple iOS and Android apps, and I’m golden.

I have a method for tracking my tasks on my ToDo list. I use deadlines for myself when I can, usually with a “due:” notation before it. I also categorize my tasks (using “+Project”) and the context (“@Context”). This makes searching my task list that much easier.  For example, if I want to find something that has to do with garbage (like the task Take Out The Garbage), I can do this (where I have ‘t’ as an alias for my ‘’ script:

$ t list | grep garbage

After typing these commands for a few days, I finally got around to building some aliases in my .bashrc to make it that much easier.  Here’s what I am doing these days:

Anything that needs to be processed into a project and context can be found like this:

alias tinbox='/home/machias/ list | grep -E "Inbox|inbox"'

Anything that has a due date of today, or is a daily task, or has to be completed on a certain day of the week, can be found with this alias:

alias today='/home/machias/ list | grep -E "Daily|daily|`date +%Y-%m-%d`|`date +%A`"'

Again, pretty simple stuff but still quite valuable.

Once you adapt a keyword type approach to your Todo.txt, you will find that the possibilities are endless. If you’re looking for a simple way to stay organized, give it a try!

Categories: bash scripting, CLI