Made second post. Grouping by 25 days should be good.
(25.01) 3h 48min. I see that I have spent 19 mins of Docker (though I belive I spent more time on it to learn using MariaDB and phpmyadmin in Linux VM) and the rest is C#.
4h 38min. C# (database connection etc), Distributed Systems (DS) intro. School has begun and my Gitlab grid looks more impressive that ever before. It looks like it should have looked last semester (though I belive my Bitbucket dashboard would have looked good too if only would they have it).
Writing daily posts is getting challenge on its own. Therefore I will continue as one post.
(13.01) Started to revise C# lectures with an aim to finalize .NET app. Starting from console menu task to fully understand everything.
Also downloaded Heino Talvik’s “Containers and Microservices” from Echo360 and Moodle so that I could study it on my own (before it gets back into program in autumn).
(14.01) Got stuck into refactoring this app from mysqli to pdo and bring duplication check from db level to memory.
(15.01) In the morning I continued work with blog-aggregator project to get it from mysqli to pdo and front-controller model using Twig. Also update to the latest Bootstrap.
Most of the day learnt how to use VPS for the first time (by using Hetzner‘s 24 euros offer I found here). Managed to set up my first MariaDB server as Docker instance and access it from phpStorm. It must be the cheapest entertainment because I still have €23.97 remaining credits 😀
According to Goodtime and Toggl I did C# for 2 hours. Trying to understand Delegates.
1h 15mins of C#. Way too little (3 rounds of Pomodoro).
1h 20min of C#. Still trying to understand every character I am writing.
(19.01) 1h of C#.
(20.01) The day of Joe Biden’s inauguration 🙂 4h 25min C#. Trying to get out of the Menu but I don’t get it where I make mistake.I will ask the teacher tomorrow. I got it solved before going to bed. The issue was that return is used only when exiting. And I had to assign the value to the variable that was returned. Looked littlebit recursion-like thing for me.
2h 16min of C#. Got my TicTacToe to run in memory and update the board. Tomorrow I would like get to the end of this lesson.
1h 55min of C#. I also finalized my Youtube channel containing all 44 videos from Building Distributed Systems (2020, ICD0009). I downloaded 18GB of files from Echo360, glued audio and video together and uploaded 17GB of video to Youtube.
(24.01) 1h 59 min of C#. Getting to the point where I sort of understand the 2 first homeworks of previous semester’s C# it has taken me (to this point) one week with 18h 20min of work (tracking with Focusmeter app and then adding to my Toggl account). My teacher said in the lecture that he has coded estimated around 40-50k hours in his life. He also said that there is no talent in coding. 99% of the result is practice (hours put into writing the code).
Today I have to admit I did not open IDE somehow for more than just one line of code 😀 Got stuck into analyzing the logs and cleaning one of my website’s database.
All in One SEO plugin (do not recommend!) created around 3 million garbage entries into the WP+WooCommerce database with scheduled actions (mainly by aioseo_sitemap_ping). It is multiple times more than the whole site itself.
wp_actionscheduler_logs table had 1 973 366 entries
wp_actionscheduler_actions table had 912 058 entries
I emphasize that these entries are just unwanted garbage and do not create any value. In order to clear it you need to enter the database (through PMA or some other way) and run DELETE FROM table WHERE ...; SQL query. I can assure that deleting millions of entries takes some time from database engine 🙂
The only line I wrote today (except SQL queries) was add_filter( 'aioseo_sitemap_ping', '__return_false' ); to kill the unnecessary scheduled action.
As I sometimes lock myself out from Facebook I have no idea if any of my friends is having a birthday any time soon. I also already have difficulty remembering ages and birthdays of all my relatives (especially new ones). Before solving my personal CRM needs with Monica I decided to build something myself.
Today I worked on building a small web app using sqlite and php to save/edit/delete birthdays of my friends and family, calculate ages etc.
Most difficult was to figure out how to sort recurring (yearly) events starting from “next upcoming” with single SQL query. But I think I figured it out by using one SQL query followed small php loop (which has worst case complexity of O(n)) to find the place to split an array 🙂
SELECT id, firstname, lastname, birthday, (current_date - birthday - 1) as age, substr(birthday, 9, 100) as day, substr(birthday, 6, 2) as month FROM Persons ORDER BY month, day;
Hopefully I can get it ready enough at some point for sharing on Github. Something cool for the end:OpenAI has trained a model that can create new images – you just describe them in English. Mindblowing.
Felt myself strong and very fit before the exam. Not that strong afterwards 😀 But was fun 1h 45min rally.
Main learnings from the exam:
If you have a tree with only two levels of depth and ~10 entities then you don’t need to invent a universal search algorithm. Just two loops is enough.
serialize() in php creates a string that includes special characters. Therefore, if you are using front-controller pattern, you also need to encode and later decode it. Otherwise, data gets lost.
Found hilarious Github repo. If you are asking what C# for beginners course is in TalTech then in a nutshell: EnterpriseQualityCoding (just imagine that it is written in C# instead of Java). It is a FizzBuzz (very simple game) EnterpriseEdition (written in a complicated way).