If you've never supported your own software, spending just one day doing tech support will be an eye-opening – not to mention humbling - experience. You'll have to keep your ego in check, because most people who contact tech support do so because they're having problems with your software, some of whom will use colorful language to describe the annoyances they're running into.
You also need to hear an unfiltered view of what people want your software to do for them. If you rely solely on your tech support team to tell you the features that customers want, chances are you'll develop those features without really knowing why people want them.
And while I totally agree with this, he fails to mention one critically important thing: you have to use the software yourself as well.
But these are two sides of the same coin (and I know he knows this). The best, indeed probably the only way, to really find out where your software has problems, where it needs improving (and yes, also where it does well) is to actually use it. You need to see how it handles in the field, either by using it yourself  or via feedback from people who are using it themselves. Sounds obvious, doesn't it, yet it's amazing how many layers exist between developers and customers at most companies because they insist on playing Chinese Whispers through an army of tech support people, sales droids, managers, their managers, their managers' managers, to the point where the people actually building the software have no contact whatsoever with the people who use it. Not exactly a recipe for first-class software.
Years ago, I used to work at a company that wrote newspaper publishing software and one day, they arranged for all the devs to go on a tour of one of the major newspapers here in Melbourne that used our software. It was quite a buzz for us to see floors of journalists and editors all using stuff that we had written in their day-to-day work, and I'm sure it was kinda interesting for them to meet us (we only copped a minimal amount of abuse 🙄 ).
And for the same reason, I don't mind doing tech support for Awasu either, since I get to see how all you people are using Awasu, which not only gives me an idea of what features and improvements are needed, but also that it's being used at all 🙂 The only reason software exists, the only reason it gets written at all, is to provide a service, to do something useful, so to see people using Awasu to help them get their jobs done is gratifying indeed. I've always said that a sign of really powerful, well-designed software is that people use it in ways that it was never originally intended for, and so being able to help people like kevotheclone when he comes to me saying "I've thought of another weird-ass way of using Awasu, do you think it's possible?" is pretty cool as well 🙂
But getting completely OT now, reading Nick's linked-to post reminded me of how similar our backgrounds are. We both used to cartoon in our younger days (although it sounds like he was a lot more serious about it than I ever was), we both play music (he plays piano, I play sax), I do Aikido, his son and brother both do karate so he may well do it as well. Clearly it was our destiny to write feed readers
And of course, we are both programmers, although I do C++ while he does (sniff) Delphi 🙂 Nevertheless, I'd still buy him a beer  if he ever came to Oz. Still, while we probably don't look alike, if we were twins I would bet good money on me being the evil one...
 And being the developer has the advantage that if there's a feature I need, I can just add it in myself. Very OSS 🙄  The highest compliment you can pay someone in Australia. No, really! 🙄
