What is some software and hardware that I should get familiar with if I wish to pursue a career in computer science?
I am a high school student who wishes to go into some sort of field in computer science. I am very familiar with Unity and C# currently as well as Blender.
There are two hardware platforms that will provide you an easy and inexpensive way to practice writing software while also learning hardware concepts.
For Computer Science, there is the Raspberry PI family of computer boards which are more of an actual computer than a microcontroller (I use one as a backup computer with internet browser). The Raspberry PI Model 4 and Model 3 are priced between $35 and $80 depending on the amount of memory (but you will not find any decent discounts at Aliexpress). The Raspberry PI Zero 2 W is priced at $15 and can do almost everything the same as the Raspberry PI Model 3 although it isn’t as powerful. In both cases, you will also need a power supply, cables, monitor, keyboard and mouse, depending on what you are doing with it. You can do a Google search for “Raspberry Pi projects” to see the vast amounts of ideas and free help examples.
For Computer Engineering, there is the Arduino Uno microcontroller which is used to control devices such as sensors, motors, and lights. It is inexpensive, priced at $3 from Aliexpress and $27 from the official Arduino store in the USA. You can also buy a small kit of support parts for about $10 to $25. Like above, do a Google search for “Arduino Projects” to see the extensive amounts of ideas, projects, help, and examples that are available free on the internet. All you have to do is pick a fun looking example and try it out – learning comes naturally! Note that there are also other versions of the Arduino Uno such as the Arduino Mega, Arduino Nano and the newest Arduino Uno Rev 4 (currently sold only in the USA).
I believe the Arduino Uno platform would be easier to learn (and less expensive) than the Raspberry Pi. Although it is a microcontroller, it still allows for both C and Python and it has a larger variety of free projects and help information. Hint: start using it with the C language which is its’ default language.
I would suggest you start working with one (or both) of the above boards. The concepts and the skills that you learn will apply to your university classes and eventually to your career. And they are a lot of fun!
The Microsoft Visual Studio (VS) Community is a great choice for an IDE, and the best part is, it's free! Download it here: https://visualstudio.microsoft.com/downloads/
After installing VS, you're all set to start crafting your own software applications. You can choose any programming language you prefer, such as Java, Python, C++, or C. If you're not sure where to start, Python, Java, and C++ are excellent choices for beginners.
Now that your tools are ready, it's time to brainstorm some programs you'd like to create. For inspiration and beginner-friendly projects, check out this Github post: https://github.com/arpit-omprakash/100ProjectsOfCode. Happy coding!
Shonda Mason’s Answer
Cloud Computing: Understand cloud services and platforms like AWS, Azure, or Google Cloud for scalable and flexible computing resources.
IoT (Internet of Things): Explore IoT devices and technologies, as this field is growing rapidly.
Computer Security: Learn about cybersecurity principles and tools to protect computer systems and networks.
Software Development Methodologies: Understand agile, Scrum, and other development methodologies.
1. Build something - Don't just learn a tool, focus on building something that is hopefully something you enjoy (gaming in your instance).
2. Choose a tool/framework/etc that solves a problem - Never simply pick a tool without first understanding the problem that it solves.
3. Read (a lot) - Github Code Search, hackernews, twitter/x and focus on people that are working in the field that you are interested in.
At the end of the day focus on things that you are passionate about (or provide you with value) to provide you with direction. A field in computer science or computer science curriculum will quickly follow.