Tuesday, August 30, 2005

Look at me, I am such a waste of space that I am not producing anything of value, I merely react to other people's original thoughts with thoughts of my own.  So casey is upset about ever-tighter digital rights management built into Windows, and maybe some day hardware as well.  Let me first share some of my thoughts:

  • I think the companies comprising MPAA and the RIAA horribly mistreat the artists without whom they would not exist.  I think these companies do not recognize an artists Moral Right to their work, nor is "Fair Use" in their vocabulary
  • I think these companies produce a ton of crappy content and then blame piracy for their downfall rather than ponder the idea that I don't feel like me and the Mrs. going through the tedium of acquiring a baby-sitter and then paying over $20 for two tickets and crappy popcorn just to sit in front of something that is 99.9% likely to suck. (It sure is loud though)

That being said, I see no issue with digital rights management as long as it does not interfere with my fair use of something I paid for. I am a strong believer in Capitalism, and as such I can choose or not choose to engage in any transaction with another party.  If I choose to buy something from someone, I must buy it on the terms they offer.  If I sell something, I sell it on my terms and I expect them to be honored.  I view my HD Cable via a DVI digital connection on my TV, which supports HDCP.  It means I cannot record these shows easily, I have no issue with this.  I entered into this arrangement with Charter cable (who also sucks) knowing this up front.

If the MPAA says I can buy this DVD from them but I am not allowed to copy it, then I have agreed not to copy it.  The fact that Microsoft is going to make it harder to copy it from Windows does not concern me as long as my privacy is not comprimised.  I do not have a "right" to use something outside of the terms of the seller, regardless of how ridiculous their copyright law is or how much Pearl Harbor or Alexandar: Director's Cut sucked to begin with.

If you don't like these terms, do not buy it.  If Hollywood shoots themselves in the foot because their new copy protection is not viewable on my mom's TV then its their loss when they miss out on the sale of millions of copies of "The Mummy Returns" to people like her.  If there is some ridiculous backlash against the public (Sueing college kids for trading Mp3s come to mind) then we brought that on ourselves.  What's fair likely lies some place in the middle.

What do you think?  How can we best treat the studios who spend millions of dollars making crap like <<Insert Julia Roberts film title here>>, hardware and software manufactures, and consumers fairly?

Tuesday, August 30, 2005 1:56:52 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [3]  |  Trackback
 Sunday, August 21, 2005

Right now I'm sitting at the kitchen table in this purgatory known as "apartment living" while my new house sits uncompleted only a kilometer away.  This completely sucks so I went and picked out a nice new mahogany veneer desk/workstation setup to go in my office when this new house is ready for occupancy.  I am also standing by to order an Aeron chair as it is the most comfortable chair I've ever sat in.  I just built a fast new PC.

I do a lot of work from home. This new office will eliminate manyof the frutrations I have at client sites: the ergonomic nightmare, the slow PCs with no memory and slow hard drives, the silly IT policies blocking this or that messenger, the mandatory virus scans that happen every Thursday at 1pm and render your already slow laptop completely incapable of doing any real work for two hours.  Yeah, the 10,000 RPM Serial ATA hard drive with a gig of ram and 3.6ghz proc can compile the hell out of that code, and setting up multiple monitors is genuinely useful for work.  Its too bad I'll only have this excellent environment for the 10-20 hours per week I am working on side projects at home, while the majority of the work I do will be in the cubical with its interruptions and inferior equipment. 

No matter how many studies are done linking good environment, no internet monitoring, and good equipment to higher worker productivity we are just not ready for the progressive office here in the midwest.  I have yet to see a single office that can hold a candle to the type of work environment a developer would choose if asked to create an environment where they could be most productive.  I think my goal for 2006 is to seek out ways to work from home as much as possible.  Does anyone out there have "Work from home" stories?

 

Update: supporting documentat http://www.time.com/time/archive/preview/0,10987,1083900,00.html

Sunday, August 21, 2005 6:57:57 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [12]  |  Trackback
 Wednesday, August 10, 2005

The Damon show has been off the air for a while, and for both of you out there who are regular readers I do apologize for the lack of posts.  I have been so busy with deadlines at work, and deadlines on two of my side projects that I haven't been able to screw around with "Project Cesium" or any of the game programming or AI stuff.  I've been so busy that I sold my house a month and a half ago and just deposited the proceeds on Saturday.    I still have to make enough revenue through my business to pay taxes and buy some appliances.   I guess what I'm saying is that I am a whore and that until my new house is done things that pay money now will win my time over neat projects.  

Finally, in regards to the religious discussion going around the local community, I leave you with this.  It seems as though in this exciting age of Science we have become more religous as a people, not less.  For those of us who choose to sleep in on Sunday, its becoming a social liability.

Wednesday, August 10, 2005 9:13:49 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Tuesday, July 26, 2005

All yuor best programmers are belong to teh Joel...

... or at least he'd like to think so. Joel is once again talking about the subject of who he hires and why and how.  When reading this article I couldn't help but feel like he took a lot of his ideas from Phil Greenspun of ArsDigita fame.  I really hate it when someone jumps up into the pulpit and preaches without letting you know that they didn't write the gospel.  Oh, but wait, here is an article where he mentions the impact Phil's ideas and practices had on him early on; sorry for judging too soon.  I very much agree with most of his points:

  • If you are doing business apps, you don't need the bestest programmers but you do need some higher level folks to keep the masses in line
  • If you want to do cool reasearch and be a creative scientist, chances are you'd be happier if you stopped writing stored procedures and ASP tags and went to work for a software product company.
  • Companies both large and small with an honest personal voice, all other things being equal, will often enjoy success

