Tuesday, December 19, 2006

Tagged : 5 things

There is a "5 things" meme going around Apache, I just got tagged by Sylvain.

5 things you may not know about me :

1. I have been on 8 juries but so far I have only been arrested 3 times.
2. At school I wanted to go to university to do physics, the closest I got was to be the cleaner in the Physics Department of (London) City University (where the lecturers were astonished the cleaner knew physics).
3. I was fired from work twice and expelled from school once.
4. I have no qualifications in computing but I do have one in gas blending.
5. I used to be the photographer for an anarchist publication (one of the times I was arrested).

So, to pass this on, I nominate :

Pier, Andrew, Bertrand, Vadim and Steven ...... (Sorry Guys :-))

Tuesday, December 05, 2006

Corruption

An old friend of mine who runs a small business in the UK, described to me his dealings with officials from another country, who wanted to check him out as a potential supplier :

We sent air fares for 5 officials (1st class) they bought economy and pocketed £2k each. Demanded Hilton on Park Lane for 5 nights (our cost). Specified the car they wanted to be picked up in. Demanded an open credit limit on their hotel rooms. Are planning to be on site for the audit for 90 minutes. Crooked? Nah.....


Poor guy!!

Thursday, November 30, 2006

Babelsberg

I was invited to Babelsberg to join the MindQuarry Team for a week, to help out on the project.

I am here to help with integrating Dojo Ajax into the Web interface.

The MindQuarry project is very interesting, it is a collection of integrated knowledge management tools designed for group working.

MindQuarry is built using all OpenSource software, using all of the best most modern software modules around. Cocoon 2.2, JCR, SVN, Solr, Maven2, Spring, Dojo etc.

The team is highly skilled and they are progressing fast. This project has a great future.

Monday, November 20, 2006

Good Progress

I am happy to announce that Apache Cocoon now has (what seems like the Holy Grail of Web 2.0) a file-upload progress bar.

This was definitely no one-man effort.

I had a lot of help from members of the Apache Cocoon developers community, including Sylvain Wallez knew how to make it work, Upayavira had done part of the job, Vadim Gritsenko helped me get i18n working with JSON, Mark Lundquist supplied a patch to allow me to use nice namespaced JavaScript from the SiteMap, I had a commercial sponsor (thanks guys!!) and last but not least, I would not have considered the job without the fantastic Dojo Ajax Toolkit.

The most lengthy part of the job was not writing the code, but doing the research.

File-type input fields in HTML forms can be tricky beasts, they have a limited API for security reasons. Marrying those with the excellent (but internally complex) CForms framework in Cocoon, posed another set of problems. Making the CForms BrowserUpdate mechanism work via Dojo's IframeIO cross-platform so that file-type input fields can be submitted via AJAX events in the background was the biggest hurdle, as it exposes you to the plethora of DOM bugs in the current browsers. It still does not work in Safari (but has been fixed in Webkit, so should work soon).

It is amazing, the shenanigans you have to go through to get something like an upload progress bar working. It amazes me that none of the browsers have this feature built-in to their native file-type input fields, as this is clearly the easiest place to do the job.

So, how does it work ?

You add the Widget to your form :

<div class="dojo-FormUploadProgress">Upload Progress :</div>

When the Widget instantiates, it attaches itself via an event-listener to the form submit.
When the form is submitted and the upload begins, Cocoon's MultipartParser writes upload status info to the user's Session, the Widget begins to poll a system-level URL in Cocoon to retrieve this info as a JSON Object and updates the page with it.

It sounds easy now, but the devil is in the details.

The Dojo library made the polling and updating really easy, but if only there was a decent API on the browser, we would not need to muck around asking the server how much data had been uploaded, I mean the browser knows this, you just cannot ask it.

You cannot find out how big the files are until the uploads are finished. There is only a single Content-Length in the request and this includes the size of the files and any other fields that may be in the form. My original usecase was for one progress bar per file, but this is impossible unfortunately, unless you want to get really deep and dirty and make a separate submit for each field.

Anyway, it has been a really interesting project and it is not over yet.
There has got to be a lot more testing on more Browsers than I can run here. Then I need to re-work the code to commit it to 'trunk' so that we have this in Cocoon 2.2 as well as 2.1.10-dev.

Thanks again to everyone who helped this become a reality.

