Programming in Unity – Intro
I have watched many beginner tutorials on programming in the last years. I looked into oldschool JavaScript, ES6, Phython, C#, some Ruby and some LUA but never really got over this basic content of:
- What are variables, and what kind of variables are there
- Doing math with integers.
- What are any kind of loops: for, while, foreach you name it
- If and else statements, sometimes even switches – which already felt advanced for me.
Once I got more into Unity I learned basic stuff again, and how the interface works and how to copy the code the person in the tutorial is providing.
Some years ago I have found that course on Udemy for Advanced Scripting in Unity. It introduced me to some concepts such as get and set, and singletons. But there was again a lot that I didn’t really understood, and mainly copied. I want to know how something works and not only what it is for so I can actually use it for several things and not just only for that case the tutorial was made for. I need modular knowledge!
And recently I didn’t got a job, it was the first one that included the need for some programming knowledge. And I have written some code at this point. I write scripts for Photoshop, or and I have created some helper tools for Unity. But I had to find out that at this point I am merely a scripter, not a programmer yet. And now I am going back to the basics. Not the basic basics, some advanced basics, I simply ignored for so long because I didn’t knew why I should need it and therefore I had no interest.
Now I am doing the unthinkable, I am learning by the books. … and some Video tutorials.. maybe mainly video tutorials.. but its theory, so its real learning ( I hope that it is not going to be too theoretical though).
As I want to get forward fast, I want to establish learning as a habit, I want to do that on a daily basis aside of my daily job.
For habit building there are some rules that James Clear defined in his Book Atomic Habits, that I want to take use of in order to achieve this habit.
Laws of Habit
- Make it obvious
- Make it attractive
- Make it easy
- Make it satisfying
I decided to go completely the Unity Dev Road and learning C# but in the direct context of the Unity Engine just to make it attractive to start with.
Because I know that I can accomplish all my software idea projects with Unity and since my ideas all include gamification or simply are games it makes sense for me to directly dive into C# with Unity.
Another reason why I don’t want to start with plain C# is that I am currently using a Macbook, and running plain C# programs on a Mac might be a hassle. So this decision also takes approach of making it easy.
A while ago I bought a new keyboard, one a programmer I knew was using and which he really liked. I actually fell in love with the look of it. It’s a Logitech K380. But he included a further note to his choice, he bought it with a UK layout, because the german keyboard is no fun to program with. Now whenever I look at this keyboard I actually am thinking of programming, just because the brackets are placed so neatly and the semicolon is just below my right pinky, which is really nice. But with that purchase I have made it obvious but also satisfying to begin with. I think it is also going to be satisfying whenever I learn something new and actually now how to apply it by myself for my own projects.
Something smaller to make it obvious as well: I have changed my desktop background to backgrounds that remind me that I am a coder and that I like programming, which is true.
And I have Unity on my taskbar to open it quickly but also always seeing it.
Leave a Reply