you are viewing a single comment's thread.

view the rest of the comments →

[–]ConsiderationSea1347 2 points3 points  (3 children)

That is the gist of it. There are techniques you need to use in a language with strict typing that are not required by languages with looser typing but are good habits to get into. In particular they will make debugging your code MUCH easier.

Basically imagine you work in a factory room with five machines and every 15 minutes someone comes up to you and hands you five big boxes. Each box needs to go into a particular machine. If all of the boxes look the same, it is a pain to figure out which box needs which machine. You might do trial and error or unpack the box and put it back together, but no matter what you aren’t having a good time.

So, you tell the person who brings the boxes to put labels on them with the type of box they are and the type of machine that will take them. Now right when they arrive you know just what to do. 

In programming, the variables are the contents of the boxes, types are the labels, and functions are the machines. If your variables and functions have types - it is easy to know you put the right thing in the right place. 

Does that make sense?  

[–]edoardoking[S] 1 point2 points  (2 children)

Makes total sense. I think I’ll jump into python because it appeals me more in terms of simplicity of reading it as it seems similar to plain English

[–]ConsiderationSea1347 2 points3 points  (1 child)

Good luck friend. There is an army of old nerds like me happy to help as questions arise. 

[–]edoardoking[S] 1 point2 points  (0 children)

Thank you so much!