The
Ultimate
Business Machine

Technology, business
and innovation.

And, not least, about
the Mac.

Weblog Archive RSS

by: Bernard Teo






Latest Joy of Tech!

Joy of Tech ... from Geek Culture



BookJetty



Creative Commons License

Copyright © 2003-2010
Bernard Teo
Some Rights Reserved.

This work is licensed under a Creative Commons License.


Sun 15 Aug 2010

Liya - the more accurate time keeper

Category : Technology

Liya for Snow Leopard just got updated to version 1.2.1. This version does something that I've always wanted - time zone support for the time stamp field in SQL databases.

This is what I always wanted to do - you create time stamp fields in the SQL databases because you want to be very accurate about time - specifically, and very precisely, about when events are known to occur, or will occur in future.

And what you want is that when you retrieve and review the information from a client - either from the iPhone or iPad, or from the Mac - when you're moving around the world, from one time zone to the other, you want these times to very specifically follow the local time, yet they still refer to the same precise points in absolute time.

So when you land in LA after a flight from Singapore, and you update your landing time, someone in Singapore or anywhere else in the world will see that time mapped automatically to their local times zones.

And you want it such that it doesn't matter where your database server is physically residing in the world. You want it all to just work even if you have to uproot the server and move it to, say, Turkey. You just move it and everything to do with time will continue to work, with no additional effort on the part of the database administrator.

And so, we've worked very hard on time zones to make time zones disappear as a concern for the user. You just move around the world with your iDevices, and Apple happily updates your time zone automatically, and our apps will show you the times in the database in local times. You just don't have to think about it.

PS: I've also uploaded the equivalent Liya for iPhone 1.0.5 to the App Store. It's waiting for review. Should be ready early next week for download.

Posted at 4:44PM SGT | permalink

Wed 11 Aug 2010

iPad & and how it's not like developing on the Mac

Category : Technology

We've been working on porting an insurance system that we wrote some time back using 4th Dimension, out of a Dell laptop that's on its last legs, and onto the iPad. The Dell is dying and I don't think I'll ever buy a PC again - I've said goodbye to all that. But the app we have there is possibly worth a lot. And I believe that's a worthwhile application to bring over to the iPad, and to test the iPad's credential as a business machine while we're doing that.

What's not to like on the iPad? Lots, if you're a developer used to the goodness of Cocoa on the Mac. Lots of things are still missing on the iPad - Cocoa bindings, multi-column table views, date and number formatters, access to the Unix layer, etc. People who say the Mac is dead, OS X is dead, etc - they don't know what they're talking about. But, understand, I'm not complaining. I think I can understand how hard it is for Apple to shoe-horn all of OS X onto a platform that is as small physically as an iPhone or an iPad. So, as these little machines get more powerful, more of OS X will appear on iOS and eventually we'll get a merged OS.

What's there to like, then? Hai Hwee just showed me a screen where we present to the customer a list of additional coverages he can tag on to his insurance policy, like desserts onto a main meal. Where once we would have popped up a dialog box to capture the size of his order, Hai Hwee now just flips over a small section of the screen. - so it feels like you're doing a back of the envelop calculation. The important thing is that it's very un-intrusive, the screen doesn't move around as jarringly as when having a dialog box pop up. To get back to the dining metaphor, it's like you don't lose sight of the main meal while you're thinking about the desserts and that's how we've always wanted our app to work.

So that sort of sums up what iPad development is like - the game's changed and we got to think differently. We can do some things on the iPad we couldn't do on the Mac. And hold it in ways we couldn't hold the Mac before. And that's what keeps us interested in spite of constraints from the limited toolbox - there's the opportunity to build better things than we ever could.

Posted at 10:41AM SGT | permalink

Sun 25 Jul 2010

Books & Co.

Category : Commentary

I'm reading Bookstore - The Life & Times of Jeanette Watson and Books & Co. For a book lover, this is a book to savour, so I'm not rushing through it.

"It's odd to think that one can have ten thousand different books in a space, written by all of those different people, and nevertheless, by the choice of the books, the books represent something about the personality of the owner."

"I'm the oldest girl of five. My younger sisters are, in descending order, Olive, Lucinda, Susan, and Helen, and I have an older brother, Tom Watson III."

So there must have been a Thomas Watson the First and a Second - of course, of IBM. And I remember reading "Father, Son and Co." Good book.

"If the bookstore were going to continue, it would have to be totally changed, computerized, Internetted," Watson remarks - Jeanette Watson that is.

