Dec 1 2010

Missing feature in the iPhone mail client?

Even though the iPhone Mail client is arguably the best mail client on a mobile device, I still feel that it’s missing a crucial feature. Even Nokia phones that didn’t support receiving HTML formatted mail until recently, have had this feature for ages.

I’m talking about scheduled mail downloading. I don’t read mail when I sleep. I also do not want any work-related mail on weekends. On my Nokia, I could easily set it to fetch mail Mon-Fri 8:00–17:00. If I want the same functionality on my iPhone I need to go to the advanced mail settings twice daily to manually switch fetching on or off.

This is such a simple feature, that I’m honestly confused that Apple hasn’t included it in the client. Or am I just missing something?


Nov 29 2010

Swimming in crap

What’s the first thing that you feel like doing after a sweaty workout? If your answer isn’t swimming in crap, you might want to stay clear of Motivus in Turku.

When I came to the gym, I noticed that the floor in the bathroom was wet, but didn’t pay much attention to it. When I got back from my workout, getting ready to hit the showers I noticed that the floor wasn’t only wet, it was flooded. And it wasn’t flooded with just water. No – there were floaters. And toilet paper. Ugh.

On my way out, I asked the person at the front desk if they were aware that their bathroom was overflowing with crap. She said that they knew, but couldn’t do anything about it before a plumber got there. How about you tell me next time, so I can go home before I stand there ankle deep in crap?


Nov 27 2010

Spotify iPhone app forgetting how to multitask

Spotify on the iPhone seems to have a weird “feature”, where it forgets how to multitask every once in a while. It plays music fine, but immediately when you lock the screen or background it, it fades out the music and stops.

Sometimes, it starts working by quitting the app from the task switcher and restarting. Most of the times, however, I need to restart my phone to get it working, which is really annoying. So far, Spotify has been by far the #1 reason for rebooting my iPhone.

Strange.


Nov 25 2010

Enabling AirPrint in OS X 10.6.5

For some reason Apple decided to remove support for AirPrint at the last moment before shipping the newest update of OS X.

Of course, it didn’t take long for people to figure out how to fix that. All you had to do was download three files that were included in prerelease versions of the update. Now, downloading different files and putting them in the correct location is a pain. Fortunately, the good people at Netputing have released AirPrint Hacktivator that includes these files and handles all the tricky stuff.

Download the file, enable AirPrint and you’re almost done. The only annoying thing is that you need to re-add all your printers before you can print to them.

At least my Samsung printer worked like a charm.


Nov 25 2010

Post-Its

Post-it notes are awesome. They are my #1 tool in keeping focused on things I’m doing instead of worrying about what I should be doing.

If I’m doing something but start thinking about having to do something else, I write it down on a post-it note and continue working on it. Having it written down lets me concentrate on what I’m doing, as I don’t have to try to keep the next ten things I need to do in my head at the same time.

A post-it note is also useful as it can only fit a limited amount of things to do – just like your day. Mark McGuinnes wrote about a similar thing in his blog post If It Won’t Fit On A Post-It, It Won’t Fit In Your Day.

I use one post it TODO-note per day. Having limited space to write down things you need to do that day will force you to think about what you can realistically get done in a day.


Nov 15 2010

Getting things done

I am at this moment

  1. Working
  2. Writing a thesis
  3. Taking three university courses

This means that the amount of things that I need to do can easily become overwhelming at times. The trick to managing all the things I have to do and simply get them done is, however, quite simple.

To make the seemingly impossible amount of tasks that need to be done more manageable, there are a few things you need:

  1. A clear picture of what needs to be done
  2. A plan
  3. Perseverance

The first step towards minimizing the feeling of being overwhelmed and not getting anything done is to actually figure out what exactly you need to have done. And when do  you need to have this done by?

For me, this step works miracles. Now, instead of constantly having a feeling of “there’s something I should be doing right now,” I know exactly what I should be doing and in which order I need to do it.

Now, if the deadlines you have still seem impossible, negotiate. Deadlines are almost always negotiable. The important thing is that you let others know ahead of time that you need to move a deadline. Usually, you can get the deadline moved a few days to make it fit your schedule.

