Monday, April 7, 2014

Friday, April 4, 2014

Week 35 : Interviews

This is gonna be short and sweet, I spent the last week traveling doing interviews and things have been well. However I am shocked to not hear back from companies, yes or no let a man know! Anyway I have another programming test today and am excited about the start up so let's see if it pans out.


See you in five weeks

Wednesday, March 26, 2014

Week 34 : RoseTree Compiler


It has been a hectic week already, have been writing papers, presentations and projects early so that all the interviews I am about to embark on won't impact my studies. I was very nervous about the latest compiler assignment, essentially we had to start from scratch using Yacc & Lex. Well it turns out Yacc & Lex make things easy, I finished my front end in one day!

When I was done with my project my boss said something that meant a lot "I am hard pressed to think of something you haven't learned now". That make me feel great, regardless of the outcome of these interviews I feel like I succeeded in learning computer science. I feel complete, now if I can just get a paycheck!

Oh and I sold my house last week.

See you in seven weeks

Monday, March 17, 2014

Week 33 : Lua Game Play Programmer


Let's look at the Tell Tale Position 'Lua Game Play Programmer' and breakdown how I am an ideal candidate.

Telltale’s Gameplay Programmer group is responsible for bringing the visions of the designers and artists to life, as well as contributing in meaningful ways to user interactions and overall game play.  Working on small product teams alongside industry innovators in game narrative design and cinematography, push the boundaries about how players consume and experience games.  Development is done entirely in Lua and Telltale’s multi-platform downloadable game development system; the “Telltale Tool”, you can help to create tons of amazing content for Xbox, PS3, Wii, iOS, PC, Mac and Android.

Essential Skills and Experience:
• A minimum of 1 year of professional experience in the games business or 3 years experience developing games in any environment.
• Experienced with languages such as Lua, Actionscript, Perl, Python, and C.
• Experienced at level building, prototyping, UI design, writing, and other game design elements.
• Self-motivated and diligent, with good habits for tracking one’s own tasks, seeking out answers when needed, and actively participating in the entire production effort.
• Posses strong knowledge of programming data structures, logic, and algorithms.
• Passionate about being in a highly iterative environment with a desire to participate in many areas of game development.  This is a position for a ‘Jack-of-all-trades’ programmer!
  
Preferred Skills and Experience:
• B.S. degree in Computer Science or equivalent experience.
• Experience building your own games or levels from scratch with the ability to demo these personal projects.
• Experience working in a 3D rendering environment or 3D game engine (i.e. Maya, 3DS Max, Unity, Torque, Unreal, etc.  )
• Solid working knowledge of Lua
• Passion for interactive fiction, narrative game play, and cinematography.


1) A minimum of 1 year of professional experience in the games business or 3 years experience developing games in any environment.

As of right now I have been working in the game industry since 2001. I joined my first company in 2003 then I joined Plastic Games in 2005. We had our first Disney contract in 2006.

2) Experienced with languages such as Lua, Actionscript, Perl, Python, and C.

Of the languages described I have the most experience with C and Python, I dabbled in Actionscript when I was teaching and Lua I am learning right now. At this point I am not intimidated by any 'C' style language, I know the core data structures, learning nuances of a language are usually covered in how to books. I find that having a good IDE is key to how successful you are at producing bug free code.

3)  Experienced at level building, prototyping, UI design, writing, and other game design elements.
Gosh, all of these concepts are the reasons I enjoy game development. I have done each of these for any number of products let it be a Disney attraction or something added to Bit Shifter (Plastic Game's flagship product)

4)Self-motivated and diligent, with good habits for tracking one’s own tasks, seeking out answers when needed, and actively participating in the entire production effort.
As an Indie there is no way you will succeed unless you are self disciplined and motivated. As for tracking tasks, I love marking things off my to do list, and well my white board might be the best thing I ever bought. My success in my Master's can to be attributed to learning how to ask the 'right' questions.

5)Posses strong knowledge of programming data structures, logic, and algorithms.
Check, let see this last year I implementing convolution for Computer Vision image processing, created a compiler, added a planner to Unity3d and developed a data set comparing Fringe & IDA* to A* path finding.

