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.

Mon 17 May 2004

Usable Help

Category : Technology/UsableHelp.txt

I like to look up the web server log files to see how our site is being used and what information people are looking for. Occasionally, I find some very interesting sites that have made references to ours, and here is one :

Usable Help - "Examining documentation and help systems for software and consumer products." I think it's a very useful site for developers, with very interesting ideas. Definitely worth a visit.

Posted at 7:34AM UTC | permalink

Business @ the Speed of Stupid

Category : Technology/bizatspeedofstupid.txt

I picked this book up from the Special Offers bin yesterday and have been reading it since.

Business at the Speed of Light? More like, Business @ the Speed of Stupid - "a comedy and a tragedy in every chapter", according to an Amazon.com review. This ought to be required reading for users, business owners, and IT practitioners alike because "the business landscape is littered with the remains of thousands of technology ventures", and we need to get everybody to understand why this had happened and how we can do better.

While reading the book, I've been thinking about the comment I made in the last post about taking just eight weeks to bring a client-server-based application onto the web. If it gives a feeling of bravado, of the sort that comes out quite foolishly on the pages of "Business @ the Speed of Light", then I must hasten to add that a lot of trial and mostly errors had preceded it, through a couple of projects I did on the side, using other failed approaches.

I had learned, from the failures, to value the whole body of code that had already worked. And that the key to getting things done is controlling complexity, and not let the tail wag the dog.

So the point I was trying to make was that, when IT departments insist on issues like standardisation on the languages and platforms they had "blessed", above all other considerations, they may be underestimating the dangers they're exposing their business. They may look like they're simplifying things, but actually creating a combinatorial explosion of complexity. They like to say things like, "the web server must be .Net, or whatever, compliant, or we won't endorse it", and my stomach turns the way it's been described for many of the unfortunate souls who populate the "Business @ the Speed of Stupid" book.

Finding a way to get along with IT departments, managing the expectations of users, and living with the limited project management skills of the IT coordinators in-between - these are the hardest challenges facing external IT developers and consultants.

Posted at 5:51AM UTC | permalink

Sun 16 May 2004

About 4th Dimension

Category : Technology/4D.txt

We've used 4th Dimension for much of the last ten years. It's been good to us, so I wouldn't knock it. I believe that, in many ways, 4D was ahead of its time. So, while my kid's still having his nap (when he wakes up, he's going to climb all over me to take him out, and it looks like it's going to be a wonderful Sunday evening), I'm trying to see if I can do a comparison of my experience using 4D, against what I'm currently seeing using Xcode, Cocoa, and Java on Mac OS X.

Firstly, in the old OS 9 days, 4D sat in the middle of the spectrum, with FileMaker Pro at one end, and MPW and Code Warrior at the other. It's significantly harder for an end-user to build stuff using 4D than with FileMaker Pro. But you can build a lot more useful applications, more quickly, and with database access built-in, than coding with the lower-level languages in MPW or Code Warrior.

And it's a good complete software development platform. But I haven't used it for almost two years now, so I've gone and take a look at www.4D.com to see if the tools we've used are still there, and I think they are.

It's important to mention the 4D suite of applications because it was the way they were put together - 4D, 4D Server, 4D Insider, 4D Compiler, 4D for Oracle, etc. - that contributed a lot to our own productivity.

For example, with 4D, you can do development on a standard 4D standalone set-up. Or you can use the Server edition, and immediately be able to do development as a project team. While the server makes sure that you are not able to make changes on a piece of the project that another person is working on, you're very much working the same way as if you're working on your own.

I think 4D Server is a superior piece of technology. Even now, I'm trying to think about how we can duplicate this functionality using Java. 4D Server is an application server. You load the application you have written on the machine running 4D Server, and the users access the application from their machines, using an application called 4D Client. Everytime you need to give the users a new version of your application, you only need to go to the 4D Server machine, bring the system down, replace it with the new version, and when the users log in again from 4D Client, they all get the latest revisions. It's a real time-saver. If you have, say 50 or more users, you'll appreciate not having to go to each of their machines to do a new application system release.