UPDATE

As seen on Ajaxian.

Wednesday, November 01, 2006

Edgy Update

I tried updating my experimental Ubuntu installation from 6.06 to 6.10.
I tried to do the upgrade from the command-line instead of from an install CD.

Big mistake.

100's of errors.
Lots of stuff is now broken.

These guys have a long way to go !!!

Thursday, October 12, 2006

Google Docs FooBar


Google Docs FooBar
Originally uploaded by sharkbait.
Browser detection gone wrong .......

"You need Safari 2.0.4 or greater"

That is what I am running you feckwits !!

Monday, October 09, 2006

Mine's a half

Even though I may not be ecstatic about Apple's every product ...... I just bought myself some more.

I got sick of lugging my iMac around so I bought a new MacBook, the cheapest model.

It's called HalfPint.

It is the cheapest and fastest Mac (let alone laptop) I have ever owned ...... Apple's got a real cracker here !!!!

Now of course I am scouring the net for Universal Binaries of some of my more obscure apps ......

Saturday, October 07, 2006

.Mac over and out

I finally kicked the chair out under .Mac.

My account expired on the 1st of October.

Do not send any more email to sharkbait at mac dot com.

Why did I leave ?
It has been unreliable for years, it offers very little that you cannot get better for free. Apple kept focusing on features I was not interested in, while never fixing the long-standing bugs in the stuff I was interested in (this could be a criticism of MacOSX as well !! ).

The one thing I still found useful was syncing between multiple Macs, ironically this is the one part of .Mac functionality that no one has been able to replicate in open-source setups yet. Syncing was a great idea, but it was one of the least reliable parts of the service. You set up .Mac syncing in the System Prefs, to sync Calendars, Addresses, Bookmarks etc. once per day, come back in like a week to find it has not sync'd for several days, no warning. That is just so pathetic as to be insulting. This problem has always existed, Apple do not seem to bother fixing old bugs, just add new ones features.

Don't get me wrong, I am a long-time Mac aficionado, MacOSX is the best OS I have ever used, but it is still a PoS and Apple is still extremely arrogant.

CocoonGT 2006, all done

Back from another Cocoon Get Together.

Many thanks to Arjé and his team for another great GT.
His introductory speech about the productivity of vegetarian Cocoon developers was absolutely hilarious !!!!

Ross and I gave a talk on using LDAP from within Cocoon ....... it seems the timing was just right for some people, I had 7 different conversations with people who are about to do this, after the talk ...... good luck guys !!!

Bertrand was kind enough to call our talk the best of the conference, but then went on to say he was biased :-)
I thought his talk about stringing Solr + SVN + WebDAV together to make a "poor man's" CMS was extremely cool.

You can see the photos here and the slides here. Ross posted some tips for large-scale LDAP deployments here (Ross and I will be updating our slides to contain full notes in the next few days, plus we will add our sample app for LDAP to the Naming Block.)

Many thanks to Sena and Hui for putting me up while I was in Amsterdam ....... sorry I did not see more of you guys, but the Cocoon Geeks are so demanding :-)

Friday, September 29, 2006

Talking at the Cocoon GT

I am lucky enough to have been invited to give a talk at this year's Cocoon GT.

I am giving the talk in collaboration with Ross McDonald, Senior Architect of European Application Development for VNU.

We are talking about LDAP and Cocoon.

Here is the rough outline :

Real life, down-to-earth Cocoon and LDAP :

beginner level

- what is LDAP?
- why and when to use LDAP?
- why might LDAP, and integration with Cocoon be perceived as difficult?
- the setup and use of LDAP
- some useful LDAP tools
- a real world demo, hooking up to Mail clients
- the setup and use of Cocoon's LDAPEntryManager

intermediate level

- how to use the LDAP component from your own code
- empowering developers/designers to build LDAP applications
- a real world demo, hooking up to a web application
- some tips and tricks for large scale LDAP instances
- questions session

I will post links to the slides etc when they are done :-)

Hope to see you there .....

Wednesday, September 27, 2006

GreenApples

If you love Macs and you care about the environment .......

See this campaign by Greenpeace, join, write to Steve.




UPDATE

Or buy your next Mac Pre-Loved

Tuesday, September 26, 2006

SVN-Savvy

There is something I find a bit annoying about MacOSX.

