A blog by J. Weyh
My very first entry! And I am feeling so overwhelmed...
However, I'm trying to fight that feeling by taking one step at a time. And I want to use this blog as a way to document those small steps. That way, not only do I get to recap all that I've done during a hard day of work (because when you feel overwhelmed because you haven't reached your goal yet, it's easy to feel like you haven't accomplished anything in a day, when in reality you did take a lot of steps towards that goal), but I'll also have the opportunity to look back on my progress in the future. So here goes:
I've started my work day by doing a couple of Java exercises on exercism.com. They are supposed to train Java basics. The exercises I've solved today dealt with arrays and lists. When submitting your solutions, the website uses AI to compare your solution to the most ideal one to give you feedback based on that comparison. For all 3 exercises, I didn't receive feedback because apparently my solutions were similar to the ideal solution. That made it seem like I had been wasting my time, which is why I started to feel frustrated. After all, I don't want to train what I already know!
That led me to researching other training options, and I signed up at LeetCode.com. There, I started a Study Plan called "Top Interview 150", where you get to work on popuplar problems presented as Coding Challenges in job interviews. That's more like it! ... or is it?
2 hours and a lot of sweat and tears later, I felt very badly about myself. The first problem I had been working on was categorized as "easy", and here I was, not able to solve it, or rather not able to solve it instantly. That made me feel frustrated with myself again, because now I felt stupid for not being able to solve an "easy" problem. However, whenever I feel "too stupid", I know I need to shift my mindset. In reality, I haven't had a lot of practice time with exercises that present a more difficult logic problem yet. All my uni assignment thus far were more focused on how to code something, not what to code. So it's only natural that a problem with a logic-heavy task will challenge me more - and will require more time to be solved. That's why I need to learn to exercise the same "Mindset of Steel" that I pride myself to have in other contexts such as gaming. Whenever I can't solve a coding task immediately, my thoughts can never be "Why am I so dumb?". I need to stay focused on the task, and accept that I need to work for solving the problem. And I know I can learn to have this mindset when it comes to coding, because I feel the very same ambition that I feel for gaming too - that's what's gonna help me keep moving forward.
This particular problem tasked me to merge two sorted arrays into one, plus a few details that I'm not gonna elaborate on now. After those two emotional-rollercoaster-hours I finally had a solution that didn't fail the 3 presented tests! In absolute delight I pressed "submit", only to find that another 57 tests would follow, of which I failed over 30. Oh well... Since I wanted to continue working with Spring Boot, I decided to keep working on this tomorrow. I already knew that my solution would need a lot of refactoring, but now I suspect I will have to rethink this from the ground up in order to cover all edge cases.
After that, I picked up where I left off with my Spring Boot project. This is the very first time I'm learning about Spring or Spring Boot, which is why I'm following a tutorial by Dan Vega. In this tutorial, we're setting up
a simple API for a very simple tracker web app and then connect it to a data base. These are my first few baby steps towards my first own web app project. And I've already learnt a lot! We've set up the basic structure
of the project (A Record class, the ApplicationContext, the Controller- and the Repository-Classes) and we've added the endpoints for the GET, POST, UPDATE and DELETE-Requests.
Today I also installed "Postman" in order to send POST-Requests in a convenient way. I believe we'll set up a connection to a H2-Database in the next step! However, I'm happy and grateful that Opa lets me use his server for
hosting my website and my database for my future project! I'll take a look at the H2-Database in order to learn a bit about that, but I'll try to move the tutorial project to MySQL as soon as possible in order to get the
SQL learning process started.
Well, as I said - when you write it all down, you realize that you've accomplished a lot more than what your feeling suggests! I'm happy with my work and progress today.
Edit: I totally forgot to include the work on the blog!
When I was done with everything else, I wrote this blog entry. Since I aim to present my blog entries as cards in a grid, I gave my first post its own page and used a link to that page on the homepage. I'm aware that these are incredible simple things - but I need to celebrate all progress, big and small.
I want to start including pictures of my blog, just to document the progress I'm making with learning HTML, CSS, PHP and SQL. But before I do that, I have to learn how to work with pictures in HTML and CSS. Wait a minute....
Okay, got it!
This is what my blog looks like on the day of my very first entry: