Sunday, May 31, 2009

Countdown to the Palm Pre

Countdown to the Palm Pre

In 6 days, Palm is going to unveil the brand new Palm Pre smart-phone.

The last few months, Palm has been busy building the suspense and remaining secretive on details of the upcoming phone.

Blogs, Social networks, News feeds, Reviews, Videos, Rumor mills, CNN fortune, twitter. Everything! Everyone is on the new phone.

Back in 2006, Palm was struggling to stay afloat. Ed Colligan (CEO) did an amazing job of convincing Elevation Partners to invest $425 million! Money was invested to create money.

The Pre is the next big thing after the Apple iPhone. The Web OS Operating System that powers the Pre is revolutionary. The world has not seen anything like it, yet.

To create an Operating System on a phone where applications are built using plain HTML and Javascript is new. This is a first.

There is no doubt. Demand is going to be huge. Palm is going to face a shortage. The company will recover the $425 million invested in no time.

It appears that the Web OS will power a range of smaller hardware devices. Phones, smaller form factor devices?

Microsoft has been using this strategy for a while. The main Operating System is broken down into multiple flavors. The licensing fee is unique to the flavor.

Palm is pulling the same stunt with Web OS.

It is fascinating to see how Palm jumped to $12 per share compared to the $1 per share back in December.

To bounce back from dust during a recession is something.

This is a company with mobility in its DNA.

Really exciting times for Palm and for all those involved with the company.

Thursday, March 26, 2009

The Palm Pre

These are exciting times for Palm, the makers of the Palm Pilot.

Palm has been hard at work on the Palm Pre.


The Palm Pre is not *just* another mobile OS. This is mobile platform with features and underlying workings that do not exist on today’s mobile devices.

Apart from the standard list of features, the two that really stand out are:

- Multitasking
- Developing Apps in HTML and CSS!

Multitasking on a mobile device is a mean feat. Screens are smaller, form factors change, SLOW processing power, SLOW graphics and difficult input methods.

The Palm Pre multitasks apps like a deck of cards. Every card is an application and here’s where it gets even better, the STATE of the app you minimize is STORED and restored just like it was before the app was minimized. As an example, if you were composing an email message, you could minimize the compose window, then watch a movie and return to the email in the state it was left.

Developing apps in HTML and CSS consumes less dev time. No more fiddling with pesky SDK’s and learning a whole new API. Notepad or a HTML WYSIWYG tool is all that is needed.

For the last 10 years, a lot has been expected from Palm. Palm after all, has mobility built into its DNA. At a time where mobile devices didn’t do a lot apart from creating calls and a bunch of a few address book apps, the Palm Pilot was a Personal Device Assistant.

Palm Pre is slated for release in the first quarter this year. I do hope they release a GSM unlocked version too.

Palm has revisited the ideas and concepts that made Palm Pilot a success back in the day and engineered a modern WebOS platform that is ready for today and the future!

http://www.palm.com/us/products/phones/pre/

Thursday, January 08, 2009

Sarcastic Conversations

When in a conversation with a person and if you are leading the conversation, it is key to figure out the pace of the conversation.

If the other person is sarcastic all the time and if that is the only way they can reply, then it is time to bail out.

Sarcastic people have issues.

When you exit, you exit. Don’t try to exit out and then get back into the conversation. That would be weak.

Wednesday, December 31, 2008

New Year 2009

The New Year is an hour away.

Nothing will change. Stuff from the old continues.

It is refreshing to see the year number change over to a new digit after 365 days.

Do New Year’s resolutions ever work?

Maybe a resolution everyday would work.

Tuesday, September 23, 2008

Google's Mobile Platform is Here

Gotta love Mobile Technology.

Today, Google launched a new platform for mobile devices. What is interesting here is that the new Android platform is not just limited to cellphones.

It is quite possible that audio/video devices in cars, homes, hospitals are powered by the new platform.

The platform is built so that it can be dumped on *any* device. The possibilites are endless. I am typing this on Google's Chrome browser. Throw in Chrome on a mobile device and you have instant everything.

