Learning Python & Front End — 10 Month Progress Update — In love with JQuery and VS Code

Siraj Samsudeen
4 min readSep 8, 2020

I have been coding in joy in Javascript in the last month, trying to fill in gaps in my knowledge in JS as I try to apply the concepts I learnt to solve the problems that I encountered in the real-life project I am very grateful for.

When I first encountered Jquery in Angela’s web development bootcamp, I thought of it as just a way to type less — instead of typing querySelector and querySelectorAll, just typing $ seemed very good. But as I used Jquery more and more, I came to understand the thoughtfulness of its designers — how many little details they have put their attention into. Here are a few examples:

  1. when you use a setter function on a Jquery collection, it would work the same whether the collection has just 1 element or many elements. This is sweet in itself as I don’t have to bother with thinking about this in advance while coding.
  2. What is even nicer is if the collection did not any valid results. Normally, you would get an error if you try to operate on it. So, before accessing the contents, you have to do a check for its length with an if-condition. But not in jquery. No more defensive if-conditions littered throughout the code.
  3. You use the same function both as a getter and setter — example, jQuery(“p”).html() can work both ways depending on how many parameters you pass.
  4. Every function can take multiple types of parameters from simple strings, to functions to even Jquery collections. This makes up very smooth experience as a developer.

I think that I would learn a lot by reading through the source code of this great library to pick up good coding practices. But for now, I am focusing on learning it in depth and using it in my project. I am reading the Jquery in Action book now

Here is the amazon link to check the reviews — https://www.amazon.com/jQuery-Action-Bear-Bibeault/dp/1617292079

The book is quite dense and requires a lot of time to go through. But I like the challenge and making my way through it..

The other thing I have fallen in love with is VS Code — as I use the tool more,I find its sweet spots more and more. This month, I took the time for a deep-dive into VS Code with this short and sweet course in Front-End Masters:

I really wanted to understand how to improve my debugging skills in JS. Initially, I thought of going through the Chrome’s debugging console features, then I thought of first learning what is possible in VS Code for JS debugging. I am glad I checked out this course through which I learnt how to connect a page/app running in Chrome and debug inside VSCode. It was a pain for me to write code in VSCode, then copy it to Chrome console to test it and do some modifications there and then to sync it back. So, learning this was a HUGE value-add.

In addition, I learnt a number of useful items about Emmet to code HTML faster. Got to know better ways of doing many things in GIT inside VS code that I was doing using multiple tools with a lot of manual work. Worth the investment of the time.

Also, got to know how VS code can work with Docker, Databases like SQLLite and MySQL right inside VSCode and how it supports remote development, but it is not relevant for me now.

I also did a bit of deep-dive into Regex as I kept encountering a few situations where I had to use Regex. So, I watched 2 videos in YouTube.

This lecture by Corey Shaffer provided a very good intro to Regex using searching in a text file in Atom. Easy-to-understand and apply.

https://www.youtube.com/watch?v=EkluES9Rvak&ab_channel=O%27Reilly

This video was quite dense, but covered a few more advanced topics like look ahead, back references, etc. Ideally, I wanted to read a full book on Regex to master the advanced concepts but no time now.

Deep Dive or Surface Skimming?

At this juncture, the question I face quite often is whether I should deep dive into any topics/areas that are new to me so that I gain reasonable level of knowledge in a short time and then to proceed to work on the task at hand or I should just learn minimal by googling or reading on stackoverflow and moving on with the task at hand. To be very honest, I do not know what is the right approach. Somehow, I prefer approach no.1 — deep dive first. But given a project with deadlines that takes me into so many new areas, I felt the stress of managing my limited time with the deep dive approach. However, each time I do a deep dive, I get so much in return like the deep-dive into VS code this month.

So, I decided to have this simple heuristic — until I encounter 3 real situations/problems which require me to learn/master a new topic, I would NOT deep-dive. Rather I would continue to work on making progress in my tasks using experiementation.

--

--

Siraj Samsudeen

An entrepreneur who is coming back to coding after a gap of 16 years due to love of coding.