Let's forget, for a second, about how badly some of us developers want an API. That kind of thinking doesn't get anyone's attention. No, let's think about the future of Second Life...
Ever hear of the FabLab from MIT? I've been mooning over this conglomeration of tools for the past couple of weeks, dreaming about the stuff I could make if I had a personalized robotic factory at my disposal. Much like the man who dreams of Natalie Portman and thus keeps NP.com at the top of his bookmarks, I've kept the FabLab site close by so I can ogle the future.
While clicking through the site tonight, I came across the wonders that are CNC, and from there I learned about an assembly-like language known as G-code. From there, I stumbled across Collaborative Manufacturing.
If you're a Linden, I strongly urge you to read the article.
The problems this article describes -- cometition between designers and machinists, having to redo work, problems with G-code translations -- are all solvable with Second Life, and API, and a bit of programming. We have tools in-world that can automate the construction of shapes and then output those coordinates into a readable format; how easy would it be to export those coordinates out as G-code? We have tools that allow people to collaborate on a project; how easy would it be for company to run a grid so their engineers and machinists can collaborate on parts? If engineers and machinists can work together and see what they're making together; how fewer errors would there be when it came time to actually produce a new part?
All of this is just for large corporations, too. Imagine a world where an engineer at MIT can collaborate with a machinist in India, through Second Life, and help design a replacement part for his farming equipment, a part that can be manufactured from a nearby FabLab. The possibilities are endless.
The window for this possibility coming from Second Life is narrowing day-by-day. CAD/CAM systems are becoming more the norm. Open source software tools for running systems like the FabLab already exist, and as they're refined, engineers get comfortable with them. If Second Life wants to be a part of the future of personalized, collabortive manufacturing, Linden Lab needs to give developers an API for the client so we can start integrating Second Life into these niches while they are still young.
Second Life needs the API if it wants to compete with open tools. Developers don't need a Second Life API to build a collabortive, 3D environment for collaborative manufacturing. Tools like Lisp, Python, OpenGL, Linux, and more exist and not only can be used, but also have been, to run something like FabLab.
For the record, the first CNC machine built in the 1950's used G-code, and to this day G-code is used. In fifty-fifve years, will Second Life (or LSL) be known as the interface for driving personalized manufacturing? Not without a client API.