6. Jan 2021 |

8/100 – composer, twig

Recommend:

Issues with guides. When installing twig then phpStorm cried that I have old version of composer. OK, sudo apt-get remove composer (because suggested composer self-update does not work) and sudo apt-get composer and the result is that I still have old one πŸ˜‚ Then I followed the composer installation guide and when trying to make it global it gives me wrong path in the guide. Correct one would be /usr/bin/composer and debugging it took me quite a while.

As you can see I have been messing around with the birthday reminder app.

Listened: Matt Mullenweg: Collaboration Is Key – the founder of WordPress on Knowledge Project podcast

Discovered: “Officials are investigating whether the company, founded by three Russian engineers in the Czech Republic with research labs in Russia…” is a way to describe JetBrains in The New York Times.

6. Jan 2021 |

7/100 – Birthday reminder app with sqlite and php

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.

4. Jan 2021 |

6/100 – exam

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).

3. Jan 2021 |

5/100 – angularjs, exam

Today I have revised for tomorrow’s exam (php, mysql, http etc). I’ll grab a cup of coffee and will end the day with an hour of AngularJS. Let’s call it a week then πŸ™‚

Offtopic: great podcasts I listened to today (while walking) were Hidden Brain – A Creature of Habit, Business Lunch – You Don’t Have to Buy A Whole Business and there was an interesting aspect about the evolution of the importance of blogs as authentic user generated content in Stack Overflow Welcome 2021 episode.

3. Jan 2021 |

4/100 – angularjs, php

Studied AngularJS from TalTech I399 JavaScript course (lesson 4 video). Quite fun and liked it. And did the test exam from previous year in web technologies.

One issue with studying this way is the lack of tasks that would allow the implementation of what is just learnt.

1. Jan 2021 |

2/100 – js

Finalized pwd generator and studied fetching. Today plan to learn working with the promise I get as a fetch return.

With my own json I got stuck here with CORS. Really need to build proper API at some point.

Recommend: JSONPlaceholder is a free REST API with a set of 6 common resources that you can use whenever you need some fake data.

30. Dec 2020 |

1/100 – js

Found #100DaysOfCode challenge on Tekkie‘s Twitter where he is currently learning Rust. I will try. Today is the first day.

Started with M. Kalmos JS course from 2018 πŸ™‚ I will try to do it as much as possible before it vanishes. Then it will turn into Distributed Systems (js and dotnet course).

I wanted to rebuild this in JS with some improved functionality but stuck into async-await and promises issue πŸ˜€ Classic. Need to continue tomorrow. At least I have something to do for an hour.

Update: It was simpler. For some (esthetic?) reason I executed the script before DOM was build. Rookie mistake.

15. Dec 2020 |

NETSDK1005 – update dotnet aspnet-codegenerator

If you are getting this error NETSDK1005 when trying to scaffold the webpages that says “Assets file [..] doesn’t have a target for ‘net50′” then please check if you have updated dotnet aspnet-codegenerator. Documentation is behind this link.

I got stuck to this for some time before figuring it out. I had updated dotnet SDK and runtime but not aspnet-codegenerator (which I was not aware of).

Though, now I am running into another issue – “A file matching the name Create.cshtml was not found” πŸ™‚ I have not yet figured out any solutions. But I see people running into it quite everywhere.

Update: I discussed it with the teacher and TAs and got to the conclusion that this is some kind on Linux specific aspnet-codegenerator issue. As it is used mainly for intoductory/demo purposes at this point then I simply proceed without demo content as there is no actual need for this.

Few useful commands for myself as a footnote:

dotnet --info

dotnet tool list -g (List your dotnet tools, useful)

Updates
dotnet tool update --global dotnet-ef (EF update to the latest, link)
dotnet tool update -g dotnet-aspnet-codegenerator (Update codegenerator, link)

5. Dec 2020 |

C# – cannot resolve symbol ‘UseIdentityColumns’

Getting build errors in DAL after InitialMigrate due to missing nuget package.

If you get such an error from Rider after initial migration dotnet ef migrations add InitialMigration --project DAL --startup-project WebApp that cannot resolve symbol ‘UseIdentityColumns’ then please check that you have nuget package Microsoft.EntityFrameworkCore.SqlServer v5.0.0 installed in DAL (data access layer) class library. I had it missing and could not figure out for some time and Stack Overflow did not have any threads available for it at this point.

I use C# 9, dotnet 5.0 and Rider EAP 2020.3 at the moment. If you use any of the earlier versions of dotnet or C# then please pay attention to getting the correct version of the package.