Friday, September 12, 2008

Trust your instinct.

Today it occurred to me that I am involved in a lot of things that truly interest me. Some of them I make money from, which is a bonus, and some of them I most certainly lose money on, which isn’t great, but at least the activity interests me, and is in some way fulfilling.

I also absolutely know that many people aren’t that lucky. I frequently talk to people who a) don’t like their job, b) don’t like their home, or c) don’t like either. I know I have felt that way from time as well; we all work a shit job once in a while; we all let the house get a little too dirty; we all let our relationships suffer occasionally.

But there’s something we’re all born with that all too frequently gets ignored. It’s called instinct. Doesn’t that sound animalistic?

Instinct, in animals, is the thing that says “loud noise = run away,” or the thing that says “brightly colored frog = poison.” Instinct keeps animals alive. That doesn’t mean, however, that simply because we can use words like “loud” or “frog” that that instinct is now dormant in us, that we have to ‘reason’ our way through every problem. Because we reason, however, instinct gets washed in with the noise of our lives.

So what is instinct for us bipeds, then? Is it a feeling in the gut? Is it some ball of stress I’ve buried and tamed? No. Instinct does not cause stress, it causes action.

What will causes stress about instinct is when you ignore, or outright flout it. Now you’ve got to deal with the fact that some part of you thinks you made the wrong decision. Whether that instinct is right or wrong won’t matter - what matters is that it feels right, and what you did feels wrong.

Instinct comes from the reasoning you’ve learned as a child. What you like. What you don’t like. Your morals. Your parentage. Your religion. What you did and learned in school. These things have combined into the amalgam that is you. Instinct is pre-reasoning from being a child, watching your parents, and seeing how life unfolds when you make the right decisions, versus when you make the wrong ones.

I find that my instinct often fights with my desire for gratification. I can waste an afternoon playing video games, while my instinct sits and asks why I’m not at the Secretary of State getting my license plate tabs renewed. Procrastination is the opposite of instinct; while procrastination has me sit on my butt, instinct tells me what I should be doing next.

So trust it and do it. (Note that sometimes this means saying NO to the new thing. Instinct will tell you when you’re overloaded.) Instinct and gratification are not opposing forces always; eventually you’ll have done all that you can do “productively,” and your instinct will say, “Take a break,” or “Play Mariokart,” or “** your wife.” This is when gratification is truly gratifying - you’ve beaten down all the dinging bells, the project managers, and the nags, and you’ve gotten control of it all. What’s more: you’ve now given yourself the ability to be yourself. Rock and roll.

Saturday, August 16, 2008

A Photographer is Me!

Howdy, all!

Well, my little business has finally gotten to the "invest in equipment" stage. In the last month I've added:

  • A MacBook
  • A Nikon D40
  • An HP Photosmart C4280

and a few other bits & pieces that aren't relevant to this post. (There will be others!)

The Photosmart came with the MacBook free (er, free pending rebate), which ended up being a much better deal than I anticipated. When I bought the MB, I didn't realize that I'd be doing historic site photography a week later. The requirements for this photography are very specific on the print side of the equation: only certain photo paper / ink combinations can be used to make prints. Fortunately, and unexpectedly, this (free!) printer supports one of those combinations. As a bonus, it makes damn high quality prints as well.

My only gripe is that this particular model doesn't support a black-and-white cartridge. The photo quality inks available for it are only multi-color carts, black being one of the contained colors. Since another requirement of the National Register of Historic Places is Black and White, I could really increase some efficiency by having a grayscale cartridge.

However, other Photosmart printers have grayscale cartridges available, so hopefully when the rebate comes, I'll upgrade.


There's something really pleasing about printing your own photographs that you're getting paid for. Not only are you flexing your artistic might, you're also printing money. Granted, money isn't everything; but getting paid for doing something you enjoy kills two birds with one stone.

Wednesday, August 06, 2008

Are all generalizations insults?

I was reading a Slashdot post today about the Olympics changing the gymnastics scoring system, when I came across the following by CmdrTaco (one of Slashdot’s primary editors):

Now I’m sure that no Slashdot reader will intentionally watch any “sport” that has judges determine the winner, but their wives/girlfriends might seize control of the remote because they want to know who is the best at that ribbon-twirling thing.

The lesser

(that means jump ahead for the sexism bit)

There’s two things in there that could be construed as insulting; the first I’ll tackle would be the ”sport” air-quote. I fully believe that there is sufficient technical ability required in gymnastics to consider it a sport. These people do train their asses off.

However, it is a judged sport, which does set it slightly apart from an officiated sport. An officiated sport generally has objective rules, which a third party observer can categorically qualify. Ball goes in hoop: 2 points. A judged sport relies on having a very significant amount of knowledge in a panel of people, who then score the performance. Usually, a judged sport agrees on some universally decided perfect technique, and then judges based on the comparative performance.

I do admit that I find myself less interested in judged sports in general. If I watch one of these Dance shows, for example, I am often befuddled by the judges’ comments - a spectacular performance to them is simply mediocre to me, but something I really like, they will stomp on. Why? Because I don’t perceive the same things they do. They clearly agree, at least to some extent, what the ‘perfect mambo’ looks like. I wouldn’t know a mambo from a tango. One of those has roses.

