From the phone

One of the ideas with the N95 is to be able to blog from it, which is what I’m doing now. I’m using the WordPress web interface via the Opera Mini browser. There is a snag: Opera Mini removes the section of the edit page with the category chooser, so I am stuck with the default category (Miscellany). What I really want is a mobile blogging client.

I looked for a native (Symbian) app and all roads led to PicoBlogger so I grabbed it and installed it. But you have to register the software via the picostation website before you can do anything and the website has been for more than a week.

Then further searching revealed a Java app called BlogPlanet, which I installed (free nagware version). I configured it to talk with this blog but it can’t successfully connect.

Even the web browser built in to the N95 won’t work: log-ins to the admin interface keep failing (using correct credentials, of course). At least Opera Mini can do that.

(Actually, most of this post was written on my Mac in Firefox. Sigh.)

Got the Net in my pocket!

A week ago I took delivery of a new Nokia N95 smartphone. It is to become my new organiser (replacing a Palm T|X) as well as a 3(.5)G phone that gives me the Net in my pocket.

I bought it outright and have it on $20 per month with Virgin Mobile (no contract), along with $10 extra for 300MB of data. This is the best value for me because I don’t use the phone much but want the Net access. Virgin Mobile uses the Optus network so it has the second-best coverage in Australia.

I’m loving it so far and will blog about various aspects of it as I use it more.

Once in a blood moon

This is my ‘me too’ blog post with a photo of tonight’s total lunar eclipse.

Lunar eclipse

Not fair

I have just been to the funeral of a 33-year-old friend who died from cancer. I didn’t know her well but her partner of 10 years works with me. At the funeral I learnt much more about her; it was clear she was a wonderful person with tremendous energy and love who gave a huge amount to her family, her partner and her work.

Thirty-three years old. A fantastic person with everything to live for. Is that fair? No way.

Should life (and death) be fair? Some people’s world views seem to say that it should. According to them, when things are manifestly unfair there is actually some greater good at work that we mere humans cannot fathom (the intentions of a loving god).

Sorry, I can’t buy that. I have come to the conclusion that fairness is a human construct – it is not an intrinsic part of the natural world.

Why do we have this concept of fairness that we hope for so strongly? Could it have something to do with instinctive behaviours that have evolved to help maintain cohesive societies?

REST with JSP

I was interested to read Bill de hÓra’s question about whether servlets and JSP can be used to create a RESTful application without resorting to RPC-style URIs like:

http://www.innoq.com/blog/entry.jsp?id=java_web_frameworks

Absolutely yes! A beauty for me of the web side of Java EE is that the URI can take any format you like. So, to use a URI like:

http://www.innoq.com/blog/st/2007/08/15/java_web_frameworks.html

we could work as follows.

  1. The externally facing URI is probably mapped by a reverse proxy or content switch (or the like) to the blogging application on a Java EE application server. The internal URI might be something like:

    http://s012.innoq.com/javablog/blog/st/2007/08/15/java_web_frameworks.html

  2. The application server might interpret the URI like this:

    /javablog: Root web context of the Java blogging application.

    /blog: Part of the URI that maps to a servlet for serving all blog pages. In web.xml it may be mapped with:

    <servlet>
       <servlet-name>BloggingServlet</servlet-name>
       <servlet-class>com.innoq.blogging.web.BloggingServlet</servlet-class>
       ...
    </servlet>
    <servlet-mapping>
       <servlet-name>BloggingServlet</servlet-name>
       <url-pattern>/blog*</url-pattern>
       ...
    </servlet-mapping>
    

    Further work continues in the servlet’s doGet method.

    /st/2007/08/15/java_web_frameworks.html: This string is available to the servlet using request.getPathInfo().

  3. The servlet tokenises the string and works with the information. For example st is used to brand the blog as belonging to Stefan Tilkov, 2007, 08 and 15 are date identifiers and java_web_frameworks is the post slug, with .html to indicate that the content type of the response is text/html.
  4. The servlet uses that information to retrieve the post from the persistence store and assembles request-scope objects that will be used by the JSP.
  5. The servlet forwards to the JSP, which templates the HTML response. For example:

    request.getRequestDispatcher("/WEB-INF/jsp/blog_post.jsp").
    forward(request, response);

    The JSP is never called via a URI that maps to its directory structure. It can (as in this example) reside under the WEB-INF directory, which cannot be mapped to a URI path.

Caching? That can be done by the servlet or by the application server or somewhere in front of that. Or publishing a post may result in the creation of an HTML file on disk in a directory structure that maps directly to the URI.

It’s Tour time again

It’s July and I am enjoying Le Tour de France again, on TV and via cyclingnews.com.

It’s disappointing that three Aussies left the Tour in the same stage but I’m hopeful that Cadel Evans will do well and maybe win.

I have updated my cyclingnews.com Greasemonkey script to include all the teams riding in the Tour.

Possessive adjective

I hate the expression “my bad” with a vengeance!

Where did it come from? A quick web search turned up a suggestion that it was coined by a basketball player about 20 years ago.

Recently this meme has become much more common via some unknown but virulent vector. I have heard a couple of people at work say it and now my son has started saying it a lot.

I react almost with convulsions when I hear it! It is so mistake!

Who is Silvia?

Who is Silvia? What is she,
That all our swains commend her?
Holy, fair, and wise is she;
The heaven such grace did lend her,
That she might admired be.

—Shakespeare, The Two Gentlemen of Verona, Act IV, Sc. 2.

Actually she is a coffee machine. About a month ago I bought a near-new Rancilio Silvia to replace my five-year-old Gaggia Carezza. Amongst coffee snobs the Silvia is considered the best quality domestic machine.

My Silvia has a secret. She is modded with an electronic temperature control that keeps the water temperature for brewing within 1°F of the set temperature. The normal thermostat in these machines typically only controls temperature to within 5–10°F. Some details are here.

I had a free coffee-making lesson with her at Di Bella Coffee and that has really improved my skills as a barista. Is it the new machine or my new technique that has resulted in my making better coffee now?

Questioning bad punctuation

I have found another really bad bit of punctuation. This is a heading from a full-page advertisement in a cycling magazine. It is for a cycling clothing company with a line of women’s jerseys that support breast cancer research (the giving back):

Sonecca ad title

Are they questioning their own commitment to breast cancer research?

I can’t fathom why the magazine editor allowed this egregiously sloppy copy into the magazine. It makes the advertiser look stupid and doesn’t reflect well on the magazine either.

Do not adjust your set

I found yesterday at work that images in recent blog entries wouldn’t show up. Everything else was served OK; seemed that they might be corrupted. But the images loaded correctly at home.

Last night I discovered the cause. The images were all exported from Lightroom with EXIF and all the other metadata. Some of the metadata was being blocked by the security filtering at work.

My recent picture of a bicycle pedal screw does not show up at work:

LOOK Kéo pedal screw

Here is the same photo, exported from Lightroom with the Minimize Embedded Metadata checkbox selected. This one does show up at work:

The ‘lightweight’ image still has minimal EXIF metadata, including the colour profile information.

« Previous PageNext Page »