• entries
3
10
• views
3612

Journal of a non IT worker interested in gamedev

## Procrastination & Distraction

Well I thought I'd get a good bit through my book today but no. My mind started to wander as it does but I think this is down to me wanting to know things in more depth which isn't always bad.
I recall when I was trying to learn C++ years ago that I always wanted to go one level lower, so I'd want to know how my compiler knows what an int is and how it was defined to be. Learning in C# I'm finding this more of a 'problem' because I'm working on a higher level and part of me thinks well I really should go and see how MessageBox.Show was created as I don't really like using things I don't fully understand.
This creates an internal struggle in my head where the logical part of me says "you just want to make games, non professionally as hobby, does it really matter?" but then this other part of me wants to get into the nitty gritty, even if I cannot understand why I want to know some of these things. For example, I can happily display an image on a Windows form in 10s, I used to study pages and pages of my C++ textbooks on how to create a window using.... win32 something, but when I finally got that window up and some text I felt like I'd accomplished something. I don't get that feeling using C# which is a shame as I miss that sense of accomplishment. I suppose as I get better and actually start to make bits of a game then the feeling may come back but I take no personal pleasure from getting a ball to bounce in Unity. This makes me question if it's the journey or the destination that will bring me the most satisfaction. Realistically I know I'll never be able to create my own game engine so really I should be grateful that tools like Unity exist.
So I continue thinking about all this and then I look at the clock and an hour has passed and I've not learned anything.

## Head First books and general reflections

I know it doesn't work for everyone but I find the Head First C# (2nd ed) the best book for me hands down. It is not boring for me to read so I stay focused and actually look forward to reading it. I really wish they did one for C++ as well because that will always hold fond memories as my first attempt at programming as a kid. The last C++ book I tried to read was Programming Principles & Practice and I couldn't make the first chapter due to how utterly dull I found it, and I hated the formatting (which incidentally is a common complaint on the Head First books).

I am a bit wiser now though and understand that for what I want to achieve, C++ is just a massive obstacle to get there and it's just nostalgia playing tricks on me. I also wonder just where I would be now if I had stuck with it, I mean there would have been 13y of practice there, I may have even taught myself the maths I needed to make games which is what made me lose interest in the first place.
I was always reading advanced books before I even understood what a class was in C++, this made me impatient and not wanting to learn the basics as I wanted to make the pretty things. So I'm there with GBPxxx's of books like Programming Roleplaying Games in DirectX, Game Programming All In One, Game Programming Gems and many more and I cannot even handle pointers or know what a class constructor is. Wish I'd kept all those books actually.

I don't think I would ever have had the aptitude or ambition to make it as a professional, I never knew what I wanted to do as a kid and to be honest if someone offered me any job I wanted right now I still wouldn't know. I am lucky to have found my feet in the Logistics industry which proved to myself that I can do well when I want, at school I was a classic "Saint Retro could do really well if he tried" type but I simply wasn't interested.
I'm 29 now and I understand the potential for regrets (something I try not to dwell on) and even if I try and fail, or make something crap at least I managed something. I cannot say I'm not capable of doing something until I properly try, this must be my 5/6th time of trying to stick with it but I often get distracted by other things.
I recently started to read a great book called The Chimp Paradox that teaches you to recognise when your brain is being unhelpful and reconfiguring your thoughts to suit your goals, this has had a positive impact on my learning for sure. I hope one day to actually make a post in here with a screenshot or something for everyone to laugh at even if it was the best I could do.
I really do take my hats off to those of you in the industry, I can understand how hard it must have been to get there by looking in from the outside.

## Naming Consistancy

Something that has been bugging me is naming conventions. I see a bit of inconsistency in the book I read. Below is what I feel is right but I am aware that there may not be a global standard as such.int score, playerScore.void DoSomething().class Player, PlayerStats.
Objects is the one I'm on the fence about, it's a variable of sorts so this could be done as: Player john = new Player. The problem here is that when it comes to names like that, grammar dictates that I should capitalise a name, and I often do out of habit.
So Player John = new Player reads 'better' to me but breaks the variable convention.
I feel it may be an exception because when I look at say a message box code: MessageBox.Show(""), this has each word upper case which would be broken if I was calling a method for john such as: john.ShowStats();

What I also find odd in my book is that class fields are capitalised but they are just a variableclass Elephant {public int EarSize;public string Name;public void WhoAmI() {MessageBox.Show("My ears are " + EarSize + " inches tall.",Name + " says...");}}
I need to choose something and stick to it, I'm just wondering what others use. I suppose for what I'm doing it doesn't matter too much as only I'll ever be working on my projects but it's good practice to use something that most others do.
.