Even sports like MMA (that’s Mixed Marshal Arts) I find lacking. Not because of a lack of action - there’s plenty of it. There’s also lots of action in gymnastics and figure skating, though. It’s because unless there’s an objective Knock Out, the match is judged. I have a bit easier time telling who’s winning as opposed to dance, because usually one guy is pinned. But that’s usually when I flip channels. Sorry, but two dudes wrestling on a mat is not sport to me.

So what is “sport” then? That seems to be subjective itself. However, implying that something’s not a sport, when there are people devoting their lives to what they clearly believe is a sport, does ring of bigot to me. But hey, I’ve said some insensitive stuff myself. Probably on this very blog.

And the greater

The more obvious slur is that about women and their obsession with ribbon-twirling things. I’ll defend this only in saying this: he said it on fucking slashdot. For every joke that even mildly insinuates something remotely negative about women, there’s at least three “but hey, none of us have girlfriends now, do we.” There’s so much self-denigration, regarding gender and overall manliness, that most jests on Slashdot that come off as “macho” in any sense are satirical.

Presuming from here that the crack was satirical, it would certainly be non-obvious. Only knowing the audience and the context of Slashdot in general can you extrapolate that particular nature from that comment. Anywhere else, and it would most definitely be blatant sexism.

With that said, it is very likely generally true that if somebody is changing the channel to gymnastics in the house, and the candidates for doing so are one male and one female, it’s probably the female. I know I can’t get past “So You Think You Can Dance” without my wife saying something. Is it a generalization: yes. Is it mandatory that “Women like watching gymnastics” is an insult? Absolutely not. Just like “Men like watching football” isn’t an insult either. We all know that it’s not universally true, only generally true from one’s perspective. I can accept that.

Here’s the rub, though: a misstep in phrasing can make a generalization sound like an insult.

Though it’s unlikely that a Slashdotter would watch a subjectively judged sport, it’s possible that their partner may be interested in the judging process of gymnastic competition. This article will give you some knowledge in that regard.

There! Now it’s totally bland, and completely not worth the time to read or comment on. You’re welcome, taco.

Sunday, August 03, 2008

Saugatuck Day Trip

The Scapers invade Saugatuck.

Fun Stuff.

My schedule is completely thrown off. I spent Saturday in Saugatuck, MI with friends raislak, zarniwhooper and husband, asta77, and my wife. We had wine, burgers, and fun, and then arrived back at home around 5:30ish.

Side note; all those friend links are to livejournal. Can’t just follow the trend, pauld, can you?

Not being big day-trippers, Teeny and I were quite tired when we got back. So we decided to take a nap. I woke up at 1:30 am, Sunday. Oh my. Hence, this strange ramble.

So I replaced 4 (four) hard drives on Friday night. Oh, the carnage! I now have a Western Digital 30 GB, IBM Deskstar 120 GB (the actual dead drive), and two Maxtor 100 GB SATA’s on the floor of my office, with a very happy Western Digital 500 GB SATA drive in my old Mac. By the way, this Mac is a dual G4, 500MHz each, and is over 8 years old. With 1.5 GB of RAM, however, she still cranks out blogger posts all like snip-snap. So why mess with a good thing?

Unfortunately, this may be the final stop for this machine. It is currently running Leopard, via the very tricky Install Via Target Disk Mode from a PowerPC Mac Mini. But because I now only have the Serial ATA drive available (using the Sonnet Tempo card), I don’t have Target Disk Mode available to me. In fact, to get this install up and going, I used the fabulous Carbon Copy Cloner, and the power of prayer, to see my old Deskstar’s contents onto the new drive.

I haven’t seen a lock-up now in 36 hours (yay!), but I am now in NIOTM, Nothing Important On This Machine, mode. If for whatever reason this machine is no longer bootable, and I have some key piece of not-backed-up data, I’m 100% screwed. So, nothing goes on this machine that is absolutely vital to my day-to-day. Fortunately, when, not if, I forget this rule, I’ve got Time Machine and a 1TB Time Capsule to save myself.

That said, the machine is running very smoothly after all the hullabaloo. Also, my power bill should be a slightly happier sight, because a) I shut down my computer for a significant chunk of time (days!) and b) I’ve replaced four (4) spinning hard drives with a single HD. In addition, that single HD is a WD “GreenPower” drive, which means that it spins down on its own to 5400 RPM when I’m not using major disk I/O, and spins up to 7200 when needed. How much power does that save? WD says 40%. I’m sure that’s not accurate, but I know I’m saving power by not having the other three drives, so I feel a bit less like an ecological disaster. At least until I put these other drives in a landfill.

By the way, it’s now required that every hard drive box list the number of MP3’s you can store on a hard drive. That is a very important modern metric for space. Of course, along with that number, you need a disclaimer proving that that number is essentially arbitrary. My box’s disclaimer says,

“Examples of the number of photos, songs, and any other files that can be stored on a hard drive are provided for illustrative purposes only. Your results will vary based on file size and format, settings, features, software, and other factors.”

That’s sexy. Mine holds 125,000 MP3s, and if I can’t fit every one of those on there, I’m suing. So, where can I legally aquire 125,000 MP3s, people?

Don’t forget to listen to Twit 154 in which Dvorak will joke about Greenwashing.

Wednesday, July 16, 2008

One Bizzare Feeling...

There was a spectacular moment today, where I felt like I was "in the zone." I thought it was worth a mention.

