It was not a dark and stormy night, but it was the mid-1990s.

I had this awesome idea once that I would re-create something I had seen in the movies. I began trying to put things together, get a team on board and create some documents to explain what I had in my mind.

That's when I realised I couldn't code anything. Had no idea other than some HTML (nobody was doing CSS at the time). Back in those "archaic" times, the modelling language was VRML, and I had purchased a book on the topic authored by Mark Pesce. I studied it tried to play with it, but at the time I simply didn't have the processing speed or memory to make it usable. I emailed Mark.

I don't remember what I said, or what the topic really even was, but it was my first real interaction with an honest-to-god programmer. I sent a long-winded barrage of questions and expected to have my world shifted with a response from the master of code.

What I received was a single sentence response along the lines of "Read the documentation". I was hurt and deflated. I commiserated with a friend of mine, a C++ programmer, who read the exchange and said, "Well, this is what you get when you waste a programmer's time. We don't have a lot of time for words. Read the damned documentation. That's why we write it."

make things, break things

This was the guy that got me into Linux, and the bulk of his mentoring was comprised around reading the manual, reading the documents, reading, reading, reading. I am glad he was that way now. It formed some very good habits in me on both sides of the fence. I don't like a lack of documentation, and I don't want to create that misery for others, either.

As you readers know, I have been tossing around some AI and deep learning ideas because I am seeking to create some really cool and useful things. Primarily for myself, but I'll share. Most of it, anyway. Basically what we like to do as humans is to see just how far we can go with creating new things. It is programmed into our DNA, and thus we have a need to breed it into the new things that we create.

Creation and innovation are the things that we do. And sometimes we have to break a few things in order to find out how to fix others.

In my case here things are actually more of an extension than a breaking of anything. I can plainly see how Python and Javascript can compliment each other in the creation of usable 3D and virtual reality products. The library I am amassing is driving the lady of the house slowly out of her mind, but if you have been with Linux for a little while, or almost 25 years like I have, you understand that collecting tech books is not the same as collecting all of the William Gibson trilogies, although I would love to have them.

But perhaps we should talk about how things came to this.

wanted that, got this

I don't really know how I came to the idea of VR. It was an off chance kind of thing where one thing related to something else and the next thing I knew, I stumbled across Oculus. No, wait. I do remember...

I was walking around in a big box store after a nice conversation with a fellow that works for Space X.  I was originally in the market for a USB drive to hold things on, or perhaps it was an SD card for the e-reader... don't remember. That was when I passed a display that was locked, holding Oculus Rift and Go headsets. I looked at them thinking, "I wonder what that's for? Kinda wish I was a gamer..." Then I asked the question that has been the downfall of many a hacker in my time:

"I wonder what I can make that do?"

And then, the fight began. I chewed on it a few days, looked them up online, and then was blown away by what was possible. But it was all still just theory at that point, I had never really looked into VR in any real way since my previous disappointment. The more that I read, the more I learned, and the more that I learned, the more I wondered how I hadn't heard of all of this yet.

livin' in a cardboard box

I knew I couldn't really afford to just drop $200 on an Oculus Go, but I also needed to see for myself what in the heck this was all about. The next time that I returned to the Big Box Store, I saw a display of VR headsets that the store wanted to get rid of and they were $12 each. That's a heck of a lot cheaper than the $200 that I wasn't ready to spend sight unseen. So I got one, a Tzumi Dream Vision.

It's based on Google Cardboard, and although I had considered making one, pre-packaged solutions are easier to give away if they don't work, so I jumped on it. Granted, after a little bit of testing I discovered that my phone is for all intents and purposes built backwards from what is normally required for this device. What I mean by that is the following:

The built-in headphones plug in from the right side, and the magnetic switch for the set that emulates a Cardboard is on the left. This means that the top of the phone must be facing left for the switch to work properly, but must be facing to the right for the headphones. So now the solution is to add headphones that easily will string out of the side.

Now you will have to deal with two components instead of one, and it's a slight hassle, but the things you will see are worth it.

It gives one enough to get interested and involved in the process. What we have not discussed yet is the fact that there is now a Web-related platform dealing with VR called A-Frame, and I was not aware that any of this had evolved, or that I could use the programming I have learned in both Python and Javascript to work with it. This information has changed (slightly) the direction that I have been moving in, as a large part of the thrill of creating is the artwork and impact of the things being designed.

The next few weeks leading into the new year, and that is the time in which I am defining what the 100 Days of Code are going to apply to, what the 301 Days of Code will apply to (301 Days was started by a Twitter friend of mine, Benjamin Spak, so major shout-out to him!), and of course, it is time to let the artistic creation back out that I abandoned so long ago. Those kinds of things eat at your soul when you don't properly release them.

So I've also created a YouTube channel, a Patreon, and a Deviant Art channel. I'm not ready to tell you much about them yet. Expect something around the first of the year (2019).