How to sync Thunderbird with Remember The Milk

Lightning is one of the most powerful extensions for Mozilla Thunderbird. The standard calendar and task list are handy enough, but with a little bit of tweaking it can sync with a number of online services which makes it even more powerful. There are a handful of tutorials for syncing with Remember the Milk, but the extension listed is no longer maintained and is unavailable on the Thunderbird extensions site (the old cache is available here). Thankfully there is a slightly updated version of the plugin that works with the latest version of Thunderbird.

Please note: I didn't write this plugin, but found it on the cached page and am sharing it here as I found it useful.

Install the extensions

Before you can start you'll need to install Lightning and the updated sync plugin which can be downloaded here (mirror). Once it's installed, setting everything up is a breeze.

Subscribing to the calendar

Open a calendar tab in Thunderbird and add a new calendar (right click on the sidebar and select "new calendar"). Add a network calendar, select the "Remember The Milk" provider, and enter a few details.

thunderbird-remember-the-milk-sync-1.png
thunderbird-remember-the-milk-sync-2.png

Once this is set up, you'll have a single task that contains details on how to authorize the plugin. Go to the URL in this message and allow the plugin to access your account. Once you see the confirmation screen, head back to Thunderbird and mark the task as complete.

thunderbird-rtm-3.png

If everything worked, you'll receive a welcome popup in Thunderbird and your tasks will start to sync!


Psycho Bean Post Mortem

"Psycho Bean" was my entry into Reddit Game Jam #6. The theme was “energy”, which threw up a few interesting ideas. The finished result ended up quite differently from the first draft, and underwent a major rewrite near the end.

The original "psycho bean" is an idea my brother came up with many years ago during one of our sugar-fuelled game idea sessions. This challenge seemed like the perfect time to bring that idea to life.

Getting Started: Mind Mapping

Below are computerised versions of the two mind maps I used when coming up with ideas for the game. There are plenty of dead ends, but a few of the ideas filtered through to the final game. The decreasing energy seemed like a good way to go, and the transformational aspect tied into the whole "psycho" idea.

psychobean-brainstorm-1.png
psychobean-brainstorm-2.png

The original game was going to be a platform game with shooting elements (i.e. Mario with guns). As you can see, things didn't end up that way.

A Brief History

I didn't make a time lapse video, but instead took screenshots at key times of development.

Version 1

psychobeanv1.png

The very first screen, taken about 2 hours into the coding process. Most of the assets were borrowed from Monster Mash to help get something playable as quickly as possible.

Version 2

psychobeanv2.png

The first version with shooting and collision. At this point in development it was possible to spawn enemies, shoot them and jump onto the platforms.

Version 3

psychobeanv3.png

This was taken at 8:30 on Sunday morning, roughly 10 hours before the deadline. The platforming was gone (as explained in “what went wrong”), and replaced with top-down shooting instead.

Version 4

psychobeanv4.png

Two hours later, and the bullets were flying. There was still plenty left to do (more enemies, the weapons, points etc), but it was playable and more fun than the platforming.

Version 5

psychobeanv5.png

This is the version that was entered. Bullets, AI, “Sugar Rush” mode and a statistics screen at the end.

What Went Wrong

I made most of the mistakes from Monster Mash, and some new ones too!

  • Even Slower Start – Saturday was the Reddit Triangle meetup, which took up most of the afternoon. Needless to say, not much code was written until the evening.
  • Scrapped Everything – When development ended on Saturday night I wasn't happy with how the game played. The platforming didn't feel right, and every now and then the player would stick to the ground after jumping. I didn't think I'd be able to fix things in the morning, so a total rewrite was in order.
  • Graphics Dictated Gameplay – Switching to the top down perspective had a few side-effects. The biggest was the lack of diagonal movement and firing, which made the game less enjoyable than it could have been.

What Went Right

  • It Got Done – Like Monster Mash, at the end of the jam I had something playable. There were a few features that didn't make the cut, and a lot of the game is unpolished.
  • Development Screenshots – Although I didn't make a time lapse, I did want to capture what the game looked like at various points in development.
  • Scrapped The First Version – Moving from a platformer to a top-down shooter meant a lot of time was wasted, which can be a killer when there's a tight time limit. Fortunately the changes made the game far more playable which is the most important part.

Lessons For The Future

Lessons for next time:

  • Iterate faster. Get it playable. Make it fun.
  • Don't be afraid to throw things out if they're not fun.
  • Don't worry if it looks stupid. It's not a beauty contest (although having a nice looking game certainly helps to attract votes)

You can play the latest version here: Psycho Bean.

View all of the entries here: Reddit Game Jam #6: Final Submissions