Not sure if this is really a productivity thing, but I'm definitely getting used to my gmail labels, and my jott.com. Invoicing still isn't something I look forward to, but at least the resistance level is now so low, that when I'm doing it I feel like the check is actually around the corner. Instead of struggling to get myself to sit down and get it done.

I now take to my gmail to manage, well, my life, essentially. I didn't realize I was even doing that before, but since I've added the pseudo-organizational labels, I have found my searching and combing through past mail far easier. Especially my now-key "ToBill" label, which gets me billing on the 1st & 15th of each month.

I think the real key to productivity isn't labels or todo lists - those are only tools, and they won't work for everybody. The key is to think about yourself, and how you can trick yourself into accidentally doing more work at the right time. For me, if I'm actually reading my mail, it helps a lot to throw it into a few bins for later. I used to only do that if I found myself searching for the same email over and over. Now I capture it there and then, and I have it immediately that next time. And I was already living in GMail, so the labels were a tool that I could add without adding much complexity.

Productivity means different things to different people. My mom, as an example, is a person who can (and with regularity, will) do the next steps on 100 things in a day, but if a real project-sized monster doesn't get done, she will never feel like she did something. So the key, for her, is to open the time to tackle the next steps on one project - nix the multitasking. Then she can do those 100 steps, and finish something. Same output, but to her, it will feel like more. It's not necessary for her to finish something every day, but strategic completion planning is very important.

I get that same feeling from putting the invoices in the mail. Something is done now, so I can go back to my programming and blogging for a while. Feels good.

Monday, July 07, 2008

Fourth of July Extravaganza

Fun fun on the Fourth.

Saturday, June 07, 2008

On Creation and Evolution

I saw a post over at sikkdays and had to respond. I ended up putting essentially a blog post together, so I thought I'd re-post here. The original post at sikkdays was regarding the new Michigan Legislation that is working it's way through the State House and Senate regarding the teaching of Intelligent Design as a challenge to Evolution.


The thing that frustrates me is that after over 100 years of having this theory, we’re no closer to reconciling it with our faith. I personally believe that it’s very easy to believe in both Evolution and the Bible, and here’s the hint: most of the details in both are wrong, especially when interpreted by the layperson.

Evolution as a process and as a theory is still not greatly understood. We don’t really know how or why DNA mutates, or how genes split and become 2 genes in the following generation. We’ve got experiments that show that these things happen, but aside from random chance, we haven’t discovered all the mechanisms that make Evolution actually work. All we know for sure is that natural selection happens, and it operates to create enhancements in species over time relative to environment.

The Bible is far from well-understood. It’s been well-studied (much like Evolution), but there seems to be little consensus on what the damn thing actually says. Ask ten different pastors from ten different denominations what the most important verse of the Bible is, and you’ll get ten different answers. If not twenty. But ask them what Jesus stood for, and you’ll get the same things: forgiveness, compassion, understanding, and sacrifice.

The Devil is in the details. Literally, folks. As Christians, we can easily get caught up in who begot whom, and exactly how much pork we can eat and on which days during Lent. We almost always seem to forget the important stuff like love and grace. We argue about the details so much, that when some “jerk like Darwin” comes along and says something that’s “so obviously not in the Bible,” we all gang up like Greek City-States against the Persians.

Believe me, the important parts of the Bible are not the details. They are the truths. If you read a verse, and you can’t say, “this is self-evident, and thus Godly,” then it’s probably editorial written by some guy who’s been dead between 6,000 and 2,000 years who had an axe to grind, and should be taken in that context.

To bring this rather lengthy response back around, Evolution has absolutely zero conflict with the Bible. The only argument that can be made is the Literal Genesis argument, that presumes that God is some cheap magician that pulled Light, Land, Sea, Time, Life, and Humanity, out of a hat, one (1) day (not exceeding 24 hours) each, starting at 9 AM, October 17, 4004 BCE. (I have yet to see an “on this date: Oct 17, 4004 BCE: World created. Rejoice.” on the last page of “Popular Science.”)

I’m not saying God couldn’t do it, but why would he? Doesn’t it make more sense, if you’re going to make faith something of any real import, to create a world where the existence of God could be shadowed by the natural and logical? Wouldn’t God create a system where his very presence was either completely apparent or completely unnecessary depending solely on faith?

I can believe in Evolution, and I can believe in God. I can believe these things because while I believe in truth that is scientifically tested like natural selection, I also believe in truth that is spiritually tested, like the teachings of Christ. These things shall not be foreign to me simply because they hadn’t been discovered when the Bible was written.

Wednesday, June 04, 2008

Net Neutrality? How 'bout Channel Neutrality?

Inspired by Sikkdays' post about Net Neutrality, I though I'd put my 2 cents in regarding another, related issue.

Net Neutrality

Net Neutrality is tiered service based not on the money you pay your ISP, but based on the money a service provider (like Google, Yahoo, Blogger) pays that ISP. Usually, as an ISP, you would do this if you had a competing service. For example, Comcast might want to put a speed limit on Skype, because Comcast has their own digital voice service. AT&T would do the same, in favor of selling you a phone.

The Internet was never designed that way. It was designed to be egalitarian. Bits are bits, and the Internet sends every bit just as fast as it can, regardless of protocol, port number, or packet size.

I want my bits to be equal. The ISP's argue that these services are 'Piggy-backed' on "their" internet access. In reality, each of the aforementioned services pays a rather large fee to have their connection - they pay their ISP just like you do, and I guarantee they pay a heck of a lot more.

