@madpilot makes

Bad customer support = Unhappy campers

I do a lot of front end development, and as a result, I use Adobe Photoshop a lot. I also use Acrobat Professional frequently and Flash and Illustrator enough to warrant purchasing the full Design Premium package. Said Design Premium Package is pretty expensive, so to spread my costs, I’m using the subscription edition. Recently, I had to change my subscription plan, so I cancelled it, and re-subscribed, and so begins my trip down the rabbit hole that is Adobe Support.

Because I had paid for my subscription online, and opted for the downloadable version, I should have received a serial number in my email. I didn’t. Thankfully CS4 goes in to trial mode, so I could still use it whilst I sorted out the serial problem. Time to call Adobe…

Firstly, it was neigh on impossible to find the Australian support number on their website – when ever you try to access support, it defaults to you the US – I assume because the subscription edition doesn’t have an Australian number. Thankfully, one of my friends had general support number in her rolodex.I call the number, and after 45 minutes on hold listening to horrific elevator muzak, I get through to the product activations. The operator was polite enough – but they have to be – the script they are reading would demand it. I give them my email address (and say yes to allowing them to contact me on it), and then give them my phone number in case I get disconnected. After the operator goes through the rest of their script, she realises that actually I need a different department, and asks if she can transfer me. Whilst I would have though that to be an obvious solution, I play along. Phone goes dead.

I can see why they ask for your number. I left it 10 minutes to  see if they would call back. Nadda. So I call them back, another 30 minutes on hold, plus 5 minutes going through the tier-1 product activation script, and the next customer server representative transfers me through. Finally I get to the right department – Subscriptions.Unfortunately, the tier-1 subscriptions customer service representative can’t help with missing serial codes, so they take down for phone number and email address (for the 3rd time) and setup an open case in their support console, in preparation for a tier-2 support officer.Now, I play the waiting game. By this stage Christmas has come and I’m away and forget about CS4 for the moment. Due to inactivity (on their part, mind you) it would seem that they closed the job off. Result: No serial number.

I get back from Christmas, and call up again – by this stage I only have a week left on my trial, so I need to get this sorted quick smart. I go through the exact same steps as above (including the phone disconnection), and once again, a ticket gets opened. After 48 hours, I leave a message following up, as I still have no reply. After 5 more working days (By this stage my trial has finished), I ring back. They ask for my case number, which I give them, which returns a completely different customer case. After giving them my email AGAIN, they find it, and transfer me through to subscriptions. Magically, the service agent finds me a serial number and give it to me. Unfortunately, the downloaded version of the subscription trial requires a serial number with only numbers. The one she gives me has letters. Her reasoning behind this is because I didn’t install it off the DVD.

So, I’ve just uninstalled CS4, and I’m waiting for it to reinstall, which has taken (so far) about an hour. I tell you what, the serial number better be right, or shit will hit the fan.To be continued…

UPDATE: It’s the wrong serial number.

UPDATE 2: I’m once again waiting for tier-2 or tier to email me back.

UPDATE 3: Well, it’s all sorted now! It turns out that the subscription pack is being trialled in Australia, so Adobe hasn’t quite got the process down yet (They might want to make this a little more obvious…). The issue I had was resolved by circumnavigating the Adobe store, and just using the eSellerate console to purchase the new subscription. So all is well that ends well – I’ve provided my feedback, so hopefully this drama will conclude with a better user experience for subscription customers.

Thank you to everyone involved in helping to fix the issue: AJ Mercer,  Brett Favour, @Adobe_Bing and Kirsten Harris. Special mention too to Tian Cheng and Nick Hodge for making some noise through their personal networks too.

How-to tunnel the VMware Intrastructure Web Access control panel

If you have some sort of *nix (Linux, OSX, cygwin), then simply run the following in a shell:

ssh -L 8222:localhost:8222 -L 902:localhost:902 -L 8333:localhost:8333 your.vmserver.com

replacing your.vmserver.com with your ACTUAL VMware server.

Then point your browser at http://localhost:8222 (This is the unencrypted URL – which isn’t a problem, because you are tunneling over SSH)

Note, that this trick really only works if you have an SSH server running on your VMware host.

Ideas 6: The Edge of the Web Edition

Perth has had it’s day in the sun, by holding the last five Ideas events, but now it is Brisvegas’ go. The theme: Edge of the Web, because we have two speakers giving you exclusive previews of their Edge of the Web presentations: Ash Donaldson presenting Designing to persuade: Shaping the User Experience and yours truly blabbing on about Stuff They Never Taught You at Website School.

