The
Ultimate
Business Machine

Technology, business
and innovation.

And, not least, about
the Mac.

Weblog Archive Cutedge

by: Bernard Teo








Creative Commons License

Copyright © 2003-2012
Bernard Teo
Some Rights Reserved.

Sun 04 Jun 2006

Blocked

Category : Commentary/blocked.txt

"Deeds, like grains of sand spilt into the sea, disappear ... leaving only an empty hand" - Han Suyin, from somewhere in her Crippled Tree trilogy.

It's been some time since I wrote anything here. But my kid's been sick the last week and that had knocked the stuffing out of me. Fortunately he's better now and I can get back to work. But I'm wondering where the time has gone.

In some ways, the Business Machine idea really did work - if you've written to me the last week, I'd still be responding as quickly as I could, as I usually do. And we'd still be selling our software 24/7, since the system does it all on its own. But some of the things I planned to do had ground to a halt, while I wondered when the kid's fever is going to break. So we're not there yet with the idea that the business is going to be able to function even when I'm not. But when I do, I would have realised my idea of the ultimate business machine.

Anyway, got to get back to work. Luca's been going quite well and we'll have a new release by next week. This may not mean much, if you're just using WebMon, DNS Enabler, Postfix Enabler, etc, but if I can just do a PayPal-based demo of an on-line store that is hooked up to Luca as an accounting/financial analysis tool at the back-end, then you may see just what I am seeing - that the Mac, with its combination of right and left-brained thinking, could make a fantastically powerful platform to build a vibrant, thriving, fun, yet manageable business on.

Posted at 7:35AM UTC | permalink

Tue 23 May 2006

Send Email From Anywhere

Category : Technology/EmailAnywhere.txt

It used to be that you could send email from literally anywhere, once you've turned on your own SMTP server. However, some mail servers (at hotmail or AOL, etc.) have increasingly hit back by implementing a filter that rejects mail originating from a dynamic IP address (which is all of us trying to send mail from a broadband line).

Tagging someone as a spammer simply because he's trying to send mail from a dynamic address strikes me as being too simplistic.

We all have our favourite reasons why we want to be able to send mail out our PowerBooks from wherever we are and whenever we want. Most ISPs have rules that block you from sending mail out their server if you're not on their network. So, if you're roaming around with your PowerBook, you're often out of luck. That's why being able to send mail out our own Postfix-enabled mail server on our PowerBooks became such a god-send ... for a while.

Plus, if we're now able to run a full-fledged mail server off a simple broadband line with a dynamic IP address, and since it's cheap, powerful, easy to do, and yet effective, then why shouldn't we be allowed to do it?

But now, when we're trying to send mail out of a broadband line (see the two orange arrows, below, denoting the case of a MacBook sending mail out localhost, and the case of a Mac-based mail server on a broadband line), we're likely to get rejected by, say, 30% of the mail servers out there, as denoted by the Dell-type, IT-managed servers in the picture, below :

It's like we've found a way to go two steps forward and now we're being pushed one step back. So what's a nice PowerBook to do?

This is the setup I've been using. I've taken care to choose an ISP to run my server on that doesn't block any of the well known ports (25, 110, 143, 993 and 995 for mail and 80, 8080, and 443 for web, plus the other ports for SSH and FTP, etc), and who doesn't have any restriction on using their SMTP server as a smart host. They may require authentication and they may require SSL, but that doesn't matter as long as they allow my mail to be relayed out through it using my own mail server.

So this is what happens when I'm roaming around with my PowerBook. I connect back to my server and relay mail through it, which will in turn relay it through my ISP's smtp server (the blue arrows in the picture, above). Because it's relayed through the ISP's server, it looks like a static IP address to the receiving mail servers, and that practically ensures that my mail won't get rejected by mail servers implementing those petty rules.

So how does that beat simply going through the ISP server in the first place?

Well, my mail server is a full-fledged mail server, so it receives mail and implements both the POP and IMAP services besides sending mail.