I am a heavy user of Subversion repositories, for versioning my own work, and work I do in collaboration with other people, we could not work without it. When you add a folder to SVN, a hidden folder called '.svn' containing metadata is automatically added. This normally causes no problems ....... until that is you try to keep something like a presentation made my Keynote.app in there.

When Apple moved from OS9 to OSX, a replacement was needed for Resource Forks. Apple came up with a solution called Bundles. Applications in MacOSX are Bundles, so are many native file-types for Apple's built-in Apps. Bundles are actually folders with more folders and files inside. If you make a document in TextEdit.app and add an image to it, the image is stored in the Bundle. The Finder is written to treat Bundles like a single file, so that is the way they seem to behave.

When an application saves a Bundle, it writes everything out to a temporary folder, deletes the original, the renames the temporary. That all sounds like a fine approach, until you consider that the file may have been added to SVN, in which case all of the '.svn' folders are now missing, and of course SVN freaks!! The Bundle framework, or whatever the code is that is doing this, was written with the assumption that nothing would legitimately write it's own files into a Bundle, which normally would be reasonable.

Considering that SVN is built-in to Tiger, is included with Apple's developer tools like XCode ...... you'd have thought someone at Apple would have clicked by now ...... it cannot be too difficult to make their code SVN-savvy. OK, so if they don't want to have to muck about moving the '.svn' folders around, they could have to option to keep Bundles TAR'd.

MacOSX is a great platform, there is nothing I'd rather use for my work ...... but it is far from perfect .....

Monday, September 25, 2006

Jaguar

My brother Mike is driving the yellow D-type at Le Mans.

Thursday, September 21, 2006

Thai Coup Fiasco

Reading up on reactions to the coup, it sounds a bit like Venezuela ..... a split between working and middle classes.

Lots of varied comments from Thais on the BBC News website, with many saying that they may not have liked PM Thaksin anymore, but resorting to a military coup was a big step backwards in a developing democracy.

Since he was making reforms popular with the poor, one wonders if outsiders were involved.

Tony Blair is now rather unpopular in the UK, should the British Army rise up and rid us of him, with the support of the Queen? (Umm, no thanks!!)
Hey !! Who needs to wait for the next election, eh?.

If members of a professional army have to be trained to kill and follow orders, they should equally be trained to have a deep aversion to this kind of behaviour. In my humble opinion, of course :-)

Tuesday, September 19, 2006

History of the Future

Notes for the exhibition.

We need a positive message, not the usual guilt-trip.

A few ideas about how the changes, that led to a sustainable world society took place.

Scenario: People from the future return to the present day: "Fantastic!! You lot managed to solve the problem, here's how".

Campaign for real Civilisation:
A morality based, grass-roots world movement (similar to Abolition of Slavery, Emancipation of Women, Black Civil Rights Movement, Abolition of Child Labour etc.).
Figurehead : Gandhi.
Leads to a new grass-roots moral paradigm in global society that provides the position to which the UN Treaties (below) are forced to respond. (Historically these types of changes come from the bottom up).
Conspicuous sustainability, fair trade, fair use, investment in the future health of the environment become the new status symbols of the rich world.
Consumer power is taken to it's extreme.
The mass adoption of vegetarianism, makes available a huge over-capacity for food production, allowing a massive growth in local organic bio-ethanol production.
Historians still dispute the beginnings of this movement, but it is commonly traced back to an exhibition at La Villette in 2006.

Pre-Loved IKEA:
It is 2008, IKEA's new catalogue begins to hint at a new direction, with the introduction of high modularity and durability. In 2009 the first repair workshop opens in an IKEA store and takes its first items for re-sale, by 2011, half of IKEA's trade is in 2nd-hand IKEA parts traded back through the store. The 2014 Nobel Prize for Sustainability goes to IKEA's design team for promoting modularity, re-usability, durability, adaptability, repairability and recylability. By 2016, IKEA stop manufacturing new goods and focus their entire operation on the worldwide "pre-loved" goods trade.

Cars eat Shit:
2010 the government of California passes legislation that says that by 2015, all private transport must run on human excrement. Petrol stations are replaced by sewage plants across the state.

