Hating Americans and Cats

Most of the time I think of myself as living in a fairly progressive and enlightened world. I'm fotunate that I work with a set of wonderful people, I can travel all over the world and I'm a member of an excellent theatre company. As a result, hatred of things, or at least expressions of hatred are generally just not tolerated in any of the circles in which I run. (With the exception, of course, of things that FAIL, like a particularly bad piece of code - but even then it's less about hatred and more about not liking something that didn't work)

There are two social acceptable exceptions to that rule, though: Americans, and cats.

I was reading a blog post earlier this morning (which I won't link to because that's not the point here) which was a fun post about older people finding new music. As a person who is not getting any younger myself, the blog post was quite enjoyable. Smack in the middle of it though, there was a fairly senseless off-hand dig at stupid Americans. It was so off-hand though, that I think that's why it jumped out at me - hate, scorn or derision of folks from the US is so normal as to not even elicit emotion. 

In most of the circles I travel in, if you said the same sentence but replaced Americans with just about any other arbitrary grouping of people (and were not being ironic) you would meet with quite a good amount of resistance. Just imagine me making a comment about "stupid Asians" and see how long I get to remain at the dinner party. 

I notice a similar thing with cats. In any group of people, there will be someone in the group who, if cats come up, will freely talk about how they hate cats, or how they used to torture cats. I have heard people talk about throwing cats across rooms with the same level of concern as they would tell me what sandwich they had for lunch. I suppose, given that a cat is just an animal, that one could just assume people don't care as much about animals... but substitute dog for cat in any of those stories and you will find yourself with a riot on your hands. And the times I've tried to point out the dichotomy to dog-loving friends who avow hatred of cats, the response usually comes back "I guess... but I hate cats"

Why is it socially ok to tell stories about torturing cats when torturing dogs is societally completely unforgivable. Why is it ok to single out a group of people based on geographical origin for scorn, when  it is not ok to do so in general?

The really sad part is that when I ask those questions... I get justifications. "Cats suck" or "The US brings it on itself." But I've got to say - abusing animals is not ok, no matter what the animal is, and bigotry is wrong no matter who the target is. Regardless of how cool you may think such expressions make you, I believe they do nothing but show ignorance... and they make me sad.

20 comments

Why I run Ubuntu and not something else

I was just having a conversation with a good friend of mine last night who was considering a new job at a startup. The job seemed pretty good, but it was also quite clear that the company was full of devs who worked on and revered their Macs. Like me, this was very off-putting to my friend. At times I feel like we're a dying breed... but we've both been working hard on making Linux an amazing operating system for years, and on advancing the cause of Free Software, so the idea of running the most non-free platform available as our everyday working environment is a bit of an anathema.

However, I don't really want to start a negatively oriented flame fest (I truly to value people's ability to make their own decisions) ... so I thought I'd just highlight the reasons why I run, and will continue to run, Ubuntu.

 

  1. It works really well.
  2. It's Free.

 

It works really well

Everything I need, and even many things I don't need, Just Works™. I can easily type pretty much any international character or fun things like ™ or ©. It's called the compose key... and it's fantastic. My clock has a drop down widget that shows me the time of my friends across the world (which is essential for globally remote development). I don't have to install drivers to use hardware. My flatbed scanner works. My camera works. My phone works. My music player works. I am not disallowed from doing things with my music either on my desktop or my attached music players. I can easily sync music to the cloud and listen to it on my phone. Printers just install magically. Software installs (and uninstalls) quickly and easily. I don't have viruses or virus checkers. I can easily pop open xterms remotely over the internet (remember that technology we've had for 20+ years?) My application notifications give me as much information as I need, but aren't too loud or annoying. I have excellent chat and IRC programs. As a developer, I have easily access to every programming language and every library imaginable. I never have to choose to not use a tool because it's too heavy-weight to install. My laptop has a left, a right and a middle mouse button and a trackpoint and my trackpad is disabled in the bios. Tab completion works properly. vim and emacs are both there and both work well. So is Eclipse.

Everything on my laptop works, and it works without me spending any time or effort configuring it.

I should underscore that the only extra PPA I have installed on my system is the one for Drizzle, which I actively hack on. Getting new Drizzle developers who are on stock Ubuntu up and going in a dev environment involves only three commands.

It's Free

