Writings

What is was like learning C

[BACK]

Earlier this year, I taught myself how to code in Java. And to be honest, I really like Java and I think it's quite useful in certain situations. But it's not optimal in all situations. Here, I'll speak about why I learnt C.

Why?

As you might've noticed from my earlier articles (you read them, right?), I'm quite the big fan of Windows XP. In my eyes, it's one of the best operating systems ever released. Naturally, I also browsed/participated in various communites related to XP/Old Tech in general. Eventually I stumbled upon the Windows XP Discord Server. They have this neat little channel there called #showcase-setup. One time, this user called 0penrc shared his Desktop which was a recreation of Windows 2000 on Linux. He invited me to his Discord and I began messing around with this desktop environment he created called Ice2k.sys. Fast forward some time, and I'm now helping with developing Ice2k.sys.

Ice2k is based on IceWM and a lot of the custom GUIs and Interfaces were created using Shell scripts and a mix of Tcl/Tk and Yad. We wanted to move on from this for quite a while, so I decided to learn C so we could eventually migrate the project to something more proper. If you want to read more about this, go to Projects > Ice2k.

How?

I personally don't like learning through long tutorial series on YouTube. As I already mentioned, I learned Java. The way I learned Java however, was through a book. I basically ran to my loca library and borrowed a book called "Java for Dummies" and learned it that way (of course, just reading a book won't get you anywhere. I coded along, messed around with the language while learning to better grasp the concepts, and started building stuff with Java after finishing the book to get better at it).

I followed the exact same approach whilst learning C. And to be fair, it worked out quite well. I could apply a lot of the same concepts I learned trough Java, i.e primitve types, loops, functions, etc. Pointers were a bit more difficult, but I eventually understood their way of functioning and their quirks. If the topic is already difficult, you don't want to use a book that explains it in a complicated way


Conclusion

While I haven't mastered C, I think it's a very nice and straightforward language that'll surely be useful in the future.

EDIT: I am done with learning C and am currently actively developing in it. I absolutely love the syntax and the way the language works.



Inspired by Cadence.moe, Sadgrl.online