Skip to main content


Showing posts from October, 2006

Spilt Mind

I won't be able to use it much, but if I have the need to write something and get some creativity flowing (it helps improve your coding mind, as well), I will be posting those writings or art pieces to a new blog I created, Spilt Mind. So easy to make a new blog, and I keep getting distraught over my lack of writing and painting over the last year or two. This is a much needed outlet, however much it gets used.

Uprooting and Replanting

It looks my time doing contract work is coming to an end. I will soon be officially accepting a full-time position with a relocation to the Houston, TX area. I'll have much more to blog about as we accelerate development timetables and things begin to roll along.

I'm tired and exhausted from spending days with this on my mind, so I'm not writing much. I just wanted to ask, is anyone from the area? I see there is no User Group near Houston, at least not listed at the Wiki. Does anyone know of one or would be interested in starting one?

Any tips for long (1700 mile) moves?

Identity Comparison vs Comparing Identities

An explaination of the virtues of foo is not None over foo != None lead to an explaination of identity comparison with the is operator. A fellow equated this to, roughly, id(a.x) == id(b.x), which I told him was roughly correct but probably not actually correct. It only took a little bit of through to see how uncorrect it was.

The following code creates a simple class with one property descriptor (read-only). It solves the requirements that with to instances of this class, a and b, id(a.x)==id(b.x) can be true while a.x is not b.x! How does this happen?

class foo(object):
x = property(lambda s: id(s))
a = foo()
b = foo()
assert id(a.x) == id(b.x)
assert a.x is not b.x

How on earth does this code prove what it does? a.x and b.x are created on the fly, passed to the id function, and then destroyed with no references left. Because they are both created in the right order with the id(a.x)==id(b.x) expression, they just happen to get the same memory addresses, which in CPython is used for the id…

RuPy, Snakes and Rubies, Night and Day

What is going on?

All around me I see people relating Python and Ruby. The communities seem somehow intertwined with their users, usages, and publicity. It seems like you can never find a blog that talks about one without the other, or a new frontier being tested by one of the "new" languages and not being explored by its counterpart. Where do people see this distorted similarity between two languages that are as different as night and day?

To Rubyist out there, don't take offense. I have far more experience with Python, than with Ruby, so I might sound biased. Please, take this as an honestly unbiased opinion. I'm just talking from the middle in this case.

Python stands out from most of the other languages around. Largely it is understood as "the language without brackets", but it is not entirely alone there. Ruby almost appears like a language extremist. Their core types have fifty million methods each, because if you expect it to be there, it should be ther…

Balence, Tranquility, and SOAP

I am behind schedule with my work. I attribute a good bit of this to my vices as a developer, and just as much of the problem to my good attributes. I place an equal portion of the blame on SOAP.

Striving for the goal of Beautiful Code, we can find ourselves lost on the way to actually writing something that gets the job done. Throwing away perfectly working code, because an alternative way to achieve the same results is more elegant isn't something that we might see as a bad idea. If the code is more l33t now, it will give us less trouble tomorrow when we need to port it to my toaster. We'll use anything to justify the overworking for code beauty.

Is it always worth it? How beautiful is enough and when are we just wasting our time (and money)?

There are terms thrown around like "elegant" and "pythonic" to measure the quality of code with no attention to the code actually reaching the goal it sets out to perform. The code may work, but that doesn't make th…

You Go, Gamer!

I would consider myself a gamer. The video game industry has been a huge influence on my life from childhood to parenthood. My father was a gamer, who even owned an arcade as a younger man, before I was born. The last machines, a unremembered pinball unit and a standup Qix were the first things walking in the door of his place. I even had a two-screen, six-player TMNT Turtles in Time arcade machine, which made me the coolest kid among my friends. Yes, I am a gamer.

Today I denounce my fellow gamers, and I call out to those of you with any backbone to stand with me in decrying those among us who, basically, just make us look bad.

The subject of debate is a recent survey making statements about the percentage of females among the online gaming community. The surprising results state that 64% of online gamers are female, and the response to this news is just as surprising: outright denial. Male gamers seem completely impossible to accept that they are not the majority of gamers, while they…

Movable IDLE: Keep it Free, Fuzzyman!

Several weeks ago, I contacted Michael Foord (aka, Fuzzyman) about the idea of a simpler, slimmed version of his Movable Python distribution for those interested in the language, and often not computer literate enough to put up with all the different components you need for any decent development environment. This is exactly what we need to convince those people still hanging on to BASIC.

I don't know if its from my suggestion, although I got a personal e-mail from Fuzzy on the announcement, but its here and its free and its exactly what I need for the many interested people I am trying to bring Python to.

Google Reader Upgrade Dissappoints

Yet again, I find myself wishing I could say I like what Google has done with something, only to be forced into admitting: they disappoint me. Well, add one more to the list of things Google can't get right, even with an army of PhD holders and more money than you can shake a redwood forest at: Google Reader has gone from simple gold to contorted crap. The original version was a great excersize in simplicity in design that let me jump in, read, and get on with my life. The "upgrade" is a mess of a noisy interface for me to get lost in as my browser slows to a crawl with far more JavaScript than a simple reader needs, and even the occassional forgetting of everything I haven't read yet.

I was a little late in the Blogscene, which is a relative statement given that most of the world doesn't know what a blog is, despite the fact that most bloggers think otherwise. I started with my trusty KDE's Akregator, which is admirably usable, and then looked for a web-solut…

Stuff of Interest - Week of Sept 17 - 23, 2006

Wow! It has been almost two weeks since my last post, and I was doing so well. Unfortunately, i got quite sick and then had an unexpected trip out of state (read: I forgot about it until the day before!) and now feel ill, yet again. But, determination brings me back. I was planning to post this on the 23rd of September, but the 6th of October is close enough. Regular posting will continue starting tomorrow.

This is the first in my weekly post of interesting links around the web. These are articles, websites, services, photos, and anything that else that I want to bring up on my blog, but can't use an entire post for. Being on any aggregation sites makes you think harder on each post and puts some weight on you against those little posts, at least in my mind.

Hopefully, you'll enjoy whatever I post here. Maybe you'll find a useful site, or learn something you wouldn't otherwise.

Really Smart Stuff

Ross Jekel, over on the Python 3000 mailing list, supported the existance of …

Being Helpful by Not Answering Questions

As some of my readers (I have readers?) may know, I am a frequent of #python over at Freenode. A great place. One of the most supportive IRC channels I have ever been a member of. Over the years I have been a frequent member of this channel, I have received an awful lot of help. It is where I went when I first decided to learn Python, and the kind folks there did great things to guide me along. I learned and I stayed, because I still need some good minds to knock ideas around with, and figure things out. I also stayed because the best way I can repay the help I received is to return it to others who seek just that.

I want to think my help is appreciated. I happen to know it is. There is an increasing number of regulars, learning their way through, who explicitly seek me for help, send me entire projects to look over, and generally befriend me in response to the advice I give them. I try not to think highly of myself, but I do believe I am valuable to that channel and that many others w…