It's me! You often find me using the names Chojo or Lilly when I am somewhere around in the internet (Except here for no reason).
I am passionate about Java and SQL (yes...). Also like nearly everyone I want to do more stuff than I have time left.
I mainly work on plugins published under my Eldoria RPG organisation. Feel free to check it out. All my work is open source since I think it is important to share knowledge and skills. I also created a bunch of tutorials, which teach you how to work with databases. Check it out on my repositories.
If you want to contact me, the fastest way is via Discord (@chojo)
I also heard that cool persons leave a cool message in my Guestbook
You want a story? Well then you will get a story.
Click me OwO
My first attempt with programming was with 16. However I didn’t really got into it and slowly crawled through the first 20 pages or so of a book for java 6, which I got from a friend. After this I stopped and never touched it again.
After finishing high school I wasn't really sure what to do in the future. I had the dream of doing “something” with computers, because I was really into gaming and stuff, but I decided to take a year off and to something useful for humankind, just to be sure. After spending a year with explaining to old people how to send an email or removing several adware or other bad stuff from their pcs, I decided to spend a fortune amount of money on a private university to learn what I dreamed of: Gamedesign.
When I started studying in 2016 I was already 20 years old. I was a bit worried since some of my fellow student already had plenty of experience with programming. But it turns out that the guys which were the loudest actually weren’t that great. Also it turns out that gamedesign was way less programming and way more actual gamedesign. Our studies on this were very low level and just scratched the surface. Most of the stuff I learned regarding programming was mostly self taught. During my studies I worked with c# and the unity engine, which kinda taught me object orientated programming, but unity also encourages you to a lot bad stuff like singletons and stuff which “just works”. I also did some stuff with Unreal 4 but only used the visual node editor. No c++ here.
Beside the programming at university I also started with java programming in 2019. A bit more than two years after I started studying. My first project was a discord bot, which I would rewrite several times in the future and which actually taught me a lot about abstraction, what interfaces and abstract classes are, but that was way in the future.
After 5 semesters it was time for the internship semester.
So it was time for applications to strange people \o/ But first its time for a recap what I had learned until now, because this would be what really matters (I thought).
Languages:
- C# with unity style – Not really the stuff to be proud of
- Java – Just started that. I would call it solid basics
- C++ - I know that it exists...
- Python – completely unknown
- SQL – Uhmmm that looks like witchcraft.
Style: Object orientated programming was only topic in a very short course and not really taught actively. Also our projects were mostly focused on “please just work” and the code was never revised by any tutor so I did what I thought would be good (It wasn’t). So general constructs like abstraction with interfaces or abstract classes were pretty unknown and only used by accident.
Databases: I have no idea how these work. Seems complicated so I skipped it.
When it comes to applications I didn’t had much self confidence, but one of my professors reached out to me because he thought I would have the potential to do something different. He pointed me on a data science company which we visited when we learned stuff about AI (Pretty much the best module we had). I didn’t had any contact with data science till this moment, so I thought it really could be interesting. And boy it was…
The internship lasted one full semester with around 30 hours per week. My first task was to use some python framework and do some data transformation. Just one problem: I never used python and only heard of it. So I just grabbed one of my random ebooks the weekend before my internship started and read it. 200 pages of starter stuff. It kinda worked and I wasn’t this clueless on my first day. But since I was a gamedesigner we thought it would be better to stay in my domain for the start so I worked on a 3d dynamical generated data representation in unity. Beside my python script I wrote at the start to transform the data for the representation I didn’t had much contact with the company topics.
But since the prototype was done after some time we needed some new work for me. And now you guess what it was: A Database. The only topic I really tried to avoid the whole time. Now I needed to adapt to this new world and started with learning SQL. It was a long way and I started to love and hate it, but in the end only the love stayed. I also dived more into python. My constant companion was the database and python documentation. It was a tough journey, but in the end it payed of and I got and job offer from the same company to join them as a working student. I joined them and was finally able to ditch my old part time job and do some programming.
During my work I also improved my java skills by reading some books and a bunch of documentation. And also a lot of practice. Most of my projects were rewritten after some time. I also started to work more with databases in my free time, which really helped me also with improving at my work. Beside my discord bot I was working on I started with programming minecraft plugins, which made my love for games stay awake and I still had the chance to do some kind of gamedesign and game programming. All this just to decide that I want to stay at the data science company and don’t want to develop games at all. So I finished my bachelor and started working full time in the company where I still work today.
-
A lot of private programming in my free time. Not related to my studies at all.
In some weeks I spend 20 hours or more on programming of private projects. This practice allowed me to make a lot mistakes and just try stuff. -
Listen to people who know what they do.
I was lucky and had some friends which were way more experienced than me. These friends told me when I was doing bad stuff and also send me helpful links to documentations which taught me a lot of best practices. -
Ask when you have problems
Programmers tend to just try until it works and often take the first working solution. Sadly this solution is often not the best working solution -
Don’t trust YouTube
Most YouTube videos are bad when it comes to programming for several reasons. Most motivated people are the newest and don’t know what the best practise is. You can’t correct mistakes in videos and wrong videos are online for ages -
Use official sources
If you have a problem with java read the java documentation. Same for python or your database. All these languages and applications have very good documentation which will help you improving your skills. There are also a lot of good books out there which will help you learning new languages or using databases -
Find a buddy for code review
Find a friend. Ideally this friend is more experienced than you, but it can also be one with the same experience. Review each other code and look for pitfalls or silly mistakes and discuss about general design choices. Good software is 30% writing of new code and 70% rewriting and thinking about the implementation. -
Google
The most important skill of a programmer is google. We don’t know everything, but we know where to find it.