Learning Backend WebDev, Log #7 - Owning All the Rows

Let’s get on with today’s log! I studied only Django today. Was plagued with rains and power cuts and family stuff. Managed to work well and patiently though. What I learnt in Django land. Owned Rows, that opened my eyes into another dimension to begin with. While I knew that Django supports multiple users, it struck home today, that I was the one to write all the code that supported all those users. All the exercises so far, were just build a view, show some data. And now I realise, Oh! I cannot let Tom edit Jerry’s cheese details, nor can Spike get into Tom’s house. I need to be the one that guards against all that. Owned rows are one way I can do this. They will let logged in users edit or delete rows that belong to them only. Not the others. I subclassed stuff, which let me drill OOP concepts like inheritance a bit more. Finally, I learnt about DRY in action where I let the parent classes do all the heavy lifting, while I wrote a tiny class that let me tweak stuff just the way I liked it. Finally, finally, I learnt the amount of work Django saves me and just how much power is there under the hood. Focus Follow Up aka How did I fare today and how do I feel now at the end of the day? Did eight, 30 minute sessions of learning Django. Had three aborted sessions, when I got ridiculously distracted. If you want to know, why I abort and start over, I kinda go over this, in this post. So worked about the same time (or less) as I did yesterday. I feel like I learnt a bit more, than I did yesterday. I’ve begun writing scratch notes as I look at the videos. This makes it more slowgoing, but I internalise stuff a more. I think. I’ll see if this helps. Energy wise, this is still sustainable. I feel good still at the end of the day. Not drained and exhausted. Also I think I’m getting the grasp of this. I keep pausing the videos and then trying to predict stuff. I find myself being right, more and more frequently. Today was the first time I yelled at Dr. Chuck for typing in the model name wrong 😂 I only wish I had begun much, much, much earlier in life, when all these things were beginning and then grown with the Django project. I wish I was not as intimidated about programming being the domain of ‘smart’ people, when I was young. I wish I had more patience, as I traverse what seems like a never ending road of learning with no end in sight, with new things to learn, every half a mile. I wish I could get over this big mountain of basic fundamentals with a snap of my fingers. But I can’t. So I’ll do the next best thing. Show up. And do the work. P.S. Subscribe to my mailing list! Forward these posts and letters to your friends and get them to subscribe! P.P.S. Feed my insatiable reading habit. ...

June 16, 2021 · Mario Jason Braganza

Learning Backend WebDev, Log #6 - Focus Followup

Today, I did not quite care how much progress I made. Instead I focussed on getting my focus periods in, like I described yesterday. It’s about an hour earlier than when I usually call it a day. And yet, now that I am checking, I have ‘worked’ fewer actual hours than usual. And I have gotten a bit of exercise and housework done too! (This does not usually happen on a normal study day) ...

June 15, 2021 · Mario Jason Braganza

Learning Backend WebDev, Log #5 - Figured Out How to Focus

Hopefully, for the next couple of months at least. As amazing as Dr. Chuck and Brian Yu and Reuven Lerner are, I find myself falling asleep as I learn web development. I look at the videos, I seem to understand things, and then I zone out. A while later, 30 minutes have passed, three videos are over and I am wondering, just what the heck Dr. Chuck is on about. ...

June 14, 2021 · Mario Jason Braganza

Learning Backend WebDev, Log #4 - Beginning to Learn PostgreSQL

Like I mentioned the other day, Django is driving me batty! Ok, I cannot completely blame Django. A dental procedure has left me in quite a bit of pain and unable to focus. So I was wondering what else I could do, instead of Django and decided I’d learn PostgreSQL. I was tickled pink when I read that Postgres is actually Post Ingres. I am old enough to remember Ingres databases that ran on computers I supported as a junior hardware engineer in the late 90s. I was warned not to ever touch the database machine unless I was supervised :P I also attended seminars for another ‘Post Ingres’ database called NonstopSQL in the early oughts when I worked with Compaq as a support engineer for their laptops. Engineers would have open sessions. But what did a boy servicing laptops have to do with Tandem machines? How did they let me attend? That I will never know. Just that I found them fascinating :) ...

June 10, 2021 · Mario Jason Braganza

Learning Backend WebDev, Log #3 - Cross Site Request Forgery

Wasn’t quite well today, so took it slow. The Problem The only thing I managed to learn was what a Cross Site Request Forgery(CSRF) is, and how Django helps protect against it. The Wikipedia page describes it in painstaking detail, and if you want it described a bit more simply, then Jesse Ruderman does an admirable job. Computerphile does an even better job. I am using this analogy in my head. ...

June 8, 2021 · Mario Jason Braganza

Learning Backend WebDev, Log #2

I miss writing about what I learn. So I am going to try and begin again. I was too focussed on trying to learn all the stuff as quickly as possible, so I can go job hunt. But I realise, I need to strike some sort of balance between learning slow enough, so that I can learn and document and enjoy vs going full tilt to finish up the blocks that I need. ...

June 7, 2021 · Mario Jason Braganza