Sunday, April 29, 2007

Ruby and a clue on DAST

Probably the best thing about GSoC is going to be the fantastically talented people you get to meet along the way. This week I had a short chat with yuesefa from Ruby and he pointed me in the direction of Ruby Rake (make done the Ruby way.) Reading up on Rake, I realized three things:
1. Ruby is a very cool and and very conceptually advanced language. Martin Fowler is a Ruby and Rake fan. It's not praised in a utilitarian way like Python, which is used every and has tons of libraries and bindings. People talk about Ruby more like it's literature than code.
2. A significant segment of Ruby programmers may be insane. This Ruby book - Why’s (Poignant) Guide to Ruby reads like Bruce Eckel on acid.
3. DAST is just a build tool. It's like a Ant project for Drupal. You have build inputs, configurations, outputs and targets which you specify in an XML file. You just write tasks for the build process.

Further investigation along (3) turned up Phing - a PHPized Ant variant which seems to be exactly what I need to create DAST. So, for now at least, it seems my GSoC project has been conceptually reduced to writing Phing tasks.

Hmm..already Ruby seems to be altering my brain in subtle ways...

From Google Operating System: Collecting Imagery for Google Earth

GOS has a link to an article by Keyhole co-founder Mark Aubin explaining how satellite imagery for Google Earth is compiled. If you're like most Google Earth users, you'll always remember the sound of your jaw dropping as you flew in from outer space, through the clouds and right down to hovering above your modest apartment complex.

Saturday, April 28, 2007

From Drupal Dojo: Drupal Live! - Live-CD/Portable-App/Virtual Image project

Drupal Live! - Portable Drupal project

I've had this idea for a portable stand-alone version of Drupal + server stack for a while now; it was part of my initial SoC proposal:
At ~50Mb or less, a Drupal appliance is a perfect way for potential users with no system administration experience to evaluate Drupal.
Advocacy for Drupal can be extended by distributing the Live CD with magazines and in trade shows. Drupal companies and consultants can rapidly prototype and demonstrate a Drupal a solution to their clients starting with the base appliance image.
I've come across a few suggestions for a Live-CD project on d.o:
http://drupal.org/node/40780
http://drupal.org/node/40786

This one caught my I though: http://groups.drupal.org/node/2208#comment-10316
Given my recent experience, I think we may missing out with a largenumber of the hobbyists and small businesses hoping to graduate from their first foray into the web - a static HTML website. They want an incremental approach to avoid burning manpower on a mistake.

After a dozen years of doing all my markup stuff by hand in Notepad, Istarted looking at CMS systems in November. Drupal looked like the best choice after comparing the features and activity levels of the open source CMS communities. I spent MANY hours trying to determine what the core tasks were going to be. Overwhelmed by all the conflicting information, I decided to just dive in and find out if I could swim.

Setting up a minimal Drupal implementation took several tries and I ended up crippling my existing personal webspace in the process. My hosting service has their own MySQL management tools which added to the fun.
This is Wikipedia's definition of a portable app:

To be considered truly portable, a software program must:

  1. Not require any form of formal installation to be carried out on any computer before it can be used, with the release package only needing to be decompressed directly to removable media before use (if it has to be installed first, and requires its files to be manually copied to removable media, it is clearly not designed to be portable!)
    For example, software which is supplied as an InstallShield package should not be considered portable, though a ZIP archives containing an executable would be.
  2. Settings are stored with, and can be carried around with, the software (i.e. they are written to the USB drive)
    If the registry is used to store settings, the application's configuration isn't portable, and must be set up on every PC it is used on
  3. Leaves a zero (or near-zero) "footprint" on any PC it's run on after being used
    i.e. All temporary files/registry settings should be removed once the program has exited, and files created by the user can be saved directly to the same removable media as the application is stored on.
http://en.wikipedia.org/wiki/List_of_portable_software

A portable Drupal app capable of running from a Live-CD, flash drive, or as a virtual image would be a great tool for Drupal advocacy - a nice, knock-your-socks-off Drupal site, people can play with and evaluate and add/change stuff that they want without having to install anything or worrying about breaking their install.

