I&#x27;m a bit torn on this one. Some languages and concepts are harder than others. Some people are more visual than others. Some people would excel in low level languages where others would excel doing front end web dev where things are a bit more visual and often a bit less abstract.<p>The biggest thing with coding is finding something you like... Passion is the key here. Some things will come easier than others but if you&#x27;re passionate, even if you&#x27;re not a bloody genius and it takes you many times before you get something, you&#x27;ll spend enough time and eventually get it. And over time you&#x27;ll get better and better.<p>In 12 years working in the field I can say I&#x27;ve worked with a fair amount of devs. I&#x27;ve worked in very small software companies, medium sized companies and fortune 500 companies. I&#x27;ve worked with self taught devs and people with degrees. The biggest difference between someone who&#x27;s great at their job and not is not the education but the passion. Its not even the book smarts. Some people are smart as hell but just aren&#x27;t passionate and don&#x27;t enjoy what they do at all. Every year your job feels a bit different. Languages evolve, technologies evolve, libraries and frameworks evolve. You&#x27;re constantly working with new things. Some don&#x27;t feel 100% different, others do. Once you&#x27;ve learned a bunch, some new concepts are very easy to grasp. But at the end of the day, if you hate it, you probably won&#x27;t keep up and will quickly be obsolete. Most new jobs will require a lot of learning. If not new languages then new processes, infrastructure, code bases, etc. If you&#x27;re passionate enough to keep learning and patient enough to spend the time it personally takes you to grasp concepts, then you can learn.<p>Its not for everyone. True. But not everyone will be developing physics engines for games or deep learning algorithms.. Some coding skills are easier to grasp than others and most people can, given time, become decent at some of it.