DEV Community

José Paz
José Paz

Posted on

Developer Diary #3 - Bus(y)ness

Hello and welcome!

This and last week were kinda busy for me with some mid term tests so development with personal projects went to an halt. With the little free time that I got I decided to start with the basis of Python and now this is what I think:

DUDE THIS IS HARD

Alright, alright not hard per se but coming from another languages with similar structures, learning Python is like WHERE ARE THE SEMICOLONS?! and that's the hard part.

Now I know why so many schools and universities teach you this language as your first, it's fun, and you don't have to think much to create something.

I'm lucky that I got a friend that hand me her classes when she was in first year of university, if I need something I just look at it! (or in the online bible known as Stackoverflow)

How do I learn a new language?

Since I learned Pascal like three years ago I always had like a self imposed test or challenge:

One week, starting my summer vacations I didn't had internet for some days, I was bored and decided to make a game, it was kinda simple, a game with a turn-based combat, in my mind was easy make that, I was sure how to make that... Now I see it and I'm amazed how I did it.

If you are curious you can see the source code here

WARNING

That code was made when I was in my first year, I didn't had any knowledge of objects nor that I could've made another document to hold the functions, I made that with everything I learned (and researched) in my first year.

Also it is in Spanish.

Anyway, the REAL first version I completed it in like three days and the rest of the week was tweaks and bug fixes until I got that version that I shared, I'm happy with it, it does still have some bugs but I'm not gonna go back to it... unless not in that language...

What do you mean?

Every time I learn a new language, the way that I feel happy with my actual knowledge of it or mastery is by remaking RDG (Role (the) Dice Game... because it is a Role-Playing game heavily based in a Random Number Generator that acts like a dice) in the new language and adding something new.

For example, when I learned C and C++ I added two more scenarios, an inn, somewhere where you could rest at some cost and a town that had three buildings and nine possible outcomes, it had an inn, a shop and a blacksmith, the last one was new too! and a city could have the three, two of them, one or none.

With Java and C# I finally knew what an object was so I revamped almost every mechanic of the game, specially the core of it, the combat.

It is kinda sad that I didn't save that two versions, I didn't know about git or uploaded somewhere because I didn't fully finish any of that versions.

With the Python version I want to revamp the classes. Since the Pascal version every class had something special but all of them acted the same in some way or another, I want with this version add more depth to combat, like abilities or something, maybe some other things but that's the main objective.


In a future I'm going to do an analysis of the original RDG and how it evolved with the time, maybe it's something interesting to see, let me know.

Feel free to share any type of comment, do you have some challenge to test yourself?

See you next week!

Top comments (0)