Basically this project will have three objectives:
  1. Create a Drupal distro profile called Drupal Live! (or some cool name) featuring latest stable core and a selection of the coolest modules from across the spectrum of Drupal functionality, pre-configured and tested. The primary audience for this profile are people who want to know what Drupal is and how it stacks up against other CMS. So the modules included should cover all of Drupal strengths:
    1. Content authoring
    2. Content Management - workflow, revisions...
    3. Collaboration
    4. User interface
    5. Themes
    6. Customization
    7. User Management
    8. Authentication and access control...
    9. Administration - Backup, logging
    10. ...others
  2. Create content that uses all off the Drupal distro's capabilities - So the initial actual content of the site would serve two purpose - provide a rich information on Drupal, and show-off the differen't bits of functionality used to create the content. we could make using this content or just running a clean site an option in the profile.
  3. Create the portable delivery system for the distro. In order of increasing difficulty there are:
    1. Portable flash-drive app: We just need a portable user mode web and database server, a script (and optional GUI) to reset the site back to its original state, and optionally any one the of flash-drive app-launchers for auto-running the app.
    2. Virtual image Since virtualization technology is a commodity, a VMWare or VirtualPC image hosting Drupal Live! would also be another plug-and-play way of distributing drupal. There are a lot of ready-made LAMP virtual appliances out there like those from VMware community and Virtual Appliances - http://virtualappliances.net
    3. Live-CD: This is the hardest to do - it's a choice between remastering an existing one or building one from scratch. Typo3 has one though - http://www.vmware.com/vmtn/appliances/directory/193 One cool thing about a LiveCD is that there you can use existing virtual machine software to run it without rebooting - so it could supercede 2. There are a couple of specialized virtual machine hosts for running Live-CDs directly

I can work on the delivery systems but the contents of the Drupal Live distro itself would have to have input for the whole community + marketing people, consultants, etc. What do you guys think?

Fridays (..err, late) no-comment picture


From fukung.net, some pretty hilarious stuff here, check them out.

Tuesday, April 24, 2007

Desktop widget fun

Past two weeks I've been playing / working with Yahoo! Widgets and Google Desktop - I really did doubt the value of this technology beyond eye candy, but I have to admit - it does add a great deal of functionality and plain coolness to to daily computing for us Windows XP lusers. (No I'm not upgrading to Vista...that's a whole 'nother post.) I'm still tweaking and exploring widgets more than actually using them...but gosh darn it, my desktop looks sw33t...

Thursday, April 19, 2007

BBC News article - Cricket World Cup - hit or flop?

http://news.bbc.co.uk/2/hi/south_asia/6571457.stm
Snippets:
Has cricket's World Cup, the game's biggest tournament, turned out to be a flop?Local cricket fans here in the West Indies, as well as commentators and followers of the game feel so.

...

Organisers now accept the 16-nation, 51-match tournament over a marathon 49 days will not be able to meet the targeted $42m in ticket sales.
By Wednesday, at the tail-end of the Super 8 matches, only $29m worth of tickets had been sold.

...

A new IMF report says the governments in the nine countries staging the tournament have spent a fortune.
Five new stadiums were built and others were upgraded altogether at a cost of $250m, and more money was spent on improving infrastructure.

...

As Rickey Singh, a Barbadian journalist, says: "It looks like the World Cup was a bad joke - to have imposed exorbitant ticket fees, treat musical instruments as weapons of terror, restrict drinks and food containers at matches."




Helping where it hurts: Firefox's gargantuan appetitie for WIndows memory

I nearly fell over one time when I saw firefox.exe had managed to allocate 850M for itself...it's not like I had 100 tabs open - not even close. Now a web browser is a very very complex app and for rendering HTML and images and interpreting JavaScript and hosting a Java VM and plugins like Flash and RSS and ...well I don't expect Firefox to not be the most memory-intensive app on Windows...but within reason dude.

The thing that helped me the most is setting the preference config.trim_on_minimize = true as described here: http://kb.mozillazine.org/Config.trim_on_minimize By default it's false and apparently this prevents Windows from swapping out FF memory when it's minimised - not generally a good thing when you have complex pages and lots of tabs. According to this earlier generations of FF circa 2001 had serious performance problems when memory got swapped out, but on newer PC's with > 512MB RAM this should no longer be an issue.

The effect of this can be quite dramatic; my FF mem usage went from ~600M to ~200M under heavy usage. There are a lot of pages devoted to optimizing FF mem usage; just Google for it, but if FF seems to be allocating a huge amount of memory and not releasing it even after you close down all the tabs, give this a try first.

Wednesday, April 18, 2007

S1lent's official crime and 20/20 rant

One thing I've always admired about this country's current administration is their knack for PR spin. In the disastrous crime surge that has befallen this country, our leaders have decided the best way to cover their inability to actually do anything about it is by pointing the finger of blame in a different direction - right back at us.

