Latest news about Bitcoin and all cryptocurrencies. Your daily crypto news habit.
Jackson Brown, like some many others, gift us a great phrase respect vocation and passion: “Find a job you like and you add five days to every week”. In my opinion the fact to be developer is a job that we have to do it with vocation, i mean, the inclination or interest that a person feel inside to dedicate a determind way of life or job. The tech world grow every day, so if you hate learning, you are out…
If we have passion for what we do, why not try to be a better professional every day?
Right now, i will show you a list of topics that will transform you in a better professional. Is important to say, that learning all this stuff is not easy, and is not a fast travel, so we are going to need a lot of effort and perseverance.
The last thing I will tell you is that it is not necessary to be an expert in all these subjects, if you are, good for you, but as a developer if you are interested in learning more you will be better. The more knowledge you acquire your preparation will be better.
Mathematics:Mathematics is going to give you a logic necessary to program in a better way. Learn about arithmetic, algebra, discrete mathematics, geometry and statistics.Algorithms and data structures:For me, this is one of the three/four subjects that are fundamental. The more knowledge you have of algorithms and data structures (do not depend on the language) the more efficient you will be when it comes to solving day-to-day problems. Learn about piles, trees, ordering methods, graphs, etc.Databases:This is the other subject that, in my opinion is fundamental. Like as developer is probably that you are going to be in contact with a database manager. Study and learn about SQL and NoSQL databases and when to use each one. This theme will make you grow as a professional in an extraordinary way.
Computer architecture:
Know how to a computer works is are going to give you a top picture of how and why things work. Learn how the microprocessor works, hierarchy of memories, hard drives, etc.Operating systems:You must know how your operating system works. Basically the O.S is the most important software, learn how it works to have a better approach when developing. Learn about commands, memory management, etc.Networks:Nowadays everything is connected, therefore knowing about computer networks is fundamental. Learn about protocols such as TCP / IP, FTP, HTTP, how the Internet works, servers etc.Paradigms and Design Patterns:This will give you a better way to develop computer programs, in each language there are different (sometimes not) paradigms and design patterns. Learn about object-oriented programming, functional programming, reactive, SOLID principles, etc.English:If you are not a native english speaker, like me (this is a good oportuniy to say sorry if i make any english mistake), know about english is fundamental, specially especially technical english, because most of the books, documentation, blogs, articles are written in english. Learn to speak, write, read and listen english.Teamwork:Today is mandatory to know about version control to work as a team. Learn about Git, Github, SCRUM etc.If you are in a team, humility is fundamental, you can not put yourself above your teammates, because it is a TEAM. And a team needs everyone helping and learning every day.
Others: ◾️ Ux Design. ◾️ Computer security ◾️ Robotics ◾️ Leave another one.
I must mention a developer that i admire a lot, that gave me the idea to do this article: Alan Chavez
Thank you 😊
Abilities that makes you a better developer was originally published in Hacker Noon on Medium, where people are continuing the conversation by highlighting and responding to this story.
Disclaimer
The views and opinions expressed in this article are solely those of the authors and do not reflect the views of Bitcoin Insider. Every investment and trading move involves risk - this is especially true for cryptocurrencies given their volatility. We strongly advise our readers to conduct their own research when making a decision.