Challenge Update

At the end of April I set myself the challenge of gaining a stone in weight and running a 5km race 2.5 minutes faster. I ran the same race on Tuesday in 19:15, painfully close to my speed target of 19 minutes. However, I also weighed myself again but have actually lost a pound. Gah! Must try harder…

July 1, 2010 · 1 min · matt

Solved: How to rotate with GWTCanvas

Having trouble rotating something you’ve drawn with GWTCanvas? It took me a little while to work out, but GWTCanvas works slightly differently to Graphic2D in Java. It’s important to realise that with GWTCanvas, when you invoke “rotate(r)” you’re actually transforming the coordinate space that will be used for subsequent drawing. canvas.moveTo(50, 50); canvas.lineTo(50, 10); canvas.stroke(); Produces: In order to rotate it, you must invoke rotate before you start any drawing....

July 1, 2010 · 1 min · matt

Inspired

Yesterday, I attended a workshop hosted by the talented Lou O’Bedlam. Although I wasn’t fully aware of it at the time, I was getting inspired. Not only was I getting inspired to take more picutres, I was getting inspired to focus on stepping out of my comfort zone and going after my dreams. Lou talked about recently teaching his nephew how to ask a girl out. His advice was simple: “Just ask her”....

May 24, 2010 · 4 min · matt

Buying Your First SLR

I get asked the following question quite a lot: I want to buy an SLR, what one shall I get? In my software engineering life, clients often approach me with a description of software they want me to write. What you really want is for them to describe the problems they are having that need to be solved. That way you might be able to design a better (simpler) solution. I’m sure it applies to every discipline, but a simple method for finding out the root problem is to just ask Why?...

May 22, 2010 · 3 min · matt

Bristol Bike Rental scheme comes to an end…

Bristol have been trialling a bike rental scheme for about a year and I had high hopes for it. I paid my £20 in support of the scheme even though there were no bike stations in the places I needed them. I feel if there were more bikes and more stations it would have been ideal. (see my comment from back then…). Unfortunately, they’ve decided to end the scheme deeming it unsuccessful:...

May 12, 2010 · 3 min · matt

The Challenge: 1.5 stone heavier and 2.5 minutes faster

Last night I ran a pretty shonky 21:33 (~7m/mile) for the Bridge Inn 5km. I used to be faster but haven’t really been running since last year. I also need to put on some weight because at 6 foot I’m pretty puny weighing in at 10st 9lb. According to the NHS weight calculator I should be over 12 Stone. I’m setting myself the challenge of knocking 2.5 minutes off my 5km time (I’ve never run it under 19 minutes before) and reaching 12st 2lb before the Bridge Inn 5km summer series finishes on July 27th (the website hints there’s one in August but I’m pretty sure it’s wrong…)....

April 28, 2010 · 2 min · matt

Security Roles Require Names

Remember the DD tags with SRRN:

April 7, 2010 · 1 min · matt

Commodore64 – BASIC – Base64

Not much to say here. Of the 4 autehntication types, “BASIC” uses Base64, in the same way that on a Commodore 64 you’d write BASIC. Showing my age there.

April 7, 2010 · 1 min · matt

Listeners and Events

There are 8 Listeners to remember. We know there are attributes in 4 scopes because we know how to Pick the Right Scope Automatically, but you can’t listen to Page attributes, it doesn’t make sense, so that leaves us with RSA; Request, Session and Application. These tally with the objects: ServletRequest HttpSession ServletContext There is a Listener for each of these objects for lifecycle events, and for attribute events, so that gives us 6 of the Listener Interfaces:...

April 7, 2010 · 1 min · matt

11 EL Implicit Variables

All the EL implicit variables are Maps except for pageContext. To remember the attribute-holding scope objects, just remember to Pick the Right Scope Automatically and stick the word “Scope” on the end: pageScope requestScope sessionScope applicationScope Then you have 4 param and header objects of the form : (param|header)[Values] param paramValues header headerValues Then I just remember the last 3: cookie initParam pageContext (not a Map, it’s the JavaBean)

April 7, 2010 · 1 min · matt