I am so happy that the days of proprietary *mobile only* browsers and webpages are coming to an end. WAP was just terrible. Cellphones are finally WiFi enabled.

All roads now lead towards high speed mobile processors and chips that can do photos, video and WiFi. I am leaving out 3G because 3G does not exist in most parts of the world and is still expensive.

It was about time that cellphone manufactures broke away from the closed business practices of carriers. Carriers are never happy with WiFi on cellphones because users would not need to use the slow and expensive GPRS services.

WiFi on cellphones is what we NEED.

http://www.t-mobileg1.com/g1-announcement.aspx

Thursday, August 14, 2008

Atom - Intel's Money Machine

Amazing. Chipmaker Intel’s money machine is at work like there’s no tomorrow.

Although purchases of some computing products have slowed, Intel created a whole new chip – The Atom Processor– for the masses. The Atom fits in perfect for smaller netbooks like the ASUS EEE, MID devices and cellphones?

Quote – “Intel calls Atom a "perfect recession product"”.

The performance and battery life on the Atom is like no other.

Just a few years ago, AMD was moving towards the top of the game. They had great processors for desktops. However, AMD could never figure out a solution for the heat problems that affected the processors. The failure rate was just too high.

AMD’s next problem was the absence of a processor for laptops. Computing has been moving towards mobile. AMD had nothing to beat Intel’s Centrino technology.

Even today, laptops with the AMD processor are plagued with heat problems. Heat leads to fatigue and failure. High temperatures can kill electronics.

After Intel released the Core 2 Duo, AMD’s fate was sealed for failure.

Intel continues to focus on Mobile.

- Processors that run faster
- Processors that consume less power
- Processors that produce less heat
- Chipsets integrated and packed with everything - from graphics to WiFi to 3G
- Integration does away with external dongles
- USB 3.0

I am on an Intel Core 2 Duo laptop and this thing flies.

Looking forward to in the (near future?) where cellphones and car computing are all powered by Intel's latest, fastest and greatest chips!


INTEL's STOCK PERFORMANCE - LAST 5 YEARS



AMD's STOCK PERFORMANCE - LAST 5 YEARS



References:

http://finance.yahoo.com/echarts?s=INTC#chart3:symbol=intc;range=20030902,20080813;indicator=volume;charttype=line;crosshair=on;ohlcvalues=0;logscale=on

http://finance.yahoo.com/echarts?s=AMD#chart1:symbol=amd;range=5y;indicator=volume;charttype=line;crosshair=on;ohlcvalues=0;logscale=on;source=undefined

Friday, July 11, 2008

Interview: Software Behind the Mars Phoenix Lander

wow! Very interesting interview/discussion between O'Reilly News and NASA's project software engineer.

"What's the process look like there for getting software to get 700+ pounds of metal and equipment to another planet?"

"Here's my $325 million baby. Will it land?"

"The spacecraft software is entirely in C. "

http://news.oreilly.com/2008/07/the-software-behind-the-mars-p.html

Saturday, May 31, 2008

Google Talk Current Music Track Bug Workaround Fix

Google Talk version 1.0.0.104 (client) will crash under the following conditions:

1] Show Current Music Track is enabled
2] Winamp v5.5 is playing a music track

The following is a workaround fix:

Create an empty winamp.m3u file and drop the file into the C:\Program Files\Winamp directory.

Restart both applications.

Howto create an empty winamp.m3u file?

Right-click > New Text Document > Rename the file to winamp.m3u

Texting Your Way To Love

This is too true

Source: http://current.com/items/88906818_texting_your_way_to_love


Sunday, May 18, 2008

2008 Fortune 500

I used to think that software companies were in the Top 10 Fortune 500 list. That doesn't seem to be the case.

Source:
http://money.cnn.com/magazines/fortune/fortune500/

2008 Fortune 500

1. Wal-Mart Stores
2. Exxon Mobil
3. Chevron
4. General Motors
5. ConocoPhillips
6. General Electric
7. Ford Motor
8. Citigroup
9. Bank of America
10. AT&T
11. Berkshire Hathaway
12. J.P. Morgan Chase & Co.
13. AIG
14. Hewlett-Packard
15. IBM
16. Valero Energy
17. Verizon Communications
18. McKesson
19. Cardinal Health
20. Goldman Sachs