OK, it's official, I admit it, I have the soul of an engineer. Not that this is necessarily a bad thing - Awasu is a pretty solid program because of the development practices I have in place - but it's still kinda icky to have to admit it 🙁
Now, I've never been a prototypical geek, gadgets hold no interest for me whatsoever, I do a lotof thingsoutsideof IT and anyone who's ever seen me perform live would never walk away thinking "man, he's such a nerd." But a couple of things this past week have left me scratching my head, mumbling "WTF was I thinking?!"
First up, jrmarino posted a question in the forums asking if there was some way to stop Awasu from trying to update channels if the computer was not connected to the net. Of course, there is (Auto-detect an internet connection), and so the obvious next question is why this isn't turned on by default.
You'd think it'd be easy to do but as it happens, figuring out if there is a working internet connection is insanely tricky. Awasu has to jump through quite a few hoops to do this and unfortunately, the process is not 100%-reliable (especially if you connect via a LAN). In other words, sometimes it will think it's online when it isn't, or worse, vice versa. Worse, because if Awasu thinks it's not connected, it won't automatically update any of your channels and will just sit there on your desktop like a fat lump.
So, when deciding what the default setting for this feature should be, I had to choose between two less-than-ideal options. Having it on means that Awasu will sometimes not correctly detect if there was a connection and thus not work properly, but having it off means that people like jrmarino have to struggle with Awasu blindly trying to update channels even when it's offline, barfing up error messages left, right and centre, until they find the Auto-detect an internet connection setting (if they find it at all).
The engineer in me instinctively recoiled at the prospect of having Awasu's default behaviour be "sometimes doesn't work properly" 🙄 and so I chose to have it off by default but in hindsight, it should've been on since it works most of the time, while the problems jrmarino described are guaranteed to affect everybody who doesn't have an always-on, 100%-reliable connection.
In the same vein, I've just checked in another database optimization that makes Awasu simply fly. I've had the option of putting this optimization in for quite a while but haven't done so because there is a very small chance, if Windows crashes or you lose power at just the wrong instant, the moon is in the right phase and you happen to be looking to the left and up a bit, the archive database might get corrupted. Of course, Windows is fairly stable these days (since NT4, at least, the oldest version Awasu is supported on) and power cuts are rare so the chance of a corruption is pretty remote but again, to design things in such a way that a corruption could happen (and didn't have to) is anathema to the engineer in me. But Awasu running slowly affects everyone, all the time 🙁
For the next alpha, this optimization will be turned on and we'll see how it goes, but even though my brain is telling me otherwise, I'm still loathe to turn these things on by default, knowing that they can sometimes not work properly. I mean, a database corruption is pretty serious, right? 🙄
It's been a while since I got my brown belt in Yoshinkan Aikido but I finally upgraded it to black
The grading was actually a few weeks ago but the instructor likes to make students wait before giving out results 🙄 and I only picked up my new belt this afternoon. My feeling is pretty much the same as it was when I got my brown belt: it's nice to have but it's not really what it's about. Much more important is what I've learned, am able to do and how I've trained to get to this point. Having said that, I must confess to looking seriously cool in the mirror while training today
Shodan (first degree black belt) actually means "beginning step" and contrary to popular belief, doesn't mean you're an expert martial artist but in fact, the complete opposite. It's like a high school diploma; you've learnt the basics and are now prepared to start the real task of studying the art. I remember my instructor once saying that he didn't bother to really teach students until they had got their black belt 🙂
If you're interested, check out this documentary on Yoshinkan Aikido, filmed at my dojo in Australia. And this is an insanely cool clip of my instructor, Joe Thambu Sensei, demonstrating at the 50th All Japan Yoshinkan Aikido Demonstration where he won the Tokubetsu Embu Sho (prize for best demonstration)
Anyone want to arrange a Feed Reader Developers' Smack-down? I'm ready! 😎
It's been mighty quiet here on the Awasu weblog of late and as long-time users know, this doesn't mean that we've gone on an extended cruise holiday but are instead toiling away in the dungeons working on the next release
One of the great benefits of a company blogging like this is the relationship that it helps build with your customers. You know more about me as a person than as a developer :-), that I do Aikido, play a lot of music and have spent a lot of time in Asia.
To continue on with this process, we've set up a new feed. The Awasu DevLog will post details of each new feature and bug fix as soon as they are submitted into the source code repository! So, if you've asked for something to be added to Awasu, you'll know the minute it's been done 🙂 and for the rest of you, it'll be a bit of teaser as to what to look forward to in the next release.
And, of course, it'll demonstrate that we really are working hard, even when the main weblog goes quiet, not sunning ourselves on the deck in the Caribbean.
Although in these days of global connectivity, you can never really be sure... 😎
As I've written several times, I've been training in Aikido for some time now.
The 50th All Japan Yoshinkan Aikido Demonstration was held in Japan recently and one of my instructors, Sensei Joe Thambu, had the honour of winning the Tokubetsu Embu Sho (the prize for the best demonstration). You can check out his performance here (Quicktime video); it's awesome :o! The suwari waza (techniques done while kneeling) he does at the beginning is unbelievable - I don't move that well even when I'm standing!
There are more clips of other people, some of the highest ranked in Yoshinkan Aikido in the world, here.
Long-time readers of this blog may remember that I've been training in Aikido for a while now. Aikido is an unusual martial art in that there is no competition whatsoever nor any free sparring. It's purely a defensive art, designed to let you take care of yourself and deal with any threats without (necessarily :-)) hurting the other guy.
The guys at my dojo have just released some DVD's that demonstrate not only the basics of Yoshinkan Aikido but also practical applications of it as well. You can check out some clips here if you're interested in seeing what it looks like.
I've been so busy with Awasu (plus all the other things that conspire to stop me from having any free time whatsoever :-() that I haven't been training as much as I would like. Seeing these videos make me want to start training full-time again.
I had an Aikido grading yesterday and did well enough to be awarded my brown belt. While I've never really been too concerned about what colour belt I happen to be wearing, this one is nice to get since it's the first "real" belt and so something of a milestone.
I've been working pretty hard over the past few weeks getting ready for this grading and saw things that made me realize that this is much more than just a sport I do a few times a week, the dojo much more than just a fitness centre.
I've always been fascinated with how people learn and one offshoot from that is an interest in the process of teaching. At the Shudokan, I have been able to watch some amazing teachers in action and have the privilege of knowing them off the mats. The head instructor wrote recently:
The word Sensei literally means 'born before', not deity, demi-god or priest. As one who is born before his/her students in terms of budo, a teacher has a great obligation to pass on the principles and techniques of the art and guide their charges through the journey that is budo. Not every black belt is an instructor and there is a big difference between an instructor and teacher. What makes one an instructor? What makes one a teacher?
I hear many students in many dojos call their teacher 'Sensei' with great respect and reverence but this is not reflected in the way they treat and deal with their teacher. Our words are a reflection of who we are but our actions are truly what we are.
I've been doing Aikido for about a year-and-a-half now and am just loving it. While I used to fence for many years, I've always wanted to do a martial art. Being Asian-looking was enough to get me out of fights when I was in school but I figured it would be nice to have something to back it up with should the need ever arise 🙂
Anyway, this weekend I was away at a two day training camp and am feeling it now (despite a lengthy soak in the spa when I got home) 🙁 It was a pretty full-on two days but I got a lot out of it and it was good for the soul to get offline for a bit as well 🙂
Awasu and the stylized Japanese character in the orange box are trademarks of Awasu Pty. Ltd. Other brands and product names are trademarks of their respective owners. Awasu Pty. Ltd. believes the information in this publication is accurate as of its publication date. Such information is subject to change without notice. Awasu Pty. Ltd. is not responsible for inadvertent errors.