Secondly, I've set it up to allow my PowerBook (as well as any of the other users I've registered on it) to relay mail through it from anywhere I happen to be - so long as I authenticate with it. And I've set it to listen on two other ports (2525 and 52525), in case I'm on a network whose control-obsessed administrators block port 25, the send-mail port. (Surely, networks are there to be used?). Plus, I've turned on SSL, to encrypt the communication between the mail client and the server, including the password exchange.

So this has worked pretty well for me and I continue to run my mail server over a dynamic IP address ... until such time when the admins decide to respond with another block?

Of course, you can run the mail server over a static IP address, with its attendant increase in cost, or just give up and sign yourself back onto those ISPs' mail services - both of which work to the ISPs' benefit and may be what they want. Some of these "providers" are now offering a "premium" service, which you need to sign on to ensure guaranteed delivery of every piece of mail. Perhaps people will now leave in droves and set up their own servers? Especially since it's so cheap and easy to do :-) ?

If you're running your own server, please don't implement that stupid rule that assumes that everyone who sends mail from a dynamic IP address must be a spammer, or subscribe to RBL real-time black lists that do. Someone absolutely, positively, may need to send mail to you, and sending it via their own PowerBook from a dynamic IP address may be the only way they have left to get it to you.

Posted at 2:05PM UTC | permalink

Tue 16 May 2006

10.4.6 and the latest security updates

Category : Commentary/10dot4dot6PlusSecurityUpdates.txt

I've updated our server and all our test machines, both PPCs and our one Intel Mac machine, to Mac OS X 10.4.6 plus all the latest security updates, and all is still well - with SMTP, POP, IMAP, WebDav, SSL, etc...

Just thought you might like to know.

Posted at 6:21AM UTC | permalink

The End-to-End Model Gets its Day in the Sun

Category : Commentary/deviceModel.txt

Walt Mossberg, "one of the most respected technology experts on the planet", has been widely quoted lately in the Mac press ("Apple kayos PC dominance with iPod technology") :

"For many years, there have been two models of how to make computers and other digital devices. One is the component model, championed by Microsoft. The other is the end-to-end model, championed by Apple ..."

"In the first war between these models, the war for dominance of the personal-computer market, Microsoft's approach won decisively. Aided by efficient assemblers like Dell, and by corporate IT departments employed to integrate the components, Microsoft's component-based Windows platform crushed Apple's end-to-end Macintosh platform."

But did it - crush Apple, I mean? Certainly the Mac-hating Charles Ferguson did crow loudly about that "collapse" in "Computer Wars" and I had something to say in rebuttal (here and here). I probably wasn't the only one who thought that there was something wrong with the conventional wisdom. But such notions take time to spread. But if it's true, it will eventually take hold in the public imagination. Walt Mossberg's utterance lends credence to the notion and is evidence that this point of view might just be on its way towards reaching tipping point :

"But for mainstream users doing typical tasks, the Windows choice advantage is an illusion."

And about time, too.

Posted at 6:16AM UTC | permalink

Wed 10 May 2006

Updates to the French localisation of MailServe and Postfix Enabler, plus a DNS Enabler page in French

Category : Technology/FrenchPFE122MailServe214.txt

Joselyne Rochaud and Corentin Cras-Méneur have updated their French localisation for MailServe for version 2.1.4. And they've also helped me update the Postfix Enabler French localisation for version 1.2.2.

On top of that, Josy has sent me her translation of the DNS Enabler web page into French :

I really want to thank Josy, here. It took me a long time to write that page. So I would know just how much work that must have taken her. Thanks, Josy. I'll always be in your debt.

PS : I made a mistake - Josy doesn't stay in Vancouver - she lives in Paris, France - those lovely pictures of the Rocky Mountains were from her holiday. OOPs! That's what I get for being mono-lingual (though I realise that going back and forth between the DNS Enabler page in French and English has been a very good way for me to get a feel for the French language, at least in reading the written word).