Friday, May 09, 2008

Ford, General Motors Hydrogen Fuel Cell SUV's

Gotta love Monster Trucks. Driving one of these small giants at a high speed is epic. I don't think a SUV is designed for slow.

I guess the only problem is Gas! This could soon be a problem of the past.

Ford, General Motors and Toyota have been experimenting with Fuel Cells! Generate electricity from clean Hydrogen.

The next challenge is to release these quick at great price point.

GM's Chevy Equinox. A 100 of these are supposedly out on the streets! (USA only)


Ford Explorer



Ford Explorer, Fuel Cell



Toyota Fuel Cell Vehicle:

References:

Automobilemag
Carlist Toyota

The Fall of Motorola (Handheld Division)

Not so long ago, Motorola had the most stylish clamshell cellphone in the market. They were the first to release a phone that was thin, a strong anodized aluminum shell with an electroluminescent chemically etched keypad.

This chart from Yahoo! Finance displays Motorola’s stock situation during the last six months.



Besides, the fall in stock, there has been a lot of talk about Motorola shutting down the handheld division.

Motorola went down hill after the success with the RAZR. Instead of focusing on a solid software platform for the RAZR, Motorola continued shipping the crippled RAZR 2 with a half baked version of Linux. There wasn’t an active developer base developing apps. The User Interface (UI) was slow and prone to crashes.

RAZR 2 ought to have had a version of Windows Mobile thrown in, increased onboard memory to 2Gigs and a camera that beats Nokia.

To make matters worse, RAZR 2 was expensive. Expectations from cellphones began running high between 2006 and 2007. The price point for RAZR 2 that did not do much for a phone released in 2006/07, added to the failure. Sony Ericsson and Nokia were pushing out faster and better phones three times faster than Motorola.

The next problem is that Motorola probably lost out on market research and the need for foresight. The least you could do is figure out why the RAZR was a success and build on that.

I think Motorola ought to have been aggressive on a quarterly basis. Release new updates at a high speed. Why wait to release an update two years later only to realize that this one is the same as the previous release. It is ridiculous to wait. You will have probably lost millions in revenue waiting or the competition will have eaten you. And then it is too late to rise again.

Sony Ericsson for sure figured they need to be heading in a different direction. The XPERIA X1 with Windows Mobile 6 under the hood proves this. Windows Mobile is a first for Sony, opens up a lot of doors for businesses, applications and developers.

There are ways to monetize through software on cellphones for business use. Applications, push email, secure communication protocols, custom applications, hardware accessories, custom developer toolkits, email, web proxy services.

The shift from Symbian to Windows Mobile is a surprise from Sony. I guess this is where the company changed gears, something that Motorola ought to have done two/three years ago!

References:

Yahoo! Finance Stocks
USA Today - Motorola mulls breakup, phone unit sale
Motorola Exploring Sale of Handset Business

Monday, May 05, 2008

Excel: Convert Rows to Columns

COPY--PASTE SPECIAL--> TRANSPOSE

Saturday, April 26, 2008

Importing UTF-8 Datasets in MySQL

Before importing a UTF-8 dataset, be sure to change the default MySQL database collation to utf8_unicode_ci.

Note: If the tables and structures are in the utf8 collation but the database is on a Latin collation, the import will not be successful.

The database, tables and structures need to be all UTF8 enabled.

Saturday, April 19, 2008

Escape MySQL Variables in the Same Sequence

When escaping a MySQL query, be sure to escape the variables in the correct order.

Example:

UPDATE
table_name
SET
var1='%s',
var3='%s',
var2='%s'
WHERE
foo=bar
mysql_real_escape_string($var1, $db),
mysql_real_escape_string($var3, $db),
mysql_real_escape_string($var2, $db)

The mysql_real_escape_string function will escape variables in the order specified in SET

Thursday, February 21, 2008

Indian Fashion, Human Mannequins

