SJ
Saif, the blog was really a pleasure to read and very informative. Would want to share feedback on two points. For point 5: The function printAndReturnFoofoo where we have a named return type, we would get error if we try to initialize variable with same name inside the function, it is already initialized for the return, so we can update foofoo := "foofoo" to foofoo = "foofoo" For point 9: The example is missing the simplified version.