Showing posts with label tech. Show all posts
Showing posts with label tech. Show all posts
Sunday, February 24, 2013
Wednesday, August 20, 2008
My love/hate relationship with Steam
I play quite a few online games, and those which are the most fun are on Steam. At first I hated Steam, since it was yet-another account I had to sign-up for, and required me to be online to play my games. It has come a long way since the early days, and has grown to be the main distribution method for games. Indie developers are able to make their games available to millions of people without having to package or ship any cardboard boxes. Think of how many trees have been saved! I love that new content is continually added to the game I bought a year ago. Team Fortress 2 feels fresh, and Steam is able to deliver it without me having to download and apply countless patches manually.
Unfortunately this automation comes with a price- last night I wanted to play TF2, but could not because of a bug in the Heavy Update. In the old world I would simply roll-back to a previous release, but Steam does not allow that... and I'd be out of sync with the servers.
What was the bug? It didn't actually show up until after I had played the new version for an hour and exited the game. When trying to launch the game again, it failed because it didn't like this file c:\program files (x86)\steam\YourUserName\steamapps\tf\tf2_playerstats.dmx Simply deleting it fixes the issue. I found the details the following morning, here.
How does a bug like this get past QA? Sure this was a tricky one, but in reading through that thread, you'll see that likely thousands of people were affected by this. Most have Nvidia graphics cards like mine, but I saw some ATI references as well. Some are using Vista, some XP. It seems to me that this release was rushed. What for? It's not like this patch is bringing in more direct revenue for Valve, so why release something that hasn't been fully tested? Why risk breaking my favorite game to add a few new bells and whistles. TF2 was rendered useless and I spent the rest of my evening trying to fix it.
I realize that a QA department cannot catch every error, but I feel like this one could have been prevented had the release not been rushed. As PC gamers, are we too forgiving when a game is buggy? Do we have lower expectations than console gamers? Maybe Valve expects the world to be their QA department. They run some quick checks, but all regression is performed by the end user. If that's the case I'd just like to know ahead of time.
Comments?
Unfortunately this automation comes with a price- last night I wanted to play TF2, but could not because of a bug in the Heavy Update. In the old world I would simply roll-back to a previous release, but Steam does not allow that... and I'd be out of sync with the servers.
What was the bug? It didn't actually show up until after I had played the new version for an hour and exited the game. When trying to launch the game again, it failed because it didn't like this file c:\program files (x86)\steam\YourUserName\steamapps
How does a bug like this get past QA? Sure this was a tricky one, but in reading through that thread, you'll see that likely thousands of people were affected by this. Most have Nvidia graphics cards like mine, but I saw some ATI references as well. Some are using Vista, some XP. It seems to me that this release was rushed. What for? It's not like this patch is bringing in more direct revenue for Valve, so why release something that hasn't been fully tested? Why risk breaking my favorite game to add a few new bells and whistles. TF2 was rendered useless and I spent the rest of my evening trying to fix it.
I realize that a QA department cannot catch every error, but I feel like this one could have been prevented had the release not been rushed.
Comments?
Thursday, March 13, 2008
Mythical Television
I was reading through my blog here, and the last two posts make it sound like a long-running rant. So today, I've decided to write about something I completely love, something that I enjoyed setting up; something that has freed me from the shackles of monthly subscription television- MythTV.
MythTV is much more than a do-it-yourself TiVo™. It represents open-source ingenuity and digital rights freedom all on your television. It's like all the things you wanted your TV to do, all rolled up into a convenient package, eager to control your home theater.
I decided to build my solution as cheaply as possible and scrounged up used parts wherever I could. I also decided I only cared to watch/record digital television since over-the-air analog broadcasts will cease in February 2009.
The machine I built for MythTV uses an older Athlon64 3000+ socket 754 2.0Ghz CPU. 1GB RAM. My display is an 8-year-old 24" SUN Widescreen CRT. (it's a rebranded Sony) It was very cheap since I got it used, and it does 1920x1200, so the 1080i stuff looks fantastic. The video card is a nicely aged Nvidia Geforce FX 5200 AGP. Everything I've read online has shown that people have better success with Nvidia cards since they seem to be more Linux-friendly than ATI. Let me know if you find otherwise.
Myth has two main processes:
mythbackend- talks to your tuners, writes captured video to disk, maintains your TV schedule database, and much more.
mythfrontend- displays video, provides the user interface.
I used to run both the front and backend on that machine and it handled it without issue. I decided to separate them just for fun and to see how well it worked; so now I am free to power-down/tinker/completely reformat the frontend machine since all recording is done elsewhere. This has worked well, since the backend machine is a file-server that runs constantly anyway.
One issue I have had in my setup is occasional stuttering. After manually or auto-skipping commercials on 1080i recordings, both video and audio freeze for a quarter-second, continue for a half-second, freeze again, etc. This usually resolves itself in 10 seconds or less, but is slightly annoying. Lower quality recordings don't seem to have the same problem. I believe it is due to a lack of processing power on my backend machine. The problem was *much* worse when I had other CPU-intensive processes like transcoding start up while trying to stream a recording at the same time. A dual-core proc should fix the problem, but I'm doing this on-the-cheap remember? Thankfully, Myth gives you the flexibility to restrict when those processes can run. Mine now only run between 2AM and 6AM- problem solved.
By the way, commercial flagging is one of those CPU-intensive tasks, and it works incredibly well. Try to get your Comcast™ DVR to do that! Be sure to enable "Auto-Skip," you won't be disappointed.
My backend machine specs:
AMD Athlon XP 2400+
1GB RAM
GeForce 4 MX (pretty near vintage now, but it doesn't matter since I don't display TV here)
Two Hauppauge HVR-950 USB2.0 HDTV tuners.
The tuner cards are often the most difficult piece to setup. My cards use an experimental driver which actually works quite well, but definitely isn't plug-and-play. I went with these because they are cheap; only $50. My first had a rebate and I bought my second used from a friend. Also, I am only recording over-the-air digital ATSC signals. Digital Cable TV channels use QAM and these cards can't read that. If you decide to use these cards, I highly recommend this helpful guide.
I read somewhere that the MythTV 'reference-card' is the PCHDTV HD-5500. It has native Linux support and they don't even write Windows drivers.
Another compelling alternative is the HDHomeRun. It is a box with two tuners that sits on your LAN and puts video wherever you want. They provide step-by-step instructions for setting it up in Myth.
Both of those tuners can read unencrypted QAM signals from the cable company, but unfortunately many premium high-def channels are encrypted, and as far as I know only their proprietary boxes can display that content.
You'll also want a remote control for your frontend machine. I like the StreamZap since it comes with a receiver and was extremely simple to setup.
There are a few ways to install Myth. I believe I chose the easier path. My backend runs Ubuntu, so I just used apt-get and it walked me though the setup. For the frontend I tried out a few ready-to-go Myth distros: KnoppMyth, MythDora, and Mythbuntu. I like Mythbuntu best- they wrote a sort of Control Panel UI which eliminates the need for manually editing a bunch of config files. It is very well done and they follow the 6-month release schedule of Ubuntu.
I bought one year of TV schedules from schedulesdirect.org . They provide TV listings for all local/cable/sat providers throughout the US for $20/year. I went with this option because it is simple- you just setup an account with them and tell Myth your user/pass to login. I wanted my solution to be completely free, but at that price I'm probably just barely covering the amount of bandwidth that I use. Myth retrieves two weeks of TV listings everyday.
I'm happy with my solution- especially since it is using mostly older hardware I had laying around. Myth is more than just a DVR- it'll play anything mplayer can read, which is, well, anything. My machine isn't quite fast enough to display h.264 1080p recordings, but handles h.264 720p just fine. There are some pretty cool plugins that let you do everything from view your local forecast, to ordering a netflix movie, to running videogame emulators. All on your TV, with a remote, from your couch.
Myth is truly awesome, and I highly recommend you give it a try. I dumped my Dish, as well as the $50/month price tag that came with it. Few other D-I-Y projects can match the feeling of liberation MythTV provided.
MythTV is much more than a do-it-yourself TiVo™. It represents open-source ingenuity and digital rights freedom all on your television. It's like all the things you wanted your TV to do, all rolled up into a convenient package, eager to control your home theater.
I decided to build my solution as cheaply as possible and scrounged up used parts wherever I could. I also decided I only cared to watch/record digital television since over-the-air analog broadcasts will cease in February 2009.
The machine I built for MythTV uses an older Athlon64 3000+ socket 754 2.0Ghz CPU. 1GB RAM. My display is an 8-year-old 24" SUN Widescreen CRT. (it's a rebranded Sony) It was very cheap since I got it used, and it does 1920x1200, so the 1080i stuff looks fantastic. The video card is a nicely aged Nvidia Geforce FX 5200 AGP. Everything I've read online has shown that people have better success with Nvidia cards since they seem to be more Linux-friendly than ATI. Let me know if you find otherwise.
Myth has two main processes:
mythbackend- talks to your tuners, writes captured video to disk, maintains your TV schedule database, and much more.
mythfrontend- displays video, provides the user interface.
I used to run both the front and backend on that machine and it handled it without issue. I decided to separate them just for fun and to see how well it worked; so now I am free to power-down/tinker/completely reformat the frontend machine since all recording is done elsewhere. This has worked well, since the backend machine is a file-server that runs constantly anyway.
One issue I have had in my setup is occasional stuttering. After manually or auto-skipping commercials on 1080i recordings, both video and audio freeze for a quarter-second, continue for a half-second, freeze again, etc. This usually resolves itself in 10 seconds or less, but is slightly annoying. Lower quality recordings don't seem to have the same problem. I believe it is due to a lack of processing power on my backend machine. The problem was *much* worse when I had other CPU-intensive processes like transcoding start up while trying to stream a recording at the same time. A dual-core proc should fix the problem, but I'm doing this on-the-cheap remember? Thankfully, Myth gives you the flexibility to restrict when those processes can run. Mine now only run between 2AM and 6AM- problem solved.
By the way, commercial flagging is one of those CPU-intensive tasks, and it works incredibly well. Try to get your Comcast™ DVR to do that! Be sure to enable "Auto-Skip," you won't be disappointed.
My backend machine specs:
AMD Athlon XP 2400+
1GB RAM
GeForce 4 MX (pretty near vintage now, but it doesn't matter since I don't display TV here)
Two Hauppauge HVR-950 USB2.0 HDTV tuners.
The tuner cards are often the most difficult piece to setup. My cards use an experimental driver which actually works quite well, but definitely isn't plug-and-play. I went with these because they are cheap; only $50. My first had a rebate and I bought my second used from a friend. Also, I am only recording over-the-air digital ATSC signals. Digital Cable TV channels use QAM and these cards can't read that. If you decide to use these cards, I highly recommend this helpful guide.
I read somewhere that the MythTV 'reference-card' is the PCHDTV HD-5500. It has native Linux support and they don't even write Windows drivers.
Another compelling alternative is the HDHomeRun. It is a box with two tuners that sits on your LAN and puts video wherever you want. They provide step-by-step instructions for setting it up in Myth.
Both of those tuners can read unencrypted QAM signals from the cable company, but unfortunately many premium high-def channels are encrypted, and as far as I know only their proprietary boxes can display that content.
You'll also want a remote control for your frontend machine. I like the StreamZap since it comes with a receiver and was extremely simple to setup.
There are a few ways to install Myth. I believe I chose the easier path. My backend runs Ubuntu, so I just used apt-get and it walked me though the setup. For the frontend I tried out a few ready-to-go Myth distros: KnoppMyth, MythDora, and Mythbuntu. I like Mythbuntu best- they wrote a sort of Control Panel UI which eliminates the need for manually editing a bunch of config files. It is very well done and they follow the 6-month release schedule of Ubuntu.
I bought one year of TV schedules from schedulesdirect.org . They provide TV listings for all local/cable/sat providers throughout the US for $20/year. I went with this option because it is simple- you just setup an account with them and tell Myth your user/pass to login. I wanted my solution to be completely free, but at that price I'm probably just barely covering the amount of bandwidth that I use. Myth retrieves two weeks of TV listings everyday.
I'm happy with my solution- especially since it is using mostly older hardware I had laying around. Myth is more than just a DVR- it'll play anything mplayer can read, which is, well, anything. My machine isn't quite fast enough to display h.264 1080p recordings, but handles h.264 720p just fine. There are some pretty cool plugins that let you do everything from view your local forecast, to ordering a netflix movie, to running videogame emulators. All on your TV, with a remote, from your couch.
Myth is truly awesome, and I highly recommend you give it a try. I dumped my Dish, as well as the $50/month price tag that came with it. Few other D-I-Y projects can match the feeling of liberation MythTV provided.
Thursday, November 15, 2007
Google Hacks