The next step is having a plan. This may seem trivial, but many still seem to skip this part. I usually make a quick plan for the next week on a Sunday, based on the list of things I need to get done. This is a very rough plan, usually just putting down a task or two per day.

The beauty of having a plan is that instead of having a goal like “write for three hours,” I have a goal “finish chapter on Test-Driven Development.” With a clear goal in mind, at least for me, it’s much easier to get things done.

The last thing is perseverance. Unfortunately, there is only so much you can hack and optimize. At a certain point you have to just sit down and do the work. If you find that you spend most of your time trying to optimize what you are doing, you should probably stop and concentrate on doing the thing that needs to be done instead.

Oh, I almost forgot. Make sure that when you plan, that you leave in time for sports and free time. I strive to keep at least one day a week entirely off work. A human brain is not a machine, it needs to rest. Working long days every day may work for a while, but in the long run it’ll hurt your productivity. Make sure you get enough rest, and you’ll be able to handle the rest of your work much more effectively.


Nov 15 2010

Dear Apple

I pay for unlimited 3G for a reason: to use it. Why are you imposing an arbitrary download limit of 20 MB on files I download over 3G? I want to be able to take advantage of the service I’m paying for.

If some operators require you to limit this size (looking at you, AT&T), you should do this on a operator-by-operator basis, not punish your entire user base.


Nov 13 2010

Eight months

So, apparently it has been eight months since I last updated my blog. Wow. That’s just incredibly lame.

Like 95% of all blogs (fun fact, 84% of all facts are made up on the spot), I started with a bang and then eventually forgot about blogging altogether. It just sunk too low on my TODO-list that finally it fell off.

Maybe the problem is that I’ve been too strict with keeping my blog tech-related. Sure, I work with technology and spend much of my free time with it, but it’s far from being the only thing in my life. I think that in the future, I’ll view my blog as an extended Twitter, a place where I can comment on things I find interesting and maybe spark a little discussion if someone else also finds that particular thing interesting.

No promises this time, we’ll see how it goes ;)


Mar 20 2010

Update

So apparently I haven’t updated my blog in quite a while. Quite a lot has happened since the last update.

I started working at IT Mill, the company behind the Vaadin framework.I’ve gotten off to a good start, I’m currently working on something I call TouchKit. It’s a combination of a few custom components and extensions to Vaadin that allows you to create web applications that look like iPhone applications using nothing but Java. Check out the video preview below:

Well, that’s all for now. I’ll try to get back to the habit of updating the blog a bit more often again :D


Jan 22 2010

Textile to XHTML converter

A while back, I needed to quickly write some documentation that needed to be in XHTML format. Writing in plain XHTML is a pain, so I decided to write the documentation in Textile and then convert it to XHTML before publishing.

The problem I found was that all Textile converters were made for use in blogs and other online tools. What I needed was a good old-fashioned command line program to convert a given textile file into XHTML.

Fortunately, using Ruby and the excellent RedCloth gem, I could write a small script to accomplish this in a few minutes.

If you have any similar needs, copy the source into a file named textile2html, make it executable (chmod +x) and place it somewhere in your path. Then all you have to do is call textile2html with the textile file as an argument:

$ textile2html documentation.textile
#!/usr/bin/env ruby -wKU
require "rubygems"
require "RedCloth"

if ARGV.size != 1
puts "Usage: textile2html file.textile"
exit
end

# Read input file
textile_string = ""
begin
  input_file = File.new(ARGV[0], "r")
  input_file.each do |line|
    textile_string+=line
  end
  input_file.close
rescue
  puts "Could not read input file."
  exit
end

# Create output file
filename = ARGV[0].gsub(/\.\w+$/, "")
begin
  output_file = File.new("#{filename}.html", "w")
rescue
  puts "Could not create output file."
  exit
end

html_header = <<DOC
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>
DOC

html_header += filename;
html_header += <<DOC
</title>
</head>
<body>
DOC

html_footer = <<DOC
</body>
</html>
DOC

html_output = RedCloth.new(textile_string).to_html
output_file.puts(html_header)
output_file.puts(html_output)
output_file.puts(html_footer)
output_file.close

puts "Done."

Questions? Comments? Post them below.