Quote from the Wiki:
# A jointed model of the human body used by artists, especially to demonstrate the arrangement of drapery. Also called lay figure.
# A life-size, articulated doll mainly used to display clothing.

There seem to be a lot of India clothes tailors in Bangkok. These guys share a common trait and that is to stand *outside* the store like retards.

It is annoying as hell to see these characters standing around, doing nothing, staring the whole damn day.

I was quick to grab this photo. My hand was in the bag, I instantly powered on the camera, made the guy think I was going to climb up the stairs – only to turn around point and shoot! He was caught off guard and moved out of the frame after I shot the photo. Oops! Too late ;-)

Invest in some real Mannequins guys.. That's the least you can do!







External References:
http://en.wikipedia.org/wiki/Mannequin

Sunday, February 17, 2008

What Not to Do on Duplicate Records

You've probably grabbed a bunch of records from the database, pumped them into an array and then tried to delete the duplicate records. The result is a dataset that is messed up, the reason why is unknown.

Lets look at the array:

// Your query here
$SqlSelectRow = mysql_fetch_array($SqlSelectResult)

This behavior occurs because you perform the action on the contents in the array. Updates to the array are not reflected on the database, and therein lies the problem.

Be sure to directly update records in the database or have the array update contents in the db.

An easy solution though is to set the column as 'unique' and then dump the dataset. Be sure to remove the unique attribute once this process completes if you want duplicate records during future inserts.

Monday, February 11, 2008

Mobile Technology Forges Ahead At Barcelona

Interesting developments this year at the wireless industry meet in Barcelona.

Sony Ericsson decides to bundle Windows Mobile on smart phones.

Yes! This just *had* to happen sooner or later. Sony has designed and produced great looking hardware, be it notebooks, cellphones, flat screen TVs etc. Back in the Palm days, the Sony Palm PDA had the best form factor.

Designing software apps for a mobile device is a challenge. Small screens, restrictive input methods, tiny memory RAM/ROM and the User Interface real estate is limited.

Symbian is an obnoxious OS on a cellphone. I can never figure out the flow of logic on a Symbian OS. The UI is big and ugly, menus are nested way too deep and any setting that involves a network configuration … ouch .. good luck finding your way around.

I hope Sony decides to get rid of Symbian altogether, go full steam ahead with the Windows Mobile OS and release loads of applications off the Windows Mobile SDK. There is a great cloud of win mobile applications already, so finding developers should not be hard.

Windows mobile has been doing great on HTC devices. To keep the innovation going, HTC now has a giant of a competitor.

The newly announced Sony Xperia is packed with a gorgeous 800x480 touchscreen, WiFi radio and Mobile 6. The microSD flash support (a first one from Sony?) signifies Sony’s seriousness in embracing open standards and making its presence felt in the market.



I guess what really spun this development is the Apple iPhone. The iPhone was the *first* in telling users, “Hey look, we’ve re-created the software stack”. There are features like touch and a full fledged desktop class browser that users can now look forward too. Not to mention a gazillion of other features that cellphone companies never bothered about.

Motorola is in trouble today because of crappy software. The RAZR cellphone did not have a rock solid OS. Plus, adding in features and installing apps was hard and impossible. Hardware with pathetic software slapped on is junkyard scrap. Sony would be in this state too, had they not jumped the Windows Mobile route.

Interesting to see how this is going to go ahead. Robust windows mobile on sexy hardware that seamlessly integrates with the desktop. Good times ahead!

More Details on the Sony Press Release

Monday, January 28, 2008

Summer of 69 Guitar Tablature

I am a Bryan Adams fan. Summer of 69 needs no introduction.

This is the guitar tablature of the first few seconds that starts the electricity.

Create these tabs in Guitar Pro.

Track 1
E E E E E E E E E E E E E E Q
E||--0--------2--------3-----|-----2--------0-----2----|
B||-----3--------3--------3--|--------3----------------|
G||--------2--------2--------|--2--------2-----2-------|
D||--------------------------|-------------------------|
A||--------------------------|-------------------------|
E||--------------------------|-------------------------|


