Thu 08 May 2008
MailServe Pro for Leopard Manual takes shape
Category : Commentary/MSPforLeopardManual.txt
I've spent a lot of time the last few days thinking about this - how to develop the MailServe instruction manual so that even a novice could set up a mail server and take advantage of every feature, with zero handholding from me. It used to be murder, supporting things like Sendmail Enabler and Postfix Enabler for Jaguar and then Panther, four years or more ago. So, it's an interesting problem - is it possible, through the design of the software's user interface, and the design of the accompanying instruction manual, to make something so complicated do-able by even an idiot (metaphorically speaking :-). And I'm not talking about clicking a button and turning on Postfix or Dovecot or LDAP. That's not a problem now. I've got that part pinned down pat by all the know-how built up over the last four years. I'm talking about all the attendant issues that I've had to help a user grapple with - domain names and how do they work anyway?, why can't I reach my server from my own network?, why can't my PHP script send mail past the Smart Host? I've solved these each time, user-by-user. And I've helped people understand how mail servers work, building their knowledge layer-by-layer. But I've had to repeat the answers every time. I could have had a forum, but you'd still have to dig through it. Is there some way to build these answers, solutions and ideas into the narrative structure of the instruction manual? The web page - with its hypertext links, accompanying graphics, and even animations (if I were so inclined to expend energy doing that) - offers a rich medium on which to organise the information to meet that pedagogical need. So, I have the information and I have the medium - it'll be a creative act to shape that medium to display that information so that it can be acquired as know-how, internalsed as knowledge, and expended as a new capability by another person. This is the first page of the new manual. It's like performance art, a work-in-progress. Can the objectives be met? How will it look at the end? I don't mind doing it to find out.
Posted at 4:33AM UTC | permalink
Mon 28 Apr 2008
MailServe Pro, ready for business
Category : Commentary/MailServeProReadyForBusiness.txt
So, we are selling MailServe Pro now. We're asking people to pay first and use their serial number/email address combination to download the zipped application. It's a new workflow - you can't directly download the application. I now know for sure that the workflow works and can concentrate on improving the documentation and working on further enhancements. I think this will go some way to towards limiting piracy. I didn't want to build in "shrinkage" through piracy to the selling price, thereby making legitimate customers pay for the sins of non-paying users. And I didn't want to make the code overly complex just to do serial number checking - the scheme we use is not too difficult to break, but more elaborate schemes can have un-intended side-effects that derail users during the running of the program. So we thought about this for quite a while and decided to try this out. Pay-then-download may not be hard too hard for people who're using MailServe for Leopard now, and who've dealt with me personally before, to accept. I don't mind if this limits the number of potential users but that subset is the one I build these enhancements for. As for those who subscribe to the theory that it's better to have pirates than not to have them because they spread the news about the application far and wide, there's still MailServe for Leopard, and all the rest of the stuff that still works the old way, that they can pirate. So, it's good thing to have this balance, to see which way is better. The next thing to do is to figure out how to sign the application, so the pirates can't just break it once and distribute that broken copy. And anyway, the things I do are quite low-level stuff that I take responsibility for. Do people really want to use something that's been patched and broken into and take a chance with whatever else was changed on that copy of MailServe? I don't really think so. It's better to be sure and pull down the application from my site.
Posted at 6:23AM UTC | permalink
MailServe Pro for Leopard with Dovecot
Category : Commentary/MailServePro4Release.txt
I've released my version of MailServe for Leopard with support for Dovecot (it's the version 4.0 release of MailServe). Also, I'm interested in seeing how information diffuses through the web. How does news spread and how long does it take? For example, I'm now tracking the downloads of LDAP Enabler, to see which sites pick it up and make referrals and why. Over the course of a year or two or three, if it does succeeed in picking up users without any [overt] advertisement on my part, then the reasons why it succeeds would become very instructive. What are the improvements I have to make, and the features I have to add (and the manuals I have to make), to make a piece of software popular? I'm interested in seeing if I can introduce and make popular a range of software without having to advertise them in places like Version Tracker or MacUpdate. My idea is that, if I can have a core group of software that people come on over to pick up, then can I use that traffic to make them interested in picking up other new pieces of software that I also then make available at the site? The idea is simple, but if it works, then it becomes self-generating and self-reinforcing, because if those additional software are any good, then it drives further traffic on its own and may even introduce new people to the original goods. Then when we have sufficient pieces of good software, we can do things like promotional bundles. This is why doing these things is fun. It's like a microcosm - a corporation in miniature. I'm affected by things like exchange rates. I do promotional materials. And I, of course, also build the damned stuff (with the help of Hai Hwee) and do all the artwork. So it's art and science and business, united. One will, one resolve, one cause :-) I'm now working on a revamp of the MailServe documentation. If I can find a better and more workable format, I'll revamp the documentaion for all the other software.
Posted at 2:53AM UTC | permalink
Wed 23 Apr 2008
Going to Shanghai
Category : Commentary/Shanghai2.txt
We're going to Shanghai, Suzhou and (hopefully) Nanjing, at the end of May and for the first two weeks of June. That's the same time as WWDC but China won out. Our earlier trip, last month, to Beijing had left a deep impression and I wanted to go back for a deeper experience. This is going to be our second trip to Shanghai. It's a great place for shopping, e.g., for leather goods like shoes, and also for jackets. But, more than that, these trips had set me thinking and wanting to know more, about the history of China, and about the Chinese diaspora, and about how people like us ended up in Singapore. Our Public Library in Singapore has a great collection of books about China. These are the ones I've found and enjoyed : I read Lynn Pan's "Sons of the Yellow Emperor - A History of the Chinese Diaspora", which was useful for placing a historical context around where I am and where I could have been. But I very much doubt I could have survived a Cultural Revolution, or a Qing emperor like Yong Zheng. Reading Jonathan Spence's "Treason by the Book", about a failed plot to foment an uprising against the Qing, I was struck by how much I identified with the scholars/mandarins who were dumb enough not to keep their mouth shut and got executed by the Yong Zheng emperor. Perhaps that explains why my forefathers had to run away to the Nanyang. Then there's Jonathan Spence's "Mao" and Ross Terrill's "Mao", which make painful reading, to escape which I read "River Town" by Peter Hessler, and his later book, "Oracle Bones", and a similar book, "China Road" by Rob Gifford. But they've all left me strangely dissatisfied. I felt that there was something missing. Reading all these books from the Western perspective, one could forgiven for thinking that China is run by goons and thugs, as the CNN guy would have it. But that doesn't gell with what I'm seeing or experiencing, and it was only after reading Han Suyin's book about Zhou Enlai, who was China's prime minister for twenty-seven years, - "Eldest Son" - that I realised that large swathes of history, drama, and even wisdom and heroism can be found in the China story. "Goons and thugs" don't explain China's meteoric rise in the last twenty years. From what foundation was this built on? I think the real story has yet to be told, at least in English. To maintain a balance, one needs to read books about China written by the Chinese. And that's where I now look with envy at the collection available for my wife in the Chinese section of our Public Library, simply because she can read the language. One day I want to be able to read those books, too, rather than the English translations, as for example, Gao Wenqian's "Zhou Enlai: The Last Perfect Revolutionary". So, between Ross Terrill's account and Han Suyin's, where lies the truth. As Zhou Enlai may have seen it: the truth, my friend, lies somewhere in-between.
Posted at 3:06PM UTC | permalink
Luca is going to be Leopard-only
Category : Commentary/Luca2dot6dot5.txt
I've found a problem with the last Luca release, version 2.6.4, which was crashing when run on OS X Tiger machines. It's not a logic error in the code. It's a problem with the latest iPhone-compatible Cocoa SDK (software development kit) that I am using. It seems like I can't now make this work on both Tiger and Leopard. If I try to keep the code that worked on Tiger, I can't compile it for Leopard. But if I replace the deprecated API calls with the ones that Leopard requires, the application will compile, run well on Leopard, but crash on Tiger. It's like between a rock and a hard place. Luca is my last app that I've managed to make it work on both Leopard and Tiger, with one single code base. I may not be able to hold it together much longer. I plan to update Luca with all the nice new Leopard-only Cocoa features. And that will mean the end of the Tiger version because these stuff won't run on Tiger. I've fixed the crashes on Tiger. But this latest 2.6.5 release of Luca will probably be the last version that will run on Tiger. Version 2.7.x onwards will be Leopard-only.
Posted at 11:55AM UTC | permalink
Fri 18 Apr 2008
LDAP Enabler, in the larger scheme of things
Category : Commentary/LDAPEnablerAgain.txt
Quite few years back, when I was working with an insurance company on their underwriting, claims and accounting systems, I've observed that the same piece of contact information can be found in each of the three sub-systems and they're often not synchronised. And even when we've finally managed to keep them synchronised in one central system, they're not available to the email systems, and so each underwriting, claims and accounting officer would have their own rolodex, diary, Palm Pilot, laptop, phonebook, etc. And I've been wanting to find a way to obliterate all these redundancies, ever since. So with LDAP Enabler, I have finally a tool that could potentially do all that. I could enter contact information into the LDAP repository, and have it appear on everyone's Mac, MacBook, or iPhone, which they can then use to email, call, fax, send a piece of snail mail, or pay a visit to the contact. And lets say I'm in the accounting department and I happen to find that a client or vendor has changed place of operations or contact numbers (often the accounting people are the first persons to know such things), and I can update my system, which transparently is pulling data out from the LDAP server, and so my update consequently propagates to every salesperson's iPhone. Or someone new joins the company, so you create an employee record into the LDAP database, and this new guy subsequently gets email access, and access to the databases, etc, with just that single password. While I talk about departments here and departments there, I actually believe that the future is increasingly one of much smaller, two to five-person companies. It's so hard to find good people to hire that I'd much rather work with just my wife, and my friend Hai Hwee, and that's it, the three of us, and I'm much happier for it. With that, you'll want things to just work with the minimum of effort - what I call No Sweat Computing - and hope to run rings round the bigger competitors. While I'm sitting here writing this in a McDonald's, I take great comfort that my system continues to receive people, lay out my wares, make a sales pitch on my behalf, process the transactions, and most importantly, receive the money and tell me the good news. So I'll always recommend that it is worthwhile spending time thinking about ways to build good systems. It's the difference between being happy or being harried.
Posted at 1:21AM UTC | permalink
LDAP Enabler is a real application now - it has an icon
Category : Technology/LDAPEnablerIcon.txt
I was wracking my brains about finding an appropriate icon for LDAP Enabler. It needs to convey the idea that it's a tool for setting up information about people (of course, you can set it up to store information about things, like resources and conference rooms, etc) but most people would use it naturally to store information about people. And this information is hierarchically organised. This idea about hierarchy in the LDAP setup is so fundamental - you can't search for things if you mess up the hierarchy. Anyway, I needed an icon to show that the application is (mainly) about storing information about people - lots of people - and the people are hierarchically organised, and the information is bounded by a domain. I tried various permutations of the NSEveryone icon used in the OS X Directory utility, plus the Address Book icon, but they all seemed so cliched. Then I remembered that I'm a member of that race that still uses the longest surviving ideographic written language on earth (not that I had retained much facility with that language, to my eternal shame, so thoroughly had I been immersed in Western education and ways of thinking). How would the Chinese write this if they have to invent a new word that would depict said notion? It could be something like this : So this is LDAP Enabler's icon. It's, of course, not any "real" word in Chinese. It's just my invention, but it's struck me just how close these ideographic representations are to icons. They both need to pack a lot of punch in terms of informational content, in such a small space. I've never thought of things this way before.
Posted at 1:21AM UTC | permalink
LDAP Enabler
Category : Technology/LDAPEnablerAnnouncement.txt
I've been working on way to activate and configure the built-in LDAP server on Leopard with just one click. Once enabled, you can use the LDAP server to store contacts information that will show up on any Mac (and iPhone), and keep them all updated from one central point. (You can download it from here to try. It'll only work on Leopard). It's still a work in progress. But this version is at least doing something really useful in conjunction with the OS X Address Book now.
Posted at 1:21AM UTC | permalink
Sat 22 Mar 2008
iPhone for the Enterprise
Category : Commentary/iPhoneForTheEnterprise.txt
Out of curiosity, I was wondering if I could embed our SQL frameworks into an iPhone application and use that to access a SQLite database, or a MySQL or PostgreSQL database anywhere on the Internet. I'm glad to say it all worked beautifully. Here's a demo iPhone app accessing our (live, production) MySQL database across the Internet, basically re-using the SQL frameworks (shown in the red box below) that we had built for Luca: What it means is that we can do version of Luca for the iPhone, if that makes sense. Or any number of database-centred, enterprise-friendly applications. Just imagine the possibilities...
Posted at 3:27PM UTC | permalink
Fri 21 Mar 2008
Beijing
Category : Commentary/BeijingWebGallery.txt
I've uploaded the pictures I took of our Beijing trip to my web gallery on Mac.com (which turned out to be incredibly easy to do).
This is one view of the moat that surrounds the Forbidden City, at the eastern gate. To the left is the high red wall of the Forbidden City. To the right is a hutong with buildings that one can fall in love with. Though the sky was eternally grey, it's funny - we all felt sad to be leaving Beijing and coming back to sunny Singapore. I'm still sorting out my feelings. But I would want to go back again soon.
Posted at 1:23PM UTC | permalink
Wed 05 Mar 2008
Sleep Saver
Category : Commentary/sleepsaver.txt
This is the kind of mail I love to get :
Posted at 1:26PM UTC | permalink
A few nights in Beijing
Category : Commentary/Beijing.txt
I'm leaving Friday evening for a few days' visit to Beijing. My wife thought that I probably wouldn't pass up a chance to see The Forbidden City, and she's right. Any other place, and I would probably find it all too much trouble. I wouldn't miss this, even though it may be too cold up there right now for the liking of this southerner. We're going to stay at a hotel somewhere in the lower right corner of the picture, below, which is an aerial Google Earth view of the Forbidden City. I was at the tour agency and I was wondering why a lot of these companies won't let their staff get onto the Internet. I thought that's pretty dumb. Once I saw how I could zoom right down over those terra-cotta roof-tops, and imagined how it would be like walking those streets, I was sold on going to Beijing. Try stopping me from coming.
Posted at 5:13AM UTC | permalink Read more ...
|