My Leaving Godaddy Strategy

I’ve decided on how I will leave godaddy, and spread out the pain.

While initially, I thought I would just transfer everything in one shot, that’s actually pretty inconvenient.

So in the end, I’m just turning off auto-renew, and will transfer each one as they come due. I’ll be using Domainsatcost.ca, who have been working out well for me.

Lost on how to transfer from godaddy? When you looking at your domains detail page, you need to click Manage next to the Locked status, and unlock it, then Send By Email for the Authorization code.

pickydomains.com Followup

So, in the end, pickydomains.com did come up with a few ok names, but we finally decided to go in another direction. I’ll probably give it another shot in the future if I find myself in the same bind.

Encyclopedia Brown and the Case of the Opus Card That Stopped Working Like Normal

A few days ago, my opus card stopped working while in my wallet. I started having to take my card out, and for the life of me, couldnt figure out why.

This has been going on a few days now, and was driving me crazy. At first I thought it was the opus card. Even though i only take it out once a month, it was somehow degrading. 

I realized today the problem was a new credit card. It must have some sort a chip in it that the turnstiles are picking up, so they get confused.

I just turned my cc 180º and it seems to have resolved the problem - the chip in the cc was overlapping the position of the opus card, and even though the cc was further away from the turnstile, it was still being picked up.

case closed.

Untitled

As most of you know by now, i’ve started a new venture with my brother.

There is nothing new or unique in one problem we are having: naming. Finding a name is hard. Finding a good domain name is hard^2. Just ask the folks over at shwowp :) 

When doing some research into the hyphen-in-domain-name-issue, I came across pickydomains.com and have decided to give it a shot, and I’ll report back whether it was successful or not.

stay tuned…

Update to Shopify Textmate Bundle

Just updated the Shopify Textmate bundle. It now has support for a config file - so you can have multiple shops in a project. The most obvious use case is a dev shop and a live shop, and switching between them.

It’s a feature I’ve wanted to see for a bit, but I had to do some R&D on part of it, and never really had a chance (the effor to benefit ratio wasn’t there, since I’m not doing a ton of template work these days, and there’s so many interesting things to work on :) ).

However, I just started work on a cool new project which has me working on a new tmbundle, and I leveled up on bundle development, so I knew what how to do the switching properly now. The bundle still works with the old method, so any users of the bundle shouldn’t notice a difference. 

Anyhow, hope it helps people.

m.

 

 

Building Big Big Tweet

Some story on big big tweet.

A few weeks ago I had this idea for a tool which would allow me to easily post multi-tweet tweets on twitter. Here’s the original sketch:

I was pretty convinced the front end could be pieced together in about a day.

Overall, I’m pretty happy both with what I learned, and what I put together in 1 weekend and 3 nights of yui3, python, google app engine, twitter api.

yui3 was, as always, a pleasure to work with. The new grids system is great. Learnt about the synthetic valueChange event, which is handy when you are watching a textarea. yui3 is full of all sorts of wins, so if you’re doing front end app development and haven’t checked it out, you’re doing yourself a disservice.

Pretty pleased with the code to break up the text into tweet sized chunks. I think i’ve finally broken through to where recursion feels natural to think about. You can see the full script, in context. There’s room for improvement, but it doesn’t smell too bad. :)

Bonus points to yui3 - I did 0 testing with mobile, everything worked on ios the first time i tried it. an android browser crashed :) I’ve disabled preview-on-typing in mobile - that feature didn’t make sense for the screen size. And that seems to have fixed the problem on android.

Last month I was introduced to google app engine, - I didn’t have much to do with the backend work at the time (pretty much copy paste), but I liked what i saw. So I decided to give it a shot for this project, and I have to say I love it. It’s dead easy to get started serving up static files, comes with a good tool (os x) for running your app locally and deploying. No hassle server. It’s possible I might hit the quota limits, but that would be a good problem to have.

With (very) little knowledge of python, I was able to glue together a working backend - twitter oAuth (thanks mikeknapp) + api, user session(thanks dound). Overall, I find myself liking python, and had a fairly easy time of it. The biggest hiccup was missing that you need .items() on a dictionary when iterating. And that I lack experience with python debugging. i <3 named args, and think doc is just a swell idea.

