Clean up Google Mail Folder Structure on your iPhone

If you use GMail, or Google Apps for Your Domain on your iPhone, you’ve probably noticed an odd folder structure, with most of your folders being found under [Gmail]. This looks ugly, and it turns out, is easy to fix:

  • In your “Advanced” Mail account settings, set the IMAP Path Prefix to “[Gmail]/”
  • (The trailing / is added automatically)

Now your folders will look flatter and much prettier. This works in Mail.app on your desktop Mac too! And don’t worry — it’ll still be able to find the Inbox on its own.

Baby Update

Someone who randomly pops into our life, says something smart, then disappears for awhile, randomly popped into my life via IM today and asked why we weren’t blogging about the current pregnancy very much. So this one’s for Tara, and anyone else wondering…
It’s not a real big mystery. See we’ve been pregnant for the past 2 years, so its lost a lot of intrigue and excitement.
It’s not literally 2 years of course. There was a brief respite in there about 7 months ago, when I had my shapely wife back. But I promptly knocked her up again, and she’s back to cankles, and I’m back to bending at the waist to give her a hug — when we’re both standing up.

week33_thumb.jpg
Click the image if you’re
considering getting pregnant
yourself.

Yup, pregnancy #2 is progressing about as you’d expect. Better than the first one, in fact, so there hasn’t even been an excuse for an up-to-date ultrasound. The last one showed a nose, mouth and ears, so we’re assuming Abigail will look like a human when she’s done baking. We’ll find out in about 7 weeks.
Aside from a healthy, normal gestation, we’ve had a lot of other, more pressing, issues to focus on…
Thing #1 has had an ear infection for the past 3 months. When Nicole pointed out that it might be affecting his hearing, and thus his language acquisition, we pushed very aggressively to get this dealt with as soon as possible. They originally told us it would be another month before we could even see a specialist, but a phone call from a pushy dad got us in a lot earlier.
The specialist told us about what we already knew, and Benjamin is going to have minor surgery in February to have tubes put in his ears. This is a little scary for us, because it involves a General Anesthetic, which means he’ll be right out for about 20 minutes. But its a pretty routine operation, so we probably have nothing to worry about.
Right now his hearing is a “tiny bit below average” so we’re gonna nip this in the bud before it becomes a problem for him.
So that’s February. Abi’s due in March, but before she arrives we need to get our tax money back, plan for Nic’s move in April and arrange the movers for the big haul in May. Couple that with an upcoming release date at work, and we’re pretty much too busy to worry about things we can’t control. Abi will arrive when she’s ready, and Ben will adapt — kids usually do.
So far he’s doing fine with the belly. Sometimes he pets it like the cat — we’re teaching him “gentle” since he also likes to pull the cats tail. Once he thought it would be funny to smack the belly. He doesn’t think that any more.
We are, of course, looking forward to a bigger family, and to a smaller Nicole, but these things have happened on their own timing for thousands of years, and now that we’ve got the experience well documented, we really only think about it if something unusual happens. And so far it hasn’t…
7 weeks and counting. We’ll be sure to let you all know when it goes down 😉

How-to:Change your iPhone IMEI

Disclaimer: Modifying the IMEI on a wireless handset for the purpose of using a previously stolen handset is unlawful. The following information is listed for legitimate purposes only. Any use of the following information is at your own risk and subject to the local laws of your jusidiction. CodePoetry assumes no liability for any damage that may occur to your equipment. Use of the following information will likely void your warranty.

There are a few legitimate reasons as to why you would want to change the IMEI on your phone. The most likely is that your phone was bricked by apple and the IMEI was changed to a generic IMEI so that they can tell you bricked it and void your warranty. Or, if you are using an iPhone on a pre-paid AT&T plan and want to be able to use SwirlyMMS to send/recieve MMS messages, you will have to change your IMEI to be that of a non-iPhone so that AT&T’s periodic scans of the network will not disable MMS for your phone number.
In adition to a mac, you will need the following items:

