On a positive note…

Reviewing the last several posts, it would appear that for a few months that I have been in the doldrums of despair. While that is partly true, it is not where I have spent the majority of my time.

At work, I’ve been working on several projects dealing with online video, digital publishing, and helping out a team re-architecting several systems within a client’s structure. In other words, work has me busy and it’s been the good kind of interesting.

If you’ve been paying attention to the weather in the mid-western United States, then you can guess that I have been mostly indoors during the record cold and snows this year. It’s put my woodworking, and anything in the garage on hold, almost everything.

Earlier I had a picture of a cat resting in the partly assembled shelves of a bookcase I build last year. That cat, Angel, is kind of the neighborhood cat, and since her original owners didn’t take her in anymore, we’ve had her wintering in the garage. She’s quite happy there, but a little stir crazy like all of us since she can’t go outside. She’s even gotten into the house a few times, and while our dog likes her, the cats in the house, one of which is a daughter of her’s, definitely do not like sharing the house with the newcomer.

I’ve been working on a talk about Grunt, a task running utility that I use at work to reduce the redundant things I do (building, running tests on code, and making deployments). I’ve applied to give a talk at Chicago Code Camp in a few months, and plan to give the talk before then to the people at work.

I was planning on going to the Game Developers Conference (GDC) this year, but that doesn’t seem to be in the cards given the current focus of projects at work. Though I should be seeing Jim Van Verth next month, and he will be speaking there. He is wicked smart, and now works at Google. Sometimes I hope by being in the room with him that I get better at my own math skills.

So until it warms up outside, I plan on continuing the inside hobbies. Oh, I’ve also played far to many games while stuck inside this winter, finishing Batman Arkham Asylum, Arkham City, Tomb Raider, and playing many levels of Orcs Must Die 2 with Erin (my wife). When it warms up, the workshop will be aired out, and I can continue on the secret project. Until then, I am endeavoring to not distract myself from writing and editing the writing I have done. It’s a losing battle right now, but I hope for at least a Pyrrhic victory over my procrastination.

Erin hasn’t seen the Avengers movie yet, and I am making sure that she is fixing that gap in her knowledge now. So until next time, stay warm.

Life, it’s never dull.

[Warning: This is an update post, and may ramble a bit. Carry on!]

Things at the tail end of this year have certainly been interesting. Interesting times indeed, in all of the senses of the word.

You’ve read hear about some of the things that have gone on, and if you haven’t I invite you to take a look. I can wait.

Back? Good.

In addition to family health issues, building a deck, participating in HoNoToGroABeMo, and the normal things like work, raising kids, etc. I’ve been pretty busy. I’ve been working on my Secret Project, though much less of that lately. I’ve built a 3D printer, the PrintrBot Simple, and it’s printing nicely now. I’ve also been researching Machine Learning and Adaptive Bitrate Streaming, trying to see how the former can work with and for the latter.

Over this last week, things continued to be interesting.

On Monday, I was told that my new MacBook Pro had arrived and on Tuesday I had it in my hot little hands. I’ve been working with it and my Windows desktop off and on since then. I will have a post soon about the reasons why I switched to a Mac from Windows, and how my switch has gone so far. A teaser: It’s going pretty well, with the normal bumps of getting used to the different places for the things I normally use.

Tuesday night, I found a fairly heavy package sitting on the kitchen counter when I got home. I have been expecting my Kickstarter order of my FATE Core and FATE Accelerated books (along with a few others) to come in soon, but this package was far too heavy and large for a few books. What could it be?

To my great surprise, I found that the 3D printer parts for the Eventorbot had arrived! It had been over a year since I backed that Kickstarter, and given that the creator had disappeared for nearly three months, I had resigned myself to never seeing it. The creator had a bout of depression, and in my opinion, was overwhelmed to an extent that he stopped communicating. Which unfortunately made the problem worse.

So now I have parts for a second printer. So what will I do with it?

Well, I’ve written a book on 3D printing, I enjoy learning the technology, so I’m diving into it deeper by putting out a 3D printing show. My friend and former co-producer on The Game Master Show, will be joining me as I delve into the current events of the 3D printing industry, and tackle subjects both beginners and experts of the subjects can learn from.

Is that all? Nope!

Tuesday evening, Erin called me with news about her father. He’s doing much better, still not great, but he’s sitting up, eating, and has a positive attitude. The ICU nurse let Erin sneak the girls in to visit, and he really perked up when he saw them, vowing to get better and get out of the hospital so that he could be with them more.

So after a very interesting several months, more good things than bad are starting to happen. I’d like to take credit for planning it, for navigating my way through the storm, but I can’t. I tried my best to make my own luck, but it wasn’t all me. It was a combination of people, of supporters, of genuine luck (that’s what you call it when you can’t pin down the butterfly that caused the events).

