I see new projects stemming from .84 like CoinOPS for the Xbox, or the up and coming Mame for Android that will reach new admirers. I do not need to buy a $1000 machine to play classics. Classics is what MAME is about.
However what is a 'classic' changes as time goes on. I'm only 28 and I don't reguard Pac-Man as a nostalgic classic game from my past. Know what I think of as classics? Early 90's arcade games. I still grin when I hear 'Let's Go Away' from Daytona USA by Sega. As the years go on, the era of games desired by the typical person looking for their nostalgia fix will shift to what they remember when THEY were younger.
Indeed.. which is why the lack of coders from the more recent generations is a concern.
I think some of it is reflective of the industry. I grew up with my ZX Spectrum, Amstrad CPC, Amigas etc.
This meant I was exposed to coding from a young age, and found it enjoyable. It was accessible, and made learning possible. It gave me an alternative, even when I was 10 I could write 'games' and share them with my friends, and they'd think they were cool. There were worse things actually for sale!
The generation after mostly grew up with Windows and the Playstation. By default Windows doesn't really offer much of a programming environment, and the Playstation (hacks aside) is locked down. Not something you can really learn programming on.
The current generation XBOX360 and iPhone. If you want to develop on the 360 it costs you a subscription (and you can only do C#, although, not hardware level in any way), and if you want to develop on the iPhone (which also requires a Mac), likewise, plus you have to pay Apple every time they decide to update the OS. Is a parent really going to pay for an 8 year old to have access to this, and the PC/Mac you need to develop? of course not.
The first exposure anybody is going to have to programming is probably going to be, at best, some visual basic at college, and most likely because they didn't know what they were getting into. All they're likely to code are lame apps to pass a course, which they'll hate coding, and not want to go any further with. Nobody is going to think what they made is cool. People who learn to program now are generally paying for courses, and end up expecting to be paid for their work. fun, enjoyment and discovery are no longer the primary motivating factors. Nor is there any experience with direct hardware access (everything is through APIs in high level languages) which further limits the skills needed for reverse engineering and emulation. It's just become another 'job'.
I think the locking down, and inaccessibility of modern platforms is a major problem for open source development (and possibly the industry as a whole) moving forward. It's even worse for projects like MAME due to the lack of 'hardware level' exposure, meaning modern programmers have no experience in important areas.
It's interesting to read some of the comments, because there is still work to do on the 'classics' in MAME, the endless lists of 'imperfect graphics' 'imperfect sound' etc. clearly shows that. It doesn't really matter if you're talking about games from the 80s, or 90s, there is still work to be done all over the shop. This is recognized both by people posting here, and the developers. I've spent a lot of time going over drivers (mostly 90s era) and cleaning up / fixing what I can, but burnout is common, and more hands are needed! (hence the post I made in the first place)
Also the comment about MAME leaving me behind is a curious one, if it weren't for the contributions myself and Kale have made over the last year the project would have probably stalled even earlier. It's rather evident that during this Christmas period, when we both have time to contribute a bit more that actual progress is being made again. IN the past week you've got the 2nd generation Cave games, rare Taito classic era 'Rumba Lumba', Fixes to long standing problems in IREM's Fire Barrel, even some (small) improvements to the Seibu emulation which may eventually lead to Raiden 2 working. Olivier has also stepped up with a fix to the sound core used on PGM (which benefits the Cave games) and again, a couple of small steps towards Raiden 2 etc. It's always good to see older devs still contributing when they can.
I wouldn't say I have anything against Aaron, I think to some point he's fighting against the tide (due to the earlier points I make, and general attitudes towards the project) even if I think in some areas maybe he could manage things better. As I've said, the team seems quite cold to outsiders still. Anyway, my point is, I think it's quite hard to make a valid argument that the project has left me and the people I work with behind when the evidence strongly suggests that without our current contributions (which have been lacking in the previous couple of months) the project would be in a worse state than it is.
As for benefits of being on Mamedev, I wrote a post in the comments of the article about this, which should make things quite clear. Basically the point was that some people become involved to just be part of the team, as such get priority access to various resources and direct contact with the devs, then simply abuse this position to request everything they want, without actually giving anything further back even if they clearly have time to do so. From one of the replies in there, it seems that MAME isn't the only project with this problem, and given the source of the reply (the Dolphin devs) it pretty much lays to rest any argument that it has anything to do with the license.
There are still some pretty significant arcade games with major work to do in the emulation. The Seibu stuff is the obvious one (and it's quite embarrassing that some games from the early 90s aren't yet supported, but the protection is *that* tough) but there are also still Taito, Gaelco, Jaleco, Atari, Sega, Nichibutsu and Konami titles from the 80s and 90s as well as many others which just plain don't work yet. These aren't minor 'unknown' companies, and the hardware I'm talking about is still 2D era. That's without bringing the old discrete games into it, which are in a league of their own. MAME is not done, not by a long shot, the underlying emulation of many classic systems still leaves a lot to be desired. It might emulate 'favourite game X' but that's a rather narrow-minded approach.
As for 'most people just care about the games, not about it being accurate' Yes, to a degree that's true, but again, it's something that's becoming increasingly true with each passing generation. Sure, MAME has some hacks where the devs couldn't figure things out (or MAME didn't support what was needed at the time) and I've spent a fair amount of time cleaning them up, and emulating things properly (which often has subtle benefits to other areas of the games which weren't noticed) BUT the mentality now seems to be almost 'the hacks are good'. This again is more reflective of commercial products, and may be a side-effect of the initial problem I outlined in the initial post. In the games industry the goal is to get something shipped, on time, by any means possible. There can be bugs, as long as the user doesn't notice them, there can be hacks, as long as they help prevent the user from noticing the bugs. The desire to do things properly has been lost.
The traditional hobbyist programmer would work for days, and enjoy coming up with a proper, clever solution; that's half the fun. The modern programmer just works towards getting something shipped in a way that the user will believe to be correct. This comes from conditioning, experience, and the learning process.
The problems seem to lie with a shift in culture, both the shift in arcade culture towards home systems, the shift in the openness of home systems, and the shift in which people are exposed to programming. This changes attitudes and priorities, and in the end isn't that good for a project like MAME. It's sad, because this is part of our heritage but the industry of old is a tiny fraction of the huge soulless commercial monster that is the games industry today. In terms of ROM data you can fit pretty much the entire output of the games industry (home and arcade) until 1995 on a flash card in your pocket and to many people these days, it isn't worth much more than that, and never will be.
Part of me would like to hang up my boots, and just move on to other projects, but every time I try to do that I just see the amount of stuff that isn't being done, or the amount of stuff that is being done wrong and the feeling of guilt and responsibility, for not actually taking care of it is too much for me to just abandon everything. It's easy for some people to say I don't do enough, but I do as much as I can. There are limits to my ability tho, and they're going to be hit sooner rather than later. Again, this is why I felt the need to write the post, the project needs developers, with the right skills to continue to take the project forward otherwise progress (which includes fixing of bugs in older emulated hardware) is just going to hit a brick wall.