To get started, open up PwnageTool, choose the options for original iPhones, select Expert at the top, and hit next.
Select your original firmware v2.1 file. If you don’t have PwnageTool in the same folder as your bootloader files you will now have to tell it where to find those. If it offers to search the web for you, hit no, and choose the ones you already downloaded. We are going to be making two custom 2.1 restore images. The first one will be the “neutered” restore file, and the second one will be the “clean” restore file. For the first one, select General and hit next. Ensure Activate Phone, Upgrade Baseband, and Disable Partition Wipe-out are all selected. I left my root partition size at the default of 500 MB. On the next screen, you need to have Neuter Bootloader selected, Update Bootload, and choose Downgrade to 3.9. This is very important! Also, choose unlock baseband and Auto delete BootNeuter. Next you can add any Cydia packages that you want installed by default, I left this blank and moved on.

What's happening to me?

Last week I downloaded some music from Journey.
Yesterday I was strangely driven to download some from Kansas
Let me be clear, early 80s music has never before appealed to me. Is this some side effect of aging? Does everyone, at some point in their life, find themselves drawn to the music they might have heard while they were in the womb? Cause I’m listening to ‘Carry on my Wayward Son’ and find it oddly… rockin…

Using Mail.app with multiple users — using AppleScript: Part 2

The previous post, about hacking multi-user support into Mail.app, seems to have struck a chord, and there have been lots of great questions about how to extend the script, or customize its behavior or appearance. Things tend to get lost in the comments, so I figured I’d create a part 2 to answer some of the questions that have popped up. If you haven’t already, check out part 1 to get caught up.
Some of these might seem a little basic to long-time users, but lets remember that not everyone has been using a Mac since OS 7 (or earlier!) and cut the newly Mac-faithful some slack…
Evan asks: Absolutely perfect, exactly what I was looking for. Well, almost. How about adding a 3rd account?

A third account is done very easily by modifying the script slightly. (Update: If you’d like to do more than 3 accounts, see the solution in the comments which changes our user interface to a listbox)

The first thing you’ll want to do is update our crude little user interface to ask about the third account. This line here decides what options show up in the dialog box:
display dialog "Choose the Mail account to use" buttons {"Jon", "Nicole"} default button 1 with icon note
You can add as many up to 3 options as you want, just by comma seperating them, so instead of {“Jon”, “Elizabeth”} you could have {“Jon”, “Elizabeth”, “David”}
Then you need to modify the “if” statement to support each individual referred to. In the original we said:
if the button returned of the result is "Jon" then
-- do stuff to change account to Jon
else
-- do stuff to change account to Elizabeth
end if

The else is a problem now because it assumes only two conditions. Instead of an else, we can do an else if — one for each individual we want to switch between:
if the button returned of the result is "Jon" then
-- do stuff to change account to Jon
else if the button returned of the result is "Elizabeth" then
-- do stuff to change account to Elizabeth
else if the button returned of the result is "David" then
-- do stuff to change account to David
end if

Inside each condition you’ll need to disable all the other accounts (set enabled to account X to false) and then enable the account they’ve chosen.
Eric asks: I would like to attach to the script the mail icon or a similar icon. Then when I added it to the dock, it is more obvious to click it to run.

This is one of those tricks that long time Mac users will know well, but is not very obvious for newer converts. You can copy and paste any icon from any application/document/folder to any other in the finder. Just click on the icon you want to “borrow” from and hit Apple + I for “Get Info.” In the info dialog, click on the icon and hit Apple + C to copy the icon to the clipboard. Now find your target icon (such as the script you just made) and “Get Info” on it, click the icon in the dialog and this time hit Apple + P to paste. Now you have a pretty icon!

Note: This will be limited by permissions, so if your user doesn’t have permission to ‘write’ to the target object, you won’t be able to paste.
Eric, having figured out the above on his own, then asks: My 2 problems are: 1, I can not add the script to the dock. 2, when I click the script icon, it take me to the editor where I then have to click RUN.

