Sunday, December 29, 2019

When You Don't Know, What You Don't Know

I've been in a rut for about the past six months. Not just a Delphi programming rut but a "life rut". What's worse, I knew I was in a rut and thought I was trying to get out of it only to realize I wasn't. Then this morning came and... I now know what I didn't know.

"I knew I was in a rut and thought
I was trying to get out of it..."

I was fascinated by a post in the Delphi Developer group on FaceBook written by a long-time VCL developer who is frustrated with making something work on an Android device. Admittedly, this person is not a GUI guy nor an OOP fundamentalist. I can totally relate to this. I have been using Delphi since it was Turbo Pascal 3. I am a traditional "top-down procedural" programmer who has been struggling to wrap my head around OOP fundamentals.

One of the comments on this post stopped me dead in my tracks. It simply stated... "Put your login form in a TFrame" and gave a link to a GitHub repository of FMX Cross-Platform-Samples.

I've seen some of this FMXExpress stuff before but never knew about this GitHub repository. At the time of this writing there are 99 well organized Cross Platform Samples available. I've been looking for an excuse to rededicate myself to learning FMX cross application development in Delphi and this GitHub repository looks like the perfect spot for me to learn.

"I really don't know what GitHub is or how to use it."

Now, I've heard of GitHub before and I've been to a few different GitHub repositories, but I really don't know what GitHub is or how to use it. This was the my first acknowledgement of YDKWYDK. So I jumped on and looked for a course about GitHub and found this one called "Learning GitHub".

About ten minutes into the course the instructor says "Projects allow you to visualize your work with Kanban-style boards." I've never heard of Kanban. What is Kanban? (More YDKWYDK).

"What is Kanban?"

I do another search within and discoverd a course called "Stay Lean with Kanban".

Wow, this Kanban stuff is really cool. In it's simplest form Kanban is a way to visualize and prioritize the workload. You visually see what you are doing and what needs to get done. You also eliminate waste by focusing on what's most important. This is done by limiting the work in progress.

I'm about a third of the way through this tutorial and paused it to write this blog because of another YDKWYDK episode.

As I was getting to understand this Kanban stuff it hit me. Why can't I use Kanban for my personal life?

"Why can't I use Kanban for my personal life?"

I can and I intend to do just that. There's a website for "Personal Kanban". There's also a book called "Personal Kanban: Mapping Work | Navigating Life".

It's safe to say I have climbed out of my rut and I'm getting back at it. What a journey today has been...

FB Delphi Developer > FMXExpress > GitHub > Kanban

Semper Fi,
Gunny Mike