The Carbonator (has to be said with an Austrian accent):
Tracks and displays your personal Carbon usage.
It is a wearable computer, in the form of nano-transforming jewelry that shows your high status as a low carbon user. Combining GPS, wireless, bio-monitoring, multi-spectrum scene detection, voice recognition etc., it interacts with the objects in the world around you to carefully track the carbon you expend in the products and services you use and share. They log your shared usage onto your Carbonator using wireless networking etc., and can suggest cheaper alternatives.
In 2016, the UN and World Bank contract a consortium of hi-tech startups from Palestine, Sudan, Lebanon, Iraq and Afghanistan to develop a growable (bio-computer) version that can be given away to anyone, by 2018 it is estimated that 95% of people use them and 97% of products and services are tagged.

Carbon Capitalism:
By 2018, the Euro Zone (which has grown to include a third of the world's population) votes to change the basis of the Euro from the speculative money markets to Carbon.
The value of goods and services is based on the Carbon expended in their manufacture, use and disposal. You can borrow and lend Carbon. You gain wealth by saving the use of Carbon by yourself and others, ie. in trade, you get the Carbon you save others from using. The Carbon Economy encourages local production and investment in Carbon sinks. Instead of welfare, the poor (nations and individuals) get carbon credits. The tax you pay is in the form of carbon credits to be used by the government to provide public services and invest in new infrastructure to help the population reduce their carbon consumption. The economy benefits those who produce services with low carbon overhead (the Arts are therefore encouraged). Instead of spending 'wealth' to save carbon, you save 'wealth' by saving carbon. At work, you are given a carbon budget to get a unit of work done, you keep any unused carbon credits.

Fossil Fuels (Inter)Nationalised:
UN Treaty in 2020. UN internationalises all reserves and supplies of fossil fuels, removing them from the world economy. Petrol and Diesel production are almost ceased, remaining stocks of coal and oil are only used for making recyclable plastics etc.
The treaty forms the basis of the World Carbon Bank which brings Carbon Capitalism to the rest of the world's economies.
In 2026 the UN institutes a form of Carbon Communism, by calculating the potential of the worlds Carbon Sinks, and distributes this as Carbon Credits, the same amount going to each member of the world's population.


OK, Thierry, so this is mostly mad crap ;) And probably thought and written about (and rejected) by others etc. etc. Anyway I hope some of it gives us some ideas.

Saturday, September 16, 2006

Exhibition opening

There is an exhibition opening at the Cité des Sciences et de l'Industrie at La Villette in Paris on October the 17th. There is no website to point you to yet, and I do not even know the title of the exhibition ...... it is about sustainable lifestyles (how to live a happy life without consuming the planet).

The exhibition was the brainchild of my good friend Thierry Kazazian, co-founder of O2 and founder of O2 France, that country's leading sustainable design consultancy; and author of "Il y aura l’âge des choses légères" (An era of lighter things), a manual for sustainable design and development.

I was a product and furniture designer before I became a software developer. Thierry and I worked together on many interesting projects, exhibitions, seminars, thought-experiments.

Sadly, Thierry died last February after a long and courageous struggle with leukaemia. He is very deeply missed by many, not least his wife and two young children. I miss the laughter, we always had fun together, we could always talk about the most serious things in a crazy way, we were catalysts for each other's creativity. I am still devastated by the loss.

Two years ago, he invited me to take part in the process of developing the concepts behind the exhibition, which would then be passed on to a group of design students to do the actual work. Six of us spent two delightful weekends brainstorming the concepts. Some of us had worked together on similar exhibitions and were already good friends. I am an ideas kind of guy ..... there are few things I find more satisfying that brainstorming in the ego-free environment of people who are good at it.

We came up with some really fun and radical ideas, most of which I suspect will not see the light of day in a high prestige government sponsored exhibition.

In the run-up to the exhibition opening, I hope to publish here some of the notes from the concept stage and subsequent writings, ideas that for me just will not go away .....

..... so if my last blog post seemed a bit out of the blue, subject wise ..... now you know



Update

The exhibition is called "Changer d'ère" (Change of Era ??) It runs from the 17th of October at Cité des Sciences et de l'Industrie at Porte de la Villette in Paris.



Update

There is a brief entry on the website of Cité des Sciences et de l'Industrie, about the exhibition, here. There are no translations yet ......

Friday, September 15, 2006

Good Read

