Skip to content

Google Maps are easy.

Enter a starting address, category for a destination (Restaurants, Auto Repair, Grocery Stores), then add another destination address.

This makes it very easy to find places that are conveniently located or plan a route to many destinations.

Did you know @hypem…

… exposes resources via a RESTful JSON api? Well, they do. RSS, too. Some of their playlists bear the following text:

“Information on this page is available in RSS and JSON formats for non-commercial, attributed use (CC).”

Viewing the page source reveals a hyperlink:

<a class="rss" title="Use computer software to read this page" href="/playlist/subscriptions/seeflanigan/json/1/data.js">
JSON
</a>

The “Latest” feed is exposed as “/playlist/subscriptions/[yourusername]/json/[pagenumber]/data.js”

Your “Loved” songs are available as “/playlist/loved/[yourusername]/json/[pagenumber]/data.js”

The “Popular” feed is at “/playlist/popular/3day/json/[pagenumber]/data.js”

Lastly, but certainly not least of all, there is a search api. Most excellent. “/playlist/search/[somesearchkey]/json/data.js”

If you dig around and come up with cool stuff or figure out more ways to interact with their api (or better yet, find their api documentation), please share it here?

Useful: Ext4 on OSX 10.6

Nmap or gtfo

When setting up a new server for a Rails application, it is a good idea to see what ports are open in order to configure appropriate firewall rules.

An open source tool called ‘nmap‘ comes in real handy for just such a thing!

After installing nmap ($ sudo apt-get install nmap on Ubuntu,) running a basic scan against a remote host is simple:
$ nmap [ip of remote host]
e.g.
$ nmap 192.168.0.1

The output looks like this:
Starting Nmap 5.00 ( http://nmap.org ) at 2011-03-28 20:39 MDT
Interesting ports on yourserver.yourdomain.com (192.168.0.1):
Not shown: 993 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
135/tcp filtered msrpc
... [more open ports]
Nmap done: 1 IP address (1 host up) scanned in 26.05 seconds

Now we can proceed to lock down the irrelevant ports.

Awesome.

Rsync or swim

Whenever I forget how to use Rsync, usually to push a local directory to a remote one, I usually land on this guide.

The rsync man page gives the syntax for a push operation.

This is the command that I end up using:
$ rsync -avz -e ssh /this/dir/ remoteuser@remotehost:/remote/dir

Hooray, rsync!

Creating mysql users from the command line

Today I had to add a mysql user for a web application that a server migration is underway for. And I couldn’t remember how. It’s been a while. Thanks to a bit of help from this guide, things are smooth sailing.

The hackery:

root@rehauedge:~# mysql -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
...
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> CREATE USER 'newusername' IDENTIFIED BY 'newuserpassword';

Sweet.

Start Small

Perhaps, like me, you come up with grand plans.

Plans to do great things to help the world, fantastic projects to give back to your favorite community of the moment, plans to make your mark, make a splash, or otherwise fulfill some high and lofty goal.

Problem for me is I get intimidated by the sheer volume and “where-do-I-start-ness” of such monumental endeavors. Or, some new shiny thing comes along and whisks away my attention, along with my motivation and dedication. Then, the project/task/plan I was so excited about falls by the wayside. It’s an ugly habit.

This is a tumbleweed...

Sadly, many of my exciting ideas end up much like this lonely tumbleweed...

Granted, some projects find themselves less prone to such unfortunate fates. Usually, they’re the ones that put food on the table and clothes on our backs. After all, nerd’s gotta make a living, know what I’m saying?

No, the ill-fated projects I’m talking about are the “update my website”, “blog more often”, “organize my music collection” sort. Luckily, I have a panacea for avoiding the constant discontentment and feverish discombobulation that results from chronic-project-switchitis – GIVE UP!

Now that we’re rid of the quitters, a real solution. Start small. Case in point, this blog post. It’s not the sweet tutorial I wanted to write, or the awesome summation of every amazing thing I’ve been reading lately. But it’s something. It’s one post more than I had yesterday, and hopefully an inspirational one.

It was inspired by the tabs currently open in my browser, one for free node.js hosting, another about important features your website should have if you’re a freelancer. ¬†Instead of building a website and blogging about the step-by-step process of doing so, right this very instant, all at once, I’m taking a stand against that ridiculousness. At least, I’m taking a baby step toward a more sane (and achievable) approach. I’m even going to hit publish before adding any pictures to break the monotony, or tags to aid in the everlasting quest for total organization!

Also, I’m “Talking about writing about what I’m doing. Now I’m singing about talking about writing about what I’m doing.”¬†(Parks & Recreation quote, ignore if irrelevant to your interests…)

Point is (yes, point, finally!) do something. It’s way better than nothing, and will certainly help you reach your goal, eventually. Even if it’s just brainstorming for 5 minutes, or sorting through a pile of mail, or writing some ridiculous self-help monologue that is little more than superfluous narcissistic pandering… it’s also easier said than done, so here’s a final kick in the seat from yours truly;

follow the advice of Dr. Leo Marvin. Baby steps to the elevator. Baby steps toward finishing this blog post…

Oh yeah, and Happy Saint Patrick’s Day to you Irish and honorary Irish alike!