One part of the idea is I want an easy to play with twitter framework, where I can just focus on the front end. In the end, I think i succeeded, and when I find the time & know a bit more I will extract and clean up that portion with some clear instructions for deploying. I think it might be handy for some people.

The final tool pretty much matches what I first imagined.

I ended up removing “edit individual tweets before posting” functionality - seemed unnecessary. The auto-splitting worked better than i thought it would, so the preview seemed enough. Link shortening also works pretty well. There’s a few other features that I’d like to add at some point - direct messages being top of the list.

As for the next step, but I’m thinking it might be fun to find a designer on forrst.com who likes the app idea, and would like to do a reskin, and run an a/b test against my design.

You can go ahead and kick the tires - you don’t have to login to try out the multi-tweet preview function. Just start typing.

Let me know what you think.

ka-kaw!

ps: you can follow @big_big_tweet for updates, or me, for general nonsense.

Beginning Ruby

I decided a few weeks ago to pick up a new language. The choice was being between python and ruby. My day to day is php & js, so this is all coming from that angle.

Python

I’d like to play around with tools like tc and stashboard. I’ve heard with python, there’s often only one way to do things - this has some appeal. But python seems to be transitioning right now from 2 to 3. Also, I don’t have fond memories of the last time I dipped my toe in the python pool - the shallow end mind you. Though I suspect homebrew will make it easier next time around. And I’ll be honest - the whole whitespace thing is a bit of a turnoff.

Ruby

The whole ruby ecosystem is very appealing. My experience with gems to date has been pretty smooth. I use some gems via command line. It would be good to be able to hack on some of them. I’m jealous of services like heroku. In the web domain, ruby seems to offer a lot of solutions to problems that matter to me. Not that PHP doesn’t always have equivalent solutions - just that with ruby, it seems like a lot of the friction has been removed.

Ruby it is.

I’ve been learning ruby over the last few weeks. I used the humble little ruby book as my tutor. Basically put in about 30 mins a day on a semi-regular basis, and was done in about three weeks.

Overall, I was happy with the book. Once in a while I would encounter an example that didn’t work - but those were just boss battles :) When I hit a broken example, at that point I had the info required to solve it. If you’re already experienced with coding you’ll be able to skim some portions.

Some initial ruby impressions:

I totally get why people go gaga over ruby - especially if you come in straight from php land. For me it wasn’t the whole angels singing, double rainbow experience, but I think thats mainly due to my javascript experience. So I’ve already had some of those wow moments that you might get coming straight from php to ruby.

$ is reserved for globals, so you hardly see those around. When glancing at ruby code, I thought the heavy use of the pipe | would bother me, but in the end it really didn’t.

No ; After a few weeks of ruby, I began to resent that I had to use the ; daily. Though oddly it bothers me more in php than js.

Losing return?

In ruby, return is implied in many cases. I don’t know if I’ll be able to get out of the habit of being explicit and using return, especially in the immediate future. I’d hate to get in the habit of leaving out return, and when switching between langs, keep forgetting it.

Proc vs lambda. fight!

My initial reaction to Proc and lambda is that I lean towards lambda. I favour explicitness these days. Proc seems to lend itself to side effect bugs, especially for a newb. A return in a proc will break out of the calling method as well.

Maybe more valuable in frameworks, where you can accept variable args? That would be one good reason for using proc over lambda. I’m sure as I read through other people’s code, or with more ruby xp, I’ll see some use. One liners? Performance reasons? bueller?… bueller?…

Love unless

The readability is another big plus. Simple things - unless instead of if !=. Readability is one of those things that’s easy to dismiss, until you get hooked on it.

Really liking statement modifiers. Being able to just append a condition to a statement is really nice.

Inevitably, i find myself writing initially in longform,

if(!File.exists?(filename)) {
    File.open(filename, "w")
}

but each pass it gets smaller, till you realize you can just write something like

File.open(filename, "w") unless File.exists?(filename)

Yield looks interesting. I’m curious to see how I use it.

Anyhow, my first ruby script - downloads your theme file from posterous, and saves it locally.

Next on the ruby reading list - Ruby Best Practices. I suspect I’ll do a skim through first, and a deeper reading once I have some ruby under my belt.