Saturday, December 23, 2006

Frog Pad.

After my last post I decided to try out a frog pad. It's a one handed input device consisting of 3 rows of 5 keys and 5 additional 'modifier' keys. There is one primary 'modifier' key used to extend the basic key set, and 4 that primarilly toggle the current input mode.
The basic layout is relatively intuitive, and even with the cording I was able to hit 10 words a minute inside an hours practice. However I haven't gotten much faster since, I suspect this is a result of not using it exclusively. I'm going to give exclusivity a shot this week.


Even without the week of practice, it's fairly obvious the frog pad will be a lousy input device for programming, both numbers and symbols are accessed via mode changes. Where as the normal shift key returns to a normal input state after a single additional key press, the symbol and number keys toggle in and out of the modes. While this makes some sense for numbers since it is common to type more than one, I fail to see where this is the case for symbols, either in regular text input or while programming.

Saturday, December 02, 2006

Life repetitive strain injuries, and ergonomic keyboards.
I've been having shoulder problems while working for a while now, so I finally went to see a Doctor about it. It wasn't a real shock when the doctor diagnosed a host of RSI related issues, I've been pretty consciously living denial about most of them for a while now.
The Doctor making it official did make me decide to so something about it, so I'm seeing a physical therapist, and doing my stretches like a good patient, and I figured I should try and make my workspace (at home and work) more ergonomic.
Now I don't actually type very well, I taught myself 20 odd years ago, I don't use home keys, and although my speed is OK my accuracy has always been abysmal. Because of my somewhat unique typing style where hands wonder to both sides of the keyboard, I've always hated split keyboards, but now I've finally decided I'll make the effort and re-learn to type to reduce the strain on my wrists and shoulders.
So I started looking at various ergonomic keyboard options and I was somewhat surprised to find how limited the variation and selection is and how expensive they are (not a price sensitive market I guess). There were also no real studies on what's good and what's not. Pretty much anything it seems can be called an ergonomic keyboard.
It seems to me looking at the mechanics involved, I want something with a relatively steep angle between the split halves and yet relatively few keyboards seem to support this, so either I'm completely off base, different to everyone else or ergonomic keyboards are for the most part useless for my wrist problems.
Of course I have to learn to type all over on whatever keyboard I get, so foreign or extreme layouts, don't put me off the same way they might someone who is trying to avoid problems and already types adequately.
I ended up buying a Comfort keyboard http://www.pcworld.com/article/id,115946-page,1/article.html, and I'll see how it goes. At least if my theory about wanting higher angle of split turns out to be totally off base I can arrange it in a more conventional way.

I was also surprised at the lack of real alternatives to conventional keyboards there were a couple of cording keyboards, and the data-hand, that looked pretty interesting, but looking at the manuals they were very heavily optimized for text entry, which to me seems to make them next to useless for programming.

I understand how it's hard to sell a none conventional keyboard but I would have thought that with computers being commonplace in the workplace now and the associated growing problem with RSI and related issues, there would be some real effort put into finding workable alternatives. Maybe there is and it's just not well publicized.

Sunday, September 17, 2006

Asus Pundit P1-AH

As I mentioned in a previous post, I bought one of these as a second media PC. Recycling bits and pieces I had lying around, it was probably < $500 total.

The design of the Pundit is really slick, all the cables are exactly the right length, it takes one hard drive and an optical drive, and you'd be hard pressed to put it together in an untidy fashion. The case itself is small, about the size of a 360 but deeper. It uses a PCI riser, to provide 2 fullsized PCI cards, ideal for TV tuners. It has decent on board video and audio assuming your using it as a HTPC and not a game machine. The front bezel is pretty cheap looking, but all in all it's pretty much everything I want in a HTPC, with one exception.....

What idiot thought it was a good idea to put the SPDIF connector on the front of the case behind the pop down door. Every other connector you would need for a HTPC is on the back, but to plug it into a reciever I have to leave the flap open and run a cable from the front of the case... AHHH!

Monday, September 04, 2006

Thoughts on Linux

Every couple of years, I install linux and play with it for a while.
The hacker in me likes the idea of an alternative operating system, and I've always been a bit of unix fan.

So I recently purchased a second media PC, and I thought I'd set Myth up on it as a comparison to MCE.

The one thing I always seem to forget when I setup Linux is that you have to plan in advance and buy hardware that has good support. This time was no exception and I bought an Asus P1-AH1, which is relatively new and although the NVidia 6150 was supported, I had all sorts of problems with the audio part, although the latest ALSA drivers do mostly work.

Now it's been a while since I last installed linux, so I looked at a number of different distros. I started with Gentoo, which really is a hackers only apply distro. The nice thing about the distro is that it has excellent documentation and the Wiki has walkthroughs on most interesting problems. The walkthroughs often aren't complete enough to solve the specific issue, but there are usually enough clues in them to allow you to trouble shoot your issue.

I had Gentoo mostly working, but I had some issues with 64 bit binaries, notably the lack of a flash player. So I decided to try a 32 bit install and swapped distros to Ubuntu.

Ubuntu is at the other end of the spectrum, install is painless and when your done, you have no source and not even a C compiler installed. Since I was having issues with my audio, and needed to rebuild the latest Alsa drivers, I had to install all the dev related stuff anyway.