Then there is the 4D Insider application. It gives you a very nice ability to look inside and analyse your application - e.g., you may need to know how many other methods or sub-routines are calling on a particular method or sub-routine, so that you can anticipate the kind of problems you're going to be facing when you start making changes to things.

Finally, 4D Compiler allows you to build really fat binaries, versions that will run on Mac (OS 9 and then X, but I hadn't use 4D with OS X much), as well as Wiindows, all from the same piece of code. This is something I miss. It was what allowed us to keep our Macs while working with PC-using customers all these years.

So, in summary, I want to say that 4D is a very expressive language, in the sense that you can express difficult concepts using it (in exactly the way that FileMaker Pro isn't), and you can build very powerful applications using it.

Oh, I forgot, it also has built-in multi-threading, even though OS 9 didn't. It allowed us to build applications where each window ran within its own process. 4D programmers ought to take advantage of this power because, once you've written a procedure and launch it within its own process, e.g., within its own window, you can continue to launch many other similar windows based on this same procedure, and not having to worry about variables being overridden, etc.

And it's this multi-threading mechanism which allowed third-party 4D plug-ins like Christian Quest's Internet-Toolkit (ITK) to work its magic. By the time the Internet came out, we already had a substantial body of code in 4D (about 50 to 70 MB of code - it was a large insurance application). Using the extra functionality that ITK added to the 4D language (and the fact that 4D was multi-threading), it was possible to build a very effective, fully functioning web server with only 600 KB of code. Joining this little piece of code to the larger application, we were then able to re-purpose the whole 4D application for the web, with just two months of added work (in other words, the insurance company we were working for was able to do transactions over the web, in just two months after we discovered and tried out ITK).

We should have gotten hero status for this particular piece of magic (the users were indeed delighted) but we somehow seemed to have drawn the ire of the corporate IT department - they seemed to have a problem with the fact that the web server wasn't Apache or something like jBoss, or WebSphere (you mean you wrote your own web server? what a waste of time.) So that's for another story but the system did well enough, from my point of view, for quite a while yet.

Which brings me to the point, why switch away from 4D, then? Actually, I have not yet decided if this, indeed is a final switch from 4D. It's still pretty good. Being years ahead of their time gives them that little bit of longevity, in terms of relevance.

But I'm finding that we're having too many battles to fight with corporate IT departments. First there's the Mac that we're fond of using. It's been tolerated but there's a suspicion that we'll go on proselytising and in no time Mac pockets will spring up all over the place and out of control (of the IT deprtment, that is). Also, no matter what the 4D corporation does to distance itself from the Mac (I think it tries to do that sometimes, and if that were true, perfectly understandable), I get questions like these from the IT department, when our system was considered for a wider use within their corporation :

"Was 4D originally written for Mac or IBM compatible hardware?"

What kind of a question is this? Why does it matter? I thought - I give up and wrote "4D came out initially on the Mac platform, just like Microsoft's Word and Excel. At that time, the PC was still in the character-based mode; so it broke new ground in its use of the graphical user interface, just like Word and Excel." And died on my own sword. I guess I should have done better.

So, we're doing Java to fight one less battle. As far as we're concerned, the hardware is non-negotiable. It's either the Mac, or get out of IT altogether, and a lot of this weblog is trying to work out why we can take such a strong stand on this utterly stupid position.

But I know we're more productive on the Mac. If I had an actual business that I'm running, rather than being the software developer or the consultant, I would still (most definitely still) be using the Mac.

But I'm finding that using Java, and showing some stuff on the Unix command line, does help break some ice with the mainstream IT people because we can quickly get beyond the sectarian issues and move on to grounds where we share common interests, like building write-once run-many applications, the power of object-oriented design, the potential of web services, etc. The IT guys, they're not all bad, just like not all the guys on the Apple side are the good guys. There are various shades of greys.

I'm supposed to compare 4D with the use of Xcode, Java, and Cocoa, but this piece is already the longest I've ever written at one go, and the kid's waiting and there's not much sunlight left. Perhaps the next time.

Posted at 10:55AM UTC | permalink

Fri 14 May 2004

Weblog and DNS Enabler Bug Fixes

Category : Technology/weblogbugfix.txt

There was a problem with the "Search This Weblog" function on the left side-bar. If there are more entries found than we've provided space for, there is a Read More... link at the bottom. The problem was that the Read More... anchor was acting funny. It didn't lead to the next set of entries properly. This has been fixed and the PHP code can be found in the Weblog article on the right side-bar.

Also, I wrote something called a DNS Enabler once to help people get around some problems when they're running a server behind an old Airport Base Station (the original ABS) - they're not able to "see" the server from machines sitting inside the local network, unless they run a local DNS server.

When Panther came out this little application broke and I never had the time to fix it. Until yesterday. I didn't think anybody needed it still until this week. So, that is also available for download from that page that talked about running an Internet server behind an Airport Base Station.

Now, that DNS Enabler is fixed, it's possible to build further on it. It's now programmed to identify a server on a fixed IP address (10.0.1.201) on an Airport network. But it should be possible to make it work with any user-specifiable IP address, and for multiple domains, and multiple servers.

The best interface I've ever used is QuickDNS Pro from Men and Mice, back in the days of OS 9. They've probably gone beyond the Mac, now. I'm thinking it's possible to do an interface quite like theirs, if imitation is the sincerest form of flattery. No, better do something different. If I can find the time.

So, the Mac's really good value for money, considering that you've got all these Internet services, built-in, out-of-the-box. They just need to be turned on and provided with configuration tools.

So we've got a lttle catalog of these : Sendmail Enabler, Postfix Enabler, DNS Enabler (no web page or tutorial for it, yet), and Luca. Hopefully, one day, you can go to this page and find all you need to turn on and run a business out of your Macs.

Posted at 1:06PM UTC | permalink

About Cocoa and Java, and Luca

Category : Technology/JavaCocoaSummary.txt

About six to eight months ago, when we thought of putting a Cocoa interface on top of our accounting system, there wasn't much information we can find about doing Cocoa development using Java. Even now. So this is what we've found.

First thing, we wanted to be able to do most of the common things we would expect to see on an Aqua interface, using Java instead of Objective-C, e.g., drawers, sheets, dialog boxes, the search mechanism, radio buttons, check boxes, pop-up menus, the notification mechanism, tables with hierarchical data views, page setup, print previews, etc.

(Oh, we forgot icons, when are we going to do icons?)

It's very difficult to find material on this but this page at Whiningdog.net helped. Not nearly enough, but it kept us going. Even things like printing and exporting - they're no cakewalk. I believe Hai Hwee had to be pretty tenacious to find the answers to doing all these things.

But we now know that it can be done. And that the Model-View-Controller paradigm works very well. We've retained the ability to use 60-70 % of the code as a webserver-based application, and we've abstracted out the database access, so we can plug in a wide range of databases. These were the two main reasons why we had to stick with Java. But we've got almost all the interface elements pinned down now, so we can concentrate on building the application.

The accounting application was written originally using 4th Dimension. Comparing the two, I'm impressed with the amount of code we didn't have to write using Cocoa.

For example, when you open up a lot of windows, you may be providing different views of the same piece of information from different angles. So when you change the data in one view, you want all the views to be updated quickly. I've written the code to do that myself in 4D, but it's always been pretty messy. Think about all the things you have to coordinate. But Cocoa's notification manager is really neat. You can set up the updating mechanism with just a few lines of code.

Another example is ability to show a hierarchical view of tabular information. Again, I wrote all the code to do that when I was using 4D. With Cocoa, it's a breeze. So I can immediately appreciate the benefits that Cocoa brings from the productivity angle. The best code is the code you don't have to write.

It's a wonderful development environment. I would like to show this to more Java programmers but I think, as usual, the thing that will come up again and again is the Mac's limited market share.

Anyway, if you're looking at Luca, look at the navigational aspects, the ability to relate one piece of information to another, and the thought that went into the data structures (I think MYOB can only do Chart of Accounts maybe four levels deep and we've asked ourselves why not any number of levels deep - the answer lies in the design of the data structures).

Luca may be no great shakes to look at now (from the romantic point of view), but the beauty that we're talking about is from the classical viewpoint (in Robert Pirsig's terms, as I've written about in "Awk", the classically-minded person is pre-disposed towards looking at things below skin deep).

The problem we wanted to solve was how to make the relationships between all these accounting figures clear, and how to prove the accuracy of the data through the ability to audit the information from many different angles. And then to take this ability and make it available through the web, through a client-server application, or through web-service calls, using largely the same body of code. We're not through with this yet, not by a long way. If you're interested to build on top of it, e..g, through embedding the system as a Jar library within a larger project, through the API's we're going to make available, just let me know.

Posted at 9:09AM UTC | permalink

Thu 13 May 2004

Luca Accounting Beta Release

Category : Technology/lucaBeta1.txt

Anybody interested in an OS X-based Accounting application?

Our Luca is now ready for download. It will work with a wide range of databases, but out-of-the-box we've made it work with MySQL and we've included an installer that will make it as painless as possible to set up and use a MySQL database.

It's also a demo of just what you can do with the combination of Java and Cocoa, if you're interested in such things. Due to some dependencies at the Java end, it will only work on OS X 10.3.3 onwards.

Posted at 12:59PM UTC | permalink

Wed 12 May 2004

A Weblog as a form of Chautauqua

Category : Commentary/chautauqua.txt

I'm finding that there is a close parallel between the mode of discourse made possible by a weblog, and the mechanism used by Robert Pirsig to link together the events and ideas he described in Zen and the Art of Motorcycle Maintenance.

If you don't mind, look at the discussion on this page that I've found :

"I would like to use the time to talk in some depth about things that seem important. What is in mind is a sort of Chautauqua Ñ that's the only name that I can think of for it Ñ like the traveling tent-show Chautauquas that used to move across America, [...] an old-time series of popular talks intended to edify and entertain, improve the mind and bring culture and enlightenment to the ears and thoughts of the hearer. ( Pirsig, p.17)

From the discussion that I linked to earlier : "The narrator sticks to this expression as well as to the lecture-form, the most defining element of the original Chautauquas, throughout the novel. He uses the term Chautauqua whenever he wants to present notions of a more theoretical kind: motorcycle maintenance, philosophy, technology, 20th century life, etc. These Chautauquas gain importance for the narrator on a very personal level, because the lectures become more specifically linked to the narrator's life. Still, he never abandons pointing out general implications, trying to come to conclusions at the end of the Chautauquas (although sometimes the end of one and the beginning of another are blurred). A wide range of topics is discussed, which seemingly also inspired the narrator to come up with the term chautauqua."

Note : "a wide range of topics is discussed ... these Chautauquas gain importance for the narrator on a very personal level, because the lectures become more specifically linked to the narrator's life ... never abandons pointing out general implications, trying to come to conclusions at the end of the Chautauquas (although sometimes the end of one and the beginning of another are blurred)."

That's what a weblog is like, isn't it. You can use it to lay out an idea that is very difficult to get across at one go. Especially when you're still trying to untangle the strands of your own thoughts. The weblog gives you the time to ruminate about a position that you've taken, find other situations from which you can draw implications that will either strengthen or weaken your convictions, and ultimately move you closer to better knowledge or a greater truth. If that ever happens, it doesn't matter if nobody else reads it because you've rendered a service to yourself.

Posted at 11:48AM UTC | permalink

Patents and the Penguin

Category : Commentary/patentsPenguin.txt

This is a very interesting article, "Patents and the Penguin".

On the one hand, one can see how fast MySQL has grown in terms of market penetration, using the Open Source model in parallel with an ability to sell profitable services alongside the free downloads. But MySQL AB has, sort of, hedged its bets with a dual licensing model, so they have a lot of flexibility to play their cards no matter which way the game turns.

And nobody knows how all these will pan out. The issues about intellectual property rights and patents are complex, as the article above clearly shows.

But it's still important for any business to try to understand them.

You can choose to work in a business, as a self-employed person. Or to work on a business, as a business owner. But the second is the nicer, more evolved and preferred position to be in. That's because you've established the procedures, methods, and systems so that the business will run without your needing to be there. And it makes it that much more attractive, as a going concern, for other investors to want to buy into because it doesn't matter much to them, then, if you do get run over by a truck.

But before you say, watch out Hawaii (or substitute your dream retirement enclave), here I come, you've got to make sure that you really do own the procedures, methods and systems, because that's what the investors are buying. That's why intellectual property issues are so important to understand and track. Maybe, more so because there doesn't seem to be that many lawyers around who understand a thing at all.

Posted at 10:22AM UTC | permalink

Features, Functions, and Benefits

Category : Commentary/featuresFunctionsBenefits.txt

Zig Ziglar, in The Ultimate Handbook for the Complete Sales Professional, makes a very clear distinction between features, functions, and benefits, adding that you can only sell on benefits - because everyone tunes into WII-FM (what's in it for me!).

That's why I have a lot of problems with the Mac-BMW comparisons. It's a nice analogy but it has zero effectiveness.

Expensive cars are but one of the many ways people have at their disposal to signal an elevated status (whether real or imagined). We can talk all we want about the features of a BMW, or an Audi (like the author of the following article did when comparing the Mac to an Audi), as the case may be. But the chief benefit that an expensive car confer its owner is status.

Now, when do you ever hear of people buying expensive computers to gain instant status recognition, and arouse envy among the neighbours? Okay, geeks may understand the phrase, "So, how much is your mind worth?", and some Mac users may feel that they're using the BMW of computing. But the argument that we can get ordinary people to plunk their money down for the most expensive computers, just so they can feel rich, is inane, isn't it? I don't have to work very hard to prove that it doesn't work.

There's a saying that insanity is doing the same thing over and over again, expecting a different outcome. So why not try selling it a different way? You've got to sell on benefits and you've got to think about what those benefits are. And there are real benefits to using a Mac. But you've got to think really differently, for a change.

Posted at 10:17AM UTC | permalink

Tue 11 May 2004

Postfix Enabler 1.1 Beta 3

Category : Technology/pfe1dot1beta3.txt

Beta 3 now includes an updated French localisation, contributed by Michel Pansanel, www.carpo.org. Postfix Enabler has included a French localisation since version 1.0.9, due to work done by Michel Poulain (La Shampoo.net). On behalf of the French users of Postfix Enabler, I'd like to say thanks to both Michel Pansanel and Michel Poulain.

www.carpo.org contains two tutorials in French about using Postfix Enabler. You can find them by following the links below :

Utiliser Postfix pour gŽrer son propre serveur SMTP

Utiliser Postfix pour gŽrer un serveur SMTP - 2¡ partie : offrir le SMTP ˆ un rŽseau interne

Beta 3 also contains a bug fix - again related to the SpamAssassin installation. If you turn on SpamAssassin, but did not have any SMTP-Authentication active (either using SASLDB or the built-in OS X user accounts mechanism), you will see this error among the log entries :

fatal: parameter "smtpd_recipient_restrictions": specify at least one working instance of: check_relay_domains, reject_unauth_destination, reject, defer or defer_if_permit

I need to make the smtpd_recipient_restrictions line look like this :

smtpd_recipient_restrictions = permit_mynetworks, check_recipient_access hash:/etc/postfix/filtered_domains, reject_unauth_destination

I'm misssing the "reject_unauth_destination" directive when no SMTP-Authentication mechanism is active. Thanks, Sean Alcorn, for reporting the bug, and sorry about that. Even though the number of combinations to test for is getting to be quite a lot, this is one bug that shouldn't have slipped through.

I've since fixed this and the Postfix Enabler 1.1 Beta page is now containing the best and latest version.

Posted at 10:55AM UTC | permalink

Fri 07 May 2004

Bug in Postfix Enabler 1.1 Beta

Category : Commentary/pfe1dot1bug.txt

Now that I have more people testing Postfix Enabler 1.1 Beta, I've just had a bug report. It affects people who're using Postfix Enabler for the first time and also trying to install SpamAssassin, all at one go.

I have a bug that caused SpamAssassin not to be activated for such cases, but this bug doesn't affect those who are installing SpamAssassin on top of a mail server that had already been set up by Postfix Enabler.

It's hard to explain but I've just fixed it.

So, given enough eyeballs, all bugs are shallow, didn't they say?

Posted at 1:05PM UTC | permalink

The Feedback Loop

Category : Commentary/feedbackLoop.txt

I did an experiment with the Postfix Enabler page, when I felt sure that the new beta release of Postfix Enabler was doing okay in real-world use.

I added a line to that page, announcing the existence of the beta and providing a link to it. I placed the line below the version release notes and above the first graphic, where it would be seen when the page first loads without the reader having to scroll to it. But, other than that, I didn't take any special care to highlight it, e.g., I didn't set any of the keywords to bold, etc.

And I monitored the web server log for a couple of days.

No follow through. Very few people, among the many who visited the page, actually clicked through to the beta release page.

Then I made a couple of very simple changes. I added the words "SpamAssassin", "anti-virus", and "mail traffic statistics" to the line, and set the keywords to bold.

Now, the click-through is almost 80% (okay, at least better than 50%).

It's so interesting to be able to do things like this. The key is having a tracking tool you can use so that you can take an action and then track the response to that action.

In this case, the tool is a very simple web server traffic log that I wrote. It doesn't even do any consolidation or analysis. It simply lists the web server hits in reverse chronological order, albeit in a nicer format than you'll get looking at the actual server logs.

But, the point is, you can build feedback tools into almost any information system that you're using. And, my observation is, very few users understand just how much power you can get, when you look at information systems in terms of feedback loops.

For example, in an insurance system, the feedback loop is established through monitoring the claims coming in, in parallel with tracking the policies that are being sold. We've built systems that correlate the claims with the policies that resulted in those claims, and put them all in the same window. But we've observed that they're not being used in the way we designed them, simply because claims were done by the claims handling department, and policies were sold by the sales department, and never the twain shall meet.

So how are prices set? By pegging the prices against what the competition is charging. But the competitors may be catering to different sets of clientele resulting in a different claims experiences. The irony is that the users actually have better information, right under their noses, to prove or disprove this thesis. In any case, they should be able to work out, statistically and in much quicker time than they could employing third-party actuaries, the prices to charge to cover the costs of the claims. The feedback loop gives them eyes to see so that they can navigate their way to profitability. But it's not being used

So, the next thing is to ask is : is this peculiar only to Singapore - that we have somehow much dumber people. But we've worked for years with the multi-nationals - French, Germans, and the Americans (as in US of A) - and I believe the problem could be universal.

I think it's due more to the dismal state of the IT industry, where the emphasis is on technology rather than the information. We should understand that we're really in the business of understanding information, and technology is just the tool.

I believe the users can be persuaded that there's a better way. Sure, a lot of people just want to go through the motions and get paid each month - if they can get away with it. But you can start with the proposition, "Wouldn't you want to earn more, each month? We can do it if we're more profitable", and take it from there.

But getting the IT department to change - to stop blocking initiatives that didn't originate from Redmond - that's a harder thing. Try talking about understanding information when every IT guy you meet wants to talk about .Net and Visual Basic, and making obeissance to Bill Gates.

You can change things if you can get a lot people moving in sync with you. But you can get bogged down with "due diligence" and all that sort of oversight, especially when the "Mac Way" of doing things you are trying to cultivate among the users start to threaten the authority of the IT department.

Quoting this MacNewsWorld article : "... it's not that hard to support the idea that we tend to value the wrong kinds of expertise in deciding who the IT experts are ... IT decision-makers, the people whose expertise led to the rapid rise of the IBM PC and blocked Apple's early effort to serve the enterprise computing market ... that kind of expertise, in which the wrong people apply inapplicable experience to make wrong decisions..."

Unfortunately, it's these kinds of people who're controlling the IT industry discourse, deciding what is important and what's not, what is standard, and what's not. People like Rob Enderle, ironically from the same journal.

So what can we do? Quoting the MacNewsWorld article again, "In the short term, nothing. The people in charge in the data centers will perpetuate their ideas until younger companies with smarter leadership do a sufficiently better job of meeting consumer needs either to put their employers out of business or take them over."

But, I may be dead by then. "In the long run, we're all dead."

Posted at 10:19AM 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.