6)Passionate about being in a highly iterative environment with a desire to participate in many areas of game development.  This is a position for a ‘Jack-of-all-trades’ programmer!
 As an Indie it is crucial that you can assume multiple roles. Normally I am the game play programmer but if I am needed as a technical artist I do so, if the web page need fixing then that is what I do. When you only have two engineers on a team you tend to put on many hats. As a small company we have also learned that agile iterative development is the only way to find the 'fun' in a game.

7) B.S. degree in Computer Science or equivalent experience.
I have a Masters and over a decade of experience!

8) Experience building your own games or levels from scratch with the ability to demo these personal projects.
I'll have plenty of examples to show.

9)Experience working in a 3D rendering environment or 3D game engine (i.e. Maya, 3DS Max, Unity, Torque, Unreal, etc.  )
Yep, I taught 3d modeling, Animation, and Game Engines  over the years, and have worked with each of these applications.

10)Solid working knowledge of Lua
Check, I have already read many interesting articles about Binding C/C++ objects to Lua objects. Now I am gaining familiarity with the nuances, like .. upvalues, closures, & tables.

11) Passion for interactive fiction, narrative game play, and cinematography.
Eleven year ago I wrote this. I always felt games would be a great medium for story telling and cinematography.

So there you have it every point is covered, I have yet to find a job description that I fit more perfectly into.

Tell Tale Game you are my # 1

See you in eight weeks

Tuesday, March 11, 2014

Week 32 : Spring Break


Ahhh Spring Break a time to rest, sorta. I must admit it is now four days into Spring Break and I have worked during three of them. I figured it was a good time to get ahead of work, boy was I right. I have finished implementing semantic checks on my parse tree AND my tree is generating generic assembly code. Kazah , that means my RoseTree compiler is feature complete! I deserve a day of rest.

Today will be a lite work day, I will just generate a dataset for my AI project. In the meantime I'll continue my reading on LUA and maybe spoil myself by reading a comic. So is the life of a CS engineer.

On the jobs side I have been inundated by local recruiters, which leads me to believe I look good on paper. Now all I have to do is make it thought the interviews.

Oh and on that note, I am still waiting on TellTale to reach out so we can begin the process. Let's hope today is the day.



See you in nine weeks

Monday, March 3, 2014

Week 31 : Growth

It seems that every week I encounter another milestone. This week is the 9th week of the semester, which means I am in the second half.

I'd like use this week's blog to post things I have realized while in school

1) It's not the programming language it is the problem solving skills. Many people ask you 'what is your best programming language' to be honest it is all of them. I realized that it isn't the language so much as the tool you use. Without a good debugger it doesn't matter how good you are at programming a language. Eventually you will make a mistake, and having a good IDE is imperative to finding and fixing those bugs.

2) Ego is everywhere, I have always tried to be humble, especially in regard to coding. There are plenty of other coders who know more about this subject or that, it is important to be able to listen to them.  Being able to work with others is a fundamental aspect of teamwork. You will encounter conflicts, as an adult you must be willing to adapt. If the conflict persist, be the bigger man, don't let your emotions get the best of you, seek a supervisor it is their job to get things worked out.

3) Communicate! I can't tell you how frustrating is is working with someone who never provides updates. As team members we need to talk, daily. I see this regularly with students, especially those fresh out with a Bachelors in Computer Science. Most never have had to work with others professionally, they don't realize their silence is holding up work. For all of you out there, I need to know what you are doing because I don't want to do something you just finished and more importantly I need to know we are 'moving the rock'.

I think those are the top issues to being a successful programmer.

See you in ten weeks

Monday, February 24, 2014

Week 30 : Coding

Another huge milestone reached, this means only 10 weeks left to get employed, yikes!

All in all this next week is about coding, I spent the weekend building an infrastructure for a Token Ring Network. Now I must pass that code to my partner and hope she is up to the task of implementing voting and token passing.

So today I revisit the AI path finding project, where I'll implement a protocol for reporting successful runs to the console. After that feature all that is left is map sharing.

Later in the week I will pick up on the RoseTree Compiler. I am at the point where I am creating the Parse Tree, and although my process yields me a tree of some sort I think I can improve it to yield just a syntax tree instead of the full parse. Before I proceed coding I need feedback from the professor so I don't waste time on a golden fleece approach.

'How did the interviews go?' you might ask. Pretty well, I have been asked to visit a site and there is still activity on my LinkedIn account, I am hoping to get a few more interviews before Spring break starts and the next phase of the hiring process begins.

See you in eleven weeks.