First there was Fix Me First media campaign, which managed to burn a considerable amount of public money on prime time advertisements to the effect that the crimes committed by civilians on a day-to-day basis (littering? jaywalking?) were the cause of the order-of-magnitude increases in murders, kidnappings, armed robbery, rapes...Now obviously anybody possessing firearms without permission, or fudging taxes, or not having vehicle insurance is committing a crime.

But what about the massive amount of corruption at the highest levels of government and business, the alleged links between high government officials and business leaders with organized crime leaders and militants, the infiltration of drug trafficking at such a high level that cocaine was being trafficked through our country's U.S diplomatic pouch, the tens of millions of dollars of public funds for public projects waylaid and diverted to the personal bank accounts of the people we trusted and have put in charge of our country? What about fixing them? If these fellas could be lining their pockets left and right, flouting laws and procedures, spending billions on developmentally-disastrous projects no matter what our professionals and specialists and scientists and writers say...dispatching criminal prosecutions like Lara batting against England...I mean whoever in Government came up with the Fix me first slogan clearly is pretty cynical about the public's ability to reason things through and and come to their own conclusions, in lieu of mindlessly digesting the loads of BS fired at us by their crack PR cadre. I swear the three professions I will absolutely forbid my children to enter are politics, law, and communications/public relations. Nobody should have to be an outstanding liar make a living .

So now we have Public Consultations on Crime. I found the flyer above on my doorstep. I'm not participating. They will tell me that You are the only one who can solve crime and i will tell them that they lie. I'm not consulting or marching on a Saturday or turning on my headlights or praying or fasting or do anything citizens of this country who are at their wit's end are willing to do try to stop crime . No amount of death marches or speeches or million-dollar blimps is going to help the crime situation. Patrick Manning and Martin Joseph and Cro Cro and Sprangalang and Bounty Killa and Machel HD and anybody who comes to these consultations can talk till their jaws drop off. It will not help. I would come to hear Sprang if he was speaking though - he would be far and away the most intelligent and knowledgeable speaker on the platform.

I am very cynical about a lot, a lot of things, and I'm trying to move away from empty criticism and stick my neck out with and say what I think can help. So this is what I think about crime in Trinidad and Tobago:

I believe that if people, all people, from all social classes, with any level of education or employment; if all people believe they have an opportunity to make headway in life for themselves and their family, and to live the kind of life we all want, even the fellas robbing and kidnapping, and shooting want; if all of our people are given a fair opportunity to create a decent life for themselves and their families, then crime will decrease. Quality education, access to housing, a public health-care system that works, police protection without victimisation, an efficient, timely and fair legislative system that works the same for people living in Westmoorings as it those for people in Morvant, a reasonable standard of service from public utilities, a working transportation infrastructure that can connect all people in this incredibly small country to employment and self-advancement opportunities, social security for those who really need it until they can stand on their own two feet, social security for the most vulnerable - the disabled, sick, the old, the very young... All these things will reduce crime drastically in this country.

The problem is that no political party has the guts to come up with a 15- or 20- or 30-year plan to implement the long-term programmes needed to do this. Instead, they wants us stupidees to think that they can 'fix crime' in 5 years. The phrase "five-year strategic plan" is an oxymoron. The core developmental issues underlying crime cannot be solved in the time between general elections. Anybody who says to vote for them because they will fix crime is a liar. It will take decades for this country to come to grips with its demons, and we have yet to find people brave enough to forego their own short-term power-hungry ambitions to event start doing what must be done. The only way to reduce crime is a long-term commitment to improve the life and reduce the inequality of all people.

And that is why I grit my teeth whenever I hear anybody mention 20/20. Do people who talk about developed country status know what being a developed country means? Doesn't it mean that when you call 999 because somebody come to rob, rape and kill you, the police can't tell they have no vehicle to send? The could send the blimp to fly all over Trinidad, but fire bun you if you live in Gasparillo and call for police. How about public health care - everybody's nightmare is having to go to Casualty - 'pray you doh end up in dey boy.'

How about infrastructure - driven anywhere recently? We're supposed to be a 'knowledge-based' society, ok so what's the impact on worker productivity of crawling for hours through hot steaming traffic every day? If our 'knowledge workers' spend 2-4 hours commuting everyday what benefit will buying fast computers for them have? Why do I have to wait over an hour to get a bus to go from POS to San Fernando - our nation's two 'cities?' How about public utilities - how many places outside of north-east Trinidad get water 24x7? The only place getting water regular is when rain fall for five minutes and turn our capital city into a Caribbean version of Venice.

