Tuesday, December 13, 2005

Cable companies. Why can't I pick my channels?

It has occurred to me that we watch perhaps ten channels on TV between the four of us. So many channels, so much crap. Of course, the FCC wants cable companies to let us only pay for channels we watch and what's wrong with that? I hear Disney charges $2.50 per subscriber for ESPN (I don't watch) and probably a chunk for MTV (I don't watch), ESPN2 (I don't watch), We (I don't watch), ABC Kids (I don't watch), etc, etc.

Why do I have to pay for channels I don't watch, don't want to watch, and wouldn't watch if it was the only channel on the TV? Because we're subsidizing companies that have 30 or 40 channels and want us to pay for them all. Want to offer ESPN to your subscribers? Must only include it in a package that has all these other 30 crap channels that you must pay us for.

Fine. Put the mega-channel-companies into their own tiers so I can decide that I don't want to pay for DISNEY Inc. or some other megacorp.

And I watch less TV each year and soon the $$$ the companies charge won't cover the channels I watch.

Monday, December 05, 2005

Oracle gripe

For as much money that gets spent on Oracle to run our databases, why do we have to spend so much time telling Oracle how to return the results? Drop some changes to the database and suddenly certain queries are dog slow. The DBA has to spend valuable time hinting his way out of the query to get it to perform. Shouldn't this be the job of the DATABASE? I shouldn't have to tell the database to use a certain index since it may speed up the query results. Shouldn't Oracle prefer to use the index to doing a TABLE SCAN? I find this shocking, but it also appears that the Oracle DBA's seem to accept this as standard operating procedure.

My goal in using a database is to say "I want these rows from these tables that meet these conditions. Figure it out." Not "I want these rows from these tables using these conditions and, oh, use this index here and that one there. (Hint, hint)."

Nagios, Perl, and Mechanize.

We had to start monitoring many of the servers on our network since we could not rely on our vendor to monitor servers other than with "ping". One nice tool that really helps is Nagios. Nagios has some built in plugins to do some basic monitoring, however, what I needed was application monitoring. Nagios allows you to write plugins in any language and have them return a status indicating the state of the monitoring. Perl + Mechanize ended up being great to monitor web pages since Mechanize has lots of features to pull web pages and can even do authentication.

I wasn't much of a Perl fan since I found Perl's syntax to be cryptic and much of the Perl I have encountered on the internet seemed to be designed poorly or for job security. What I did discover was that you could write nice, neat Perl and that it could be great for doing all kinds of things quickly - or at least quicker than you can write it in other languages. Perl is less cryptic now, but it's taken a while to get over many of the quirks of the language. I still feel I have a long way to go before I can write Perl code without using Google. One day I should put some examples up on how to use Perl and Mechanize since the few I found were valuable.