E E E E E E E E E E E E E E Q E E E E E E E E
--------------------------|-------------------------|--0--------2--------3-----|
--0--------2--------3-----|-----2--------0-----2----|-----3--------3--------3--|
-----2--------2--------2--|--------2----------------|--------2--------2--------|
-----------------2--------|--2--------2-----2-------|--------------------------|
--------2-----------------|-------------------------|--------------------------|
--------------------------|-------------------------|--------------------------|


E E E E E E Q E E E E E E E E E E E E E E Q
-----2--------0-----2----|--------------------------|-------------------------||
--------3----------------|--0--------2--------3-----|-----2--------0-----2----||
--2--------2-----2-------|-----2--------2--------2--|--------2----------------||
-------------------------|-----------------2--------|--2--------2-----2-------||
-------------------------|--------2-----------------|-------------------------||
-------------------------|--------------------------|-------------------------||


Wednesday, January 23, 2008

Enable UTF-8 on PHP, MySQL and Apache

Before we begin, you need r00t access to key Apache, PHP and MySQL configuration files.

Let’s start with the apache config. The location paths may differ based on your server setup. Look around and be sure that you are editing real config files and not the templates.

Apache Config - /etc/httpd/conf/httpd.conf

AddDefaultCharset UTF-8

PHP Config – /etc/php.ini

default_charset = "utf-8"

MySQL Config - /etc/my.cnf

[client]
default-character-set=utf8

[mysqld]
character-set-server=utf8
default-character-set=utf8
default-collation=utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-client = utf8

Restart the above services once these updates have been applied.

Confirm if UTF-8 is Enabled:

# mysql –uroot –hlocalhost –p
# show variables like 'c%'

The above output should be:

+--------------------------+-------------------------------------------------------------------+
| Variable_name | Value |
+--------------------------+-------------------------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| collation_connection | utf8_general_ci |
| collation_database | utf8_unicode_ci |
| collation_server | utf8_unicode_ci |
| completion_type | 0 |
| concurrent_insert | 1 |
| connect_timeout | 5 |
+--------------------------+-------------------------------------------------------------------+

It is possible that after these updates, PHP will continue to decode a UTF-8 character set in the form of question marks. Eg: ????

The solution is to call mysql_query() immediately after mysql_connect() has attempted a connection to the database.

$db_ = @mysql_connect (HOST, USER, PASSWORD, TRUE) or die("Could not connect");
mysql_query('SET NAMES utf8');
mysql_select_db(DB, $db_);

(Note the mysql_query('SET NAMES utf8'); above)

// Other db connect info here

// To be continued
Howto override php.ini through htaccess


Monday, January 14, 2008

MySQL Access Denied Error

Before dumping a list of databases between different MySQL servers, be sure to exclude the MySQL database.

Assuming you are importing the dump from Server A to Server B, the database imports the password from Server A onto B. There could be a few other settings that could be messed up too in the MySQL db if the versions are different.

To resolve this issue, set the MySQL password /etc/my.cnf on Server B to the one that was set on Server A. Restart the MySQL daemon.

To prevent this issue from occurring, specify the --databases parameter and explicitly mention the database names to be included before the process is executed.

Tuesday, January 01, 2008

Queen Elizabeth - The Christmas Broadcast 1957

Interesting how a message from Queen Elizabeth back in 1957 continues to hold true today.

Minute 2:33/7:56
... trouble is caused when honesty is counted as foolishness
... loose the trust of the world if we abandon fundamental principles
... it has always been difficult to build and destroy. To build and cherish is much more difficult.

Wednesday, November 21, 2007

The Future of Books

There are the brick and mortar book stores, used and tattered books, online book stores and ebooks. All these book models have issues.

Books in book stores can be overpriced. You might spend a tonne on a book, read and figure out it wasn't worth the money. Your stuck with an expensive paperweight. Used books can be in a bad shape, pages missing, dogs ears and everything that can destroy paper.

The ebook format is not the best to read on a laptop. Hard to read on a bed and the experience is far from a real book.

Enter amazon.com