I've never read anything from the O'Reilly
I probably could have saved myself some time by using one of these, but I wanted to play by the rules that day.
Unimpressed with Vista
I don't use Vista. Unfortunately one of my clients wanted to try it out, so I built a new machine for him. It worked for 30 days and I got a call from my client- Vista kept telling him he needed to 'Activate' Windows.
I had activated when I installed the OS, but I guess it wanted to do it again- you know, just for fun. So, I told it to activate and it said the key was already in use. Of course it's in use- I already activated! I picked up the phone to call the 888 number since that was my only option.
A chipper female recording answered the phone. "Welcome to the Microsoft Product Activation Center. I can help you activate Windows XP, Windows Server 2003 Small Busin..." yadda ya the list goes on. Sounds like they are feeding me an advertisement for their product that isn't working. Anyway, usually after getting though that it has you enter 8 groups of 6 digits, and then responds with a similarly large number that you enter into your activation window. After entering my digits, the chipper female said "We're sorry, but this key is in use." Of course it's in use- I already activated! "Please wait while your call is transferred to a representative."
Make note- she didn't qualify the term 'representative' with any sort of adjective like 'skilled' or 'competent.' In her thick offshore-outsourced accent the representative asked me to read her all the numbers I had just typed into the phone. She asked if I had recently changed hardware in my computer. "No," I said, "why should that matter?"
It matters because MS doesn't want you moving copies of their OS from machine to machine- even if you did buy it legally. "But it's not their OS, I bought it!" Nope, still theirs, and it's married to your hardware, and cannot divorce and remarry. They want to sell you a new copy for each piece of hardware you own. Of course Miss Representative didn't inform me of this, but did tell me I might have to call back if I change hardware... Then, she read a huge string of digits back to me. Vista accepted them, and allowed me to use the computer I built.
But why did it stop working in the first place? Nothing in the hardware had changed, and after a reboot it claimed I had three days to reactivate Windows. Here we go again.
Chipper Female: "Activating your product will take about 6 minutes, if you have an internet connection and haven't already tried the 'Activate by Internet' option, I suggest you try it- it's much faster."Me: "..."
Again, I enter the numbers and it forwards me to a rep. He gives me the same spiel and I say "Look, I'm stuck in an endless loop here. I'm not changing hardware, it deactivates Windows on boot!" After a long pause he says I'll have to talk to another team of people who don't work on Saturday.
That's really great Microsoft. It's bad enough that I'm spending my weekend troubleshooting your product, and now you want me to call back on Monday. At least I'm being paid, but my client can't be happy about that.
And so I googled, and found plenty of people with the same problem. Apparently Vista had based its hardware detection on some value reported by the Silicon Image SATA card. That value was changing at every boot! So by updating the driver and re-activating Windows, I was able to get it to remember that it was already activated. At least until I swap out a video card or something...
The moral of the story: Don't even bother with Vista. If Microsoft wants to win back their customer base, they need to grow up and realize that anyone who wants to beat their system will find a way. So just keep it up Microsoft, the more customers you deter with this sort of crap the better. They will all find alternatives- like Mac or Linux.
I had activated when I installed the OS, but I guess it wanted to do it again- you know, just for fun. So, I told it to activate and it said the key was already in use. Of course it's in use- I already activated! I picked up the phone to call the 888 number since that was my only option.
A chipper female recording answered the phone. "Welcome to the Microsoft Product Activation Center. I can help you activate Windows XP, Windows Server 2003 Small Busin..." yadda ya the list goes on. Sounds like they are feeding me an advertisement for their product that isn't working. Anyway, usually after getting though that it has you enter 8 groups of 6 digits, and then responds with a similarly large number that you enter into your activation window. After entering my digits, the chipper female said "We're sorry, but this key is in use." Of course it's in use- I already activated! "Please wait while your call is transferred to a representative."
Make note- she didn't qualify the term 'representative' with any sort of adjective like 'skilled' or 'competent.' In her thick offshore-outsourced accent the representative asked me to read her all the numbers I had just typed into the phone. She asked if I had recently changed hardware in my computer. "No," I said, "why should that matter?"
It matters because MS doesn't want you moving copies of their OS from machine to machine- even if you did buy it legally. "But it's not their OS, I bought it!" Nope, still theirs, and it's married to your hardware, and cannot divorce and remarry. They want to sell you a new copy for each piece of hardware you own. Of course Miss Representative didn't inform me of this, but did tell me I might have to call back if I change hardware... Then, she read a huge string of digits back to me. Vista accepted them, and allowed me to use the computer I built.
But why did it stop working in the first place? Nothing in the hardware had changed, and after a reboot it claimed I had three days to reactivate Windows. Here we go again.
Chipper Female: "Activating your product will take about 6 minutes, if you have an internet connection and haven't already tried the 'Activate by Internet' option, I suggest you try it- it's much faster."Me:
Again, I enter the numbers and it forwards me to a rep. He gives me the same spiel and I say "Look, I'm stuck in an endless loop here. I'm not changing hardware, it deactivates Windows on boot!" After a long pause he says I'll have to talk to another team of people who don't work on Saturday.
That's really great Microsoft. It's bad enough that I'm spending my weekend troubleshooting your product, and now you want me to call back on Monday. At least I'm being paid, but my client can't be happy about that.
And so I googled, and found plenty of people with the same problem. Apparently Vista had based its hardware detection on some value reported by the Silicon Image SATA card. That value was changing at every boot! So by updating the driver and re-activating Windows, I was able to get it to remember that it was already activated. At least until I swap out a video card or something...
The moral of the story: Don't even bother with Vista. If Microsoft wants to win back their customer base, they need to grow up and realize that anyone who wants to beat their system will find a way. So just keep it up Microsoft, the more customers you deter with this sort of crap the better. They will all find alternatives- like Mac or Linux.
Subscribe to:
Posts (Atom)