How to make Thunderbird filters play custom sounds

There was a thread on Hacker News lately from someone that made their first sale. I mentioned that my email client was set up to play a sound when a sale is made. This was easy to set up in Outlook 2007, but the default installation of Mozilla Thunderbird doesn't support playing sounds for filters.

All is not lost though. There's an addon called "ToneQuilla" which fixes this problem, so you can play all the sounds you want!

Here's an example of how to set up a simple filter that plays a custom sound when a BMT Micro affiliate sale is made.

Creating the filter

Look under Tools -> Message Filters. Click "New" button to open the filter creation dialog.

thunderbird-filter-play-custom-sound.png

Set the filter to run on messages that have a subject with "BMT Micro Affiliate Order" in them. You can also add extra conditions for other sales emails, depending on who emails you.

Under "Perform these actions", add a "Play Sound" action and link to your favourite sound. There's plenty of cash register sounds at freesound.org, although personally I prefer the cash register noise from Sonic the Hedgehog :)


Old Dexterity articles added

At the end of 2010, Steve Pavlina released the copyrights on all of his website material. Seeing as Dexterity.com is no longer available, I've added the old Dexterity Software articles to the developer articles section of the site. These made a huge impression on me when I first read them, so I'm happy I can share them here.

These articles are very dense, so it's a good idea to either print them out or bookmark them for when you have some time. Even though the world of software has changed a great deal since these were written, they're still full of valuable information.

I recommend starting with Cultivating Burning Desire and How to Get More Done in Less Time. The articles on marketing and sales are also well worth the time to read, and you're sure to find at least a few actionable ideas to improve your site.

Product Development

Building a Successful Indie Business

Marketing & Sales

Personal Productivity & Motivation


Monster Mash Post Mortem

A few weeks ago I took part in the 4th Reddit 48 hour game jam. I'd never taken part in a game jam before, but it's something I've wanted to do for a while. To make things a little more interesting, I set myself the target of building my entry in Flash, a language I've never used before.

The theme was "Metamorphosis", so straight away I was looking at things like Dali paintings, insects and mutations. My first idea was to mix a puzzle game with a festive picture, such as decorating a tree. I'm not much of an artist though, so a game where art is the primary feature wasn't a good fit.

monster-mash.png

One idea that constantly came up was changing the appearance of something over time, either main character, the enemies or the world. I really liked the idea of attaching enemy parts to make yourself stronger, almost like Cyborg Justice or Biomotor Unitron.

In the end I settled on a simple version of "half minute hero", with some mutation bits thrown in for good measure. There's lots of room for improvement, but the game was playable and pretty fun after a bit of tweaking.

What Went Wrong

Slow start – I didn't actually start coding until about 16 hours in, which didn't turn out to be a big problem, but those 16 hours would have been handy for polishing things up at the end.

Awful balance – The number one comment I got was that the game was far too hard. I'd originally intended to have about a dozen enemies to fight, but only had time to sprite 3 mutations so the rest were cut. This left the level caps and final boss out of balance, so the game was impossible to finish (although this was fixed shortly after the final submission).

Hidden Stats – There was no way to find out how much experience you had, your level or how many of each enemy you have defeated (to figure out how you'll evolve). Again, this was planned but was cut at the end.

Unintuitive – Probably the worst part. There's no obvious explanation of what's going on, or how to get the various enemy parts, it just happens as you play.

What Went Right

It got done – This is the big one. At the end of the 48 hours, there was a playable game. Considering it was my first Flash, I was super excited. More importantly, it was a big confidence boost.

Planning saved a lot of time – I did jump in to code at the start, but took a break a few hours in to design the screen layouts and game flow. All the features I wanted were listed on a piece of paper in order of important, which really helped towards the end when things got tight.

Lessons For The Future

There were some excellent games entered, and I'll admit the high quality really surprised me, especially given the short development time. Presentation played a big part in the higher rated entries, so that something to work on next time. Having a distinctive style is important to help you to stand out, although having a fun game is the key factor.

Lessons for next time:

  • Spend time polishing and play testing. If possible, have someone else play the game too. I knew the rules inside out, so I couldn't see the bigger problems.
  • Join in. I worked alone and missed out on chatting with other developers. Next time I'll hook up a second monitor and join the party.
  • Make a time lapse video. I didn't make one this time as it would mostly be me reading the Flixel documentation to see how things work, but I'm sad that I missed out on seeing how the game evolved over time.
  • Start early, design more, get it playable ASAP. As soon as it's designed, get something playable working. This helps with motivation, but also lets you know if you're onto something fun.

You can play the latest version here: Monster Mash.

View all of the entries here: Reddit Game Jam #4: Final Submissions