A whole new device that specializes in book reading from the worlds largest book store! Books, newspapers, blogs and magazines pushed to the device, straight from the store.

The amazon kindle is a wireless reading device. The kindle connects to a cellphone network (USA only) and downloads books wirelessly. You need to buy books in the kindle format. Books are pushed by amazon.com onto the device FREE. And No, you don't need a cellphone plan to connect to the network. The device is network *aware* out of the box.

The e-ink display ensures that text is clearly visible in direct sunlight. Hardware controls flip pages and zoom in/out of text.

Kudos to amazon.com. A device such as this, allows a subscription model and maybe book rentals.

This would also allow better and flexible screen displays and maybe the end of fat-n-heavy books.

Amazon Kindle Tech Specs:

Display: 6" diagonal E-Ink® electronic paper display, 600 x 800 pixel resolution at 167 ppi, 4-level gray scale
Size (in inches): 7.5" x 5.3" x 0.7"
Weight: 10.3 ounces
System requirements: None, because it doesn't require a computer





External Links:
Amazon Kindle

Friday, November 09, 2007

Global Warming, Sue the Government

With every passing year, our climate seems to be getting hotter or colder (depending on where you are located). It is easy to notice unexpected rainfall in the middle of summer or winter, rise in sea levels and other natural disasters.

I think the first step in getting a grip on green house gases is to sue the government. Oil companies are evil. They will do whatever it takes to _stop_ progress and widespread adoption of renewable sources of energy.

A case against the government should be such that:

A) A settlement (buying out of officials) is never reached
B) The case cannot be dismissed
C) A solution should be found
D) After the court proceedings have ended, the government should fund projects related to renewable sources of energy

So why sue the government?
Governments pass and enforce laws -> Oil companies do not -> Oil companies buy out government officials -> Government officials buy out climate *experts* -> Government officials lax out laws/rules related to environment.

Governments _profit_ trillions of dollars from oil companies.

Global Warming Fast Facts
http://news.nationalgeographic.com/news/2004/12/1206_041206_global_warming.html

This is a great start,
California Sues EPA Over Auto Emissions
http://www.breitbart.com/article.php?id=D8SPL3IG1&show_article=1

Wednesday, October 31, 2007

Howto Display Records from a Database without Refreshing the Entire Page, PHP & AJAX

This post address a common question found on on AJAX and PHP forums.

Howto grab the newest records from the database and display them without the traditional meta refresh?
Or
Howto display records from a database without refreshing the entire page?

The requirements:
A basic understanding of AJAX. Get started with AJAX here: http://developer.mozilla.org/en/docs/AJAX:Getting_Started
PHP
MySQL
A dataset

I am going to use the mozilla developer docs as a reference point.

The first step is to create a HTTP request. Before we do that we need to figure out the browser that the user is running.

If the browser is Internet Explorer, call the ActiveXObject
else, call the XMLHttpRequest();
// This includes all browsers other than Microsoft Internet Explorer.
//Mozilla, Safari etc


// Create the HTTP request
function createRequestObject()
{
var browser;
if (window.XMLHttpRequest)
{
// Mozilla, Safari, ...
browser = new XMLHttpRequest();
}
else if (window.ActiveXObject)
{
browser = new ActiveXObject("Microsoft.XMLHTTP");
}
return browser;
}

var httpRequest = createRequestObject();


Once we've got the HTTP request setup, our next step is to grab the contents from the database. It is here that we set the time interval or the frequency on when the updated content is displayed.

We're going to call a PHP script get_records.php that actually grabs the dataset from the database. More on the PHP script later.

The time interval is set to 300000 milli seconds, 5 minutes

Convert minutes to seconds:
5 minutes = 5 x 60 seconds = 300 seconds

Convert seconds to milli seconds:
300 seconds = 300 x 1000 milli seconds = 300000 milli seconds

Note the exception handler below. The alert popup box will appear if there was an error. You can comment out that line later.

