4 answers
4 answers
Updated
philippe’s Answer
Hi Yuanbiao,
There are nowadays several ways to learn things: online/by-yourself or physically in classes.
Could be after school activity or separate from school. The good thing with the physical attendance is that you can really get involved in group activity. Why it is important is because no matter how good you will be, if you want to achieve something as a good programmer, you'll need to think as a member of a project group. Forget the self-made programmer who invents the greatest idea in his garage. That just doesn't happen for 99.99% of the happy and talented programmers.
What's important is to expose yourself to problems to solve and group dynamics.
Programming is an engineering domain: you need to understand how hardware works as it helps you making optimized algorithm (for instance, using CPU native types, you can already gain performance without changing a line of your algorithm. Just using say a int32 instead of int16).
Then I think learning about low level language (assembler) or strong type language (C), object oriented language (C++) is also a plus as again, you will understand the actual way things work. Recent studies show how energy costing are all those interpreted languages and with the energy crisis that is going to stay, we'll have to stop coding like it doesn't matter. I still recommend you lean Python as even for video editing, it could help you automate things and there is a huge community with tons of things already created.
Finally, code, code and code. When I was young, I was spending my time coding things on my Amstrad CPC464...
Have fun
There are nowadays several ways to learn things: online/by-yourself or physically in classes.
Could be after school activity or separate from school. The good thing with the physical attendance is that you can really get involved in group activity. Why it is important is because no matter how good you will be, if you want to achieve something as a good programmer, you'll need to think as a member of a project group. Forget the self-made programmer who invents the greatest idea in his garage. That just doesn't happen for 99.99% of the happy and talented programmers.
What's important is to expose yourself to problems to solve and group dynamics.
Programming is an engineering domain: you need to understand how hardware works as it helps you making optimized algorithm (for instance, using CPU native types, you can already gain performance without changing a line of your algorithm. Just using say a int32 instead of int16).
Then I think learning about low level language (assembler) or strong type language (C), object oriented language (C++) is also a plus as again, you will understand the actual way things work. Recent studies show how energy costing are all those interpreted languages and with the energy crisis that is going to stay, we'll have to stop coding like it doesn't matter. I still recommend you lean Python as even for video editing, it could help you automate things and there is a huge community with tons of things already created.
Finally, code, code and code. When I was young, I was spending my time coding things on my Amstrad CPC464...
Have fun
Bonnie McGuire, MBA
Instructional Designer & Video Production Expert | Global Lead, Dell's Pride ERG for LGBTQ+ employees
6
Answers
Updated
Bonnie’s Answer
I can't speak for the programming but re: video production/editing - If you are a complete novice to video, start by familiarizing yourself with free tools - get a feel for how video editing works in general and then work your way up to Adobe Premier - the gold standard for video editing for commercial projects. We use a software called Camtasia where I work so that could be another option which is a little more user-friendly - but it does have a cost involved.
Start a YouTube channel of your own - pick a topic you are passionate about and that you could talk about for years to come - and then start posting videos. The videos will get better and better as you get more experience and they are a great way to play around with new concepts. Showing a potential employer the skills you have built on your own through a YouTube channel blows just listing "Adobe Premier" on your resume out of the water!
Bonnie recommends the following next steps:
Updated
Ratna’s Answer
You can start by taking courses which will help you to develop your logic sense. The syntax of programming languages is easy to learn but the most important part is to think of what logic should be applied to solve the given problem. Courses dealing with mathematics, science, statistics etc. are a good place to start with for you. As for the video editor piece, you can look for online courses in different platforms which will help to learn this skill.
Updated
Alexandra’s Answer
Hi, I would definitely say take up some tech courses if they are available to you. I don't think that is common in high school but maybe we should start making it common. If they are not common take a lot of math courses, as individuals in math translate well into programming roles due to the concept of dealing with algorithms. If your high school offers this up, take on things such as statistics, calculus and any of those challenging math courses. I would also argue science. Science is all about research and exploration. Working in tech requires a lot of this on the job. Video editor, I am not sure but read through class descriptions and check out courses that work with much of adobe and simulation products. I cannot remember a course I took where we had to simulate environments. But always read course descriptions because titles will fool you.
Thank you, Alexandra!
Yuanbiao