So the light is shining. The deck is nearly done. My beard does itch (go donate!). It’s a good time right now, just in time for Thanksgiving and Christmas, and the start of new year just after.

Life. It’s never dull unless you let it be.

Machine Learning or The Robots are Coming!

Lately I’ve been working on some interesting topics at work. Right now I am gearing up for a project starting in November that will utilize machine learning, and using what some call collective intelligence.

Skynet Logo“So what the heck is machine learning? Are you finalizing Skynet or your own robot army, David?”

Well, first, let me say that my 3D printer is nearly complete, and should be before this project starts. So the answer to your question about a robot army is a solid: Maybe.

Machine learning however is both more simple and more complicated than it sounds. Machine learning takes in data, usually lots of data, and data that on the surface doesn’t always make sense, and makes sense out of it. Often finding patterns and relations in the data that help the machine/computer, to make specific decisions based on the data.

Many of the algorithms used are actually ones that humans use everyday, if they are statisticians. They are used to make choices in the stock market, suggest movies you might like based on your’s and others’ previous movie ratings, and what you should watch next on YouTube.

Nearly all of the algorithms are understandable, at the start at least, but deal with so many variables, and such large quantities of data, that the computer does what it does better than any human. It calculates. It does a lot of calculation. As I said earlier, statisticians do similar things, but when they use a computer to do it, the results are downright amazing.

So for this project, I am working on finding the right combination of variables that will lead to the best user experience. I know what is a good user experience, but I can’t sit at every user’s computer and tweak their settings to make it right. That’s where the machine learning comes in. I’ll be coding a set of algorithms to look at how fast their computer is, if they are even using a computer or using a phone or tablet, taking into account the user’s preferences, and the client’s needs as well. From those algorithms, the app will then be able to deliver the best user experience that is possible, at that moment.

At that moment is yet another data point, as are the moments in the past. See, as the user continues to use the app, the machine learning algorithm will continue to learn, and to tweak the settings it has available to make the user experience better and better, all without any downtime.

It’s a daunting task to say the least. It’s also a challenging and exciting one. I’m really jazzed to be working on it, and have been diving into white papers, books, and every article I can on algorithms related to statistical analysis and machine learning.

I see so many uses for it, it’s pretty amazing.

As they say in that movie: “Would you like to know more?”

One project down. On to the next!

So yesterday, I talked about all of the projects I have been doing this year, and how I’ve finished a few. Today I can chalk up another one done.

The laser engraver that I have been reworking is finally running smoothly. The small one I had posted about before has been up-sized to be useful for what I wanted it for in the first place, that being cutting vinyl templates for etching glass. It’s cutting second template right now. Well, not now as you read it of course, but as I write this. There are still some kinks to work out by dialing in the settings, and the electronics all need to go into an enclosure, but the bulk of the work is complete.

Pictures? You want pictures?!? *sigh* Ok, here’s pictures. The original, next to the new version:

IMG_20131006_200858

As you can see, the new one is quite a bit bigger than the original. I haven’t used the whole bed yet, and I may not, since the part you can see in the picture is actually all I need for what I had originally planned. Perhaps larger templates are in my future.

I just looked at the image again, wow, what a mess! That’s boxes from the office, my dog’s feet, an old QuickCam from my Quadra 660AV days, and some plaster molds. As you can see, I still have a lot of cleaning to do in the basement.

What next?

Well, I have the deck still, though I got in all of the posts for the main portion this weekend. Given all the delays with getting holes dug, and family emergencies, I am going to have to get an extension on the building permit. Hopefully they actually give extensions. It’s coming along though, and the octagon’s posts should go in tomorrow, weather permitting. After that are the beams and inspection, before moving on to the joists and decking.┬áThat will be my main focus over this next week while daylight permitting.

Work is research right now. I’ve reached out to a friend, Jim Van Verth, to help me with some of the higher order math involved. At least it’s higher order enough to me that I don’t know what the symbols mean. I am sure Jim can shed some light on them for me. Thanks in advance Jim!

I’m also working on AngularJS, since it’s something I’ve been seeing worked on more and more. I have a nice little test project for learning it. It’s an interface to a home kegging system for beer. The original project Kegerface, was php and a flat file with beer information. I’m using it for inspiration, but will be completely rewriting it in AngularJS and running on a NodeJS server. More on that in the future, and links to my Github repo when I’m ready for people to hack on it with me.

Don't forget to wear these. Your safety glasses.
Don’t forget to wear these. Your safety glasses.

Work on the secret project also got done this weekend, and it’s running even smoother now. If I can dial in the base rotation system, I will be just about done with the prototype. I’ll keep teasing you with the details until I can talk about it.

I could keep going, but I have more to get done!

A final note. When working with lasers, don’t forget these, your safety glasses. (With thanks to Norm Abrams.)