Show HN: Adopt-a-cloud.com
I created this site based on an idea I found at the Halfbakery (http://www.halfbakery.com/idea/Adoptacloud_2eorg).
It makes use of the Play framework for the web app itself.
The actual cloud detection is performed using Mathematica, which i've just started using and am really enjoying. Originally I did the cloud detection using blob detection, as detailed in the blog post on the site, but I've since found a more effective solution in Mathematica.
Originally I did the cloud detection on the webserver itself, but found the server didn't have enough memory (512M) as I kept getting processes being killed by the out-of-memory killer.
It uses JPA (Java Persistence API) to handle the database - this allows the creation of records and relations based on Java objects. Which made creating the database really easy.
While using the framework I came across some interesting problems:
I found the Java VM would sporadically terminate due to a bug with the Java VM, this was alleviated by using '-XX:CompileCommand=exclude,jregex/Pretokenizer,next'.
I also found I would get a 'too many files open' exception, to fix this I used 'ulimit -n 65535' to increase the number of file handles allowed (admitedly this seems somewhat 'hacky' but it did the trick).
In order to add new clouds to my system, I make use of a script which uses curl, to upload both an image and a file containing coordinates. I found I kept getting a '417 Expectation failed' error, this was apparently happening as curl sends an Expect header which lighttpd 1.4x doesn't understand. In order to fix this I used 'curl -H Expect:', which lighttpd 1.4x permits.
Clickable link: http://www.adopt-a-cloud.com