Spy Stuff

Margaret and I watched the Bourne Supremacy with Matt Damon this week. Ok movie. The “shakey-cam” effect really made you think you were part of the action. Not much of a plot and not much dialogue. Quite a bit of action to make up for all that (and a pretty extended car chase). Worth the rental.

If you like spy stuff, MI-5 Season 2 DVD just came out this week. It’s a BBC show that appears on A&E here. But remember that on the Beeb, they have 60 minutes of drama instead of the 42 (if you’re lucky) minutes on American TV. So skip it on A&E (you’ll just get confused) and pick up the DVD’s. Margaret and I have season 1 on DVD.

We are into week 2 of Alias and things just keep getting better. I love the name of their new club (APO: Authorized Personnel Only) and they seem to be concentrating more on the things people love about the show (ie. Jennifer Garner, Michael Vartan, and doing spy things) and less about mystical artifacts.

MacWorld Roundup

Ever since Margaret got her iBook, we’ve been following Apple product announcements. And today being Steve Job’s keynote address, we were anticipating what he would have to announce today. And boy did he announce quite a bit today.

Every year the Mac rumor websites try to leak what Job’s will announce during his keynote address at MacWorld. And every year they aren’t even close, except for this year. Makes you wonder where the leak at Apple is, if you ask me.

So, what did Jobs announce today?

  • iPod Shuffle: Basically, a cheap flash based IPod (meaning you can run with it). They cut the cost by cutting out the display. Basically means you can’t pick specific songs to listen to, but rather just shuffle through the music you have loaded on it. Since I have an IPod, I’m not really that interested in it. Plus I’m enough of a control freak that I want to have more control of my music player.
  • iWork ‘05: Basically a Microsoft Office competitor. Hopefully Apple used their design team to make the UI easier to use rather than just a direct copy of Microsoft’s UI (not to name names StarOffice/OpenOffice).
  • iLife ‘05: The old version of iLife comes with all new Mac’s. That’s how we got it. We really don’t use any of those applications on a regular basis, but I would like to use iDvd and iMovie to do some stuff. But I don’t think I’m going to shell out the $80 Apple wants for the upgrade. For some reason it always feels to be that iLife should be a free upgrade to existing customers, or at least upgrade pricing. But Jobs doesn’t seem to agree with me.
  • Mac mini: This is just totally sweet. A $500 Mac with no monitor/keyboard/mouse, just a CPU. It is 6×6x2 and virtually silent. Doesn’t take up much desk space. And the price point is great for people who are looking to replace the old PC they have been using for web surfing and are interested in trying a Mac. I want one! (but I’m holding out for a iBook. Sigh…)

TV Shows that don’t know how to end.

There is a problem with a lot of TV Shows today, they don’t seem to know how to end an episode. Instead of ending like a good TV show, they give us a minute or two of music playing as they some wrap up is happening.

It seems to me that it is just a case of lazy writers who don’t know how to end an episode. They only have to write 41 minutes of dialogue. If you end the episode with 2 minutes of music, that’s only 39 minutes of dialogue, but I’m guessing the writers get paid the same.

I am sure that those 2 minutes make great cinematography, but I don’t care. They don’t resolve anything. They don’t serve to advance the plot of the episode/series and they don’t serve to do any character development. Basically, it is 2 minutes of padding to make their promised 41 minutes.

Copyright and Licensing

If you look down at the bottom of this page you’ll see a new Badge. That is letting all my readers (including computer programs) that the content of this page is licensed under the Creative Commons License.

Under U.S. Copyright law, I am granted an automatic copyright on all the content I create, without having to do anything at all. But it doesn’t grant any rights to the consumers of my content (with the exception of Fair Use). To do anything with my copyrighted content (like printing out one of my blog posts to share with your class), you need to contact me and make sure it is OK. By licensing this code under Creative Commons you are automatically licensed to share my content with people (with some small restrictions).

I chose to license my blog under the Non-commercial Attribution No-Dervis version of the Creative Commons License. You can check out the specifics of the license, but I can summarize here:

  • Non-Commercial: You can’t use this content for commercial purposes, unless I license it to you for that use.
  • Attribution: If you use this content in a non-commercial use, you must attribute it to me.
  • No-Dervis: You can’t make derivative works based on my work, unless I license it to you for that use.

