New blog, new direction

Datetime:2016-08-23 02:59:53          Topic: Ruby  HTML           Share

The flow of time seems to accelerate as I get older. Larger periods now represent smaller fractions of my overall years, and this is starting to have an impact - Not in a physical sense (still a bit too young for that, thankfully), but I am becoming keenly aware of just how little time one has to begin with, and how much of that (already short) time is usually wasted. If this was simply a consequence of drudgery, the emotional damage would be negligible, because the source of the given inefficiency is known, and can therefore be addressed promptly. However, when one wastes time unknowingly, the losses typically sum to years, and that makes them increasingly difficult to fully absorb.

Octopress is a smaller piece of drudgery that I've been dealing with for quite some time now. It's an ok blogging framework (when it works), with a host of features that some people probably find useful, if not essential, but it's not a good fit for someone with my sensibilities. To begin with, it's too complicated: There's a bunch of conventions that you have to learn for templates, markdown, css, javascript, and even your own custom resources. You have to really understand and follow the "octopress way" in order to do anything, and for someone with my relatively simple needs, doing that is often more difficult then writing the html directly.

Beyond that, there are dependency issues, along with general Ruby environment problems: Octopress has a lot of dependencies. I guess that's pretty common in Ruby land, but it really bothers me when a static blog generator needs to "download the internet" before it can be used. And, of course, the more dependencies you have, the greater your chances that something can go wrong with any one of them. This, to my surprise, remains true even after all the effort that has been poured into things like gem, bundler, and all the other tools. The abysmal generation speed was the final straw: I'm not sure if this is a general Ruby inefficiency thing, or a lack of optimization in the framework itself, but it's more than I'm willing to deal with, so I replaced the whole thing with just raw html. The format that you're reading now is simple enough to be edited directly, so I don't need Ruby, Gems, Bundler, etc. I'll probably write some simple python scripts for multi-file changes, but not much more than that, because I already have pretty much everything I need, minus the complexity.

I don't think I'm going to blog more frequently, though, so don't expect anything more than the well established "once in a blue moon" pattern.

With that bit of blog news out of the way, I'll move on to the "new direction" part: BDX development continued through 2015. In addition to pushing the initial version of the engine to GitHub, I was fairly active in the effort to improve and refine it for the first half of the year. However, by the end of June, I felt the engine was basically good enough, and that it was time to make something new with it. I was still merging PRs from the few developers that joined me on the BDX project, along with providing guidance (code review, etc), but instead of continuing to make more direct contributions to the engine, I started working on a new game.

Initially, things seemed to be going in the right direction. I was using an engine of my own making, to build something that seemed fairly interesting (from my perspective, at least), but then, a month or so later, I hit a dead end. The mechanics didn't stretch far enough to provide the kind of compelling experience I wanted to provide. I tried to twist and turn things until I had something more viable, for an experience that could feel fresh for more than 15 minutes, but I just ended up with one failed prototype after another.

In the meantime, the BDX community didn't really grow much (if at all) since the engine was first released. As of this writing, the project has more than 100 stars on github, but the number of actual users seems to be around 3. I don't think this will change, because for all the benefits that BDX provides, it's still a composition of fairly complicated software packages, which represent a number of obstacles for potential users. The install requirement alone is enough to turn some people away, so you can imagine the reaction when one is told they have to first learn to use Blender...

Traditionally, Blender was considered to be "the vim of 3D"; A piece of software that can bestow great power and flexibility, but only if the user can scale the very steep cliff that represents the blender learning curve. The Blender Foundation has made significant investments to make their software easier to learn and use, but, in my opinion, their efforts have fallen short, and Blender is still pretty difficult for most people to pick up. Even for those who persist through the process, it takes a lot of time to become proficient. Also, the sheer size of blender, as an application, a project, and a platform, is enough to intimidate most people.

Over the past month or so, I've done some research, and even a bit of experimental work, in an effort to come up with something much more approachable, without sacrificing the core benefits that BDX currently provides. I'm not going to go into too much detail, because it's far too early for that, but I will say that the initial results seem very promising, and that I'm probably going to continue working in this direction until I have a decent prototype.





About List