>>105737285 (OP)It's not about IQ, but simply that you got used to interpreted languages, which can literally just do anything, because it's all done at runtime. In compiled languages you have to make certain decisions at compile time (in practical terms, it means "when you write code" more or less). That means you can't just pass arguments of whatever types to a function or assign whatever type to a variable, because when program starts it allocates memory for particular types and not others. So basically, when you come from an interpreted language like Ruby, you begin fighting types. You can try Crystal first, because it's very similar to Ruby, but still forces you to think about compile time constraints.
With Go it's actually easy to start and just write something because it's very retarded and simple. It's a bit more difficult later when program gets larger, but there are ways to manage that.
My advice: just accept the retarded mascot as your lord for a while and just do whatever the language demands of you. Become retarded and you will see the light.