What's happening to the young people in our schools - why is having sex before you're fifteen the norm? How many children these days growing up in 2-parent homes, or whose mothers didn't get pregnant when they were still in school. Why are we importing billions of dollars in food - what is the effect of a lack of food security on a country's economy? What happens when food prices rise? Why are our farmers in our rural heartland losing their livelihood every rainy season through flooding, and the government don't give two damns (dams?) about them. Every developed country heavily subsidizes their farming sector...know why?

What about our justice system? If you are charged with an crime how long does it take for you to receive due process? By the time the jury says guilty / not guilty you probably have already been in jail for several years, guilty or not. So what's the incentive for people to allow the system to work for them instead of trying to bribe whoever? What about all the 'big-time-bobol' in NWRHA and CEPEP and...

I'm just going to stop. This is just my opinion. I am not an economist or historian or social scientist or criminal justice major. I simply believe a developed country is not labelled as such because they have skyscrapers, or people walking around with the latest smart-phones, or because the government spends millions on a high-speed network infrastructure (so they can't treat you in Hospital but they could surf the web really fast,) or has high-tech surveillance and listening posts and blimps (this is Trinidad, when last you went somewhere and didn't see somebody you know?) and billion-dollar aluminium smelters, and all the other ways our country is squandering our precious and soon-to-be-gone windfall of energy dollars.

Developed countries are those countries where the basic needs of society have been met. Don't talk to me about industrialization and knowledge-based society. Don't talk to me about public consultations on crime. Don't talk to me about 'developed nation status.' When the fellas on the block finally believe they could get ahead in life without following in the footsteps of their absent fathers right into prison, when we getting water regular down Gasparillo and when they get some more jeeps for the police station, then you could check me.

Saturday, April 14, 2007

Web 2.0, maybe

I still don't know what the heck Web 2.0 is supposed to be but these 2 sites probably qualify for whatever it is:
1. Twitter - This is the really hot one, but what caught my attention is Scobleizer's post that it apparently scooped the USGS and just about every major news site on the Mexico City earthquake.
2. Quizilla - Been around for a while, but it's a really cool idea that lets people share their creativity and interests in yet another way. Ater falling out my chair laughing watching Jason on Home Movies, a quick web scour turned up a link to this quiz.

Friday, April 13, 2007

Friday's 'no comment' picture


Had this for a while; had to share it. I guess politics is just more fun in Brazil than in other places.

GSoC 2007 - Drupal Automated Staging Toolkit



I'm participating in SoC 2007 with a project for Drupal - a toolkit for testers for automating the process of creating a Drupal site running a specific configuration. The basic idea is that you specify in an XML file the enabled code modules you want, the CVS versions and patches for each module, the web server, database server and PHP configuration, and the size and shape of the test dataset and users. The tools will then generate the Drupal site code-tree you want, the server configuration files and directives, and database scripts for the test data and users. These are then staged to the server location, and voila, a complete Drupal site ready to go, for unit and regression testing code or benchmarking different server configurations. Time permitting, we'll see if we can automatically stage to a Xen or VMWare virtual image, and then have a self-contained virtual image ready for advanced testing scenarios. I'm really stoked about this project, so thanks to all the Drupal folks who voted for it.

Thursday, April 12, 2007

From drupal.org: Google Summer of Code projects - Drupal's 20

Google will be sponsoring a breathtaking 20 Drupal projects this year, totaling $100,000 in financial contributions. Cool ideas include an SVG drawing tool, Jabber integration, and SMS Framework, and much more. Drupal people say "Thanks Google!" for the amazing support.



read more | digg story

K-Project genesis

This is the story of an idea and the steps taken towards realizing that idea. Ideas are like living things: they are conceived, they gestate, they are born, they grow, and they mature. But also like living things they can wither and die if not nourished and cared for. This blog is a diary of my attempt to bring to fruition an idea I have about computers and artificial intelligence, and I suppose, life in general.

After months of procrastination, I finally got the inspiration to start my own blog by an amazing game called Rez.
The game itself is fantastic - think of your favourite audio visualization plugin and imagine it turned into a game with you inside. But what was really inspiring was reading how the team behind Rez took a totally original concept, worked hard, shrugged off conflict, disappointment, and setbacks, and eventually produced something very kewl.

I would to follow the example of the Rez team - fix my sights on what I want to accomplish and work hard at it, counting every step, no matter how small, as progress.