Dec-13-2020, 04:35 PM
I have been reading the pdf book Think Like a Scientist. Here are a list of pros and cons.
Cons:
This could also be a pro but there is a lot of theoretical math that he speaks about. Good things I took all the CS Math courses.
The exercises at the end of each chapter lack more descriptive ways on how and what to use in the exercise.
Pros:
He is more concerned with writing code that is easier for someone to understand than taking a little hit on performance.
He also uses a lot of primitive data types, instead of using the built in functions that can decrease performance. Why use the
#Substitute internal functions when you can, e.g. math.squrt(2.0) is the same as
He likes to stay away from complex conditional and logical expressions. He doesn't recommend using the "not" keyword.
He also has some nice little tricks about programming in general. Things like #Intialize variables with condition included
I recommend this book to most everyone. However, if you are a beginner with no programming experience at all; I would suggest something else.
Cons:
This could also be a pro but there is a lot of theoretical math that he speaks about. Good things I took all the CS Math courses.
The exercises at the end of each chapter lack more descriptive ways on how and what to use in the exercise.
Pros:
He is more concerned with writing code that is easier for someone to understand than taking a little hit on performance.
He also uses a lot of primitive data types, instead of using the built in functions that can decrease performance. Why use the
sum()function when you can just use a running total such as
sum =+ num.
#Substitute internal functions when you can, e.g. math.squrt(2.0) is the same as
num = 2.0 ** 0.5I really like that a lot.
He likes to stay away from complex conditional and logical expressions. He doesn't recommend using the "not" keyword.
He also has some nice little tricks about programming in general. Things like #Intialize variables with condition included
sword_check = sword_charge >= 0.90 shield_check = shield_energy >= 100 if sword_check and shield_check: print("The dragon crumples in a heap. You rescue the gorgeous princess!") else: print("Your attack has no effect, the dragon fries you to a crisp!")Basically, he gives a different perspective from a mathematician. This really helps when wanting to use primitive data types instead of internal functions.
I recommend this book to most everyone. However, if you are a beginner with no programming experience at all; I would suggest something else.