Speech To The Graduating Class of 2019

Here is my speech to the graduating class of Plovdiv University Faculty of Math and Informatics:

A few years ago, I started teaching programming at Plovdiv University. The course is about writing games in C++ using unreal engine. I wanted to come up with a fun way to teach programming because when I learned to program, everything was just in a text editor. So I put together a course where we go over the standard programming concepts while building a game.

Also, I heard somewhere that students remember 10% of what they hear, 30% of what they see, and 90% of what they do. So we are heavy on the doing and light on the lecturing.

Awarded by the Mayor as the Strategic Tech Investor for Plovdiv

On 14th of December I was honored with the special award “Strategic Investor in Plovdiv Region for 2017” at a discussion meeting with representatives from the Municipality of Plovdiv. The award was based on the investments and work I have been doing in the software industry.

The prize was given by the mayor of Plovdiv eng. Ivan Totev. “This year has been very successful for Plovdiv, with a lot of investments made by the local business”, said Totev.

The organizers of the event aimed to show the economic progress of the region, to take stock of the passing year and to discuss the perspectives and challenges of 2018.

Contributed to SuperTuxKart Open Source Project

I was really happy when I found out that some of the open source work I did ended up going into the latest SuperTuxKart build.  I release just about all of my open source work under a CC0 license, which doesn’t require crediting me, but they gave me the credit anyway.  And it really felt great. Thank you guys.  I am proud to have my name is in the credits of one of my favorite games.    Link:  https://sourceforge.net/p/supertuxkart/mailman/supertuxkart-commit/?limit=250&viewmonth=201707&style=flat

If you don’t know what SuperTuxKart is, it is a racing game that constantly ranks among the best open source projects of all time.  And not only did I make it to the credits, You can see also the part I worked on near the grand finale of the trailer video.  My stuff starts at about 1:29 mark.

 

 

You can download the game over here.  https://supertuxkart.net/Download  It is totally free and it is really a lot of fun.

Here is a screenshot where you can see the part of my work which was included.  It is the big hulking statue holding the lightpost.  And of course you are welcome to grab a free copy from opengameart and use it in any of your projects.

Thank you everyone at the SuperTuxKart team, I am truly honored.

OSVR, and Why I Love Working With Half Finished Platforms

Making a decision on what platform to start building a VR project with in 2017 is pretty tough.  As a software developer we often get spoiled by these fantastic libraries that already have written classes for everything you want built in.  How can you not love drag and drop templates to build whatever you want nice and easy.  We have all seen them before.  In the VR world there is nothing even close.  But I think that is a good thing.

For better or worse, I decided to go with OSVR.   And the first thing I see in the setup notes is:  ” Current compatible versions for template: Latest (Template is not kept to as many compatible versions as the plugin itself).” 

OK cool so I just set this up, and it won’t be compatible with older versions of the Game Engine.  My project is on an older version, so I need to update all of the work I have already done to make it compatible with this.  So I thought to myself; I guess it is no big deal, and how fast does this change and I will be incompatible again?  …… Fast.  I took a look at the SVN logs, and thought,  “Oh wow, they are working on it right now.”

So I download it, Build it in Visual Studio, test it out in the editor, and then make a test executable.  Just to see it all works properly.  And now I want to use it…….. but guess what……. there is already a new version out today.

Oculus and Vive are going to be updating their drivers as I am going along, UE4 will be updating and making things incompatible.  It is not just that I don’t have a toolset with an easy button, and I don’t even have a toolset that I know will work and build and be compatible by the time I am done.  I can’t just freeze time and my environment and build it on this stuff.  I am going to have to be updating everything all throughout which adds a headwind to the project.

Well at least it builds today.

But I think all of this is great, and here is why.  I remember in 1995 when HTML code was considered cutting edge, and a Database Driven site in PERL was considered total Black Magic Voodoo.  All of the tools and platforms available then remind of VR today.   This was one of the best times to be coding on the internet.  The opportunities were the biggest.

By 1999, when the market started to really heat up there were already a bunch of for dummy tools like Front Page and Cold Fusion.  If you got in in 1999 it was pretty much the worst time.

And I saw the same with smart phones in 2008 and it even lasted until about 2010.  Back then developing things for smart phones was really hard, and all the platforms were shifting.  But the opportunities at that time were huge. I know a guy who made millions with a simple flashlight app.  Candy Crush, and Clash of Clans became Multi – Billion Dollar Products in Record time.  Now In 2017 making mobile apps is pretty easy.  If you know what you are doing, you can literally choose from 100 different builder tools and put out an app in an afternoon.  And guess what the window of opportunity is closed.  Not that there is no money left, but it is much harder and more competitive.

While easy buttons are nice, they typically mean the opportunity isn’t there anymore.  For me, I love a half finished platform, that is crashing all the time and I have to hope that they will improve as I improve.