|
Fri 29 Oct 2004
The Developer's Mac
Category : Technology/devTalk.txt
"Time is a jet plane, it moves too fast". So sang Bob Dylan on Blood On The Tracks. And I've got blood splattered all over my brain reading Mark Bowden's un-put-downable "Black Hawk Down", which I've reluctantly set aside just to get some work done. Last week, at this time, I was wrapping up my stuff after doing the presentation at Apple WWDR (Asia)'s Mac OS X Development Seminar. Leon Chen's put the photos from the seminar up on his .Mac page. It was pretty warm where I was standing and I think I looked a wreck. But I enjoyed it all the same. To think that I was once so shy, I'd die every time I had to get up and say something in class. But I was forced to overcome it when I was made an instructor while in the Army, and that was the best thing I ever got out of doing National Service. Just one thing I forgot to mention during the talk, and I'd like to address it here. I was showing a series of demos based on the hostel system that we did, below, and I covered the variety of technologies that we exploited: 
And the thing that may have crossed a person's mind, who's currently doing the same on the PC, is "So what?". And I wished I had stopped a while to address that. I think the point I'd like to make is that we're really in the business of helping people understand information. That was the point of the demo - that we could tell a story from the point of view of a person booking a hostel bed, and of the person whose job is to operate the hostel, and of the owner of the hostel. The system proceeds to provide information from all three angles, so that the work could be coordinated. And that's why we have a system - to help people work better. Now, it's very difficult to go a person, whose head is stuck in DLL hell, and ask, "Say, do you know what business we're in? Like, you know, the way Revlon knows that it's not simply in the business of making cosmetics" What business are we really in? It's like having someone coming to you and ask, "Do you know the true meaning of Christmas?" You'll say, "Go away, I've got to get this machine fixed and get back to doing some coding". Now, if you could provide your programmers with tools that will just snap on and work, like the Mac, then you could go, "Now, do I have your attention? What else do you really need to do? So can I ask now, what's really going on here? What story are you telling your users? Can they understand it? And why does it matter?" The tools that we use do shape what we are, what our priorities are, and what we care for. If we want to work like a craftsman, where we're told people enjoy using our products, then we've got to choose our tools carefully, and make sure we understand what we're really doing. And why we're doing it. We're really in the business of helping people understand information better, through cutting away at complexity, and making the difficult things understandable. But we can't do that if we're always quarelling with our tools, or spending most of our time feeding it, or worse, intentionally complexifying things in the hope that that will protect our "marketability". In our age of the Internet, the truth will come out sooner rather than later.
Posted at 11:11AM UTC | permalink
Tue 19 Oct 2004
A Little Learning
Category : Technology/aLittleLearning.txt
They say that a little learning is a dangerous thing. But there's so much information out on the Internet, and so many things to understand, that you've got to figure out how to learn quickly from scraps of knowledge. Take DNS, for instance. I've just finished a version of DNS Enabler that I can use for the upcoming developers' seminar. It's "better" than the one I had left around for download (in the article "OS X, Broadband, and the Airport Base Station"), in the sense that you can set the location of the server (it was always set at 10.0.1.201 in the "old" DNS Enabler). And you can set the IP address range (it used to be only for 10.0.1 networks). And you can set up more than one machine on that network to be addressable by domain names. (In the seminar, I'm using this so that I can let the audience access both a PC and a Mac by domain names, if they want to see how well the same pieces of code run across the two platforms.) So, at the moment, I have a DNS Server that is safe to use in a private network. But by building this, I now know what I don't yet know, and where to look, if I want to go one step further and make it a fully functioning DNS server that can be exposed to the Internet. I remember the first time I attempted to set up a Domain Name Service, using MacDNS, back in the days of OS 9. I repeatedly brought down the Internet connection of our customer, out where we were camped then. I only made progress when I bought QuickDNS Pro from Men and Mice (but they're not looking much like a Mac-type company anymore). They had a nice little DNS Expert application, which can be used to troubleshoot DNS set-ups, and that helped me built knowledge about all these arcane stuff bit by bit - including something called "classless reverse domains". I remember the technician from our ISP throwing out these superior terms, when I had to tell him I was using a Mac, and I was expected to bow down and grovel because the Mac wasn't expected to have "it". I later learnt (rather painfully because this was before the days of the fire hose we now know as Google) that he was only speaking Unix-geek and that there was an equivalent way of setting this up using the more Mac-like QuickDNS Pro. Once I did that, plus a few other new things I learnt to check, the router stopped crashing on me. When OS X came out, QuickDNS Pro didn't work on it. But I had OS X Server, and I could click the DNS-related buttons in Server Admin and go to the command line to see what changed underneath. That was my first taste of BIND. When I realised that even a stock OS X client had a working BIND built-in, I switched and ditched Server. Hurray, but I'm no DNS guru (yet!), and probably never will. But the thing is to be able to do productive things with each little piece of knowledge, because there is way too much data out there. We've got to learn how to learn from the scraps that we get. I have people writing in wanting step-by-step instructions to do this or that. Well, I have the DNS and BIND book next to me and it's 600 pages long. I've got no choice, I can't read more than 10 pages at a time. The more important thing to do, always, is to create a skeleton framework of key concepts - something that will make sense to yourself and, more importantly, that you can use to try to explain to another person. Once you've caught the key concepts (and one should train oneself to do this very quickly), you can use that framework to hang the little pieces of information that will come your way, just-in-time, so that you can get things done when you need them. Don't bother to memorise things. It's not an effective way of learning. Take the trouble to understand concepts. The problem I had with the ISP's technician was that he learnt things by rote. If he had understood things in terms of concepts, he would be able to describe the real issue, and then it would have only taken me a bit more time to say, hey, I have an equivalent way of doing that on my Mac, and thus solve the problem sooner. I know I've got to get down from my soapbox but this is one way I've found that is effective for living in a world of information overload. Understand, don't memorise - that is what we should teach our kids.
Posted at 1:10PM UTC | permalink
Sat 16 Oct 2004
A New DNS Enabler
Category : Technology/NewDNSEnabler.txt
I'm working on an "enhanced" version of DNS Enabler. I haven't worked on this for ages. But, for the upcoming OS X Developers' Seminar (for which, Leon Chen says, almost 50 people registered within the first hour), I'd like to create a local network using my Airport Express Base Station, and then allow people to interact with our demo using domain names rather than IP addresses. (... for people who've brought along their iBooks or PowerBooks or PC laptops, that is). 
I've finished the interface (more or less) and was going to wire it up with the Unix shell scripts when I realised I've forgotten to bring home the picture I drew of which files go where in /var/named and how they should be configured. Now, I drew that on a piece of paper but my first thought was to wish I could somehow just ssh (remote log-in) back to the office and pull that piece of paper back through the Internet and plonk it on my desk in front of me. The fact that I could get so frustrated is a sign of how much my mind had wired itself to the idiom of the Internet. I've spent a lot of time drawing up the connections for just so I could move faster when I got to the Unix scripts. But I'll just have to work from memory. This part of a lazy Saturday afternoon, with my kid having a nap and the birds singing along outside, it's a great time to do some programming.
Posted at 9:05AM UTC | permalink
Thu 14 Oct 2004
The Mac OS X Developer Seminar @ The Temasek Life Sciences Laboratory
Category : Technology/DevSeminar.txt
There's a Mac OS X Developer Seminar next Friday at the Temasek Life Sciences Laboratory at 1.00 pm (to 5.00 pm). It's free. Just register. Leon Chen from Apple will be covering Mac OS X 10.4, the Tiger release, and some of its cool features. I'm also going to be presenting but I'm staying on Panther (10.3.x) and showing how we can go under the hood (of the OS X Aqua interface) and turn on all those delightful stuff in the Unix layer. 
I'm calling my talk, "The Developer's Mac - Productivity, Power and Portability". I'm showing how productive we can be when we have all these tools on tap, ready to use. And we use tools that cut across the arts and sciences, moving effortlessly from one mode of thinking to the other. So, I'll show a complete application built using tools like Photoshop, GoLive, iPhoto, Apache, PHP, Java, WebDav, MySQL, Postfix, etc, all the while sustained by the great music coming out of iTunes (no, I won't show the iTunes part). The power comes from simplicity, from being able to find just the right tool to solve any problem, and being able to express any solution, on a single computing platform. And you do get computational power - you can do a lot on an iBook, let alone an Xserve. Finally, the portability comes from being able to move the work around, both in the sense of being mobile and being platform-agnostic. We can move our finished product to just about any hardware platform on earth. It'll be great if I can show the complete demo on my iBook and then show everything running the same on our PC laptop - with no change of code. We're working on it.
Posted at 11:21AM UTC | permalink
Reflections on Man United, iCal, and a life well lived
Category : Commentary/ManUtdiCal.txt
I thought there would be something like this - Manchester United's fixtures on iCalShare.com (where you can also find Arsenal's fixtures if you follow the gooners). This is what I now have on iCal. 
See what I mean about how the technology is helping us to merge work life with the rest of our lives. The calendar with the orange tab, above, shows the Singapore Public Holidays. You definitely don't want to schedule a business meeting on a holiday. And my wife updates an Appointments calendar for me, when she needs me to know when I have things to do for the family. I also publish my work calendar, of course, so that's where she goes to get an idea of my schedule. It's all very easy to set up, if you have your own server. iCal calendars are published using WebDav servers and it's not that difficult to turn on WebDav support using the Apache web server that Apple builds into every OS X machine. It's the little things that count, and these little things do add up to quite a lot, if what you're looking for is a quality life, or a life well-lived. 
Posted at 10:20AM UTC | permalink
Wed 13 Oct 2004
ISP blocks port 25? No problem
Category : Technology/Port25.txt
Ronnie Teo found the solution to a problem that quite a few people have encountered - the case of an ISP blocking port 25, the default port that mail servers use to contact each other. This is what he says : 
Thanks for sharing the solution, Ronnie. For point 4, the line to add in the /etc/postfix/master.cf file is : 587 inet n - n - - smtpd There is already a line that says : smtp inet n - n - - smtpd so you add the 587 line to it. I'm thinking of making this even easier to do by incorporating it into the Postfix Enabler interface - probably the version that I'm preparing for Tiger. But, for the moment, this looks easy enough to do, manually. So, there. I ought to look into all my mail about Postfix Enabler and do an FAQ. Oughta. Shoulda. Gotta find the time.
Posted at 4:22AM UTC | permalink
Tue 12 Oct 2004
Postfix Enabler speaks Italian
Category : Technology/ItalianPFE.txt