I have quit jobs over Software Patents before. I don't write code which isn't Free Software. I strongly believe in Free Software being successful. Even if I did think that another platform was easier or better (which, if you'll see above, you can clearly see I do not) how could I justify using the non-free version? How could I seriously look someone in the eye and tell them that they should use a Free or Open Source alternative to the software they are currently using if I don't even do that myself?

From a functional perspective, I do not have to live with a set of choices that someone in a marketing department somewhere decided would be the only choices I could have. I spend almost no time customizing my desktop, because the Ubuntu design team does an amazing job - but if they ever made a decision like having icons bounce around like leprechauns on acid, or making all of my windows translucent - I'm pretty certain I could disable it without much trouble and get back to being useful.

Choice

At the end of the day, it's all about choice. These are my choices, and my opinions. If you think that OSX or Windows7 works better than Ubuntu for a set of functionality that you find essential, then by all means, as a supporter or Freedom I think there is nothing more important than you being able to make the decision to run whatever you want to run. I may be quite incredulous and lack complete understanding that you could feel that way - but go for it.

As for me, I am a Free Software Hacker, I run Ubuntu, and I have no motivation or intention to run anything different.

8 comments
Tags: ubuntu

It Happens

It's entirely possible, given my propensity to swear and rant and declare things to be Web Scale, that folks might get the idea that I do not like our newer NoSQL bretheren. Quite the contrary - I think almost all of them are exciting and well suited to various tasks. My biggest beef is in thinking that a single technology should be square-pegged into every round-hole anyone can find. This holds true for Drizzle and MySQL as well, by the way. Just because I work on Drizzle does not mean I think Drizzle should be the method of data storage for every blessed thing on the face of the planet - that would be silly!

I bring this up because I had my first instance of thinking that Cassandra might be a good choice for a project someone was showing me yesterday. In this case, the project was collecting data about events, but it as the data was events about real-world interactions, the particular information stored about each collected event had the potential to be wildly different. It could have been modeled (eventually) in SQL, but it seemed much more likely that a column-store like Cassandra would be entirely more suitable.

I was also considering CouchDB the other day as a choice for cue storage backing a show-control system I'm working on, because of the document storage model. In this case, I believe I will use Drizzle because integrating with the pluggable protocol system will allow me to just speak the Open Sound Control protocol directly to Drizzle, and that's actually more important in this case.

Point being - when I rant about the suitability of NoSQL solutions, I'm mainly complaining that in many cases it seems to me that they're using them because they're popular or trendy and not because they are or are not actually suited to the task at hand. If they are suited to the task at hand, then by all means - use them. Heck- I've been convincing people to use NDB for years when it's the right fit.

We don't need a winner in the data storage world - we need a vibrant culture out of which tools suitable for tasks can be selected. 

4 comments

New Planet for Theatre

Yesterday I discovered that my friend Adrienne has a blog that I didn't know about - which is fine, because apparently it's new. But that highlighted a problem I've had in general, which is that there is no decent place to go for aggregated content of interesting artists rambling about whatever. I can certainly get local show announcements and audition announcements from Theatre Puget Sound, but that's not, you know - ART related, and it's also a bit more local than thoughts about theatre in general really need to be.

In my day-job life as an Open Source Hacker, we tend to have project-specific blog aggregators (known as planets) that pick up the blogs of everyone involved. planet.mysql.com, planetdrizzle.org, and planet.ubuntu.com are just a few examples of places I'm syndicated and that I read regularly. Now, I think for theatre per-project would be just as useless as not having it, as our projects tend to be small and short in length - and finding them would be just as hard. BUT - an aggregator that's there for anyone in the fringe scene (by a loose definition of fringe, I want art people, not marketing departments, right?)

So I'm pleased to announce fringeplanet.com
 
It currently has a very small amount of feeds that it syndicates. If you have a blog, or know anyone interesting with a blog, send me a link to it. If you're extra motivated, an 85x85 thumbnail of their face (or company logo if it's an interesting company that blogs something other than just "our show just opened") get bonus points.
0 comments
Tags: theatre

Quickly Templates for C/C++ in/using pandora-build

I've been remiss in blogging about this - been on my todo list for a while, but you know, coding is less exciting than blogging.

But then this morning I was reading Shane's post about Quickly templates for Vala and one he hacked up for C, which has spurred me on to actually get off my butt and write a blog post - since I've had a quickly template which supports C and C++ for months now. Sigh. Sorry.

Anyhow - the template a part of the pandora-build project, and can be installed with:

 add-apt-repository ppa:drizzle-developers/ppa
 apt-get install pandora-build

At that point:

 quickly create pandora-build foo application

or

 quickly create pandora-build foo library

Should work. There are two different sub-commands for making a lib or an app, since those are a slightly different layout. All of the projects created are fully pandora-build enabled. There is a quickly upgrade command for upgrading to the latest installed pandora-build for the project, and a quickly add class command which will create new stub class files for you and add them to the build system. The stub project should work immediately with autoreconf -i ; ./configure ; make distcheck

There are also pandora-build-c templates if you want C rather than C++, but I just gave them a test and there is a bug that I  fixed in the c++ versions but didn't carry over to the C templates. I'll try to get that sorted real soon now.

Since this is all driven by my managing of the build systems withing Drizzle, Gearman and libmemcached, I keep adding bits in from our standards there - so I've got adding in support for gtest test suites and Sphinx documentation on my todo list. I also need to add support for spinning up debs, but I'm a little at odds with how that should work as I'm not so much a believer in debian packaging in upstream sources... so I'll have to battle with that later.

Update: Turns out I suck - I didn't upload to Maverick - fixing. 

Update: Ok. C-template problem fixed. v0.156. New packages uploaded to the drizzle-developers PPA. 

4 comments