Clearly, nobody saw the Internet coming. We're seeing disruption in all kinds of industries, especially information industries. Video, music, communications, they will all have to adapt to a world where units of information is bought at a flat fee.

Channel Neutrality

So here's where I transition to the new topic: Channel Neutrality. Many people know that I used to work at a public access TV station. Cable companies are required by law to provide community access, if one exists in your community, on every plan - even basic cable.

Here's where it gets interesting: AT&T "Advanced TV." AT&T argues that it is not a "cable company" - they aren't stringing coaxial cable into your house, just good old-fashioned copper wire. So, since they aren't a cable company, they don't have to provide PEG (Public Access, Education, and Government) access channels. So very likely, you simply won't get them. (Take that, First Amendment!)

But it gets better! If your local PEG Channel decides that they want to pay AT&T to be sent to your TV, (which costs them well over $5,000, and likely upwards of $10,000, according to my old boss) they get siphoned into a separate "PEG Channel Area." They're no longer "Channel 25." They're "PEG Channel 2" in the "Channel 99 PEG Area." It's hard to describe this correctly, so here's a video of what PEG access looks like on AT&T U-Verse:

There is one advantage of this setup that AT&T is quick to point out: you can see PEG channels not just from your community, but from your neighboring communities as well. This was always a problem when I worked at BCTV, because one of the school districts we covered was not in our viewership - they were in WKTV's.

Still, the decision to "block off" PEG into it's own section is a curious one. The video makes no mention of if it's possible to DVR record the PEG either.

It gets better yet! Because AT&T has been so successful not carrying PEG, the cable companies are now getting into the act!

Huh?

I'm not going to say this has anything to do with our politicians, except that it is just plain ignorance. Most people care less about their public access than they do about Google loading fast. But to me, this is a clear erosion of our freedom of speech.

So write letters. I think Americans need a new Freedom of Information Act, one that ensures that content produced by the people, for the people, gets to the people.

Sunday, June 01, 2008

Breakage! Exploding laptop!

Okay, so that was a bit of a sensationalist title. My laptop has not yet exploded.

Here's the deal. I applied the 10.5.3 update to my MacBook a few days ago, when it was released. It took a moment, rebooted, and I was back up and running. Nothing bad seemed to have happened. At least, for the first five minutes.

Then my fan started a-crankin'. For no apparent reason. Now, sometimes that'll happen when Spotlight re-indexes, or when Time Machine says "I'm backin' up, and nothing on earth will stop me!" So I didn't think too much of it. Half hour goes by, and now I'm a bit concerned.

I took a gander at the MacRumors forums, which is a great place to look for mac help. A few people had issues with 10.5.3, but nobody really had my issue. So, I put up with it for a few days - this wasn't hindering my use of the computer, it didn't seem to slow anything down. Activity monitor didn't show anything obvious, either. And even at its loudest, the MacBook isn't very loud.

Typically, I use it plugged in, so battery life is not an issue. But this weekend, I was carrying the 'book around the house with me. I expect it to usually get around 4 hours of battery life.

With the fan crankin', I got less than 2. Something is definitely up.

Checked the forums again, checked Activity Monitor again. Nothing obvious. So I did a quick

ps aux

Right at the top of the list, pid #85, was the IPSecuitasDaemon, trying to start up - and eating 94% cpu, whenever I wasn't doing anything! OS X clearly knew that that was not a particularly important process, but it was a constant process. According to ps, it had tried to launch at startup. Now, Activity Monitor wasn't showing me that daemon in it's default view, but I'm sure I could have tweeked it and found the right screen.

So I run

sudo kill 85

and sure enough, the fan noise fades itself out. And my battery life index jumps significantly.

Point of caution: Be careful with that sudo. su-DON'T use it unless you know what you're doing. The '85' comes from ps, it's the pid, or Process ID. And kill terminates the process - the UNIX equivalent of Force Quit (in fact, often works better than Force Quit if something is really misbehaving).

Well, that was an extraordinarily geeky post. Rock & Roll all!

Tuesday, May 20, 2008

Flip Video Review

Hey, folks!

I'm trying to get on here and post a bit more often. Since tonight is a Co-op night, and since Twitter is totally borked, I figured I'd got on and do this.

Flip Video Camera Review

So I've had my Flip Video camera - the Ultra, 2GB model, by the way - for a whole 3 hours, tops. I don't know absolutely everything there is to know about it yet.

That said, this device is the iPod of video cameras, so within the first 5 minutes, I knew everything I needed to get going. Basically, that was "Where do the batteries go?" Speaking of, this gadget takes double-A's. Yeah. Not some crazy, proprietary $40 NiCd that you'll misplace. Trusty, good 'ol double-A's.

The video quality is remarkable. These sensors these days - I would put this easily beyond the quality of the old Canon ZR-70's we used to shoot with at BCTV. For a $150 camera, this handles high contrast, and motion, extremely well. I don't know that I can say the same about the standard Flip Video - the Ultra, according to Pure Digital has almost double the bitrate, and is using an updated codec for storage. I would assume that both of those upgrades would result in a jump in quality.

The unit has a whopping 7 buttons. Four for menu navigation, one to record, one to play, and one to delete. There's also a slider to turn on and off, and a flip-out USB plug - hence the Flip camera name. Operation is completely self-discoverable. Play with it for more than a few seconds, and you'll know how to recorde, playback, and delete, as well as zoom and shuffle through your previous videos. Extremely simple and smooth. Recording response is nearly immediate, no waiting for tape to pre-roll. Stopping is also snappy.