We will be at the Plough Inn, Southbank on October 21st 2009. So if you are in Brisbane, and have been meaning to get to an AWIA event, now is your chance!

Members are $45, non members are $55. Bargin.

See you all then!

…and we still don’t have day-light saving

Yep, Software Engineering is dead

You know that feeling you get when something you’ve been taught to believe in gets discredited and because your belief was tenuous at best, the walls come tumbling down around you and then you have a huge weight lifted off you shoulders?

Pascal just posted this on the 220 mailing list. Amen. It’s something that I’m pretty sure I’ve been articulating for a long time. Whenever someone has asked me why software is hard, I always use this analogy:

If you ask a Civil Engineer to build you a bridge, it is easy to spec out. You know how far the bridge has to span, what sort of foundations you need, and as a result you can make a recommendation about what sort of bridge you need. The Engineer can build you a little model – you can look at the model and say “Yes! That is a bridge. That will do nicely”. They can mathematically model the bridge to make sure this doesn’t happen. They build the bridge and if it allows things to cross from one bank to the other, you have a success.

Unless you are building “Hello World”, a Software Engineer’s life isn’t so simple. You have different platforms, users, stakeholders, contexts – it gets exponentially harder with every feature that gets added. I once did a unit at Uni called Formal Methods which tried to mathematically model software. It was stupid. The code we modelled was like, nine lines long, and required a 32 page proof (I didn’t even get close). Stupid.

Of course, academics have been trying to shoehorn software into engineering for ever. In first year, they taught us UML which I guess is similar to architectural drawings or flow diagrams or something. I’m sure UML works really well when working with the waterfall model of software design, which has strong ties to old school, proper engineering. I couldn’t imagine having to go and update hundreds of UML documents every time a minor change was required. We are also taught in first year, that the waterfall model is pants in the real world, which by association makes UML nothing more than a nice thought experiment. (I’m still bemused by the number of Software firms that put it as a requirement for graduate Software Engineers – basically because coming up with job descriptions for inexperienced programmers is really hard).

Sure you can argue that testing is a software technique that we (should) use, but this is the exception to the rule. I guess the conclusion we need to come to is that Software isn’t an engineering problem – it’s a people problem. (Some may say, it’s a creative problem – that’s also true, but buy me a beer and I’ll explain that traditional engineering is too, so the argument doesn’t further my point). This in itself is a problem, as (gross generalisation ahead) boffins who like coding, tend not to deal with real people very well.

Further discussion on our internal list suggested that creating software products is the way to go. I think I want to agree with this – there are many examples of off-the-shelf products that are extremely popular: Microsoft Office, Adobe Photoshop etc. In these situations, the customer works with in the workflow of the software, and that seems to work. So do we as developers need to convince our clients that the feature they want may not be needed? Do our clients actually know what they need? Of course this view is not with out it’s flaws either – users will generally be working against the software, rather than with it. Is working with a sub-optimal solution better than battling with requirements and budget overruns?

I can’t help to think that there is something we are missing. It would seem there is a disconnect between what our clients want and what we can provide. If you look at the classic project triangle, your client wants to minimise price and time, and maximise good (I hope my English teacher isn’t reading this), where as we want to maximise all three. So the crucial “pick two” part flies out the window. Either we start sacrificing the good, re-negotiate the price, or try to stretch out the project to restore the balance – none of which makes for happy clients.

Well how about adding fat to the quote? In theory, this is fine – if a client sees value in an “inflated” (but more likey a realistic) price then everyone is happy right? Well, not really – software development is much like homework assignments: You start out with plenty of time, and the best intentions, and then end up pulling an all-nighter to get it finished – and you still only get a C at best. I suspect this is because it’s impossible to lock down requirements of an abstract problem. This isn’t only because of the difficulty in describing what we don’t understand, but because we don’t even know what half of the problems are going to be.

And this is our quandry – how can we estimate unknowns? Not just “we haven’t seen this before but it looks like X” unknowns, but “What the hell? How is that even possible?!” unknowns. Other areas of Engineering encounter these problems occasionally – we get them all the time. So, the solution (he says as if there is one) is to minimise the risks and/or consequences of these unknowns. Jobs that deal with people do this all the time. If you work in marketing, you can postulate all you like – you can’t be sure how a campaign will work until it does. Marketing is reactive.

When you make a change you can’t be sure what will happen. Sure, you can put an ad in the Yellow Pages year after year, because it has brought in on average Y leads per year – but there is no guarantee this year will be the same. It seems that the humanity-based sciences are happy with this, but quantitative-loving geeks don’t like that. Hell, binary is black and white, not Gray.