Posted at 1:17PM SGT | permalink

Sat 03 Jul 2010

Luca for iPhone - Now at the App Store

Category : Technology

If you're using MySQL or PostgreSQL as the database for Luca, you can now keep up with your Profit & Loss and Balance Sheet figures, by the minute, while on the move.

The first version of Luca for iPhone is now available at the App Store.

Posted at 7:27AM SGT | permalink

Thu 01 Jul 2010

Liya for iPhone 1.0.2

Category : Technology

Liya for iPhone 1.0.2 with support for multi-tasking and iAds on iPhone's iOS 4 is ready for download at the App Store.

Hopefully, our other iPhone app - Luca for iPhone - will also be ready for download by the end of the week.

Posted at 11:24AM SGT | permalink

Mon 28 Jun 2010

What's on our iPad Simulator

Category : Technology

This is a project we're resurrecting on the iPad simulator :

It's a General Insurance System (for motor, cargo, fire, etc). It was developed, pre-Mac OS X, using 4th Dimension on OS 9 and cross-compiled for Windows, back in the days when we weren't allowed to use Macs in corporations, but of course we persevered.

The company we built it for had to shut down in the wake of September 11 - its US parent was already struggling, I think, with long-tail claims and 9/11 pushed it over the edge - and so the system was orphaned. But I've always felt it was a great system and even now, almost 10 years later, I don't think any other system in use in Singapore has come close to matching it - in power, flexibility, completeness, accuracy and simplicity in use. So it's an idea I hadn't given up on. This is my unfinished business - to see it in use again and pitting it against the competition.

So, all the things we've been building - MySQL & PostgreSQL installers, database access frameworks, Luca, and now Liya - were really meant to set us up for another crack at doing this kind of work again, but with modern-day, Internet-centric, untethered mobile devices.

The iPad isn't here in Singapore for another couple of weeks. But we managed to borrow one yesterday to test our database frameworks against. Theoretically, they should work, if they work with the iPhone. But I wouldn't believe until I see it for myself. They worked, and ran pretty fast, too.

Now, my favourite segment in the Steve Jobs' D8 interview was when he talked about how the things he love about selling to the consumer space were exactly the things he hated about the enterprise market :

But I love doing enterprise-level work - for the complexity, for the scale, and OK for the "messiness", and there are so many moving parts that the solution can get to be quite intricate. And so, there's a challenge there to your craft that you have to push it to the limit. But, unlike Apple, I haven't yet found a way to make an end-run past the "orifices".

Posted at 8:38PM SGT | permalink

Sun 27 Jun 2010

WebMon Snow 4.0.7

Category : Technology

I've updated WebMon for Snow Leopard to include the latest, most updated IP address-to-country database.

WebMon Snow 4.0.7, available now.

With this release, I've given up support for Windows - XP, Vista or otherwise. Nobody seems to be able to get the WebDAV client working on Windows, whereas it's all just one-click simplicity on the Mac. The only mention of "windows" that you'll find in the whole WebMon Snow documentation is this line - "WebMon is a Cocoa document-based application, so you can open as many windows of log records as you like." That is all.

Posted at 11:24AM SGT | permalink

Fri 25 Jun 2010

Luca for iPhone

Category : Technology