There is also a standard tripod mount on the bottom, and a TV-out. I haven't tried either of those, because I've not been near a tripod or a TV.

My only complaint at all is the software. The 3ivx codec it comes with doesn't really enable solid playback in OS X - I've read that Perian does better. Fortunately, I have MPEG Streamclip, which will open and convert the files with no complaints.

Directly out of software, I can upload to Youtube, so the codec switcheroo only comes into play when I need to edit something.

Here's my first Youtube post, and my very first recording with the Flip.

Rock and roll folks. Questions? Hit the comments.

Saturday, April 19, 2008

No, I won't watch it on Hulu...

... so please stop making that suggestion.

This derives from a conversation that just keeps cropping up. What it boils down to:

  1. I am a fan of Battlestar Galactica.
  2. I don't like to waste time.
  3. Despite what Walt Mossberg says, I have DSL and yet consider it to be "high speed." High speed enough.
  4. I don't need to watch something live, but I'd like to catch an episode in a rather timely fashion.
  5. I have a home theater. That's how I experience good TV.

So my choices are Hulu.com and until the NBC freak-out of '07, iTunes.

iTunes was a brilliant solution. I have every ep, of every season, purchased via Season Pass. I get to feel like I'm directly supporting the show: the network gets my $30 or so, and they know it's because I like BSG. I don't have to put up with ads. I don't have to wait more than an extra day to see it. I have it on my TV via AppleTV. And, best of all, ZERO wasted time.

Hulu hits a lot of the points, and well. I can watch it free, which is a bonus. I can see it in a timely fashion (in fact, I can even watch it early, weird). The network knows that that show got a view, so I am supporting the show.

But, I have to watch ads. I have to watch it on a computer monitor, or hook a Mac Mini to my TV and screen-share control it. Plus - and here's what Walt was talking about - I have DSL. It's great for background downloads. It's terrible for streaming video, and that's all Hulu can do.

Hulu is wasted time incarnate. There's ads. There's time waiting for it to stream. And there's this big thing all around the window that tempts you to start web surfing - and in terms of time wasting, web surfing is Satan compared to channel surfing's "bad friend who encourages you to drink occasionally."

That said, I can completely solve this problem for the network. Make BSG (or better yet, every show) available as a free podcast, with the ads built in. No DRM. Apple TV can easily sync it right into the box. I can watch it on my TV. Sure, I can fast-forward through the ads, but, believe it or not, I might occasionally watch the ads. Just like somebody on a Tivo might occasionally watch an ad because it was cool. Just like somebody watching live might occasionally not switch channels all the way through the stations until the show's back on.

You'd kill piracy instantly. Why potentially break the law when I can just get the thing and deal with ads?

You'd have your numbers feedback: you'll know exactly how many subscribers, independent downloads, and even streamed watches for each show. You might not know who was giving copies of the episode to their friends, but at least you'd know that if they did, the ads are in there too.

You'd still have your ad dollars. And if you're going to argue that people can fast forward, I'm going to point you at my VCR.

Solution 2: play Apple's game. Put your shows back on the 'tunes. I'll happily give you my money for one last season pass of BSG.

Tuesday, April 01, 2008

Over 1 year...

Since the last post!

That's awesome. Now that I've done a complete, nuclear reset of people interested in this blog, I figure it's time to startup once again.

For those of you following along, yes, I'm still into CakePHP. It's my primary PHP framework. I am also big into Prototype.js on the client side, simply because it makes Javascript a bit more friendly. I'll admit, I wasn't a big JS programmer prior, so I never really have hit the issues that some of the older JS developers hit when they tried Prototype.

I have a few websites I'm coding up at the moment. My biggest success so far has been the West Michigan Coop, which is a local, online food cooperative for the Grand Rapids, MI area. There's actually a nine-county region that WMC serves. I am the CIO, and I also sit on the Coop Board. The site is climbing to 400 users, and we'll probably help our participating farmers sell six figures worth of local food this year. Hopefully, seven figures in 2009.

The second - and the one that might actually make a little cash - is Travel Itineraries. Right now, if you go there, you'll get a flash intro of what the site will be about. We'll be launching a Beta of the site on May 10, 2008. Definitely looking forward to that!

I'd also like to get around to updating my own site - including this blog - much more frequently. That's just a get-it-done philosophy that I'm going to start adopting in everything. While I mention getting things done, I'd point you at the wonderful book "Getting Things Done" by David Allen, and the website 43Folders. Two fantastic resources for essentially organizing your actions, and aligning them with your goals. Not to get all Motivational Speaker on you.

Well, check in again soon. More coming. Oh, and take a look at the next article down, "Mysterious Apple Phone." It's pretty funny to see what I thought the iPhone was going to be. And it also puts a perspective on how long it's been since that last post.

-PD

Tuesday, November 21, 2006

The Mysterious Apple Phone

Howdy.

First off, this post begins simply as a response to the latest rumor over at MacRumors.com. It got me thinking, and rather than post in the forums I thought I'd start a long-winded and nary-insightful blog post. As if you all care what I think.

The Apple of the 1980's was about Simplifying Computers, to bring them to the non-geek. The Apple of the 1990's was about Staying Afloat. The Apple of the 2000's, firmly re-seated in the public eye with the iPod, iTunes, and Mac OS X, is about Lifestyle Integration. This is why I think an Apple iPhone is not unlikely.