"Small is Beautiful: Economics As If People Mattered" by E.F Schumacher.

I am (re?)reading it at the moment ..... I cannot actually remember if I have read it before, but the ideas are so familiar, I feel I must have ..... beautifully written, ostensibly about economics, full of clear and refreshing sociological and philosophical insights.

Thursday, September 14, 2006

iTunes 7

I like some of the interface changes in iTunes 7 !!
The only downside being that iTunes Store only has album artwork for about 30% of my music :-(
I must have a pretty eclectic mix ;-)
Problem is ...... where to get the rest of them ?

Thursday, September 07, 2006

Whiffy Phone

I just bought a SIP WIFI phone. I got myself the UTStarcom F3000.

With it all setup, I was having lunch today in a local café, someone called my home/office phone number, the Sipura 3K at home routed the call to my virtual PBX, which rang the WIFI Phone, because someone upstairs from the café had an open network which the phone had already used to register.

Cool !!

I have only had it for two days. I am amazed how many open hotspots there are around central Brixton!!! Central London is even more crowded with them. Unfortunately, the phone is not always able to connect to open networks, maybe they are locked down using mac addresses or something .....

The concept is wonderful, this implementation is not.

The build quality is OK.
The battery life is pathetic.
The interface is unpleasant to say the least.
The ringtones are obnoxious.
It has a built-in webserver to configure it (cool huh?), but there is no way to add people to the address book except via the keypad (AAARRRGGGHHH).
It feels like a phone from 10 years ago.

I do not imagine WIFI phones will ever get the level of connectivity that we have become used to from the GSM networks, but being based on open protocols means that there will be a much higher rate of service innovation than that provided by the dead hand of the big GSM players.

The ideal would be to have both systems on one device.



UPDATE: I have had the device long enough to say that the battery life is not so bad after all. As long as you do not leave it on, trying to find, but not finding an access point, it will happily standby for a couple of days.

Saturday, August 12, 2006

Heard a faint Quack !!

I thought .... if I am ever going to get out of my Ubuntu non-booting mess, I am probably going to have to re-install, maybe Breezy .... so I should try to backup my configurations.

I installed a filesystem extension for ext2 for MacOSX, started the Cube in Target Disk Mode, plugged the firewire from the Cube to my iMac running MacOSX and tried using the extension to mount the Cube's Linux partition.

Interesting, it said it could not mount because of disk corruption, and suggested I use DiskUtility.app to fix it (I was astonished!!).

Anyway, it tried to fix it, said it had failed, but the disk mounted ...... I copied my config files and thought .... I wonder if it will boot now?

Well .... it did !!!!

So now I have a working machine again ..... but is it going to be reliable ?

Tuesday, August 08, 2006

CalDAV

As a follow-up to my remarks about CalDAV yesterday ......

Hardmac reports that Apple have setup MacOSForge, with a project called Darwin Calendar Server, an implementation of CalDAV in Python.

Monday, August 07, 2006

The duck still twitches

The bug that is stopping my old Mac Cube running Ubuntu seems to have been found before the 6.06 release, which is not great ...... also it is found in fedora core apparently.

A solution is in the source code now, ready to be released in 6.07.

Do I wait? Or do I try to compile a pre-release?

WWDC 2006 - First thoughts

Present:
Time Machine
- Please Deity, let it be based on a standard Subversion repository .... and btw. how does it work with other apps than the ones that were demo'd?
Mail - Stop adding stuff like pretty templates to it and make it more reliable please. RSS in my in-box, mmmmmm (not).
Spotlight - Across networks, great, but does it let you type into the search box yet, without being interrupted by the search?
iCal - Calendaring API ... good, we will get more integrated apps from 3rd parties ....
CalDAV - Lovely but can I do this cross-platform?
MacPro - I'd love one, but only X2 ? So, four Intel core are only twice as fast as two G5 cores?
Dashcode - If I can use the tools outside of a widget context, then great ! Does this mean Safari also gets a debugger ? Drosera ?
Alex - still pronounces 'Apple' like Steven Hawkins.
Core Animation - Yummy ...... where's the apps ...... we have seen so little for the other Cores ......
iChat - Tabbing looks useful. Hopefully the screen sharing is based on VNC. Maybe all this new stuff will work with Jabber/GoogleTalk one of these days?