A script, by itself is just a document. In order to make it into a runable application, you have to save it as such in Script Editor. From the File / Save As… dialog change the File Format to “application.”

Under most circumstances you won’t want to check the box for ‘Run Only’ because once you do, you cannot edit it in Script Editor again. Also, uncheck the box for ‘Startup Screen’ to make it run a little more gracefully.
You may also find that the Dock is not the best place for your script — since it will essentially give you two Mail icons. What I did instead was to enable the AppleScript menu and use that for all my common scripts.
If you want to do this, open the Application AppleScript Utility in the AppleScript folder and check the box for ‘Show Script Menu in the menu bar.’ You may also want to uncheck the box for “Show Library scripts” to hide the example scripts Apple includes to make your menu shorter.
Note: For scripts to show up in this menu you’ll have to save them where your Mac expects your scripts to be: In your user’s Library folder you’ll find a folder called “Scripts.” Put them, or an alias to them, in there.

Found on the back of my coffee cup…

So-called “global warming” is just a secret ploy by wacko tree-huggers to make America energy independent, clean our air and water, improve the fuel efficiency of our vehicles, kick-start 21st-century industries, and make our cities safer and more livable. Don’t let them get away with it!
– Chip Giller

Embracing My Inner Geek: Part 1 – The User Group

We heard a sermon a couple weeks ago about giftedness — about focusing on your primary giftedness, because that’s where God wants to use you most.
Whether I like it or not (and sometimes I don’t) my primary giftedness is technology. Despite everything else I think I am, or wish I was, there will always be people out there who when they see me will think “maybe I can get him to fix my computer…”
So for the next couple months, aside from the incredible amount of work we’re going to have to do for this move (frustratingly, none of which can be started yet), I’ve decided to embrace my inner geek, and focus on what I know I’m strongest at.
But rather than babble about code snippets and hacks I’d like to try to talk about the more personal side of being a geek. To communicate the spirit of who we geeks are, and maybe help some people understand what it is about being a nerd that is so compelling.
For example, in most careers you can guess at a person’s successfulness or competence at their job by evaluating their outward appearance: a salesperson who has nice shoes, a good hair cut and who drives a nice car is probably good at their job.
nerd46422fm3.jpgIn my field, and in my experience, the inverse is frequently true. The more unruly the hair, or crazy the beard; the more out-of-date the wardrobe; the larger the glasses, the more likely it is that the individual is a sheer genius, and the most brilliant coder you’ve ever met.
Of course that’s a broad generalization. There are some of us geeks who aren’t computer science types, but adequate coders which occasional glimpses of genius, who also happen to have a decent eye for style or design.
And while some engineers’ are so in-tune with the code they develop that they lack basic social skills, some of us, while not as likely to bleed in binary, are able to express solutions both in code and in words. Some of us are even articulate and not entirely socially awkward.
Its the combination of the different skillsets that makes a good team. One such combination, between an awkward but brilliant engineer and an articulate geek, started a company called Apple Computers back in the 70s. And whether you’re using a Mac or a PC (or even a business iphone) because you’re reading this site, you are benefiting from what they wrought.
Back before there was Internet — or at least before you and I could use it — there was the UG and the BBS. A BBS, or bulletin board system, was usually run by a guy who had a computer, a couple phone lines, and a couple modems — although you could run one with only one phone line if you wanted. They functioned as a chat room, a message board, a downloads page and a place to play crude games. Most BBSes used strictly text and keyboard symbols, often in different colors to define the online “world.”
I remember once being given a list of phone numbers that may have been associated with a BBS and ‘war-dialing’ them on my Atari computer (with a 300 baud modem) looking to see what I could find. It was pretty cool to find people on these boards that shared common interests with you, but whom you’d probably never meet.
I did actually meet one System Operator (or SysOp — someone who ran a BBS) who lived near-by when I was about 13. He was deaf, which limited his options in real-life, but online he was a god of his own little empire, respected by his users solely because of what he knew and who he was as a person.
Even better than the BBS, though, was the UG or User Group. Nothing in the new age of the Internet can compare to the UG. If you’ve ever been to a swap meet, you have a small idea of what an UG might be like. I was much too young, in this early age of computers, to drive myself to meetings, but I can remember a couple occasions where my dad drove me to a MUG meeting (Macintosh User Group) in London, and what I remember most was the atmosphere.
A User Group encompasses all levels of geek. There would be little old ladies who dreamed of writing their memoirs on a computer. There would be business people and teachers who wanted to get more organized. There would be hard-core geeks who loved to hack at hardware or at code to make their computers do things the designers never dreamed of. And always there was toys to be found, seen, traded or discovered.
To this kind of geek, a computer isn’t a device. Its an extension of self. Its a quill in the hand of a poet, or a hammer in the hand of a skilled carpenter, or a piano under the fingertips of a talented musician. It provides a hundred different ways to express yourself — and it invites you to invent a hundred more.
Of course, its a source of constant aggravation when things don’t work as expected, but even in that it is a problem to be solved, a challenge to be tackled, and a way to connect with other people. For every problem your computer presents you, there are, and always have been, a dozen other people who’ve worked through it, and found a solution — or better, a part of a solution that complements what you’ve discovered so that the victory is shared.
0596007191_lrg.jpgA geek is not judged by their appearance, nor by any external factor. We are judged by the elegance and beauty of our solutions. Even on competing platforms, two ideologically different geeks will share the same respect for a righteous hack.
In many ways the Internet, while being the possibly the greatest thing ever invented, has destroyed the geek community. Now that any newbie can get online, there are no rites of passage left, and no proving ground to establish yourself as worthy. Any knowledge-less retard can join in a conversation he doesn’t understand and start a flame war, and “users” are so much more inept than ever before. There’s no passion required, no problem-solving skills necessary to get online any more. So imagine my surprise when I discovered that there’s still a MUG running meetings only a few miles from where I work!
In fact there’s dozens of them still around, and if their websites, devoid of any attempt at marketing or otherwise making them look appealing to the average user, are any indicator, the spirit of the UG of the 80s and early 90s still lives on. The one near me still puts out a newsletter — in dead-tree format, even!
I’m going to next month’s meeting. I’m going to put on my Weezer album (the blue one, from back before they were temporarily cool), dust off the Mac Plus, and geek out like its 1994. And I’m going to enjoy every second of it.
After all, if God made me a geek, why fight it?