So, perhaps the key is to treat software as a living breathing thing. Agile programming and iterative development can help, but they are means to an end – they don’t work with out communication and understanding between people. We need to break down the barriers between provider and client – the question is: Is that even possible?

The first SchwaCMS goes live!

After the last announcement of MadPilot’s new CMS, I’m proud to follow it up with the announcement of the first site to use Schwa as it’s backend: Greenvale Mining NL.

Greenvale was designed by the ever-so-talented Adrianne from bird.STUDIOS, and was sliced by the latest edition to the twotwenty family: Niaal Holder from Speak.

We have a number of sites being launched over the next couple of week so watch this space!

Dear clients…

Please watch:

Introducing meftos.com

I’ve been pretty busy lately, and haven’t had anytime for some good old fashioned hacking. I’ve also been copping some flack for letting my ruby-fu lapse (it seems a lot can happen in three months. Actually a lot happens in three minutes), so I decided to clear a couple of hours last weekend to have a play with GitHub, haml and sass, and just to generally get friendly with ruby again.

I recently read a couple of articles about the doom and gloom around URL shorteners and how if a couple of the big ones collapsed the entire intergoop would fall on it’s face. Whilst that is a little bit of an over exaggeration, there is some food for thought in that statement. I was also reading about the collapse of magnolia (I know – old news. Sue me). Many an innocent bystander lost many months or years of bookmarking just because one site went down. Whilst I’m a fan of the cloud, I’m also a bit of a control freak, so this was a little scary.

I’ve been using del.icio.us for a while, but only for the bookmarking facilities, not the social part. And even though Yahoo probably won’t go broke any time soon, I was wondering what would happen if they decided to close the big bookmarker in the sky down. So meftos.com was born.

meftos.com is a personal bookmarker and url shortener built in Rails. It only has one user (you), and you host it yourself. From a URL shortening point of view, there is no one point of failure – sure if a number of individuals remove their servers, you will have some broken links, but that if far less impact than one mega site bombing.

If you have a server that can run Rails, you too can install your own copy – feel free to skin it, and change it’s same. All of the source code is on GitHub, and I’m told you can nearly use it out of the box on Heroku. Play around, feel free to kick the tyres. There is still some stuff to do – namely search, better user management (There is no simple user management gems in Ruby any more – I’ll probably have to write my own) and some other bits and pieces, but it seems to work ok.

More importantly, I got a little glimpse again of why coding makes me happy. That should keep me warm on those cold, winter nights…

Ideas 5: The accessibilty edition

The Australian Web Industry Association, together with Web Industry Professionals Association, present Ideas 5. This year’s Ideas is is focussing on Understanding WCAG 2.0 & Preparing Websites with Improved Accessibility. If you are a web developer, and you aren’t thinking about accessibility then you REALLY need to get your butt down to the Melbourne Hotel in Perth on 22 of April 2009. Tickets are only $40 for AWIA members ($55 if you aren’t. In unrelated news, AWIA memberships are pretty cheap)

The two talks will be given by Roger Hudson and About Andrew, both experts in their fields, so seriously, it’s a great opportunity to hear from people that know what they are talking about.

Go to the website and get more info. Go on. Seriously.

SchwaCMS goes live

For the past couple of months, I’ve been locked in my room, hacking away at a (probably not-so) top secret project – which I have just pulled the big switch on. So ladies and gentleman, let me introduce you to SchwaCMS. It’s a hosted CMS product that has taken ideas from many years of toiling away on other peoples’ CMSs.

There is a complete feature list on the website, but some of the geek highlights:

  • Upload progress bar
  • Proper use of HTTP status codes (including 410 – Gone)
  • Full UTF-8 support (Check it out — the ? isn’t a HTML entity, it’s a real schwa)
  • Weight based keyword extraction from content
  • Full-text search, including a Did you mean? function
  • Integrated spell checking
  • Just-in-time scaling and caching of images
  • HTML is automatically cleaned on save
  • The ability to export the menu as an ordered list for inclusion in third-party apps, such as blogs or forums
  • A demo that is tied to the browser session, as as soon as the user logs out, their demo site gets blown away

I’m pretty excited about this release. It’s built on a custom PHP framework, and is hosted on my very own hosting box – it almost feels like MadPilot is a real web company now! (It’s only taken 8 years :P)

Go check it out: http://www.schwacms.com

Previous Next