Missing :
MacBookPro - No upgrade to Merom? That will disappoint some friends .....
iMac - No upgrade to Conroe? That will disappoint me!
iChat-Voip - Was heavily rumoured ... in a way I am glad they did not add it, they would likely have screwed it up by tying it into .Mac or something .......
Metal - YES !!!! There seems to be less brushed metal, I hated it !!


Maybe I am getting bitter in my Mac old age ..... but I hope that underneath all of the razmataz of the "family features" of MacOSX Leopard, that Apple have improved on the stability, reliability, responsiveness of Tiger, resolved some of the many bugs (the Finder being the biggest).


Funny how I setup a versioning filesystem on Ubuntu, it dies, then Time Machine is announced :-/

Saturday, August 05, 2006

Ubuntu: Dead Duck

How enthusiastic I was about Ubuntu in my last post :-)

Ubuntu gradually white-screened more and more on reboot, shutting down and starting up ......
Now I cannot even boot off the installer CDs !!

I tried resetting the PRAM.
I tried what is suggests in yaboot.

I have a non-standard video card in the Cube, but it obviously works and I can't see Ubuntu caring what was originally in a machine as old and obscure as this.

I am disappointed now :_(

Friday, August 04, 2006

Trying Ubuntu

Two blog entries in one day !!!! My readers are going to flip !!!

I have a gorgeous old Mac Cube, it was not doing much .....
A recent upgrade to QuickTime crashed half way though, trashing the hard disk, bummer !

A dear friend and Über Geek had recommended I run Linux here (I plan to to setup Asterisk to run a Voip PBX) so I decided to take the plunge and install Ubuntu.

It went really smoothly, Grandma could have done it.

Basically you download an ISO of the install CD, burn it with something like FireStarter FX, stick the CD in the Cube, reboot holding down the 'C' key and in a few minutes you are up and running.

If you like what you see, there is an installer on the CD to put this on your boot drive.

Within a short time, I had Apache 2, mod_dav_svn, mod_ssl and mod_dnssd configured and running providing me with a secure, versioning webDav file repository, mountable in the MacOSX Finder and accessible from SVN clients, with the added bonus of everything accessible via Bunjour (ZeroConf).

I would say that this rocks !!!

As a desktop platform, it is not even close to MacOSX 10.0 for many reasons, but the ease of setup and update of server processes is far superior. My guess is Ubuntu will go far!!!!

Google Photo Sharing

Google just released photo upload tools for MacOSX for their Photo Upload site, Picasa.

I just posted this album of largely random photos from my recent holiday in Holland as a test.

In holland
Aug 4, 2006 - 23 Photos


First impressions ?
I do not think Flickr need to be too worried yet .....
A free Picasa account has a higher space allocation than the free Flickr one, but the levels of community participation in Picasa do not seem close ...... if that is important to you .....
Hey! I have not even worked out how to view photos from other users yet ;-)

Thursday, June 29, 2006

Are you sitting Comfortably?

I have been suffering from some back pain over the last year or so.
A guy who performs magic has been giving me some treatment. One suggestion he made was that I should set up a reminder on my computer to sit straight, as part of my problem is due to my posture.

This is how I did it on MacOSX.

1. Download and install Growl.app, with it's growlnotify command-line tool.
2. Find a small image you'd like the reminder to show (I use the xray of Homer's brain).
3. Install the plist below in ~/Library/LaunchAgents/org.fiveone.comfortable.plist


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.fiveone.comfortable</string>
<key>Program</key>
<string>/usr/local/bin/growlnotify</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/growlnotify</string>
<string>--image</string>
<string>~/Pictures/homersbrain.jpg</string>
<string>-m</string>
<string>Are you sitting Comfortably?</string>
<string>Jeremy</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>ServiceDescription</key>
<string>Comfortable Reminder</string>
<key>StartInterval</key>
<integer>1200</integer>
</dict>
</plist>


Edit "~/Pictures/homersbrain.jpg" to be the path to your choice of image.
Edit "Jeremy" to your name.

Running this from the Terminal, launches the reminder immediately.

$ launchctl load ~/Library/LaunchAgents/org.fiveone.comfortable.plist


This uses MacOSX's launchd.

Wednesday, May 17, 2006

Google's Dog Food

Today, Google announced their interesting looking Ajax + Java development environment, Google Web Toolkit.