Is FogCreek making money because of Joel's Blog or the quality of their software, or both?  I don't know, but I do know I have at times been on either side of the "Polished Public Image" fence.  I keep my personal stuff seperate from this site just in case my political views or other personal quirks might make someone skip me over next time they are looking for people.  It also helps if your business clients do not view you as having the "Hacker Mentality"; you have to know that the business is going to (or should) drive tech choices even in the most enlightened work environment. If you are jumping up and down because you can't just write all your company's systems in PERL on LINUX and wear your mohawk to work and name your servers things like "elitephr34k.insurance.com" then people may not take you as seriously.  No matter how progressive you are and how well that helps you crank out great products  your clients have to take your seriously.  On the flip side, whenever I read a web site talking about how great a companys products/services will "Maximize shareholder value by minimizing risk and providing the greatest return on investment in the shortest amount of time", I wonder if I'm the only one who saw that on every single company's web site and wonder why this place is different from the shop next door.  With everyone making the same claims the personal voice does help you stick out a little bit.  Otherwise, people would just go through the "Maximize shareholder value by minimizing risk and providing the greatest return on investment in the shortest amount of time" checklist in your marketing materials, and then buy from whatever sales guy took them to the best clubs and golf courses.  Oh, wait...

 

 

 

Tuesday, July 26, 2005 1:26:14 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [5]  |  Trackback
 Monday, July 25, 2005

That's multiple sclerosis, not Micro-Soft.

My friend Jason in Whitewater is riding 241 kilometers on his bike for charity and you can sponsor him at this URL

The $$ goes to multiple sclerosis research.  I'd much rather support things I care about this way than have uncle sam raise my taxes and decide for me what causes I should contribute to.

Monday, July 25, 2005 1:17:45 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Friday, July 22, 2005

Main Entry: vis·ta
Pronunciation: 'vis-t&
Function: noun
Etymology: Italian, sight, from visto, past participle of vedere to see, from Latin vidEre -- more at WIT
1 : a distant view through or along an avenue or opening : PROSPECT
2 : an extensive mental view (as over a stretch of time or a series of events)

Sorry, I think its a lame name.  I think WindowsExtreme or Windows++  would have been better choices, but I am a technical guy, not a marketer.

Friday, July 22, 2005 9:21:23 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [1]  |  Trackback
 Wednesday, July 20, 2005

So, I hear there are a lot of programs out there that check for newer versions when you run them.  As an end user I find this feature annoying more often than not: how many Windows Media updates are there per week anyway?  As a writer of software it is very nice to have an update feature built into anything you wish to distribute to more than 2 people.  There is a nice Updater Application Block, extensible and easy, and I think there are some partial ports to the compact framework or MSDN CAB-downloader examples out there.  From what I've seen these either don't suit my needs or would require some serious shoe-horning to make them fit my needs.  One of my favorite clients, with their non-Microsoft backend systems now needs Updater functionality, so I set out to design something flexible.

  • There is a custom sync process that runs while the system is connected, so I want to query a backend system for what updates might be available for the unit
  • I want to be able to download CAB files containing new versions of the main system (of course)
  • Download arbitrary files for that matter
  • I want to be able to Execute these CABs, and any other arbitrary shell executable
  • I want to be able to modify the local databases, they are huge so just rebuilding is not an option
  • I want to be able to have the unit upload arbitrary files

The reasons for these should be apparent but I'll explain anyway.  Suppose you have a change you need to make to a system that 100 people in the field are using:

  1. A new user enterable field is added to a table
  2. New software is needed to collect this data
  3. You need to alter the local data sources to contain this field

Based on this idea and others, I came up with a list of "Action types" I might want to do during an update.  I query the server for a list of updates passing things like the serial number of the device, and the server returns a list of these Actions sorted by order of execution.  Each action has its own attributes and method of execution so the updater program can kill the main application and polymorphicly go about doing what it needs to do with things like DownloadAction, SqlAction, ShellExAction, UploadAction.

Obviously there is some work to be done on the server, essentially this will be a webservice that returns a message with the ordered set of Actions in it.  This is more work than a file-based solution but also gives us the flexibility of being able to configure different updates for different devices.  You probably don't want too many different versions of your software running, but the actions can be used to assist technically challenged users with deleting temp files, distribute customer-specific content, delete troublesome SqlCE data, etc.  Due to various other aspects of our software its easy to set up a nag feature where the user can choose to skip the update a certain # of times and other useful stuff.  The upload actions can be either FTP or HTTP PUT.

Since I mentioned it, I'll have to post about custom data synchronization processes in the future as well, since I think I've got a pretty good one and as one respected member of the Compact Framework newsgroups says "It is not trivial to go that route".  Sometimes Merge Replication just makes you want to shove salt-covered icepicks through your intestines though, and I think a lot of people would use a custom sync processes if there was a proven one out there.

 

Wednesday, July 20, 2005 3:22:42 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [6]  |  Trackback
 Monday, July 18, 2005

Well, this is what, four non-code posts in a row?  I'm slipping.

I spent some time going over some client work this weekend and it seems that I am catching up.  It seems that I might be getting close to the Period of Rest I've been looking for, this is less satisfying that it would be if my new home was anywhere near completion.  I still have a couple of bigger things that I could work on but these hold the danger of me getting too far ahead of client requirements, the old "Go ahead and work on it but I won't have time to tell you if its right" hurry-up-and-wait.  In light of this, I turned back to something that had been shelved for a while: something I call Project Cesium.  I have alluded to Cesium a couple of times on this blog and to friends, hinting that this may be a press-release-worthy item at some point.  I started working on a re design and some code Saturday afternoon.  Stay tuned for an early 2006 release of something that will hopefully be a big deal.

Monday, July 18, 2005 8:52:49 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [1]  |  Trackback