First 250 days of software dev - Part 23
6 min read
Day 221
Today I finished reading the PHP document (skipping parts like array methods). After that, I read and researched various software information, and then I started to look at the files you sent me, but I felt mentally exhausted and then I looked at some other topics. That's all for today.Day 222
Today I read the Lumen document and therefore Laravel a bit. Since I haven't used frameworks and similar structures for 9 months (or very, very little), I guess I didn't like these ready-to-use templates (I think I had a reaction because I encountered them for the first time, like the body's allergy to certain stimuli). Even if I didn't like it, of course I was going to learn/study it because it was a given task and it was accepted.I'd like to make one last description so that I don't get carried away. A framework is like a faith/culture. Developers who use the same framework find a common ground, get along with each other and live in tolerance and live happily in the future generations by continuing the same belief and culture. The language of this belief/culture is the spoken language of the developers. Some developers can be nationalistic in their beliefs/language. Some are multicultural by saying "make peace don't war", taking pollen from every language and belief and making honey. Laravel is like Judaism. It is an ancient faith and it derived from other faiths. And it opened the door to other beliefs. It has such a strong structure that it and the beliefs from which it derives have a very strong following. The language it uses is not very common anymore. And other languages are very popular. This does not cause the death of the language, but it decreases its popularity and decreases its community.
What did I do today? I got bored looking at Lumen's documentation and wanted to run the file you sent to start practicing. I couldn't get it to work. I was getting an error about the database. Then I read and followed the tutorial about writing a rest api using Lumen and created it myself for a simple practice. I accessed the data in the database from postman with the corresponding endpoint.
As far as I understand, lumen was created to create rest api and microservice (I don't know what it is). In the given file, there were views and therefore the concept left lumen and connected back to Laravel. That's why using lumen in the beginning didn't match with their warning 'don't use me in your new projects'. But I think something that works anyway has been created. I guess I'm too empty again.
Tomorrow I will try to run the file you gave me.
Day 223
Today, I first ran the first files you sent me by writing the necessary sql queries (adding database and tables). Then I tried to create objects in my mind by looking at the front-end of the actual finance application. It was not very brain-taxing because everything was ready in front of me. Then I looked and read Laravel's documentation again. Today was a bit calmer. Covid situations and the iphone thought took place in the mind a little bit.Day 224
Yes, using a framework may seem simple, but it may not be easy to understand the code written with that framework. Even though the Laravel documentation is very detailed and understandable, for a person who is not directly familiar with the concept, not including why the code is written can be a bit difficult for the next developer. The lesson I learned today was that if I write a piece of code, I need to explain why that code exists. Of course, when you read a piece of code, you can understand what it does, but trying to put all the pieces together can be difficult.Today I tried to understand one by one what the code on the backend side is doing. I saw some unnecessary extended code in some parts, but I didn't touch it. There were red warnings in some places (even in many pieces of code) and I haven't figured out how to make them work properly yet.
I haven't quite figured out how the system works yet. I'll try to figure it out, I'm trying.
Day 225
Today, I examined the application. I tried to understand the connection between the view files and the backend. Again, I tried to understand MVC and its implementation in laravel. Tomorrow afternoon, I will try to watch and understand how the application works from the first opening of the application, how it affects the model with the routes, controller and the modules it uses, and how the frontend code works.Day 226
Today I looked and worked on the accounting application again. I tried to understand how the system works. I tried to figure out the route transitions, what the controller does, the views and the blade engine. I tried to make a few very small changes.After a one-week break I felt like I had forgotten everything, but I think I quickly remembered a lot of things and adapted.
The most interesting part of the project for me was that the backend was in a different domain. I don't know why such a need arose. Maybe this usage has always existed and I just learned it.
I have a problem. I have not yet figured out how to access the database used in a live system using laragon and make changes. For example, logging in with the person information registered in the system. It is also possible to log in with person information that is not registered in the system. However, in the 2nd case, it should not be able to log in. I will try to understand and solve how this control works, how to access the data in the database directly with laragon, how to solve Cors problems, why I get an error about autoloader when I want to run the live system locally.
Day 227
I tried to fix a few bugs I saw yesterday today. First of all, due to the cors error, no data was being pulled from the backend api and not appearing in the front app. The relevant deficiencies in the request header were completed and the problem was solved. Afterwards, my body, which has never worked in a live application, was trying to access the database locally. I couldn't do it. Then I discovered a place where the app crashed. I saw that dozens of requests were being sent with axios when trying to access a url, which caused a "429 too many requests" error on several page refreshes. I haven't fixed it yet, but I think I can fix it tomorrow. There are two more problems: the interface changes as if logging into the system with the wrong login information, but then it returns to the login page. This should be fixed. There are also a few different front end bugs. We will try to complete those parts as well.Day 228
This morning, I fixed the "too many requests" problem I encountered yesterday, but I also saw the same "429 too many requests" error in a few places (it happens more frequently on page refreshes). I haven't made any changes in those parts yet. Then I fixed the problem with the login page being transferred to the main page after entering the wrong data. It won't log in and reports that an incorrect password or username has been entered. Then I did some theoretical computer science stuff (near the end of the working day).Day 229
I didn't make any changes to the accounting program today. I created two separate applications for both laravel and delumen and compared the code written with the most basic lumen and laravel application. I noted the added parts and tried to understand what was considered when making such an application. I read a few algorithms, logic gates, and questions and answers on Stackoverflow about php that I encountered or wondered about during the day. At the end of the day, I searched for the topic you mentioned. I tried to summarize what I remembered from a few articles I read, but I think I may have misunderstood or interpreted it. Now I will look at that topic again because I am curious.Day 230
Today I wanted to read some of the C programming notes (Kaan Aslan- C Programming Language Course Notes). Of course, before that I checked the accounting program again and fixed two parts that I missed (not sending form data when two buttons related to save or update are pressed in the frontend). I did not encounter any other problem that prevents or restricts the main functions of the program.