Posted at 12:49AM UTC | permalink

Mon 08 May 2006

Bonjour/Rendezvous

Category : Technology/Bonjour.txt

Bonjour - this time I mean the technology previously know as Rendezvous.

Nathan S. Duran (www.khisf.com) writes :

"Given the rapid proliferation of Bonjour savvy applications and hardware, I believe it would make DNS Enabler even more useful if it provided a simple means of accomplishing the configuration required to enable wide area browsing/discovery detailed here:

http://www.dns-sd.org/ServerSetup.html"

Now, I don't know a thing about Bonjour, so Nathan sent me this Google video link, of a talk given by Stuart Cheshire of Apple.

Then things started clicking in my head.

This is a great talk/demo. Watch it - it's about an hour long - and I hope you may start to see all sorts of possibilities, like I did. I never understood what Bonjour means. Until now. Thanks, Nathan for sending this.

Posted at 4:45PM UTC | permalink

Fri 05 May 2006

MailServe and Postfix Enabler Updates

Category : Technology/MailServe214PFE122.txt

I've taken time off from working on Luca to update both MailServe and Postfix Enabler.

Valerio Fioretti (at Image Now Studio) asked "if there is a way to REJECT all the messages sent JUST to one specific email address"? For example, for an employee who has left the company but who had subscribed to a lot of mailing lists.

I've updated MailServe to do just that. Just add a "bannedUser@ REJECT" line to the Access field.

Plus, I had provided MailServe with a way to turn off the open relay if you've placed your Mac server directly on a broadband line and your Mac had been set to relay mail automatically for all machines on the local subnet - because, then, all other machines on your ISP's network become your local network!

Since I had to do a series of testing again, I've taken the chance to change the check box I had used to stop the open relay into a radio button to more clearly convey its intent. And I've added that feature to Postfix Enabler, too.

Also, back to MailServe, I've added a "Virtual Domains" field to distinguish it from the Additional Domains field.

The primary and the additional domains constitute the list of domains you will receive mail for - implicitly for all user accounts on your server. The problem is that there is no demarcation between the domains - mail for sales@domainOne and sales@domainTwo will all end up on the same mailbox.

If you want sales@domainOne and sales@domainTwo to end up on different mailboxes, you need to use Postfix's implementation of the concept of Virtual Domain Aliases. You need to create two separate real user accounts on your server, sales1 and sales2, say, and assign them to be monitored by real users. Then you add the two domains, domainOne and domainTwo, to MailServe's new Virtual Domains field. And, finally, you add the address mappings - sales@domainOne to the real user account sales1 and sales@domainTwo to sales2 - to MailServe's renamed Virtual Domains Alias Mappings field.

The difference between a Virtual Domains implementation and the use of the Additional Domains field is that you must list explicitly every virtual address that you are using because the mapping to a real user account needs to be made known to Postfix. By contrast, Postfix accepts mail implicitly for every real user account for the domains listed as its primary and secondary aditional domains.

Both implementations can co-exist at the same time. So, it is useful for MailServe to have both fields - Additional Domains and Virtual Domains - for the user to use both implementations, e.g., to avoid having to list every address in a secondary domain, just because he is using a virtual domain.

So that's now done. Both MailServe 2.1.4 and Postfix Enabler 1.2.2 are out now.

Posted at 3:19AM UTC | permalink

Sun 30 Apr 2006

One Year On, We've Got 5000 Users

Category : Commentary/5000users.txt

It's one year ago that OS X Tiger was launched and we made Postfix Enabler into a revenue stream (is there any other way to say it?).

We've now got 5015 paying customers, since we started keeping proper records, and that's over 5000 unique customers, some of whom have bought all four of our software - Postfix Enabler, WebMon, DNS Enabler, as well as upgraded to MailServe.

And we've done five applications, including Luca which is going thru a total revamp right now, and should be re-released in a couple of weeks.

I've been working with Hai Hwee to clean up the Luca code - to make it smaller, faster, and yet more stable. We've been using this test database with 88,000 vouchers - it's about the size of a medium-sized company's accounting database over three or four years - and it's now running quite fast even on a slow SQLite database (it's about three times faster running on a MySQL database).

A Trial Balance can be done in under 10 seconds, and a hierachically-organised analysis of the accounts, like that shown below, can be generated in under 15 seconds :

What this means is that if you're using Luca with the bundled SQLite database (on an Intel Core Duo iMac or MacBook Pro), it will serve you quite comfortably over three years, after which time there would probably be faster machines you can use, or you can switch over to a MySQL database.

And Luca will keep your accounts balanced, to the last cent, throughout all that.

That's what I wanted to get Luca to - a version stable enough to handle a very large load right from the start. The current release is still quite crashable, so I'm looking forward to releasing this new version.

We've got the server applications - WebMon and MailServe. And we've got the back-end accounting database. What I am trying to work towards is to build the pieces that will link the two ends, so that a Mac user could really run a business on the 'Net, end to end.

It's because we have a back-end system (that the on-line sales transactions funnel automatically to) that I can see how we're doing over the months - how the sales of DNS Enabler and WebMon have grown relative to Postfix Enabler - so that we're not too dependent on just one line - and how likely people are going to upgrade to MailServe.

What I'm trying to do is to make these data analysis tools available to other Mac users, too.

We've been building all these things for other people for so long, that it feels great this time round that the cash register rings for us, instead.

I suspect sometimes that our users, who were working for their organisations and drawing a regular salary, didn't really appreciate what magic --- being able to "make money" through an on-line sale with no material goods being produced or consumed --- was being wrought on their behalf ... because there is magic, and lots of hard work, too.

And we've got lots of 4D code - payroll, real estate, construction project management, training administration, and general insurance - some of which (like payroll, most definitely) we're thinking of bringing over to Cocoa.

The Mac's a great business tool. And I think we've got the applications to prove it.

Posted at 7:18AM UTC | permalink

Mon 24 Apr 2006

WebMon says Bonjour

Category : Technology/WebMonInFrench.txt

WebMon now speaks French. Joselyne Rochaud and Corentin Cras-Méneur have sent over another localisation :

It's in WebMon version 2.1.3, now out.

Thanks again, Josy and Corentin !

Yesterday, I managed to conduct a whole e-mail conversation completely in French with one Bernard Doret who doesn't speak English. What I did was to translate his messages in French into English using Babel Fish and I then got Babel Fish to translate back my reply into French. So I was going, Bonjour Bernard! It seemed to work well enough for us to have a discussion about DNS Enabler, but then it probably won't be good enough if he were to need deeper technical support.

One day, basic translation services, like the kind provided by Babel Fish (errors abound but you get enough of the drift), will simply be automated and built-in into the system. I'm quite sure of this.

Posted at 9:52AM UTC | permalink

Fri 21 Apr 2006

The Multi-Lingual Mac

Category : Technology/Multi-LingualMac.txt

Joselyne Rochaud and Corentin Cras-Méneur have helped me create a French localisation for MailServe, below :

as well as for DNS Enabler :

I want to tell them I really appreciate it. Thanks so much !

P.S.: Josy's site has great pictures of Vancouver. It's a pity we have but only one life. There's still so much to see, and do, in this world.

And I've also taken the chance to release Hai Hwee's Traditional and Simplified Chinese translation of DNS Enabler. So they're all in version 2.0.8.

I get a kick out of looking at this. I can't read more than a few words. But as my wife would say, that's me, locked out of four thousand years of Chinese history. When I get a chance to go back to school again, I think I'd better learn a few more words before I die.

This is the Mac at its best - effortless multi-lingual capability for the Global Village.

Posted at 3:55PM UTC | permalink

