Sunday, April 3, 2022

Retirement was not what I thought!

I thought I would have tons for time and energy for reading, writing to this blog and getting my website brainycode.com together. I did not do the reading I planned in fact I have decided not to plan so much on what I should read and when, etc. Since I wrote my initial reading list I only read one book in one week and that was such an effort that I strained my eyes and could not read anything for two weeks afterwards. Moreover, the book I read was NOT EVEN on the original list of books to read!

I did love the accomplishment – reading a 400 page technical book in one week. The book was “Modern Full-Stack Development – Using TypeScript, React, Node.js, Webpack, and Docker” by Frank Zammetti. Since I don’t own the book and was following along as I read from OReilly Learning I managed to take over 164 pages of notes. The book was 12 chapters covering setting up Node.js, using npm, React, TypeScript, using Webpack, and Docker. There are two applications that are built – MailBag and BattleJong. The book would have been better if the reader was given step-by-step instructions and a deep-dive into every module used. I do realize that would require a 1000-page book.

I understood the MailBag application more but I felt there were so many things I would have liked to explore in more depth, SMTP and IMAP protocols and how to set it up using something like gmail (since anyone can get an e-mail address). The UI looked terrible so a bit more time with maybe material design or some cool UI tool would have been nice. I was able to build this application was not happy with the many modules we used with no real understanding. The second application BattleJong was a version of Mahjong which I did not know how to play. I could not get my personal version of the project to build I had to resort to using the book’s version in github. The book is dated now with React having moved to using Hooks rather than cluttering a project with functional and class-based components. I will be honest – I rushed the second project since it would have required more time and energy than I could spare by the end for the week to understand how everything was working and my eyes were failing. I am sure I could figure it all out. Again the book used modules it did not get into much discussion on how to really use. I am thinking of re-doing a version of the approach minus the TypeScript and taking into consideration that gmail will no longer access from remote apps using just login and password so an alternative approach should be explored.

In so far as writing this blog – as you can see I took several months off due to completing a Coursera course on React, learning Bitcoin, etc. It has been a disappointing three month of retirement. So what’s next for me? I actually get out of retirement some day this week. I am returning to my old job but now as a contractor. I am looking forward to it actually. Hopefully, I will find time to write a bit more and share what I am learning here or at brainycode.com.

Wednesday, January 12, 2022

REALITY CHECK

It is not possible for me to do 4 distinct activities for 2 hours a day. Why?
  • I take a break every 30 minutes (using alarm) So that a 2-hour activity actually takes over 3 hours (includes the break time)
  • I don't have the energy
I don't have the mental or physical fortitude to expend 8 hours of study or work time on four different things. This is a surprising admission. I have decided to build up to it. For now I will be okay with 2-3 areas of study in a day. I will fill the other time cleaning, organizing, reading trashy novels. For today I managed to do the reading (of a technical book) and working on Coursera course (I completed all the Postman tests for Assignment #2). It took hours to complete. There are over 30 APIs in the Confusion Server API.

Sunday, January 9, 2022

Younger Self vs Me Today

Programmer: Younger Self: I can code that up fast and understand the details later.

Me Today: I need to study and understand how things work, then I will code.

Me Today: Gosh I am so slow at this.

Younger Self: It may not be the best way and I may not understand everything but it works.

Me Today: It is the best way and I can prove it. Oh, it works and can be easily changed.

Younger Self: Show off!

Me Today: Gosh I am so slow at this.

I am a bit disappointed at my progress though my Coursera course – Full Stack Web Development. I have taken 3 weeks off from starting my third assignment. Given it’s complexity I thought it best to learn how to automate testing using Postman. Somewhere along the way I managed to break my program. I also discovered that course did not address logout with JWT (Java Web Tokens)! I then found a 6-hour video course on you tube User Authentication in Web Apps. The course did a good job in certain areas, for example, explaining how Middleware works in Express and cryptography concepts used for JWT. The course I felt did not take advantage of the parts of Mongoose and Passport to create and process the things it did best. It seemed that we programmed a bit too much and did not take advantage of existing modules and/or methods. I may be mistaken on this but a review of the Coursera Week #3 will confirm my suspicions. Bottom line – no one course will perfectly teach the material but going through different presentations of the same material is worthwhile.

I am a bit disappointed that I have made little progress in my book reading schedule. When I started “Love for Lua Game Programming” the first chapter stated an expectation of knowledge with Lua – which I did not have. So I started to read a book on O’Reilly Learning Beginning Lua. It took longer than it should have to figure out how to install Lua on my Windows machine. It is a bit off putting to have to download things from github repositories! It just felt a bit informal – like the old days when I went and downloaded and installed stuff I found on the Internet. I hate doing that.

For the second week of retirement, I plan on scheduling my day a bit more (except Sunday which is catch-up day or just planning the week day). Rather than doing one thing for too long so I get slower and slower at it I plan on splitting my day into four two-hour activities.

  1. Reading a technical book (8-10)
  2. Coursera course (10-12)
  3. Game Programming – Working on Lua and Love (12-2)
  4. Electronics – Arduino (2-4)
If I feel up to work in the 6pm – 10pm range I will read fiction or write.