Thursday, May 7, 2009
Long time no post
Sunday, January 11, 2009
Luffy and Life
The basic plot of One Piece might be stated as follows: "Young man, Monkey D. Luffy, inspired by his childhood hero, decides to set out in search of the famed treasure of all treasures, the One Piece, and become the King of the Pirates."
What is incredible about the story, however, is the characters and how they stay true to themselves. Specifically, the main character and captain of the "Straw Hat Pirates", Luffy, is absolutely unwavering in his thoughts of who he is. Whenever anyone asks Luffy for his name, he replies, "I'm Luffy, the man who will be King of the Pirates" (in Japanese, it's "俺はルフィ、海賊王になる男だ").
Now, what's interesting about this is that Luffy not only knows who he is but he acts like it to. He has a certain concept in his mind of what it means to be a King of the Pirates. That concept includes valuing freedom, friends, love, and life by always living 100% in the present moment. That concept of who he thinks the "Pirate King" is drives him to be fierce and strong, yet fair and good. My point here is that this inner concept that Luffy has of who he is profoundly drives him, gives him strength, and adds strength to those around him.
What's more interesting is that this fundamental concept that Oda's character displays appears to be echoed in some of my favorite works.
For example, Shakespeare had this to say in Hamlet:
This above all:
To thine own self be true,
for it must follow as dost the night the day,
that canst not then be false to any man.
Mahatma Ghandi had this to say:
Be the change you want to see in the world.
I even see some of this thinking echoed in the philosophy of functional programming, a type of computer programming I am currently studying. In functional programming, there is no dynamic state--the core doesn't change. That is, something that is defined always is that definition and acts accordingly. If we define the following function:
f(x) = x + 2
then if I apply the function f to the value 3, I always get 5. That is, f always knows exactly what it is and when applied to a new situation (in this case, a number), it acts accordingly by natural consequence of its definition. That is, when f is given the number two it gives back the number five since f is the relationship that adds two to a number.
Another way we could understand this is with the game of chess. The rook can only move straight, the bishop diagonally, the knight in an "L" shape, etc. If we were missing one of our chess pieces, let's say the knight, we could substitute a bottle cap and the knight would still move in an "L" shape. Why? Because that's who a chess knight is, that's what he does.
Where am I going with all of this? Well, all of these things come back to a simple yet profound thought. If we truly know who we are, then we will act according to who we are, and change happens to us, through us, and around us all because we hold true to this static and solid concept of who we truly are and who we truly are is beautiful.
So who are we really? Who am I? And who are you? ...and do we act with that knowledge?
Tuesday, January 6, 2009
Chapter 3 Uploads!
Friday, January 2, 2009
Frankenstein Brings in the New Year
I took it upon myself to update my online presence in this first week of the new year. I have been using the Django framework to manage my website/blog/photos/comics etc and I really enjoy it but things were starting to get crazy in terms of spending too much time working on my website instead of using it. My initial thought was to turn to Google Apps, Blogger, and Picasa Web Albums.
The idea was for Google Apps to handle my website with Google Sites, my e-mail with gmail, and my events and planning with Google Calendars. Blogger would then handle my blog and Picasa Web Albums my photos and comic art. I also investigated Pastebin and Code : Keep as a means of holding computer code snippets.
Here are the results:
I am extremely impressed with Blogger and in-fact, that is what I'm using for my blog engine. It has all the bells and whistles I'd like in a blog (including the ability to add Google Gadgets) plus the ability to customize the skin and the URL. Exactly what I was looking for.
Picasa Web Albums was nice and I went ahead and created an account but I soon realized I was going to need more space than was available for the free account. I then looked into Flickr and also came to the conclusion that I'd probably have to upgrade my account to a paying one which I did. Despite having to pay for it, I was more impressed with Flickr than Picasa mainly due to my familiarity with the product, and my sense of it's larger popularity. I also liked the interfaces slightly better and thought the sets and collections were a bit nicer that what Picasa has to offer for the time being. I was sad that neither Picasa nor Flickr lets you skin the site look and feel like Blogger.
I was largely pleased with the Google Apps suite. It allows you to hook into your domain using DNS overrides and so I was able to set up gmail and SPF records fairly easily. I was also able to set Google Sites to run on www.okeefecreations.com just by setting the CNAME in the DNS override for the www subdomain.
However, as I began fiddling with Google Sites (the web-page creator part of Google Apps), I began to see there was a problem. Google Sites is basically a wiki engine bundled with support for Google Gadgets and some very limited templating. It just wasn't going to cut it in terms of setting the look and feel as I liked and it was a huge step back from the dynamic content generation I had achieved with Django. Therefore, I decided to stick with Django and nix Google Sites (while keeping the rest of Google Apps: gmail, calendar, etc).
I dropped the blog, photo post, and comics applications on django (that functionality being handled by Blogger and Flickr respectively) and rewrote the django code to be less subject to change and just pass off the heavy lifting to Google Calendar, Flickr, and Blogger.
The new revamped website is available here:
http://www.okeefecreations.com
If you'd like to see the Google Sites attempt, it is here:
http://gs.okeefecreations.com (I may take it down in the near future)
Note, after I had switched back to django, I ended up coming across another website building site called SynthaSite. They have all the right qualities (free, no adds, custom skinning, custom URL corresponding to your domain), but I haven't put their service through the paces to be able to say anything about them yet. They might be a future possibility.
As far as pastebin and codekeep, I ended up sticking with my custom pastebin app instead of going with these code repositories (they just didn't quite cut it versus what I already had).
So, in summary, O'Keefe Creations is now a cute Dr. Frankenstein's Web Monster consisting of:
- Blogger for the blog (see it here)
- Flickr for comics and photos (see it here)
- Django for the main site (see it here)
- Google Calendar for the Events Calendar (see it here)
- Django for the computer code pastebin (see it here)
- Django for an "inspirational quotes" engine (see it here)
- and Gmail for site e-mail
Cheers!
Wednesday, December 31, 2008
It was nice to forget, it was nice to remember...

Well, I'm back from my wonderful vacation down in sunny southern Arizona. I went down for Christmas to visit friends and family. The photo is from my parent's house out in Elephant Head, AZ. The mountain is Elephant Head -- can you see the elephant?
It just struck me how really nice it was.
Gone were all the stresses of adult life, any stress associated with my job, etc. Only the good things of my life here in Colorado remained and they rolled off the tongue when people asked how I was.
But being home also brought back memories -- memories of when I was a child; remembering how much I love the desert; playing with my sister's cats and the kittens my dad "adopted"; eating mom's good home cooking; attending our family church in Tubac, AZ; heading to the Arizona Sonora Desert Museum with my Dad (he had actually never been!!!).
Ahh, for a week I was truly home and the feeling still permeates my heart.
Monday, December 8, 2008
The Comics are Here!
Well, the comics are finally uploaded (and the crowd rejoiced). Actually, at the moment I only have Awesome Kitty Kingdom Chapters 1 and 2 up. I'm figuring that I'll add one page a week to Chapter 3 (which is complete) to give me time to finish drawing Chapter 4. I may intersperse that with uploads of some of my other stuff (24-hour comics, sketches, T-shirt designs, etc.)
Anyhow, it's nice for the site to have the comics back. Comics, you were sadly missed ;-)
Tuesday, December 2, 2008
Hello Ruby!
Although I'm historically a Python guy, I've been having fun playing around with Haskell lately. I've also been curious about two other scripting languages: Ruby and Lua. I thought the best way to compare all of the languages would be to write a bit of code to compare all three head-to-head -- same functions, same functionality, tested and with a GUI. I want to also incorporate some functional programming techniques into the Python, Ruby, and Lua code as well as I'm really getting to really love FP and I'm hoping this comparison will be a nice way to highlight how cool Haskell is -- but I'm trying to stay objective (really!).
At any rate, I thought I'd post a bit of Ruby code today.
Today I'm just going to post the code with no particular explanations. When I get sources finished for all the target languages, I plan on walking through the code and explaining it at that point.
Just to give you the basic idea, I'm trying to get some numerical array processing going in Ruby similar to what I can do with NumPy in Python or the product Matlab (or Octave if you'd rather). Here's my attempt plus the subsequent unit testing code:
OK, so today just code only without discussion but hopefully I'll be posting more later. Stay tuned for the big boys: Python and Haskell!