Here's one thing I think Steve Jobs knows: the phone is not the end-all-be-all device. It's not going to cook you dinner (although you can use it to order some), it's not going to wash up after you (though you could call in an emergency maid, maybe), and it's not going to make you more attractive when it goes off in a movie theater. But phones are more and more people-friendly.

Remember when YOU had to know everybody's phone number, or look it up in a book? Crazy. Nowadays, we simply look through our contact list or our recent calls, and the phone knows all the numbers it needs to connect. Phones also integrate the answering machine functions via voicemail, and can actively alert you when a message is available.

What most phones suck at, however, is Internet. Sure, many have mini-browsers, and can surf websites on their tiny, tiny screens. But it's clumsy to navigate, and clumsy to fill out forms or do any real work with. Phones that are actually good at surfing , on the other hand, are generally terrible at being phones. They end up being bulky, or have too many buttons, or are simply buggy. Sure, they can make calls, but it feels like a 1990's palm pilot with phone support added as an afterthought.

Bulk, buttons, and bugs were the three craptastic features of almost every MP3 player available just before the release of the iPod. Hmm... might this be something Apple could do right, and score big with? You bet.

But look at all the other moves Apple is making. They've got a lot of personal info management built into OS X with iCal and Address Book. Depending on your phone, you can make these apps play nice and have things sync. But an Apple iTunes-like solution is going to simply work better. Looking ahead at Leopard, we've got a ToDo's and Notes system ramping up as an underlying element of the OS. Wouldn't it be nice to have a smart phone that integrates with that functionality as well?

Then we've got iChat AV. Imagine being able to connect via the Internet with your buddies online from your cell phone. Seems nice enough, maybe not a killer app, though. Now imagine an integrated camera. Yes, it syncs with iPhoto, but is also capable of video conferencing through your phone.

Probably not all that useful if you're using it as a typical handset. But then there's this iTV thing that's coming out - remember when we found a 'missing integrated iPod dock' on the mac mini? Try an iPhone dock on the iTV. And it just so happens that your integrated camera faces the couch while all your contact info & photos are syncing up. (Of course, when your boss calls and fires you, don't blame the iPhone for the 17 "YOU'RE FIRED" faxes that appear throughout the house.) Now you're in prime position to video conference minus a computer.

And then there's the Zune. Microsoft is pushing hard the 'Wireless sharing of music.' It's a given that the iPhone will have integrated iTunes support with music listening built in. But with a Zune, your friend needs to be physically close (and with his Zune) in order to share something. What if you could get the same functionality over broadband with other iPhone users? Now space is not a limiting factor for sharing your music with others. And, of course, the iPhone would actually integrate with the iTunes Music store. Not only could you buy any music at any time with your phone, but when you're listening to your friend's shared music, a purchase is just a click or two away. How's that for appeasing the RIAA?

So I think it's a definite possibility. I simply can't say that it will actually happen, but I've got to believe that this could be why the Zune doesn't seem to be fazing Apple in the slightest.

And I doubt this would happen, but I'll throw it out there because I think it's a neat idea. Most phones have GPS. What if movie theaters (and upscale pickle-butted restaurants) had a database that they could register with to define their 'space'? A phone, when on the network, could use that GPS information to auto-silence. Emphasis on the Auto. After all, Steve doesn't want a phone going off during Cars - even if it is an iPhone.

Tuesday, June 27, 2006

Piece of Cake

Well, folks, I'm back from Summer Film with a vengance. And it's time to get down to some programming, so here goes.

We've all heard about Ruby on Rails. "It's so great," they say. "Ruby is so simple, and efficient," I hear. "There's a cool guide that has Foxes!" says some other guy from the back.

But I already know PHP. I like PHP. In fact, I really like PHP. It has that old-school C style syntax, and yet, it's just frustratingly different enough from C to make it enjoyable to code in. (I use 4; 5's good too, but I haven't bothered to seriously update, because my hosts still use 4 on the majority of their boxes, including the one I'm on.)

So what great MVC package is there for PHP similar to Rails for Ruby? Well, there's PHP on Trax. A plus is that it fairly closely follows Rails. But, it requires PHP 5. Hmm. Yeah. 5's great, but no thanks right now.

There's also TaniPHP, which supports PHP 4. But that's not been updated in ages, and it looks like it won't be.

And then there's CakePHP. PHP 4 support, check. Inspired by Rails, check. Good documentation, check. Active community, check. Fantastic.

So here's my adventure installing CakePHP on Mac OS X. You can follow along, if you like.

Step Zero: Install PHP and MySQL for OS X. I did this a long time ago, but if you're just getting started, you'll probably like to do this. Otherwise, things are really not going to make sense later. There are great instructions for installing PHP & MySQL by hand on Apple's Developer Connection, but I'm not setting up a production box, I'm setting up a development box. For that, I do things the easy way. I'll optimize later.

So here's the easy way: Marc Liyanage's OS X Packages. Easy, helpful, just follow his instructions.

