Thinking about a project? Perhaps a bookcase for those encyclopedias that you inherited? Or perhaps a shed, a new fence, or a back deck? Every now and then I take to the notion of just "simply" building a digital replica of "my world", so to speak. Yet obviously there is nothing simple about it, although perhaps there should be, or could be. Given that my first personal computer was an Apple II, I obviously have some sentiment toward the simplicity of wanting to create something by drawing with simple commands like MoveTo and LineTo, FillPolygon, and so on.
From these primitives, we should be able to build stuff. Complicated stuff. The original AutoCAD was really more of a programming language, based on Auto-Lisp than the more contemporary "click on this CIRCLE tool", position it with the mouse, etc., size it, and so on methodology, that we have become accustomed to.
Yet what programs like Auto-CAD and Adobe Illustrator really do, is translate mouse movements and clicks into menu item selections and numbers which then get translated into the various low-level API calls. Yet something seems to get lost in the process, at least most of the time, for most people. Then there are the object description languages, or file specifications really, like obj, where it is possible to specify in a file some really nice stuff, like a teapot or a bumble-bee for that matter, and get some really nice results, yet something still gets lost in the process.
Sometimes the game developers get most of it right. Especially if you can shoot at things, blow things up, burn them down, have realistic big fish eating the little fish in your virtual aquarium, or have your virtual race car blow a tire, or an engine, and perhaps crash, with bent and mangled parts flying everywhere, and so on.
Maybe the next frontier in software is going to be to follow along the pathways that seemed to be suggested by online games like Second Life, Minecraft, etc., as well as their predecessors like Sim-City and Sim-Life, and the like. So maybe it is time to rethink the whole process of content creation from the ground up.
Maybe I should try rewriting the code for a simple wall, and make some very minor changes so that I can also have a "simple ladder", "simple bookcase", "simple fence", and "simple deck". Then there might be "things with drawers, or doors", or "round things", etc.
Eventually, maybe AI will do this for us, perhaps you are thinking. Or maybe there are some not-so-open applications out there that are TRYING to do that, but they don't quite have the right set of primitives worked out, quite yet - maybe because that source code doesn't exist yet in a usable form that they can "borrow" from off of Git. Oh, well.
Yet I also saw an example (elsewhere) of how the latest version of Photoshop can remove unwanted people or objects from a scene, which sounds like a useful feature (even if it reminds me of Stalin - obviously!) or "relocate a reindeer" from a wooded scene to a "backdrop of a dark alley', and so on. Kind of interesting, but I have no actual need for to pay to "rent" software, like that - or Auto-CAD for that matter, just to build a bookcase, or whatever else, and where the cost of software rental might exceed the cost of the "project", turning it into a deal killer. This has been the problem with Eagle vs. KiCAD, from what I read. So there are plenty of people who want to make "just one project" that have no need, or desire, nor do they have the means to pay for ongoing software subscriptions.