Thanks to Joram and Daniele from the University of Rome's Mac Users Group (MugRoma), we've got an Italian localisation for Postfix Enabler. Postfix Enabler 1.0.9 now works in English, French, German, Italian, and Traditional Chinese.
Posted at 4:38AM UTC | permalink
A Correction
Category : Technology/correction.txt
Sorry, I made a mistake. Matthew Hall doesn't write TheJouleBlog. He sent me the permanent link to the IMAP+Fetchmail article and I made the wrong assumption.
Posted at 3:38AM UTC | permalink
Mon 11 Oct 2004
PacNet is so slowwww today
Category : Technology/pacnetslowDNSaddresses.txt
Seems like a day for short posts. PacNet users who are seeing a slow-down in web access to sites outside Singapore should add these two IP addresses into (and right at the top of) the DNS field of their Network Preferences set-up : 203.120.90.40 and 192.169.33.3 Looks like they're having problems with their usual DNS servers. These alternate DNS servers help a whole lot. Just don't tell them you're using a Mac. If you're unlucky to get a PC-centric support person, that's the first thing these guys always think is wrong. If you don't want to be thrown red herrings, always tell them you're using a PC and then translate their instructions into the equivalent (and often shorter) concepts on the Mac.
Posted at 8:25AM UTC | permalink
Postfix Enabler and Tiger
Category : Technology/PostfixEnablerforTiger.txt
And I can confirm that Postfix Enabler doesn't (yet) work with Tiger. Just tried it. Seems like quite a few things to fix. I say it because I've been asked (a few times). I'm sure I can get it ready when that cat comes out to play. Enough of that T word, for now.
Posted at 8:07AM UTC | permalink
Postfix and Software Update
Category : Technology/PostfixSoftwareUpdate.txt
I read elsewhere on the web that Postfix was updated by the latest Apple Software Update. But I've had no problems after doing the update. So, if you're wondering whether your Postfix Enabled-mail server would go right on working through all the latest updates, have no fear. Just do it.
Posted at 7:57AM UTC | permalink
Postfix Enabler, IMAP and FetchMail - A How To
Category : Technology/IMAPandFetchmailAgain.txt
This is a follow-up to an earlier post about Postfix Enabler, IMAP and FetchMail. To recap, if want to use Postfix Enabler to set up an IMAP server and then use Fetchmail to pull down mail from a variety of other servers (so that you can re-distribute them to all your IMAP clients in a consistent manner), here are some instructions on The JouleBlog that can send you on your way. Matthew Hall writes The JouleBlog and he's sent me a permanent link to the article. I'm making a note of it here because I ought to try this someday. Thanks, Matthew.
Posted at 7:31AM UTC | permalink Read more ...
|