Psychic Debugging



  • This is kind of a rant, but feel free to share similar experiences :)

    Some of you may be aware that my boss is somewhat less than tech-savvy. Sure he likes his gadgets and whatnot but he doesn't really understand how or why things work. As a software engineer, this can be pretty frustrating when you're trying to design and implement something while your boss is looking over your shoulder demanding new features RIGHT NOW halfway through implementation, and wondering why removing the ethernet cable disconnects you from the LAN.

    Anyway, since we're a small company he also acts as our marketing / sales department. Last week he decided he needed a web version of our desktop software which we (and by 'we', I mean 'I') have spent the last 3 months creating, developed and ready for a marketing demo this week. Thankfully I could just re-use a lot of the back-end stuff and throw together a very rough and ready website for the demonstration. The web app had to work on both Firefox and IE at a minimum on the desktop, but also on PDAs (ahhhhh shit). It's the hand-held devices - obviously - which caused problems. I have a HTC Hero, so I primarily used that for testing (worked very well by the way, I highly recommend the phone!), and my boss has some crappy Windows mobile PDA thing which worked, but not quite as well owing to it's old and rubbish browser. These are the only two handheld devices we had to test on.

    Now, despite me telling my boss 'please don't use anything we haven't tested with for the demo' I arrive to work this morning to complaint e-mails that he couldn't access the website (no surprise, the 'rough and ready' nature of the site is just that - it runs from my machine which I turned off when I went home) from the BlackBerry he had just borrowed from his friend. I call him to tell him the server is back online, and that he is ok for testing. Naturally I ask him how it works with the BlackBerry, and he explains that 'it doesnt work at all - I keep getting a JavaScript error'. A pretty fundamental error it sounds like - since it stops the core AJAX functionality working. Of course I try explaining that since we don't have a BlackBerry to test with, and I have no idea about the browser it uses, it's impossible for me to diagnose this problem, but he could just use his own PDA for the demo. He responds with 'this just isn't good enough' and insists that it's a server side problem (AKA: My fault for not anticipating he would do precisely the opposite of what I asked, and use an untested tool with a web app which only had exactly one week of development time and virtually zero time for even basic testing). I tell him that JavaScript is run client-side, and there's nothing I can do without knowing the browser / any quirks the BlackBerry has which I've failed to code around, but alas, it seems that I am expected to know precisely which standards all browsers fail to implement correctly and successfully work around them.

    In the end we discovered, over a very long telephone conversation interrupted with phone disconnections (he was travelling on a train to the demo) that we could 'kind of' rig the demo by manually refreshing the page every few seconds. It also helped that he actually took some notice of the 'Do you want to enable JavaScript for this page?' prompt that kept flashing up every time he refreshed. I watched the demo 'live' through the SOAP monitor I have installed, and received no angry phone calls except one where he failed to log out properly and didn't want to wait for the server to time his session out (something he knew about, but wouldnt give me more development time to sort out properly). I'm assuming it went fairly well, as if a demo goes badly he usually rings me from outside the building to complain.

    What can I do with a situation like this? Does your marketing department ever throw a spanner in the works during demos by trying to use some un-tested tool / configuration? Is there any way to emulate PDAs on a PC to test apps / web-apps? Do you think I should have handled the situation differently?

    If you have any similar stories, please share.



  • What can I do with a situation like this?

    When you are developing for mobile devices simlpy don't use javascript and try to keep the design as simple as possible. Als fuck the semantic web and use tables if you must otherwise opera for mobile devices will probebly fuck up your layout.
    If you have a lot of time and a lot of test devices you could probebly do things a bit differntly, but since you don't the governing rule should be KISS.

    Does your marketing department ever throw a spanner in the works during demos by trying to use some un-tested tool / configuration?

    Yes, marketing departments do require new features, never talked about to be implemented 3 hours before a demo. It's in their job description or something. For untested features include a stub that will warn the user that this feature is not yet finished. That way when the guy doing the demo clicks it, he will have no other choice but to tell them that they are still hard at work finalising the application. 

    Is there any way to emulate PDAs on a PC to test apps / web-apps?

    There also is no real test environment for pda's/mobiles that I know of. I'm sure there are a few emulators on the market for various mobiles, but I doubt they cover the market completely.

    Do you think I should have handled the situation differently?

    Well beyond the javascript thing, there is not much you can do except inserting stubs for unfished/non-working functionality.


  • Garbage Person

    @Scouse said:

    Is there any way to emulate PDAs on a PC to test apps / web-apps?
    If you have Visual Studio Pro (2005 and 2008, at the very least) you're set for Windows Mobile. It includes a device emulator primarily for use in testing and debugging native WinMo applications, but you can also run IE, Opera, etc. on it as if it were a real device. You have to download operating system images from Microsoft if you don't have the version you want to test (I think 2008 comes with WinMo 5. 6.5 is current, 7 is upcoming shortly)


Log in to reply