Tunneling For Security – Problems with a Proxy

Here’s the problem I’m currently working on. I don’t have it solved yet, but I’m close — blocked from educating myself further by the very system I’m trying to escape. At any rate, here’s what I’ve got so far…
For purposes of security, I want to tunnel my traffic through SSH… on a Mac… behind a Proxy.
You’ll find lots of webpages when you search for “ssh through proxy” that tell you how to use SSH as a proxy server. But I already know how to do that. I want to put that to use, but behind an existing proxy which limits Internet access. This isn’t nearly as well documented.
For starters, on Windows you can use Putty, or the excellent app Tunnelier to establish an SSH tunnel to your home server, even behind a Proxy. You simply need to provide the proxy settings.
This is very useful because if you’re in a coffee shop, or somewhere else with open and exposed WiFi, it might be important to you that your passwords or online banking are encrypted.
On the Mac, there’s a decent app called SSH Tunnel Manager that provides a UI for connecting to a tunnel. Its not much easier to use than a command line, but it does make things simpler. The only problem is, its not proxy aware either. It only works on an already unfettered Internet connection.
So we’re back to the command line, trying to teach SSH how to use a Proxy server for its ‘Net connection. What I’ve learned:

  • SSH does not natively know about Proxy servers, but it does provide extensibility so that you can configure it to get help from another program
  • You configure this by editing the /etc/ssh_config file using a text editor
  • man ssh_config reveals that the parameter you want to add is called: ProxyCommand
  • A *nix app called Corkscrew provides this functionality for other flavours
  • The app has been ported to Mac via the Darwin Ports project
  • You can download DarwinPorts and make it work like apt_get by syncing it with its server
  • Then you can tell it to install Corkscrew for you
  • The DarwinPorts app uses rsync to get the latest sources to install on your computer
  • rsync does not natively know about Proxy servers, so the sync will fail and you won’t be able to get Corkscrew…