I've submitted this to the App Store - Luca for iPhone. It'll be a free download, and it should work with MySQL and PostgreSQL databases set up for any version of Luca out there (because we've only implemented the ability to access the Trial Balance, Balance Sheet and Profit and Loss reports, plus the ability to zoom into the sub-accounts).

But as we build more and more on it, it'll probably remain compatible only with the latest version of Luca for Snow Leopard (because it'll be very difficult to keep all the versions in sync, so we'll focus our work on just the latest OS X/iOS platforms).

Liya for iPhone 1.0.2 is in the approval queue (in review). This supports iAds and multi-tasking, which the next version of Luca for iPhone will also support. Actually the whole idea of doing all this is to learn from doing it, so we can build better and more powerful tools in future. There are things I still don't like about these apps, but I know more about what needs to be done than I do even a month ago. So, nothing beats the old "hands-on" imperative.

Posted at 11:16PM SGT | permalink

Wed 23 Jun 2010

Liya for iPhone does Multi-Tasking

Category : Technology

I've been reading the iOS 4 programming documentation most of the day - only to find that it takes just one line of code to implement multi-tasking.

It's amazing. And I think it helps improve the app's usefulness, too, to be able to, e.g. read a message, look up a database, copy and paste data from the database to the email message, and when you get back to the database to make another search, start off where you left off, rather than have to login to the database all over again.

So, Liya for iPhone now does multi-tasking. I'm now figuring out where the best places are to insert iAd banners into the app. When that's done, I'll submit this version, 1.0.2, to the App Store.

Hai Hwee is almost done with a basic version of Luca for iPhone. You'll be able to monitor the Trial Balance, Balance Sheet and Profit & Loss data, if you're using MySQL or PostgreSQL as the Luca database. No data entry yet. That will come next. But it'll be a free download.

Posted at 11:22PM SGT | permalink

Liya for iPhone 1.0.1

Category : Technology

Liya for iPhone 1.0.1 with multi-lingual text entry and search support is now available for free download at the App Store.

I'm now working on adding support for multi-tasking on iPhone's iOS 4. Plus, I've already got iADs working (less than 30 minutes of work).

Hai Hwee should be ready with a Luca for iPhone by the end of the week.

Posted at 11:26AM SGT | permalink

Thu 17 Jun 2010

Liya's Multi-Lingual Support

Category : Technology

I remembered, a couple of days ago, that a design objective for the database frameworks we've been building has been to support data entry and search in any language - Chinese, Japanese, Thai, whatever, so that, e.g., for the case of an insurance system used in Thailand, motor policies can be recorded with their underwriting terms written in Thai, and the system will all just work.

But I realised that I hadn't tested this notion in quite a while. So we put Liya to the test and found that it already supported input in multiple languages for PostgreSQL, but not for MySQL. Debugging this, we found that we only had to fix a couple of lines of code, and Liya (connected to MySQL) can do entry and searches in Chinese, say, as shown below :

And, since these fixes were at the database frameworks level, Maven automatically gets multi-lingual support, and Luca too.

Shows the importance of good design. Instead of adjusting two lines of code to get something so enormously useful, we would have had to comb through any number of programs, at any number of levels, simply for a lack of foresight and discipline in coding.

So, Liya 1.0.1 with multi-lingual support has been submitted to the App Store. It'll probably be available for download in a week (well, I just submit it & forget it, the App Store way).

And there'll be new versions out soon for Luca and Maven for Snow Leopard.

I'm going to rename Maven to Liya for Snow Leopard. So, we have the odd couple - Luca and his girlfriend Liya. I seem to have two completely different group of users - Luca and Liya users on one side, and users of the Enablers on the other. And they don't usually cross over. I find that interesting. Had expected different.

Posted at 5:24PM SGT | permalink

Mac OS X 10.6.4 Snow Leopard Software Update

Category : Technology

I've updated my live server to 10.6.4 and all the services (mail, web server, DNS server, ftp, ssh, fetchmail, SSL, WebDAV, etc...) continue to work.

So I think it's safe to upgrade, in case you've come on over here to find out.

P.S.: It's not always like this. Sometimes things break, and they break horribly, and we've got to scramble to fix things in Apple's wake. So I'm never complacent about OS X Software Updates. All's well, for now, until the next time it breaks. In the mean time, we get some peace to work on some new stuff.

Posted at 4:27PM SGT | permalink

Read more ...

Mac@Work
Put your Mac to Work

Sivasothi.com? Now how would you do something like that?

Weblogs. Download and start a weblog of your own.

A Mac Business Toolbox
A survey of the possibilities

A Business Scenario
How we could use Macs in businesses

MailServe for
Snow Leopard

DNS Enabler for
Snow Leopard

DNS Agent for
Snow Leopard

WebMon for
Snow Leopard

Luca Accounting
for Snow Leopard

Liya for
Snow Leopard

Postfix Enabler
for Tiger and Panther

Sendmail Enabler
for OS X Jaguar



Liya for the iPhone


Luca for the iPhone


Services running on this server, an iMac 2.66 GHz Intel Core 2 Duo, 4 GB RAM, 320 GB hard disk, Ethernet, Airport Extreme, Mac OS X 10.6.4 Snow Leopard:

  • Apache 2 Web Server
  • Postfix Mail Server
  • Dovecot IMAP Server
  • Fetchmail
  • SpamBayes Spam Filter
  • Procmail
  • BIND DNS Server
  • FTP Server
  • WebDAV Server
  • PHP-based weblog
  • MySQL database
  • PostgreSQL database

all set up using our own tools - MailServe, WebMon, DNS Enabler, DNS Agent and Liya, all on Snow Leopard.