A few days before Google released their interesting looking Google Notepad.

The irony here is that Google Web Toolkit supports the Safari Web Browser, but Google Notepad does not ...... hmmmmm

Goggle, do you not eat your own dogfood ?

Monday, May 01, 2006

EMAP: DNS for Phones

Further to my exploration of VoIP .....

SIP-based VoIP is an open standard, so unlike Skype (which is proprietary) many people create new services for SIP ....... it has that slightly raw but exciting feeling like the early days of HTTP (hell, I remember that !!).

One useful service I found recently is an equivalent of DNS for Phone Numbers, called ENUM.

You register your landline phone number, pointing it to your VoIP number. If someone calls your landline phone number using VoIP, via an ENUM lookup service, then that call will be routed for free to the VoIP number. (If the number is not registered, it would go out via the VoIP-->PTSN Gateway of your normal outbound provider.)

No new phone numbers to give out, no complicated dial prefixes to call from one VSP to another, it's great !!!

There is a free registrar at e164.org. I registered my landline number with them. During the registration process, their phonebot calls you to have you validate that you own that number.

There are two free ENUM lookup services that I know of : SIP Broker and Voxalot.

Voxalot has the advantage of allowing you to setup your preferred outbound providers with them, along with a set of dial plans, so if the number you are calling does not have a VoIP equivalent, than your call goes via the cheap (or free) provider of your choice.

I now have free phone calls to local, national and around 20 international destinations (the useful ones to me) using VoipCheap, while staying registered with VoipFone for incoming calls where they offer better services but higher call charges.

This so Rocks !!!

Saturday, April 29, 2006

VoIP Fun

Pier got me interested in exploring VoIP, over the course of supper one evening.

My ISP BeThere, not only supply ample bandwidth, but also a wireless ADSL2 router with a built-in SIP ATA.

I started off by getting an account with VoipFone, they seemed to have a good balance of services and price. Not the cheapest calling rates, but no monthly fees and lots of services like voicemail and a virtual PBX etc. I setup the router with the account information, plugged in a normal phone and it all works!

I can make and receive calls via the old phone line and my new VoIP numbers.

Great start!!

I then wrote a little AppleScript plugin for AddressBook.app that gets it to dial a number via VoIP by requesting a URL on my router, which then rings my phone and puts me through, cool ;)

Next I started thinking ...... what else do I want this to do, apart from give me cheap phone calls?

My wish list includes :
* free phone calls, local, national, international
* give my family members free phone calls to each other (we live all over the world)
* cheaper mobile phone while I am abroad
* one phone number which will get me anywhere
* one voicemail box for every call, no matter how it gets to me

. . . to be continued . . .

Roll out

The team at VNU rolled out these sites last night:

http://www.vnunet.it/
http://www.computer-idea.it/
http://www.fotoideaonline.it/
http://www.pcmagazine.it/
http://www.databusiness.it/
http://www.networknews.it/
http://www.pmi-business.it/
http://www.channelonline.it/
http://www.gdoweb.it/

Quite a job!!
All running on Open Source: Apache HTTPd, Apache Cocoon, Hippo CMS.

The rest of Europe is to come ......

Thanks for the work guys !!!

Thursday, April 13, 2006

Break In

What damage can a hacker do using GNU Nano on MacOSX?

I found my cpu usage was going through the roof for no apparent reason. I looked in Activity Monitor and to my horror, a 'postgres' user had 'bash', 'sshd' and 'nano' threads running, 'nano' consuming over 60%.

I killed the threads and changed the 'postgres' user password.

I am a developer and I can get stupid, lazy, or rushed. I had installed PostgreSQL for a project I was working on, in a hurry, had to make a 'postgres' user, used 'postgres' as the password, then did not think about it ...... and yes, my NAT passes the SSH port from the outside.

I was getting lots of :
com.apple.SecurityServer: authinternal authenticated user postgres

Now I am getting lots of :
error: PAM: Authentication failure for postgres from 86.123.230.195
error: PAM: Authentication failure for postgres from acb01fc5.ipt.aol.com
etc.

Oi You !!!!! Naff Off !!!!!


UPDATE
What were they doing?
Running 'postfix'.

Now that is really embarrassing, they were sending spam from my machine !!
How come you can do that from Nano ???