In somewhat of a break from what I’ve been griping on before- that is, the feature-heavy but poor-design mantra of current 3D apps, especially now- let me hit on one ‘feature’ that has been deficient. Well, more than a feature, really, it is an entire latent component of the software, in the nature of it. There has been zero work towards- zero discussion, really, from the community as well- in a sort of ‘Web 2.0’ revolution in 3-D software. The first taste I got of this was that little ‘Communication Center’ in Max 2009 actually does something- if you are connected to the internet, it will try and find you some special stuff. It has been how many years since the majority of 3D app users have had always-on broadband, and we are now just seeing baby steps?
This, really, is a good example of my despondency towards software devs, AD’s in particular. Here is a completely untapped area, not something that would require an architectural rewrite but just something they can happily add on, and there seems to be no wheels turning. It is the replacement of dollars for innovation that summarizes what I’m most scared of.
Anyway, my vision of Web 2.0 integration in 3-D software is this:
Developers can register webspace to ‘push’ modules, scripts, tools, plugins to. From within the app, users have a link to these repos. Other users can connect to these repos, and comment, rate, contact the author, edit the entry (tags, docs, sort of like a Wiki page for each entry). They can choose to branch the depot to their own and start pushing themselves (at which point it would automatically list that on the trunk’s page), just download the code to run as-is in the program, they can test-drive the download for easy removal if they don’t like it.
There would be an integration of the community- I’d like, potentially, for an SDK of sorts that the program can interface to websites with. The depo system described above is not some proprietary system, but just a developer-backed system. Anyone should be able to open their own site, use the SDK to make it ‘aware’ to the program’s browser- and even develop browser plugins if they want to add new features to their site the SDK doesn’t support; let’s say, for example, the new site supports a different type of comment system that allows new things, but the browser doesn’t know how to read it- the developer could potentially create a browser plugin to be able to hook into the new comment system.
Why do this? Well I think there are two related roadblocks to successful plugin development. First, is accessibility FOR the users. Sites such as highend3d or scriptspot are great, but they are lacking- many people don’t submit their scripts, and it is sometimes inconvenient to go to those sites and search for certain things- I for one don’t like to go to ScriptSpot, get pointed to another site, and have to DL and install an EXE of a bunch of scripts. Especially for something small or to just peek at code. But there is just no good infrastructure in place, and for Max, the rigmarole of installing macros is probably best left to an EXE instead of by hand.
But what if it were easier to see and download- and when you download, you could leave a trail to show you downloaded it- and then after x amount of uses, it could ask for a rating and feedback, that would show up for other users? It would bring to the forefront good plugins and scripts and allow much better tracking, metrics, and accuracy of assessment. Fixing the accessibility problem means changing the idea that downloads and add-ons are extras or supplements- users must understand that the ability to ‘add on’ is a feature itself, and should be exploited. It needs to be a necessary component.
The second problem is accessibility TO the users. Better marketing usually yields better sales. Autodesk has been able to get people to continue to use Biped because it has this crazy idea that promoting good rigging and animation packages such as CAT, PuppetShop, Automanatron, etc., would be blasphemy. Why are there ‘Certified’ AD plugins, but the vast majority are not? How much money does this cost for AD’s testers, who can’t even test flagship products, to test ‘certified’ plugins. And what does this even yield beyond a pretty stamp? I’m not against certification- I just think its meaning is out of whack. The fact remains, develop some great script or tool, and you are only distributing to a few hundred people at most, when there are thousands out there who would love your tool if they were given it. Isn’t this why AD continues to buy out innovating plugins- guruware, for one minor example of many?
Maybe I am not a good businessman, but that is what I just cannot understand. Doesn’t making an investment in infrastructure- and by infrastructure, I mean the community backend aspects mentioned previously- make more sense than just buying out innovation? Doesn’t empowering users make a stronger software than spoon-feeding them? I see from all angles this desire to protect power and hegemony from above. AD has lots of money, and they spend it in buying out all rivals, big and small, instead of innovating. Or maybe I am a good businessman, and this sort of thing is what has landed so many companies in the financial crapper in the long term. Which I guess is why I have hope that the situation can change, against the prevalent feeling amongst many of my peers. History has shown time and time again that what AD is doing never works out. So like someone said before, either AD will innovate, or people will do what needs to be done and leave AD behind. I’d like to see AD innovate, at least in the community sense, because it would show AD does have a commitment to growing their community. Most of me doesn’t want to see AD fail (part of me of course does), I just want things to get better. I think I know what better means, but it is a fluid thing; which is why I make these long winded and winding posts instead of just keeping them in my head, because no single person knows what ‘better’ is. Some people can lead us there but only together can we decide where we are going.