function displayOutput()
{
try
{
setTimeout("displayOutput()", 300000); // Recursive JavaScript function calls displayOutput() every 5 minutes, 1800 seconds
httpRequest.open('GET', 'get_records.php', true);
httpRequest.onreadystatechange = handleResponse;
httpRequest.send(true);
}
catch( e1 )
{
// Unable to open file
alert('Caught Exception: ' + e1.description);
}
}

The next step is to handle the data. We've made the HTTP request, we've called the PHP script, we've got the data. What are we going to do with the data?

If everything went well, readystate should be == 4(complete) and httpRequest.status should be == 200. All ok .. Proceed to set the innerHTML with the data.

Read about innerHTML:
http://msdn2.microsoft.com/en-us/library/ms533897.aspx


function handleResponse()
{
try {
if (httpRequest.readyState == 4) {
if (httpRequest.status == 200) {
//alert(httpRequest.responseText);
document.getElementById("data").innerHTML = httpRequest.responseText;
} else
{
alert('There was a problem with the request.');
}
}
}
catch( e2 )
{
alert('Caught Exception: ' + e2.description);
}
}


Our final step is to display the data:

\<\body onload\=\"displayOutput\(\)\;\"\>
\<\div id\=\"data\"\>\<\/div\>
\<\/body\>

To be continued ...

Crash A Wedding

Living in a boring city that does nothing during the weekends?

Crash a wedding!

The important tip to remember is , "Dress Appropriately"

Read more:

How To: Crash A Wedding
http://www.askmen.com/fashion/how_to_200/241b_how_to.html

Watch the movie, Wedding Crashers
http://www.imdb.com/title/tt0396269/

Friday, October 12, 2007

Parse error: syntax error, unexpected ':'

If short open tags are enabled and if the HTML content in a PHP file has a <\?, PHP will display the error, Parse error: syntax error, unexpected ':'

Tags such as <\? could be used to open XML tags or other non PHP based tags.

The solution is to disable the short_open_tag directive in the \/etc\/php.ini file. This would force PHP to parse PHP code with tags that begin with <\?php

Thursday, October 11, 2007

Winamp's Redesign Interface .. Thumbs Down

A friend of mine once mentioned, "But Winamp looks old". I had to agree with her on this one.

We were talking about media players. Media players that support a variety of formats thrown at them, support ripping and burning on the fly and Yes - Look Modern.

It is Winamp's 10th anniversary. "A completely redesigned interface, including Album Art" says the updated version history. I have been looking out for a Winamp redesign since version 3. The fact that Winamp version 3 Wasabi was dumped wasn't a good thing, but that is another story.

So I proceed to download, click the download link, hit save, 8 minutes later I run the installer. A few pre-install questions and 5 seconds to go. Tada! The new "Bento redesigned interface" appears. The default color scheme is dark, pasty and bland. I am not impressed at all. Nothing to wow about. Fonts do _not_ look smooth and are in need of anti-aliasing.

The three pane layout feels fossilized. I remember Winamp version 1 and 2 looking the same. Screen elements look clumsy. I need to click a handler inorder to figure out what they do.

I am on a 1280x800 resolution display at 120 DPI. Winamp should have looked gorgeous. I fail to understand why the redesign did not include better and _modern_ color schemes. The royal blue color scheme looks hideous. There is a total absence of gloss or the glass effect found on Windows Vista, Windows Media Player, the Windows Media Center application etc. Even Windows Mobile 6 and the new Motorola UI look shiny.

So what happened? Nullsoft is owned by AOL. Is AOL trying _not_ to get into the Radio business? AOL has probably secured deals with a dozen other apps.

Monday, October 01, 2007

Bad ; sign errors in crontab file, can't install

Editing crontab with PICO editor might display the error:

"bad ; sign errors in crontab file, can't install"

The ; character is used to combine and run multiple commands in one statement. Your cron job might look like:

# Command One; Command Two
*/3 * * * * cd /usr/home/; php -q whatever.php

The above statement consists of two commands.
The second command would be executed even if the first were to fail.

The solution is to get rid of the ; character. Use the && character instead.

The && character will _not_ execute command two if command one were to fail.

To get rid of the error, edit your cronjob like this:

*/3 * * * * cd /usr/home/ && php -q whatever.php