All in the <head>

– Ponderings & code by Drew McLellan –

– Live from The Internets since 2003 –

About

Call For Hackers

3 August 2005

Those who’ve been following for a long time may remember a project called Mailio that I announced back at the start of last year. To recap, Mailio is a web based email client. The concept is that it enables children to use email to communicate uninhibited, keeping away the dangers of viruses, spam and poor judgment. Mailio also serves as a useful introduction to email. The interface is really stripped-down and basic, but is based on a typical desktop email client, making it an effective training tool for youngsters.

I had a few different motivators for starting this project. The primary reason was the the resident small person needed a mail client, and we weren’t too happy about the idea that she might be exposed to unpleasant spam and viruses. Leading on from this, I recognised that if we were having the problem then a lot of other people would be too, so the plan from the outset was to solve the problem in-house and then make it available for others too benefit from. In addition to this, I’d not done much PHP at the time (I was primarily hacking on ASP back then) and I wanted a project to help flex my PHP muscle. (That sounds ruder than intended).

The principals are simple. Mail can only be sent and – more importantly, received – from addresses listed in a parentally controlled address book. As a parent, you set the address book up with the names and addresses of friends and family, and any incoming mail from an unrecognised address gets syphoned off into a list for approval. Technically, the aim from the outset has been for the app to be as portable as possible. It stores data as XML so to not require the presence of a database server. The goal is that it should be possible to upload the files to a regular shared hosting account and off it goes.

All sounds great, right?

A lot has happened since then. Mailio is still running strong locally, and is working well for the small person. I’ve not managed to get it to a stage whereby I’m happy to release it for other to use, however. Basically, it’s working great but there’s still a way to go. Off the top of my head, the main tasks are account management (POP3 details are currently hard-coded), display of multi-part emails, and the chunky task of the whole parental interface. At the moment I manage the parental side of things by SSHing into the server and hacking nodes from one XML file to another, and whilst that makes me feel pretty 1337, it’s not the ideal solution moving forward.

Once the basics are done, I’d like to release an initial version, and then begin working or some fun stuff like throwing some ajax into the mix and trying to really add some value to the whole children can have email too thing.

Looking for help

As much as I’d love to, I can’t do all this on my own. I have lots of stuff going on and if in 18 months I’ve not found time to get Mailio to a release level, then the chances are that it’s not going to suddenly happen without change. Ordinarily I’d just forget about it and throw the thing away, but I honestly believe this is too useful a project to give up on. I really want to see it to release, by hook or by crook.

So I’m looking for some people to come on board and help. Primarily, I could use a decent PHP hacker or two who are fluent with writing tidy class-based modular PHP. Currently Mailio uses a lot of XML and XSLT, so any experience in that area (particularly with all the new stuff in PHP) would be really handy. But obviously I’m asking for people to donate their time and expertise, so really being willing and having some time to give is the most I can ask.

What do you get out of it? Well, the chance to work on an interesting project with other like-minded individuals, a sense of accomplishment, and something interesting to put on your CV/resume. If you have any small people in your life, you can help them out with a nice safe email client too. You can’t lose!

If you’re interested in being involved, then a hearty thank you, and either leave a note in the comments or drop me an email. My address is in the sidebar.

- Drew McLellan

Comments

  1. § Anonymous: Apple already has you covered :)

    Your Own Personal Post Office

    Protecting your children from unwelcome email is quick and easy with Mac OS X Tiger Mail. Just create an email safe list for your kids’ Mail accounts to ensure they only exchange email with people you know. Emails from people not on your safe list are automatically (and silently) routed to your account for approval before they are sent to your kids.

    More at Mac OS X Family
  2. § Drew: Yup, Apple have introduced some similar features in Tiger, I’m aware of that. Still, most people aren’t running Tiger.
  3. § Arnaud: Hi,

    There are some classes in PEAR you may find useful, especially Mail_Mime to handle multi-parts mails.

    http://pear.php.net/package/mail_mime

    You should setup a repository so that contributors may attracted more easily. A Trac install to manage the project could be nice as well :)

    Anyway, I’ll stop the rambling.
  4. § Tom: I remember alright! I also remember thinking what a good idea it was at the time, and I checked back periodically to see if anything had happened to it.

    Much as I’d like to offer my services, my PHP skills aren’t anywhere near what would be required. However, if you need it testing at any point, I’d be more than happy to do so.

    Keep us posted :)
  5. § George: Eric Raymond said “release early, release often”

    Perhaps you should just release the source building a good base of users will normally ensure developers willing to work on the project.

    George
  6. § Splash!: I have to agree with George… if the source is released, I’m sure there will be willing developers able to work on it.
  7. § DD: I’m interested in helping with the project Drew. I’ve also sent you an email.
  8. § David House: I’d love to help, but I really can’t commit the time right now. I’ve got a brilliantly busy summer lined up, followed by another year of school during which I’m loath to commit any time as I don’t know how busy I’ll be.

    If you set up a mailing list or wiki, etc., for the project, I’ll sign up as a lurker.
  9. § tim: Hi drew…

    sounds like an interesting project – no small person at home now (just turned 24) but I’m willing to help… I have an average knowledge of xml/xslt, and somehow manage to get it work with php (at a basic level…)
    Let me know if I can help.

Photographs

Work With Me

edgeofmyseat.com logo

At edgeofmyseat.com we build custom content management systems, ecommerce solutions and develop web apps.

Recent Links

Affiliation

  • Web Standards Project
  • Britpack
  • 24 ways

About Drew McLellan

Photo of Drew McLellan

Drew McLellan has been hacking on the web since around 1996 following an unfortunate incident with a margarine tub. Since then he’s spread himself between both front- and back-end development projects, and now is Director and Senior Web Developer at edgeofmyseat.com in Maidenhead, UK (GEO: 51.5217, -0.7177). Prior to this, Drew was a Web Developer for Yahoo!, and before that primarily worked as a technical lead within design and branding agencies for clients such as Nissan, Goodyear Dunlop, Siemens/Bosch, Cadburys, ICI Dulux and Virgin.net. Somewhere along the way, Drew managed to get himself embroiled with Dreamweaver and was made an early Macromedia Evangelist for that product. This lead to book deals, public appearances, fame, glory, and his eventual downfall.

Picking himself up again, Drew is now a strong advocate for best practises, and stood as Group Lead for The Web Standards Project 2006-08. He has had articles published by A List Apart, Adobe, and O’Reilly Media’s XML.com, mostly due to mistaken identity. Drew is a proponent of the lower-case semantic web, and is currently expending energies in the direction of the microformats movement, with particular interests in making parsers an off-the-shelf commodity and developing simple UI conventions. He writes here at all in the head and, with a little help from his friends, at 24 ways.