Friday, February 10, 2012

Importable Behavior for CakePHP

Just thought I would share a behavior I had created for CakePHP a few years ago. This makes it super easy to import any CSV, excel or delimited file and import into a MySQL database. Instructions and code are available on the Google Code page.


» Importable Behavior for CakePHP

Tuesday, February 7, 2012

Programming In The Cloud

As soon as I got my CR-48 I knew what my first obstacle with an OS that only has a browser would be. How the hell do I program in this thing! I could have easily have flashed Ubuntu on it and been a happy camper, but I already had a laptop and work PC with that, wanted to try something new.


I scrambled the net and found a few decent web based IDEs but they all relied on me to give them my (or my clients) FTP information, are they NUTS!? Plus, who the hell uses FTP anymore? Then I found Cloud9IDE...


Cloud9IDE

Cloud9 is different. It provides both a completely free and open-source download of the software to run on your own server or you can use their web based service which will connect with a Git repo instead of directly FTPing files back and forth, a MUCH better solution. I of course went with the host your own version, here's my setup...


First of all I'm running this on Ubuntu 10.04 servers (have tested with other versions, no issues). You basically just need git to clone the source, it should install all dependencies on it's own.

remote# git clone https://github.com/ajaxorg/cloud9.git

Then just start-up Cloud9 which will check for and download all node.js.

remote# cd cloud9
remote# ./bin/cloud9.sh -p /path/to/project

That's it, it will actually print out the path for you to connect to your IDE, which for security reasons will be limited to that remote machine at 127.0.0.1:3000 by default (check -h for more options). You can then tunnel the port easily to your Chromebook, like so.

local# ssh user@SERVERADDRESS.COM -L 3000:127.0.0.1:3000

Then just switch back to your browser and open up http://127.0.0.1:3000.


I have this setup as a process and proxied through Apache, which handles authentication so I can access and develop from anywhere with out having to shell into the server. I will walk through some of that next time, I'm actually trying to get it to work through Nginx instead.


Thursday, December 23, 2010

My Logitech Revue is here!

I signed up for the Google TV pilot program a couple of months ago where 10,000 developers were selected to receive a FREE Logitech Revue with Google TV. Mine is finally here! To bad I barely watch television so I haven't purchased a TV in over 5 years. None of my TV's have HDMI input, therefore none of my cable boxes have HDMI out.

No worries. Thanks to a new Verizon FiOS promotion we just received that wouldn't require me to sign a contract, and the latest Wikileak of Santa's credit card statements; It's been revealed that the family will be getting FiOS for Christmas! There is also a shiny new Samsung LCD on deck. I am just waiting for those post Christmas/pre-New Year sales to kick in ;).

I've already downloaded the Google TV Remote for Android app in anticipation. You can expect my thoughts and more on the new Google TV OS and Logitech Revue the beginning of next year.

Tuesday, December 21, 2010

T-mobile 4G on my Cr-48

After reading some reviews of the Cr-48 and its lack of USB support I felt a little discouraged at the possibilities of some high speed wireless tethering. I mean I can always set the trusty old Nexus One to hotspot mode, but that's slower and drains the battery so it would most likely be plugged in anyway.

With nothing to lose, I went ahead and connected my Nexus One, running CyanogenMod 6.1, and mounted it as a USB drive first. I had no luck at browsing or being able to select and upload any of its contents. After that miserable fail, I skeptically went into my Nexus One's wireless settings and turned on USB tethering. To my surprise I was connected to T-Mobile's HSPA+ network as soon as I enabled it on my superphone! Browsing was reliable and quick, plus I know I can burn through the 100 free Verizon MBs in no time if I'm not around Wi-fi.

The Cr-48 also carries a Gobi 3G chip which should mean that it would work on either CDMA or GSM 3G in the future. Being HSPA+ is just a 3G firmware upgrade, we should be seeing "4G speeds" natively. Why Google got USB tethering before simple storage devices working? Got me. Knowing I'm able to fall back on my unlimited T-mobile "4G" data plan is a big bonus though.

Thursday, December 16, 2010

Carlos Gabriel Limardo

Welcome to the blog of Carlos Gabriel Limardo (limardo.org), not to be confused with Carlos Geru Limardo (carloslimardo.com), my brother! I've been resisting the move to blogger in preference of WordPress on a personal or hosted server. Why did I give in you may ask? Google gave me a FREE Chrome netbook (Cr-48), on top of the FREE Logitech Revue with Google TV that's also on it's way from their pilot program.

I have always respected Google for its great products and willingness to contribute to Open Source. I've relied on Gmail and Google Calendar for years and more heavily after purchasing my G1 on the release date and now Nexus One a few years after that. If that wasn't bad enough I soon moved to Chrome (really Chromium on my Ubuntu laptops) and Google Voice as my main phone number. Far from perfect but far ahead of the competition in my honest opinion.

You will still be able to find info on building your own home brew GApp-like services and CakePHP components and code snippets as my old blog, but also a lot more reviews and info on the latest Google based products I've received for free. I've always been skeptical when it comes to Google or any "cloud" based services, but after receiving these two test products I feel a little bit of a responsibility to "give back" some feedback!

I'll admit I will probably be a little bias for the next few days as Google has woed me, but stay tuned as my paranoia returns and I have a little more time to break things.