Flying Lesson 0: The Introductory Lesson

A week ago I booked myself an hour’s “trial lesson” in a PA28-161 Warrior. Having been fascinated with flight and all things airborne, I figured it was finally time to get myself off the ground and into the left hand seat of a light aircraft, and I’m so glad I did!

I arrived at the airfield and was introduced to my instructor who discussed with me my intentions and what I’d like to get out of this trial lesson. I hinted at my thoughts of a PPL, but made it clear that today I was only interested in one thing: flying an aircraft, suggesting that, if possible, I’d like to do as much as I could to get a really good feel for it. Some further discussion and questioning led to my instructor producing a small model aircraft with a nicely oversized control column used to demonstrate how the control surfaces of the aircraft moved and what affect their movement had on the aircraft’s position in 3d space.

After approximately 30 minutes of discussion and a little time spent waiting while my instructor analysed the surrounding airspace (the sky was busy due to the Fairford Air Tattoo), I was handed a headset and led to the aircraft I’d be flying — a PA28-161 Warrior.

PA28-161 G-GFCA

PA28-161 Warrior G-GFCA Flown from Gloucester to Gloucester 2010-07-17

I climbed into the aircraft while my instructor performed the necessary pre-flight checks around the aircraft. Before long he was in the aircraft, buckled up, plugged in and tuning the aircraft’s radio the the ATIS frequency at Gloucestershire Airport before entering the torrent of information that was delivered in quick succession over the radio. With the preflight checks completed, and the ATIS information committed to a printed paper template, the engine was running and it was time to fly!

Using my feet to steer the aircraft I taxied to the runway where we were instructed by ATC to hold position while another single engine aircraft came in to land. With the light landed and off of the runway, we were cleared for take off. Take off would be my job. Painfully aware at how few minutes I’d actually spent in the left hand seat of the PA28 I taxied out onto the runway facing into the wind with the engine ticking over. As instructed, the brake was released and the engine power increased to full throttle (taking approximately 3 seconds to go from fully back to fully forward). I was astonished at how quickly the PA28 accelerated, but I hadn’t the time to take in how quickly we were moving because I was busy using my feet to try and keep the aircraft moving in a straight line (a strange yet exhilarating sensation). Under verbal instruction from my flight instructor I pulled back gently on the yoke as we passed the half way mark of the runway, and before long the PA28 was in the air and I’d done it! Me!

As the aircraft climbed steadily with me still in control, I took a brief moment to look down and appreciate just how quickly the world was disappearing away below us. I was flying an aircraft, and It was absolutely brilliant. My instructor took over and climbed to over 2000ft, making sure to keep below cloudbase at approximately 2500ft. At this altitude I was flown through each of the manoeuvres discussed on the ground before attempting to do the same. This included straight and level flying, banked turns, rudder control, airspeed adjustments (flaps/throttle), general use and force required to use yoke at varying speeds, climbing, descending, the throttle/carb controls, as well as keeping the aircraft in trim whilst being sure to constantly observe the surrounding airspace for other aircraft. I took a few minutes from flying to take some photos of the Herefordshire countryside below before aiming for Cheltenham on the approach back into Gloucestershire Airport.

I had very little to do in the 5 minutes before landing, which seemed a great deal more complex than the take off I’d done nearly 50 minutes before. As we exited our holding pattern and my instructor brought the PA28 into a steady descent attitude before we touched down on the tarmac. At the end of the runway I was given control again and I steered the aircraft back to its hangar at the Aeros facility on Gloucestershire Airport. We disembarked from the PA28, and a debriefing session took place where the specifics of the flight were discussed before a hypothetical conversation broke out regarding the training involved for the PPL and  the associated requirements (financial, medical, and intellectual) that come with it.

Posted in PPL | Tagged | Leave a comment

Android Scripting: SMS Search

PLEASE NOTE: This script does not currently work under ASE due to irksome utf8 issues with JSON.pm – this is a platform issue. You can follow the progress of this issue here.

One feature I’ve been missing from the default messaging application on my Android device is the ability to search through all of my text messages. As a result I’ve decided to write my own.

While reading through the Android Scripting Environment‘s API Reference Manual, I found the necessary API components required to build a search tool, and a few lines of Perl later and I had one.

It’s far from perfect, however it does JustWork™. Simply invoke the script from ASE, enter a search token, hit search and the script will return a comprehensive list of all your messages that match your search term (where “search term” is defined as any Perl regular expression). Assuming your search result was successful, simply scroll through the list of matched text messages and select one to open its message thread.

Sadly, there’s currently a limitation with regards to the lack of documentation supporting the content://sms… URI schema. I was unable to find out how to open the exact message that was selected, so I had to settle for the next-best-thing, which I’m afraid is the message thread. This isn’t too much of an issue, but I’m aware it’s also not ideal. Any suggestions on how I can combat this will be warmly welcomed.

As usual, the script’s available from my Github repository here. All suggestions, patches, and comments are welcome.

Posted in Uncategorized | Leave a comment

Android Scripting: Location-based Text Message Delivery

I’ve hacked together a small Perl script that sends a text message when your location matches a pre-selected position on the globe. Using the API provided by the Android Scripting Environment, the script will automatically send a custom text message to one of your contacts as soon as you reach a specific destination. The script has been developed with hands free in mind, and will speak to you using TTS when it’s sent a message to your chosen contact, rather than displaying a dialog. It’s also designed to be ran as a background process. The script will sleep between checking your GPS position, so it shouldn’t be too battery-hungry.

The flow of the application is quite straight forward:

  1. Pick a contact
  2. Write them a text message
  3. Select a destination
  4. Reach your destination; the script will automatically send an SMS and tell you it’s done so using TTS

I’ve added a few niceties to the text message system, allowing for tags to be inserted into the message that are substituted for actual GPS information just before the message is sent. These tags include:

  • admin_area
  • country_code
  • country_name
  • feature_name
  • locality
  • postal_code
  • thoroughfare
  • sub_admin_area
  • map_link

Tags must be encapsulated between ‘%‘ (percentage) signs. For example, to send your current position as a Google Maps link, the following text message could be entered:

Hi! Just thought I’d let you know that I’m just entering %admin_area% now, and should be with you shortly. Here’s my Google Maps position: %map_link%

When you reach your chosen destination (let’s assume central Cheshire on your way to Manchester), the above message will be interpreted, and the tags %admin_area% and %map_link% will be substituted, and the following message sent to your contact:

Hi! Just thought I’d let you know that I’m just entering Cheshire now, and should be with you shortly. Here’s my Google Maps position: http://maps.google.com/maps?q=53.3212348,-2.2966268

You can get yourself a copy from github here. Comments, suggestions, and patches are all welcome. Happy hacking!

Posted in hacking | Tagged , , , , , | 2 Comments