I’ll try to get Corkscrew installed when I’m not stuck behind a Proxy and see if I can’t figure out how to edit the ssh_config file to make it use a proxy server. What’s frustrating is that the Mac has the Network System Preference that claims to be global, but that none of the command line apps they provided in their BSD flavour respect that configuration…
I’ll post more if I figure this out.

Every day I wake I tell myself a little harmless lie:The whole wide world is mine

Well its done. The last difficult conversation has been had, so I can share our news with you all. This likely won’t come as a surprise — to those who don’t already know. But its big for us, and its been important to approach it as the massive challenge that it is…
We’re moving back to Ontario.
Lest this seem anti-climactic given the video — to which I’ll speak later — let me take you back two years and try to communicate what it took to move here in the first place.
We’d entertained the idea of moving to the States for a long time, and in July of 2005 it seemed like that might actually happened. Then our contact dried up. We went on a missions trip together to Asia in August, hoping, but not knowing, if things would start moving again on our return.
In October of that year that contact reconnected with me in earnest, and I began the long interview process. It was almost December when the offer came in officially — more money than I’d ever made, but just barely enough to make the move worth it. We took it, not for the money, but for the adventure, and began probably the most grueling 3 months of our lives.
December was full, not of Christmas, but of runs across the border: getting my Visa status, getting drug-tests, and finding an apartment. Nicole had her hands full arranging a moving company and packing/purging our belongings, since we’d be paying per pound for the move.
The first Sunday in January ’06 we went to our home church in Ontario for the last time as members, said some good-byes, then took a walk together in the park where we were engaged. After that I got in our brand new SUV and drove the 9 hours alone to a completely empty apartment, with an air mattress, some clothes, and enough dishes for one meal at a time.
I lived there, with my meager belongings (and later a 12″ TV I bought at Walmart after I got my signing bonus — nearly a month after I was expecting it) subsisting mainly on Chunky Soup and Kraft Dinner, for a month while Nicole finished preparations for the move. She ended up getting here a week ahead of our stuff, which got held up in the moving truck by a snow storm. By that point we had a bed and a couple more dishes.
I have never been so broke and scared and alone as when I first got here. This literally was “starting from scratch.” But we had a plan to make it work, and my first order of business was to find a church where we could get involved — a family of believers who could help make this place home. And God provided Northway Church almost immediately. To quote the pastor, we “hit the ground running” getting involved in every way we could. We knew God didn’t send us here for a job, He sent us here to teach us how to Go, and we intended to serve our hearts out and learn everything we could.
And we did. For the better part of 2 years we served and learned and grew. God blessed us while we were here with friends and with a family and with a successful career. And then He made it clear that we were done, and that it was time to go home…
This move will be no easier than the last. Although we’re not moving to a strange new country, there are new challenges that make this unique.
Last time we moved with 0 kids. This time we’ll be moving with 2 — one a newborn.
Last time the cost of the move was offset by $10,000 signing bonus — all of which was required. This time the cost of the move is coming out of our pockets.
Last time I was moving to a new job. This time, we’re not sure what will happen with my job.
Last time my bride and I were separated for a month. This time I’ll be missing my whole family for just as long.
This is no small challenge in front of us. The plan is for Nicole and the kids to move home to her parent’s place about a month after Abigail is born (which is supposed to be around March 20th) and start looking for an apartment for us to live in. She’ll have about a month to find us a place, during which I’ll be arranging the movers and holding down a job here, while sending pretty much the entirety of my pay checks back home to Canada. We plan to use our New York income tax refund to pay for the move itself.
As I said, the outcome for my career is uncertain. I had the difficult conversation with my boss today, and its in his hands to investigate the options and try to arrange what he feels is best for the company. I love my job (although depending on what part of a project cycle I’m in, I may not tell you that) and its our hope that I’m able to continue doing it from Ontario — despite the fact that there is no office near-by. That’s not in my hands right now, however, so the best we can do is pray, and trust God has a plan…
As for why we’re moving home. There are three main reasons that I’ll speak to briefly, for now, although I may need to work them out further in later posts.
The first can be looked at in one of two ways. One way is a little depressing, so to look at it another way: we’ve accomplished what we set out to do. As I said above, we came here to learn and to serve. We would have kept doing that forever, if God had allowed it, but it became clear that He had other plans. To put it plainly, the doors closed. And although people, including (but not exclusively) myself, could be found at fault for parts of that experience, we asked God this past August for clear direction on what came next, and His answer was inarguable. We lived this adventure to its fullest, and we are very proud of how God used us and taught us. That’s a big part of what that video is about.
The second reason we’re moving home, dear American friends, is your economy. You can argue partisan politics, right versus left, all you want, but the harsh reality of the matter is, someone screwed the pooch — repeatedly. Your war, your spending, your debt and your government are hurting your freedoms, your wealth and in many ways, the very fabric on which this incredible country was built.
For many of you, this will be a dip that you can ride out. As a country you will recover and learn from this, and as voting citizens, you can flex your rights and ability to make changes. But as of this posting, your national debt is $9,194,599,829,656.43 — or $30,203.24 per person — its growth accelerating rapidly. A significant majority of that debt is owned by China.
Fortunately, the incredible structure of this country allows you the power to change that.
As visitors here, however, we have no such recourse, and we are held hostage by the value of the US dollar. With each point it drops, our ability to plan for our future is put further in jeopardy. As much as we’ve loved this place, its not our responsibility, nor would it be wise for us, to see the US economy through this low point. We need to be where our income is backed by the power of our vote — which is in Canada.
This doesn’t mean that Canada is in much better shape than the States — only that by being there, we get a small say in what our government does. Something we sacrificed by moving here.
The third reason is our own responsibilities. As much as we’ve loved serving and lending our strengths to the goals of others, we have some things of our own that we need to take care of:

  • Our children need family around, who can support them and help them grow… I have not traditionally placed a lot of value on proximity as a factor in the strength of a relationship. My family is made up of explorers and wanderers — my brother and sister are in Calgary, while my parents are in Asia — and we all know that we love each other, regardless of geography. Nic’s family’s giftedness, however, lies in warmth and hospitality. In creating welcoming and nurturing places to live and grow. And those are the things that are most important for our young children right now.
     
  • As adults, Nicole and I are in that wonderful stage of life — smack between paying off our own education, and starting to wonder how we’re going to pay for that of our kids. As much as my heart yearns to wander, the responsible thing for us to do right now is settle down, finish paying for our school and our cars, and build some equity. These are gateways to freedom that we need to continue to tackle in earnest — before our 30s catch up with us.

So we’re moving home, because its the right thing to do. Do not think, for an instant, that this is “out of our system” or that we intend for this to be our last move. Because that’s another intent of that video — to remind ourselves, and those that love us — that the incredible adventure of pursuing God across the globe is at the very core of who we are as a couple.
We will settle for awhile, where its safe and comfortable, for the benefit of our kids, and to take the steps necessary to earn the freedom that we want. But we will not get too settled nor too comfortable…
Why? Well that’s the final intent of that video: to answer the question why. If I failed, with what I put together, to communicate the sheer joy and excitement and immense reward derived from our adventure in New York, then look up the verses I put at the end.
It turns out that its not just what we believe — its what God commands His children to do…
For those who missed it, here’s the video again:
http://video.google.com/googleplayer.swf?docId=8142299272694822528&hl=en

BIG RED LETTERS!! SUPERFLUOUS PUNCTUATION!!!1

If my project ships on time, with no casualties — its apparently contributed to a heart attack and a car accident already — then it will be a miracle… and I’ll be really proud of this team.
Who woulda thought that software engineering could be this dangerous?