Thu 20 Apr 2006

Postfix Enabler in Japanese

Category : Technology/PFEinJapanese.txt

I've got a Japanese localisation for Postfix Enabler. At last! Thanks very much to Takashi Yoshida, who helped us get it done.

It was originally undertaken by Chiang Hai Hwee, who has put her weekends attending Japanese classes to some use. But she was afraid she'd be mauling the Japanese language so we sent it to Makoto Imai for comments, and encouragement, and then to Takashi Yoshida, who helped us to edit, correct and polish it.

So, here it is, on version 1.2.1 of Postfix Enabler :

I've been hoping to get this done for a long time, if only to thank the many Japanese users of Postfix Enabler, and offer them their own localisation.

As they say in the books the author, that is me, takes responsibility for all errors and omissions. All praise go to the translators and all brickbats come to me.

Posted at 6:26AM UTC | permalink

Tue 18 Apr 2006

Cocoa Notifications and its importance to application design

Category : Technology/LucaNotification.txt

I would like to elaborate a bit more on what I wrote in the previous post, on the relation between technology and business needs.

Cocoa has a construct called notifications and it works like this : If any part of an application needs to be informed of an event that happens anywhere else in the application, it can register its interest with a Notification Centre. Then you can code your application such that when such events occur, you post a notification to the Notification Centre, who will forward that notification to all parties (and only those parties) who had expressed interest in it.

So, in a real world case, it works like this :

In the Accounting System, you may be looking at your Current Assets, which includes a Debtors' list. Then, from another window, you may be creating a Receivable Voucher for a particular debtor. If you happen to be also monitoring that debtor's list of transactions, its totals will be updated as soon as the data entry for that voucher gets completed.

If you're looking at the totality of all your transactions under Revenue, that figure will also get updated.

Switching back to the point of view a programmer, it's very hard to do this type of coding on your own - unless you hit upon the idea of having a Notification Centre to centralise, coalesce and dispatch all the notifications in an orderly way, which I thought was brilliant when I came across it because I had been doing this type of programming on my own and they were often a mess.

And look at the economics of the situation. It's a nice-to-have feature. So the amount of time you spend programming it should be kept in proper relation to the amount of code that really does the dog's work in the application. In other words it shouldn't be carrying too much weight, otherwise it would be like the tail wagging the dog. But what it gives your application, if you get it right, is a feeling of omniscience, and you know how God-like that feels.

So that's what the Notification Centre, and lots of nice touches in the rest of Cocoa, does - it tips the economics in the favour of the creative programmer, by making it possible to do this in the time you are allowed to allocate to it.

So, if you're a business owner and you hear your IT manager saying that he won't accept a language like Objective-C or a tool-set like Cocoa - "who has heard of it" and he can "pick up a Java or Visual-Basic programmer from any street corner" - rest assured that that street-corner programmer hasn't spent any time thinking through the economics of programming or scoured the world for the best programming tools to build the best business applications on.

That's the fight we are in. If we had stayed in organisations we'll never have been allowed to do this. There is a world of Mac users out there. There's no time to spend debating the issue. There's work to be done and let's just do it.

Business, art, and technology. If I had to spend too much time doing both the artwork and the text, I wouldn't have done it. As it is, my thoughts just flow and the art work gets done and it's up on the web. Choose your tool (sword) and we'll compete on execution.

Posted at 4:22AM UTC | 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

VPN Enabler for Mavericks

MailServe for Mavericks

DNS Enabler for Mavericks

DNS Agent for Mavericks

WebMon for Mavericks

Luca for Mavericks

Liya for Mountain Lion & Mavericks

Postfix Enabler for Tiger and Panther

Sendmail Enabler for Jaguar

Services running on this server, a Mac Mini running Mac OS X 10.9.2 Mavericks:

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

all set up using MailServe, WebMon, DNS Enabler, DNS Agent, VPN Enabler, Liya and our SQL installers, all on Mavericks.