Step One: Download and unzip Cake. Because I'm developing multiple Cake apps, I'm going to put the resulting directory in my /Library (that's Root Library. Not the User or System Library.) On most Unix systems, a shared Cake install goes to /usr/lib.

The latest stable version at the time of this writing is 1.1.5.3148. Go ahead and download it from CakeForge. Once you've unzipped it, rename the resulting folder "Cake" and move Cake to /Library. Now you'll have your Cake Libraries installed in /Library/Cake. Recursively delicious.

Step Two: It's likely you want to work on your Cake application somewhere other than /Library. And you probably don't feel like modifying httpd.conf either. So good news - you can simply move the /Library/Cake/app folder wherever you feel like working - and name it whatever you like. You can also duplicate this folder and create multiple Cake apps. I simply put it in my home directory. Thus, I end up with /Users/myhomedir/app. If I want to start a blog application (like the tutorial app, for example) I'll duplicate that folder and rename it 'blog.' I can duplicate this folder over and over to create my applications.

Step Three: Now that you have your library and applications folders in place, you need to move Cake's webroot directory into the place where you want to serve your files from. For example, when you activate Personal Web Sharing, the Apache serves files from /Library/WebServer/Documents. If I move /Users/myhomedir/app/webroot to /Library/WebServer/Documents/webroot, then my Cake application will be accessible at http://localhost/webroot/. If I copy the contents of app/webroot, to /Library/WebServer/Documents, then my Cake app will simply serve out of http://localhost.

I like working out of my home directory, though. Fortunately, Personal Web Sharing also enables the Sites folder of my home directory to serve files: http://localhost/~myhomedir/. Using the blog example, I'll typically move the webroot folder (in /Users/myhomedir/app) to /Users/myhomedir/Sites, and then rename it 'blog.' Now, my Cake blog will be served from http://localhost/~myhomedir/blog/. Flexible, and handy.

Step Four: Now all your files are in place. To give Cake a working install, though, you'll need to tell it where your libraries and app files are!

Going back to the blog example, let's review: My Cake Libraries are in /Library/Cake. My Application Folder is /Users/myhomedir/blog. My Application Webroot is /Users/myhomedir/Sites/blog.

First, modify the index.php file in your webroot. Look for the comment box that talks about Cake being installed in a directory layout different from it's distribution. Modify the code like so:

/**
* These defines should only be edited if you have cake installed in
* a directory layout other than the way it is distributed.
* Each define has a commented line of code that explains what you would change.
*
*/
if (!defined('ROOT')) {
  //define('ROOT', 'FULL PATH TO DIRECTORY WHERE APP DIRECTORY IS
               //LOCATED DO NOT ADD A TRAILING DIRECTORY SEPARATOR';
  //You should also use the DS define to seperate your directories
  //define('ROOT', dirname(dirname(dirname(__FILE__))));
  define('ROOT', DS . 'Users' . DS . 'myhomedir');
}
if (!defined('APP_DIR')) {
  //define('APP_DIR', 'DIRECTORY NAME OF APPLICATION';
  //define('APP_DIR', basename(dirname(dirname(__FILE__))));
  define('APP_DIR', 'blog');
}
/**
* This only needs to be changed if the cake installed libs are located
* outside of the distributed directory structure.
*/
if (!defined('CAKE_CORE_INCLUDE_PATH')) {
  //define ('CAKE_CORE_INCLUDE_PATH', FULL PATH TO DIRECTORY WHERE
        //CAKE CORE IS INSTALLED DO NOT ADD A TRAILING DIRECTORY SEPARATOR';
  //You should also use the DS define to seperate your directories
  //define('CAKE_CORE_INCLUDE_PATH', ROOT);
  define('CAKE_CORE_INCLUDE_PATH', DS . 'Library' . DS . 'Cake');
}

Now Cake knows where to find it's library and application files.

All that's left is to setup the database connection. Easy peasy: go to the application directory (/Users/myhomedir/blog). You'll see a "config" folder. Within that folder, duplicate "database.php.default" and rename the copy database.php. Open up this file in your text editor of choice (I like jEdit as far as programming, by the way).

Cake is nice in that you can be simultaneously running a few databases in order to have a 'testing' environment and a 'default' environment. Since this is just a development box, I generally just modify the default array. For this setup, you need only change the "login", "password," and "database" values to their appropriate MySQL values. For example:

var $default = array('driver' => 'mysql',
      'connect' => 'mysql_connect',
      'host' => 'localhost',
      'login' => 'mymysqluser',
      'password' => 'foxessuckoknotreally',
      'database' => 'blog',
      'prefix' => '');

Step Five: Start coding!

That's all there is to it. You're ready to code up the Blog tutorial, or start your own application. And a big plus is that for any major Cake changes, you can just install the new libraries into /Library/Cake, without having to change your application code!

Out.

Tuesday, May 30, 2006

C'mon, Pistons.

The last thing Detroit needs is another Red Wings. You went into the championships #1, come out #1 too. Please? Ben Wallace criticized the emphasis on offense that Saunders has brought to the club. This is probably because Big Ben is a powerhouse defender, and now feels like his skills aren't as useful in an offensive club. That couldn't be more wrong. The Pistons need Ben to continue to be a powerhouse defender. They need him to try to stop Shaq. Nobody actually can stop Shaq for any length of time, but Wallace could come close. Yet he didn't seem to be putting in enough of an effort until the third quarter. Of course, Detroit as a whole needs to play like they played that third quarter. Twelve points down, to four points up, back to twelve down. The third was the only quarter that they played Piston basketball. Frustrating. Oh well. See you tomorrow, boys.

Sunday, May 28, 2006

Block Party!

Oh cripes. A political post. I'm not at all sure that this idea is new. I bet some political scientist has already come up with it and found great formulas to integrate it into his voting scheme. But since I haven't read about that guy yet, I'm goint to take credit for it. I'm starting a new political party. Right now. If you want to join, add a comment. You're in. I'll get you on the newsletter. When we get one. It's called the Block Party. We have no candidates. Correct. Nobody will ever run as the Block Party candidate or on the Block Party ticket. What we're trying to do is block a sweeping majority across all sections of the government by any other party. For example, right now, the Republican Party holds a majority in the House, Senate, and they hold the White House. Concievably, they could pass any bill they wanted, if they could simply work together. (They can't seem to yet, fortunately.) Don't get me wrong; I don't think the Republican Party is out to destroy America. They believe that everything they're doing is good, moral, and right. But I don't agree with everything they stand for. Likewise, I don't agree with everything the Democrats stand for either. I don't think anybody is completely left- or right-wing. But there sure are a lot of folks out there who vote straight ticket. They pick one party and go all the way with them, without getting to know all the candidates and what they really stand for. The Block Party is about educating voters about candidates. You need to know who you're voting for. If you end up voting straight ticket, do so because every candidate you vote for is truely your candidate and not simply the Party's with whom you tend to agree. Rule 1: If you know nothing about the candidates running for a seat, abstain. Rule 2: If no candidate running for a seat is your candidate, abstain, or write-in your choice. If the candidate you agree with runs with the party you don't, vote for him anyway. Rule 3: If the candidates seem to have no real, tangible differences, and you feel you could vote either way, then look at the rest of your ballot. Are you voting mostly for one party? Vote for the other party when it seems the options are equal. Our government is based on checks and balances. Avoiding party majorities across sections of government keeps those checks and balances intact. It even strengthens them. This is my philosophy; if both the Legislature and the Exectuive are at odds, then very little gets done. And the things that do get done tend to benefit the people more, simply because they were necessary to the point of the parties coming together. As a bonus, the less the government does, the less they're messing with me. Cool. Here's a great link to get you thinking about your candidates: Project Vote Smart. And don't forget to vote in November.

Drag 'n Drop Googley Goodness

Hey all. Got a pet project I'm gonna lay on 'ya. It's a Google Search builder. One of the fun things about Google is the interesting stuff you can find by just surfing and modifying your searches. But it's such a hassle typing all the time. You gotta put your hand on the mouse to click links anyway, right? So with this (very beta! so beta, it's alpha!) page, you can drag-and-drop words. The green box is words you're looking for, the red box is words you're ignoring. The orange box is a shelf to save interesting results in. Yellow words are draggable. Give it a shot. Click the "Semi-Live" to get a new page of results every time you drag a word around. One caveat: This does break the "back" button. It's all AJAX-y and cool, but I haven't given it any kind of memory yet. I'll get to it. Rock.

Myspace... Facebook... right.

I hear these things are totally sweet. They're cool or something. I don't get it. Call me old fashioned, but I just like finding people in the real world. Every one of my best friends I've met because I just happened to be somewhere (that's not my house) at the same time as somebody else. I guess I'm also a bit paranoid about putting too much personal info on the internet in one convenient location. Maybe I'm just jealous or something. Nowadays you can Google search for people with your interests. To me, it takes the fun out. There's nothing quite like talking to somebody you've never met, and finding out that you both like some random, short-lived scifi show. The fact is, at any given time, you've got at least three things in common with the person you're standing next to in the elevator. And one of those things is that neither of you will say 'hi' first. And what's with these minors drinking and then posting pictures of themselves drunk? You might think that you're lost in a sea of information, but it's amazing what a search box can find you. Anyway, I think I'm cool with not getting it. I don't, and I'm pretty sure I don't want to.

Saturday, May 27, 2006

Fun with Adsense and Blogger

Hey all! Soooo.... I've set up this blog, right. It's right here. You're reading it. Good on ya. And Blogger makes it really easy to add Google Adsense to the blog. Real easy. 'Cuz Google owns Blogger. Cool beans. It's all good. But, you've got one spot (according to the Blogger Template tools) that those ads can go. I'm a rebel, so I manually re-placed the adds over in the Sidebar where they don't look like some crazy post where I when jumbo-doodle-cakes talkin' 'bout Pistons Collectible Gear in crazy link-type format. Fantastic. Then I went to change the color scheme of the Adsense. That's when it hit me. Boom. Jackhammer. You simply can't move the Adsense. We want it up top. That's it. So I re-moved it down to the side bar and figured I'd fix the colors in the code. If you're like me and you've moved your Adsense button, don't ever touch the Adsense tab in Template editor, or you'll find all your hard work undone. So I go to edit the colors. I do so. The Adsense code is nice in that it gives you helpful javascript variables that you can set to the appropriate color as you see fit. I did so. I preview'ed. Everything is cool. But when I go to re-publish my site, the colors won't stick. The Adsense is right where it's supposed to be. It looks OK. But it's stuck color-wise. Which is really odd, because it works in the Blogger Preview. But not fo-real I guess. Not cool, guys. Huh. UPDATE: Well, the colors updated between runs of Firefox. Which is interesting, because the first thing I tried was a reload, followed by a reload-frame, followed by a clear of the cache. Another interesting quirk: when I went to update this post, Firefox would routinely crash. I am now updating in Safari. Freaky. Huh again.