Having gotten everything working I was actually of the opinion that Ubuntu is actually more work than Gentoo, if the distro doesn't have binaries that will work for you.

So I reinstalled Gentoo, this time the 32 bit version, everthing is woking, but I now have performance issues with video playback, I'll track them down later....

Overall linux is much as I remember it, I'll still be running windows on my main machine.

Sunday, August 20, 2006

New Project

I've just moved on to a new project, for the first time in probably 8 or 9 years it's a PC title. Not that I'm directly involved in the tech on this one since I'm on the gameplay side of things.

I'm always in two minds about this, I like working on the core tech side and frankly your contributions are more noticed by both consumers and management (which is good when review time comes around). But I do like working with designers to build the experience people actually play. I've always considered core tech a service industry, but it's surprising how many people value it for its own sake.

Wednesday, August 09, 2006

Thoughts on HTPC's

I've been using a couple of Momitsu V880N network DVD players, to watch streamed video, and I've been generally very pleased with the results. However I occasionally get issues with some video material, and the interface is clunky, so I decided to build myself an HTPC.

There were a few things that concerned me about the HTPC when I built it, noise was the primary concern followed by form factor. I went out of my way ordering passively cooled parts where possible, and ended up selecting a fullsized case to save having to worry about cards fitting. In the end noise was a none issue, the loudest thing in the case is its primary harddrive (an 80gb WD raptor I had lying around), and the size isn't too bad, although I'd prefer it if the case was not so deep.

I put the machine together 6 or 7 weeks ago now, and I haven't touched the Momitsu since. I'm using Windows Media Center as my front end and I have to say it just works. For the most part it's an excellent experience, it feels like a piece of CE gear rather than a PC.

My only gripes are with the TV support, having seen MS' attempts at TIVO functionality on set top boxes I wasn't expecting very much, but I have to say the TIVO side of MCE is excellent. What isn't is the inability to watch all my cable channels, OK so this isn't exactly MS' fault, the cable box is just a pain in the ass. Having said that they could do better, MCE has no QAM support, even for the unencrypted channels.

I live in a valley, I get no OTA HDTV reception (actually I can get one channel), I have a QAM tuner card, and I can get HD versions of ABC, NBC, CBS and FOX unencrypted over cable. I can watch them in the software supplied by the board vendor, just not in media center.

Vista is supposed to fix this with support for cable cards, but the latest on that rumor is that you will not be able to buy cable card adapters for PC's, only buy approved PC's with cable card slots.

It's a pity that the cable or satellite guys can't get it sorted out with MS or whoever. I believe that a properly packaged media center device has a real market, but not while they are crippled and tied to cable boxs.

Tuesday, August 01, 2006

HD-DVD vs Blu-Ray.

I am the prototypical early adopter, I bought a DVD player when there were 10 titles available, I own 1000+DVD's and I won't buy either format. The fact is I desperately want a Hi-def video format, I've seen both and although HD-DVD looks better right now, they both look good and I'd take either one. I'd even pay the $1000 to buy a Blu-Ray player right now if it were the only format available.

While there is a chance that the software I buy will be useless in a few years, I will not jump even if players drop to $200.

All this format war accomplishes IMO is reducing the chance that either format will gain widespread acceptance. I'll continue watching DVD's until it's clear that there is a winner.

Wednesday, July 26, 2006

Spiralling costs of game development.

There has been a lot of discussion by various parties on the expected increase in cost of game development on the "next generation" platforms.

A good current gen title developed by an external developer is probably in the $5-$10 million range, and some of the larger companies are spending $30-$50 million internally on what they consider to be potential AAA titles.

The first thing to note here is the cost disparity between internally developed and externally developed titles (although it's not an apples to apples comparison), this exists for a whole host of reasons. External developers are more focused on development, they have to work much more closely within budgets, larger franchises are usually developed internally, internal teams have more management overhead and have to deal with much greater scrutiny, typically internal teams are larger, which leads to significant development issues.

So why develop product internally rather than externally? The argument has always been that you have greater quality control on internal product. How much that really reflects in real shipping quality is somewhat debatable. The other less often mentioned reason is that you have greater control over the money you spend, If a publisher spends a million dollars externally, he has no real guarantee that the money won't be used to bail out some other publishers title rather than being spent on his.

I've built a lot of games over the years and frankly ignoring the issue of parallelism (which is another blog) the technology problems are well understood. If anything it's gotten easier to write systems like graphics engine runtimes than it was in the PS1/N64 days.

So why are products going to get more expensive?
It's largely to do with the scale of the content. Consumers have continually rising expectations from a game, and those expectations dictate a certain quality level and quantity of content.

Given that project durations aren't getting longer that means more people, unfortunately a lot of existing technology is simply not well designed for very large teams. The problems with putting 100 content people on a system designed with 5 in mind are significant.

I've worked on legacy code bases in teams of 20+ engineers, where the majority of engineering time is spent propping up the technology and tools as the content teams try to work with continually broken builds.

The solution is changing the way we develop, putting real infastructure and process in place, designing patterns for problems that scale. But I don't see it happening anytime soon, a lot of the scalable and robust patterns go against the cycle counting/to the metal mindset that still exists in console game development. There is nothing wrong with this mindset and at some level it's a necessity for technical excellence, but with very large teams you can't focus on it to the exclusion of everything else.