Ok… I have been coding for over a year now…
One of the few good effects lockdown had on me… Anyways… All of that started with just Code With Harry video of website development and slowly and steadily I started touching a lot of the parts of the word “coding”.
Just like digital marketing… “Coding” is also a very broad term…
People tend to think that someone has a high IQ if he is a coder… But the truth is even a donkey could be taught to code.
Knowing ‘coding’ is actually knowing a coding language like HTML, CSS, JS, Python, R, C#, Kotlin, etc.
But… Indians and Indian parents are sometimes very hard to argue with.
And so, to make things more complicated… I decided to write down this very very complex list of all the sub-streams and also, wrote beside the language required.
This is not an engaging post… this is an informative post.
Web Development:
The realm of web development encompasses the creation of websites and web applications, involving both the front-end and back-end aspects. The front-end development aspect focuses on designing user interfaces, while the back-end development aspect handles server-side logic and databases. A variety of languages are commonly employed in this domain:
HTML/CSS: These languages are utilized to construct the structure and style of web pages. PS CSS is more fun than HTML.
JavaScript: A versatile language, JavaScript is employed to implement interactivity and dynamic content. It’s also called JS.
Personally, I am a web dev and my projects are :
PS… wanna learn how to get free domains? Comment and I’ll drop a email :)
Mobile Development:
a. Android Development: This branch is centered around the development of applications for the Android platform. The primary language utilized here is Kotlin, a modern programming language renowned for its concise and expressive syntax.
b. iOS Development: This branch is targeted towards Apple devices, including iPhones and iPads. Swift is the primary language used in iOS development, acclaimed for its safety features and user-friendly nature.
Game Development:
Game development involves the creation of interactive games for various platforms. Two widely utilized languages in this field are:
C++: Renowned for its high performance, C++ finds extensive usage in game engines and complex game systems.
C#: This language is commonly employed in game development with Unity, a popular game engine celebrated for its ease of use and cross-platform capabilities.
The Cost of Game Development: Developing a AAA game can be a costly endeavor. Some games, such as "Grand Theft Auto V" and "Red Dead Redemption 2," reportedly had production budgets of over $200 million.
Data Science:
Data science revolves around extracting insights and knowledge from data. The primary languages employed in this domain are:
Python: Python enjoys widespread usage due to its extensive libraries, such as NumPy and Pandas, which facilitate data manipulation and analysis.
R: Specifically designed for statistical analysis and data visualization, R is commonly utilized in academia and research.
Machine Learning and Artificial Intelligence (AI):
Python: Owing to its comprehensive libraries, including TensorFlow and PyTorch, Python stands as the most popular language for machine learning and AI.
I personally finished the 15 hours course from Google Developers… you can do the same … but only do Machine Learning Crash Course if you are really into it. I took AI as my seventh language in Class 11.
MATLAB: Widely embraced in academia and research, MATLAB provides a plethora of tools and functions for mathematical computing and machine learning.
Desktop Application Development:
Java: Java is a versatile language used for developing desktop applications that can run on multiple platforms. It is renowned for its stability and security.
C#: Widely employed in conjunction with the .NET framework, C# enables the development of Windows desktop applications with a visually appealing user interface.
These examples represent merely a fraction of the numerous branches and languages within the expansive realm of coding, each tailored to specific application domains and requirements.
Embedded development:
involves creating software for embedded systems, which are specialized computer systems designed for specific tasks or functions. It typically requires a combination of hardware and software expertise to develop applications that run efficiently on constrained devices.
One of the best resources to learn embedded development is the "Embedded Systems - Shape the World" course offered by the University of Texas at Austin on the edX platform.
This course provides hands-on learning experiences using the TI MSP432 microcontroller and the C programming language. C is the most commonly used programming language for embedded systems due to its efficiency, low-level access, and portability.
Mastering embedded development opens up opportunities to work on a wide range of applications, from consumer electronics to automotive systems and industrial automation.
Cyber: (We all wanted to be this (: )
Cybersecurity is a critical field focused on protecting computer systems, networks, and data from unauthorized access, attacks, and breaches. To excel in cybersecurity, there are several key areas of knowledge to acquire.
Firstly, understanding network security is essential, including concepts such as firewalls, intrusion detection systems, and secure protocols. Additionally, knowledge of operating system security is crucial, as vulnerabilities in operating systems can be exploited by attackers.
Familiarity with encryption algorithms and cryptographic techniques is necessary for securing sensitive data. Knowledge of web application security helps identify and address vulnerabilities in web-based systems. Understanding secure coding practices and common programming vulnerabilities is vital for creating secure software.
Lastly, staying updated on the latest cybersecurity threats, attack techniques, and mitigation strategies is essential in this ever-evolving field. Continuous learning and obtaining industry-recognized certifications, such as Certified Ethical Hacker (CEH) or Certified Information Systems Security Professional (CISSP), can greatly enhance one's expertise and career prospects in the cybersecurity domain.
The central focus revolves around distinct branches of coding.
And well… there is a lot to come a lot to go. PS I haven’t written about Data Structures and Algorithms …
Some new things which would be making a huge impact in the future is BLOCKCHAIN REVOLUTION, DISTRIBUTED SYSTEMS, AI in our general lives, etc…
How can anyone start learning to code?
Step 1: Figure out where you want to go…
Don’t just randomly start CSS, don’t just randomly start learning Python, just because it is trending. Figure out What you want to do with coding.
Don’t be Sharma ji ka beta and run for CS in IITB. There are over 170 better colleges than IITB and only go for CS if you really have the passion for it.
Step 2: Figure out which languages you need.
Make a strategy and a goal of when you want to complete the basics… If you have money, go for a paid course. If you have self-discipline, go through YouTube and you will find plenty of resources.
Step 3: Start learning.
Act. And don’t just stop after learning the basics. This is something where I made mistake a long time. I learned and learned and then forgot to apply my knowledge in real life.
Go beyond that after you have enough confidence in your skills. Go out freelancing. go out DM-ing clients “Hey, just looked at your profile. and I think that you could really use some design work to get more sales on your website. I’m a website developer experienced in… “ {not a copywriting class… but you can use this basic template of approaching}
Earn money from your skills. Be rich. Get your own freedom.
And I hope that this is all. Perhaps, you will learn a lot more if you search it yourself. Well.. which field is your cup of tea? Let me know in the comments. And also, let me know in the comments if you are already a coder/programmer.
sayonara :)
how to get free domain?