First 250 days of software dev - Part 21

5 min read

Day 201

This morning I revisited the concepts of prototypes and objects in Javascript. After the first break, I started working on making my code object-oriented. I don't think it will take too long, but I will try to write in a clean and modular way. I will try to complete the restoration by replacing old code piece by piece. I learned a little bit about how to build a building by simply building a shanty. Now, with the experience gained and a little bit of knowledge and experience of the work to be done, I will try to make it a building with a solid foundation.

Day 202

Today we continued to make the written chat application object oriented. Then, applications on bug tracking and knowledge base were investigated and compared. It was a bit of a quiet day. We will continue with a better pace on Monday.

Day 203

Today I tried to make a functionally written code object-oriented. In the last hour of the day I read an article about knowledge base. While I was reading it, the idea of "I can do that" came to me again, but I chose not to say it because of the possibility that I might be stumped trying to do it. But it really can be done if I can complete the tasks I have now.

Many ideas come to my mind, even outside of the subject I work on. Of course it may be absurd, but one of them is this: almost all visual technologies are based on a screen or a plane and the eyes that look at it obtain the light. I thought of a projector that could change the direction of the light source by tracking the movement of the pupil, a tiny projector with a predetermined maximum power (it shouldn't cause temporary or permanent blindness). Then I realized that this idea was unnecessarily complicated and difficult. Then came the idea of increasing the viewing angle to 360 degrees with cameras. When you mentioned the rocket project, I thought about what I could do with Arduino. Or I thought about how a small rocket simulation could be written on the web. I tried to imagine what I could do in such a simulation using technologies such as Webgl, three.js, or d3. Honestly, there are so many things that can be done... I don't know the priorities of my motivators at work or I avoid making myself rank them, but one of them is definitely that there is so much to do. I'm glad.

Day 204

Today, although not the authentication part, the general chat logic has been made object-oriented. Tomorrow the goal is to make the codes related to authentication and then start and finish the folderization issue. I think a lot of corrections were made today. I think that when the authentication part is completed tomorrow, there will not be many problems on OOP. If there are problems, I think they can be fixed without difficulty. Of course, I also need to make the backend codes of the SSO server object-oriented. When all this is done, the basic features of an application including knowledge base and bug tracking will be extracted. In accordance with these features, a summary software requirements document can be prepared, or a template of objects with general requirements and usage scenarios suitable for these requirements can be created before implementing the system. Of course, a report on these issues (bug tracking and kb) will also be written.

Day 205

Today it took more time than I expected to make the authentication part object oriented. Tomorrow I will try to complete the folderization part and then if there is time I will read about the knowledge base and try to improve my ideas.

Day 206

First of all, I apologize. For still not using the object structure at some points. Not because I can't apply it, but because I can't see where to apply it due to inexperience or lack of knowledge. Also, thank you very much for all the information you have given. Because I try to follow the information you have shown in all the structures I use, or I try to apply what I can learn and understand.

Today I did the parsing of the application's codes. It's not finished yet. I was stuck in the controller part. I will try to fix what I did tomorrow based on what you said.

I came up with a plan that I can do as a hobby after work, although I don't know yet how efficient and contributing it is. I bought a domain address and I want to create a web server myself on an old computer, starting from the most basic level and with the intention of a hobby. Then I will try to use cloudflare after simply serving content (like hello word) through the domain address. Then I will try to learn how to attack my own website and learn how to attack or infiltrate it with ddos or other methods (although I don't have much of an idea at the moment) and how to take precautions against it.

Day 207

Today, fixes were made in the backend part. At the beginning, everything was programmed in a functional way and there were a lot of global variables, but now we have evolved to a class-object structure. Tomorrow, the routing part will be completed and then the final arrangements will be completed. Next week we will try to complete as much as possible and have it ready to be delivered by Saturday.

Day 208

I finished the routing part today, it took a bit more time than I expected, I had a few bugs but I fixed them.

I've identified what I need to do during the week:
  1. There was an anomaly in the situation of getting out of the group. I will fix it.
  2. When the application was opened, the last chat content was shown by default. Instead, I will prepare a different content and add it to the system as presentation-start content.
  3. There is no design in the frontend during user input and output. I will try to have a UI with soft transitions.
  4. I will add the ability to delete files as well.
I should be able to complete these in maximum 3 days, and on Thursday and Friday I will try to make sure that the application is completely ready for delivery.

Day 209

Today, the deletion and saving of files sent within the application have been added to the system. It is not yet complete, but it is thought that the missing parts will be completed by the first break tomorrow.

Earlier, we tried to further optimize the position of the options when right-clicking on messages. The menu of options was revealed on the clicked message (exactly on the point where it was clicked).

Tomorrow the transitions during authentication will be completed on the frontend side. If there is time, we will try to fix one or two anomalies detected.

Day 210

The first thing this morning was to finish the unfinished part from yesterday (the part with functions like deleting files sent in chat). That's done. Then I tried to make the transitions between different routes quite smooth, I think I was able to do it (using fade-in fade-outs in the simplest way). I've seen it done using cache and web worker, but that complexity was not needed for now.

In addition, when I was checking the requested data by looking at the network to see if there was anything wrong, I saw that the browser was requesting the favicon.ico file, I investigated what it was and included it in the system. It is working normally now. But sometimes the browser requests the favicon.ico file and sometimes it doesn't, and I think it does this by looking at its cache. Or there is a different mechanism and I don't understand it yet.

Yesterday and today were good. I hope tomorrow will be even better. Today I wrote some new stuff. Tomorrow I will try to fix the bugs in the code I wrote before.