I spent a lot of time thinking about how I wanted people to be able to use my musings, and I am pretty happy with what I came up with. The one I was the most concerned about was the No-Derivs clause just because it felt a little strong for the content I was producing, but I do feel more comfortable with the protection it offers. In the end, if you want to make a derivative work based on one of my Blog posts, talk to me and we can work something out.

TinyP2P: P2P Sharing in 15 lines of Python

I’m not linking to this example to show how hard it would be to outlaw P2P apps, but rather as an example of how it is possible to write unreadable code in Python (it’s not just for Perl anymore!)

Developing for ITunes under Windows with Python

When running ITunes under Mac OSX, you can use AppleScript to do all kinds of neat things. Under Windows you don’t have AppleScript, so Apple created a series of COM interfaces to allow programmatic access to ITunes and you music library (Microsoft has done the same things with Windows Media Player).

The nice thing about the COM solution is that you aren’t tied to any specific programming language (like AppleScript, for example). Of course the language that people use most for COM is C++, but there are COM bindings for VB, JavaScript (this is what the ITunes SDK examples are done in), Java, C#, Perl, and Python. Since my office has made the decision that all scripts are to be done in Python, I’ve been trying to do the same for any scripts that I write in my free time.

Back on topic. I’ve started to do some development with using the ITunes COM interface under Python. Having done my share of COM for C++, I was expecting the worst. But the Python COM bindings are really well done. If the COM object has a property, it appears in Python as a class member variable. If the COM object has a function, just call it like you would any Python function.

But not all is wine and roses… COM uses Unicode strings for all of its communications. Not a problem for Python as it is very happy with Unicode. But a problem when you try to print un-printable characters on the console. The offender in question: the single right quote. Not the apostrophe, but the single right quote. Subte difference. I tried many different ways to try and convert this extended character to something I could print (encoders, etc.) but ended up giving up. The only way I could get it to work was to go through every string I wanted to print and when it found a single right quote and replace it with the apostrophe.

The other problem that I ran into was how COM represents DATE objects. I wanted to compare two DATE objects to see which one was the most recent, but the obvious solution:

if (date1 > date2):
    do_something()

didn’t work. It turns out that you have to coerce each object into a float (the native COM representation for a DATE object) before you can compare them.

if (float(date1) > float(date2)):
    do_something()

Once I figured that out, things were pretty simple.

You can check out my scripts at my Wiki.

GMail has an RSS feed?

I don’t know when the GMail team slipped this feature, but GMail has an RSS feed for what looks to be the unopened mail items in your inbox. Of course it is an authenticated feed (you don’t want everyone to read about your penis enlargement order), so make sure your News Aggregator supports it.

I stumbled upon this because Firefox put up the “RSS enabled” icon in the lower right hand corner of the status bar, but it looks like GMail even has a help topic for it.

My Office Stinks…

And I’m not kidding. They are doing some constuction down the hall and there is this noxious odor throughout our offices. We have already complained to management, but I don’t there is anything they can do about it… Sigh.

One Hoopy Frood: Grand Opening

In the tradition of most new stores, I’m having my Grand Opening after some time of successful operation. Also like most stores, I’ve used my time prior to this to fiddle and tweak things without having to worry about breaking things. And now I’m (pretty) happy with how things have worked, so it’s time to get things started.

You may find yourself asking, “So Bill, why pollute the Internet with yet another blog?”. And I wish I had a really good answer for you. Something like “I hope to Blog my efforts in securing World Peace.” But I’m not that special. The real answer is more along the lines of “I hope to be interesting.” Very lofty goals indeed.

You may then find yourself asking, “So Bill, is this going to be another MLP Blog?”. And I do have a good answer for that one: “My intention is to have new and original content written by me (and maybe expand to some more people later). While I will ocasionally post a link to something I found somewhere else, I do promies that it will be something pretty good (ie. it made me chuckle/think/ect.) and something pretty unique (ie. I haven’t seen it all over the place).”

Then you may ask, “Bill, what kind of original content can we expect to find here”. And I would reply “Following my answer to the first question, things that interest me. Since most of what interests me is computers and programming, you’ll find a lot of that kind of content. There will be some personal content on things going on in my life, and even an ocassional rant on things that piss me off. (Think Dump Trucks).”

Enough with the Q&A and the intro. Hopefully this will be an interesting experience.

« Previous Page