Skip to main content
8 answers
8
Asked 1388 views

How do I start right now to become an programmer?

I a sophomore in high school, and i am interested in learning as much as programming language as i can specially Java, and python. i tried many youtube course, and i get the basics of all of them, what would be my next move in becoming fluent with all the languages. #computers #java #python

+25 Karma if successful
From: You
To: Friend
Subject: Career question for you

8

8 answers


2
Updated
Share a link to this answer
Share a link to this answer

Mark Robert’s Answer

Short Answer: Don't Overthink It and Just Start Programming


Slightly longer answer: You're not going to benefit from just learning syntax, nor are you going to benefit from programming anything without a purpose. Computer Science is incredibly important, but the computer is just a tool so studying CS is kind of like studying "Screwdriver Science."


Pick something else that you love, besides computers, and look there for something to build. Then, use building that as the impetus for you learning how to program. Then program, and program a lot.


Here's one of my favorite links: http://norvig.com/21-days.html

Thank you comment icon Thank you, the link specially helped! yogesh
2
0
Updated
Share a link to this answer
Share a link to this answer

Daniel’s Answer

In addition to all the good suggestions here already, I would take the time now to make sure you pay attention to other useful skills besides just rote programming:


1) keep taking as much math as you can in HS, it'll make some stuff easier later. This is especially true if you can get some proof based or graph theory courses under your belt (maybe in Uni though). Math will help with logical thinking.


2) take writing courses (like English writing, not programming writing). While it will not be directly helpful to programming at all, if you end up working as a programmer later, you will need to communicate with other people by writing a LOT, so the more comfortable you are with writing, the more effective you'll be. This will include just trying to convince people with short emails, but also detailing larger plans in many-many-long-pages of design documents. Depending on how good (or not) you are at writing already, this may be painful now, but it'll be very useful later.


At the very end of the day when you're programming a lot, writing new program code isn't the hardest thing you'll be doing. The hardest stuff will be
- reading other people's code to figure out what it does
- reading your own and other people's code to find bugs
- figuring out at a larger system​ scale what needs to get written
- convincing other people that your ideas are correct


That is to say though... they're harder AFTER you get really good at programming, so that's definitely step #1 (or step #2 if you wanna just focus on math first, which would be fine).

0
0
Updated
Share a link to this answer
Share a link to this answer

Simeon’s Answer

You should take a look at Kaggle. They have a lot of resources for teaching yourself new programming skills and practicing doing queries on public data sets. They also have coding competitions. You could also check out coding for gaming to get more practice. The channel Game Maker's Toolkit from YouTube runs a large game jam every year on itch.io. Sometimes, having a competition to participate in and specific short term goals are the best ways to acquire new skills.
0
0
Updated
Share a link to this answer
Share a link to this answer

Hanish’s Answer

There are different types of programming languages. There are strong typed and weak typed, object oriented and prototype based, etc. For someone who is starting out in programming, I would suggest a weak typed languages like python! What do I mean by types? Programming languages have data types which are variables that store data of various types like characters, integers, etc. python doesn’t have this that’s why it’s called a weak typed language which makes it easier to understand and code with.
0
0
Updated
Share a link to this answer
Share a link to this answer

Miriam’s Answer

Try to get an internship! Working on a coding project for someone else, that they really needed, helped me build my skills and fall in love with coding! This is an especially good idea if you aren't having an easy time finding projects at home by yourself :)
0
0
Updated
Share a link to this answer
Share a link to this answer

Rodney’s Answer

I'd suggest finding some open source projects that you find interesting which are written in the languages you are practicing. They should have a bug list associated with them. You might ask someone from a project for help in finding a good starter bug for you to get your feet wet in their code base. If you give a bit more information on what you'd like to work on (web apps, mobile apps, tools, games, etc), maybe others could recommend some specific projects...?

Thank you comment icon Thanks for your answer, and i would like to work on creating mobile apps and tools, also programing with hardware, like arduino, and such. yogesh
0
0
Updated
Share a link to this answer
Share a link to this answer

Lance’s Answer

I'm personally always an advocate of the approach where you just jump in, try something, and see what happens. To that end: think about things you want to program. In my case, because I do a lot of word puzzles, I started out by writing Python programs that would help keep track of the letters in a cryptogram, and one that would help me find words in a word search. If you've got other hobbies, think about ways in which a program could make things easier--even something silly, like "I play a lot of computer games and want something that will help me plan out upgrades/purchases/etc. in one of the games", will give you a chance to write something.


Another way to go about it, if you can't think of anything that you're dying to have a program for, is to look for various "programming challenges" online. http://projecteuler.net" can be a good starting point--after a while the problems require a lot of mathematical knowledge, but the starting ones like "Find the sum of all the multiples of 3 or 5 below 1000" are straightforward programming tasks--many of them ill-suited to brute force, that make you think about the right way to track information--that have clear answers, and whose answers you can then confirm. (I enjoyed http://adventofcode.com/ for this as well; the "competition" is over, but there are still 50 decent problems that can make for decent exercises in writing small programs.)

Thank you comment icon Thank you, i will try all the puzzles!! yogesh
0
0
Updated
Share a link to this answer
Share a link to this answer

Robert’s Answer

Knowing the basics of many languages is not nearly as useful as picking a language and learning to program very well using it. Algorithmic thinking, understanding object models, modular reuse, and modular design principles are more important to master than multiple languages at first. Once you have the concepts using one language, transferring that to another and learning the syntax is not that big of a deal.

Learning programming well is a process. And it almost always requires the practical application of your skills. In other words, writing real code for real problems that produce real results. Programming exercises only familiarize you with the syntax and concept. It's the same as the difference between taking online German lessons and actually having to walk into a restaurant and order dinner in Stuttgart.

So, I'd recommend finding an open source project that interests you on github. Look at its bug list. See if you can find an issue that you think is within your skill level to fix, and fix it. Test it. Submit the code back to the project. Over time, expand the number of projects you contribute to, and the difficulty level of the code you're working on. Start taking on feature or change requests in addition to bugs.

Alternately, find something associated with a hobby that you already enjoy and write some code to make something about that hobby easier or better. Then maybe you can open that code up to the community and, if there's enough interest, get additional exposure to new techniques by having more experienced programmers contribute to your project.

Good luck!
0