24 answers

How should someone with no programming or coding background and knowledge start programming and coding?

31
100% of 27 Pros
Asked Viewed 409 times Translate

Are there certain websites for learning? What subjects should I start with? Which languages are the most beginner friendly? #programming #coding #technology #computer-science

31
100% of 27 Pros

24 answers

Joseph’s Answer

11
100% of 8 Pros
100% of 1 Students
Updated Translate
As mentioned above there are tons of online resources available for getting started. My personal favorite has been Udemy. Regardless of the platform, look for beginner courses that feature several exercises and challenges. Just following along with lectures will only get you so far and can be tedious. I’ve found challenges to be more engaging and exploratory, both of which are very important when you are first getting started.
After building a basic familiarity with a programming language. The best way to continue learning is to work on projects. Pick out an idea that interests you and stick to it. Adding to an earlier list, some potential projects are:

1. Create a website with HTML, CSS, and JavaScript. – Linli’s answer
2. Automate tasks with Python. – Linli’s answer
3. Create a simple game (ex: tic-tac-toe, hangman, etc…)
4. Use programming to solve a puzzle (ex: Sudoku)
5. Program a Raspberry Pi or Arduino with sensor or motor attachments
6. Create a predictive model with an online dataset (data science programming)
Thank you so much, Joseph, for such an instructive answer. I'll make sure to do my best :) Effie M. Translate
11
100% of 8 Pros
100% of 1 Students

Maryana’s Answer

5
100% of 4 Pros
Updated Translate
Depends on what language you would like to learn - most people learn R/Python if they are interesting in statistical analysis/data science.

Here are some websites:

-Datacamp
-Codecademy
-Coursera
-Udemy

Thank you, Maryana! I'll definitely check those websites out :) Effie M. Translate
5
100% of 4 Pros

John’s Answer

3
100% of 2 Pros
Updated Translate
Effie different types of programming require different skills. For example, if you want to learn how to code a website, you should learn languages like HTML, CSS, Java, and JavaScript. Likewise, mobile app development requires Java (for Android) or Swift (for iOS). Choosing the right language is extremely important, which is why we have outlined some of the most popular among beginners below:

JAVA – Java is arguably the king of programming languages in the modern world. It is prevalent, versatile, and it is used for things like Android app creation and back-end web development. Java is quite a functional language for learning how to code for beginners. It is relatively simple to learn, it reads like English, and there is a lot of work out there for entry-level Java programmers. If you would like to learn Java as one of your first programming languages, I would recommend BitDegree’s interactive Java tutorial. This course will teach you the basic syntax and features of the language. It will show you the potential that you can reach when using Java, and it will also explore the creation of back-end web apps.

PYTHON – If Java is the king of programming languages, then Python is the queen. It is also super versatile, and it has a lot of different uses. A lot of academics and researchers use Python to create data analysis programs to help their studies. It is also behind the rise of new technologies like artificial intelligence and machine learning. It is easy to learn, and it is the most popular language taught in schools. That’s why it’s perfect for those who are looking for how to code for beginners. Learning Python can be easy if you put your mind to it. Start with a course like the Learning Python from Scratch tutorial or the Interactive Python tutorial. Both of these courses will give you an excellent introduction to the language and its functionality, allowing you to progress to more advanced studies at a later date.

RUBY – Ruby is a language that is becoming increasingly popular for full-stack web development. It allows for the smooth integration of both front and back-end components of a new website through the Ruby on Rails framework.If you have plans to become a web developer, I would recommend learning at least the basics of Ruby. This way, you will be familiar with the language, even if you don’t have to work with it directly. Start with the Learn Ruby on Rails course which focuses on what Ruby on Rails is and how it is used in web development.

HTML – Hypertext Markup Language (HTML) Is one of the simplest languages to learn and is where a lot of people start when learning how to code for beginners. If you want to get into front-end web development, then you have to learn HTML. Used for marking up text so that computers can understand it. HTML is very simple, and the best way to learn it is arguably to first familiarize yourself with the main components of the language through something like the Comprehensive HTML5 Tutorial or the HTML Coding for Beginners course and then to get out there and practice how to write a code for beginners.

CSS – Like HTML, CSS is essential if you plan on becoming a front-end web developer. In my opinion, it’s a good idea to learn HTML and CSS alongside each other through something like the Interactive Coding for Beginners course. This course will teach you the basics of CSS, HTML, web development, and how they all tie together. CSS is used almost exclusively alongside HTML to style and format content on webpages. It allows you to do things like change the color and size of elements, change the position of elements on a webpage, and change the entire layout of a webpage.

HACK SOMEONE ESLE'S CODE
Once you have a pretty good idea of how to code in a particular language, it’s time to delve deeper. One of the best ways to keep learning and to reinforce your knowledge of a programming language is to unpack someone else’s code. Find a program or code file somewhere – GitHub is a great place to start – and open it in your code editor. Work through the code and make sure that you understand every line and what its function is. Add comments if you need to. If you see something which you think could be done in a more efficient way or which you think you can improve, change it. Once you have finished, save your edited code and re-upload it so that other people can critique your effort.

KEEP LEARNING – In a way, programming languages are like any other language. They require regular practice if you want to become fluent in them, and you will forget things if you don’t practice using them. It is, therefore essential to make sure that you keep learning new things every day. Don’t fall into the habit of using the same coding patterns and syntax for everything. Instead, keep striving to learn new ways to do things and to improve your method. I try and make a habit of learning one thing every single day. This could be a new piece of syntax, a new way to write a line of code, or simply a better way of debugging a program. Learning how to code for beginners can be fun, exciting, and super satisfying Effie. When done right, learning how to code can provide you with valuable skills that you will be able to draw on for the rest of your life. However, learning how to code can also be challenging.

Now that we’ve looked at some of the most popular languages to help you discover how to code for beginners, it’s time to look at the best ways to learn them.

John recommends the following next steps:

  • Online coding courses: When done right, they will teach you some of the essential syntaxes of a language and how it is used. They are usually taught in a fun, engaging manner, and many of them allow you to write code directly in your browser as you learn.
  • Textbooks: Code reference books are a great resource that every single beginner should make use of. They contain all of the syntax and conventions of a language, allowing you to look things up when you’re confused or unsure about how to proceed with your code.
  • YouTube videos: Online videos and video tutorials are great resources that can help you get your head around complex concepts. You should use them alongside an online course or another method of learning how to code for beginners.
  • Download A Code Editor: They usually come complete with interactive development environments (IDEs) that will help you build clear, error-free code. Simple languages like HTML and CSS can be written straight into a simple text document if you find that easier.
  • Join An Online Community: There will be times when you need support. For example, let’s say that you’re learning a language, and you’ve come across a piece of syntax that you can’t get your head around. Joining an online chat board or coding forum will give you access to people who will be able to answer your questions and help you get past any problems you’re having.
Thank You Douglas. “The broadest, and maybe the most meaningful definition of volunteering: Doing more than you have to because you want to, in a cause you consider good. ” – Ivan Scheier John Frick Translate
Thank you, John, for such an all-rounded answer. I'll definitely keep these in mind :) Effie M. Translate
Your Welcome, Effie, It was my Pleasure. Nothing is impossible, the word itself says “I’m possible.” John Frick Translate
3
100% of 2 Pros

Linli’s Answer

2
100% of 2 Pros
Updated Translate
Websites like Coursera and Udemy are good start. Browse the topics that interests you and start learning!
Language wise, if you have no experience in programming language, they are basically all the same for you. Just have some faith in the language you pick and keep using it.

Here are the projects I do at free time:
1. Create a website with HTML, CSS, and JavaScript.
2. Automate tasks with Python.
This is the way I would recommend starting as well. You can get many courses for free or low cost to try them out. Patrice Coles Translate
Hello, Linli. Thank you so much for your answer ^^ Effie M. Translate
2
100% of 2 Pros

Douglas’s Answer

1
100% of 1 Pros
Updated Translate
How do you learn? By doing, by classroom and lab work, by reading, by working with a group/class?
Use those same modality to learn to program.

Start with questions - how do I do that or how did they do that?

Programming at its most simple form is instructing a computer
to work with data and devices.

Learn about general programming concepts.
What is syntax ?
What is a data type?
What are data structures?
What are control structures ?
What is a variable's scope ?
How do I build a program?
How do I run a program I've built?

How do I use a debugger ? Debugging is a very important skill.

Since a huge percentage of programs deal with data using databases,
Learn basic SQL (Structured Query Language)
What is a table, what is a column ?
How do I use a program to CRUD (Create, Read, Update, Delete) data ?
How do I use SQL to CRUD (Create, Read, Update, Delete) data ?

Read a lot of code, github has a huge collection of open source
projects/code

Make mistakes, create bugs on purpose to see how a computer responds.

Lastly, ** ask ** None of us were born programming or any other skill,
we had to learn them and find people who can answer our questions.
Set aside (schedule) time to learn, 4-10 hours a week

You've taken a good first step. Good luck.
Thank you, Douglas. I appreciate your answer :) Effie M. Translate
1
100% of 1 Pros

Kin’s Answer

1
100% of 1 Pros
Updated Translate
Effie, I think you could start by trying to learn the basic logic skills of the software, and I would recommend that you try the app called "Swift Playgrounds" to learn and Challenge yourself to solve all the problems. Swift Playgrounds is a revolutionary app for iPad and Mac that makes learning Swift interactive and fun. It requires no coding knowledge, so it’s perfect for students just starting out. Learning to code with Swift Playgrounds is incredibly engaging. Play your way through the basics in “Fundamentals of Swift” using real code to guide a character through a 3D world.

After that, you can try to learn how to code in Python. Many CS courses now also use this programming language to handle BIG DATA.
Thank you, Kin, for your suggestion. I am still waiting for my iPad Pro to arrive, but I'll download the app as soon as it does :) Effie M. Translate
1
100% of 1 Pros

Trevor’s Answer

0
Updated Translate
There are some great online resources like already mentioned: Udemy, LinkedIn/Lynda Learning, Coursera, Codeacademy.

I've been a professional engineer for 10+ years and have met a number of smart individuals that initially got their "feet wet" by doing an online coding class or what might work better depending on your learning style an in-person "coding camp". Some organizations that hold these 12-40 week programs to kickstart your future career in programming are: https://flatironschool.com/ , https://www.nobledesktop.com/topics/coding-classes-nyc , or similar.

Do some research on the code school and maybe even ask to get referred students that graduated so you can be introduced and ask them questions about the program directly.
Hi Trevor, I appreciate you taking time to answer my question. I'll make sure do to look more into it :) Effie M. Translate
0

Eduarda Luísa’s Answer

0
Updated Translate
Hi Effie!
Hope you are doing great!

I'm currently coursing Information Systems and I had the same questions when I started my course. I had no previous experience nor knowledge in programming, but I found some pretty cool ways of learning :)

My favorite website for learning is Udemy. The have all kinds of courses in there. And they are usually cheap.
LinkedIn Learning offers some pretty interesting courses as well.

Harvard offers a course about introduction to Computer Science for free! Yes, you heard it right hahaha
Here is the link if you feel interested in taking it https://online-learning.harvard.edu/course/cs50-introduction-computer-science

Oh, and YouTube also has some classes as well :)

I started programming in Java, but I think Python is a really good one to start with!

About IDEs: I use Eclipse

Don't forget: Learning a programming language is just like any other language. You gotta keep practicing, otherwise it is very likely that you will forget it. A great place to practice what you've learned is HackerRank!

Hope you found it useful :)
0

Shruti’s Answer

0
Updated Translate
Something that has proven most effective for me to gain new skills is enroll in a classroom experience. And hopefully in few months you should be able to do that. But the point here is that do not run alone, you want to be a part of a group with goals similar to you. That will help you get so much momentum and push without you effort-fully pushing yourself to work on a course. When you do things like attend class with your friends or work on a group project you gain so much more knowledge in the same amount of time that you would spend alone working on stuff. It is essentially a spring board to leap ahead in a subject your interested in.
Hi Shruti, thanks for answering my question :) Effie M. Translate
0

Samith’s Answer

0
Updated Translate
How should someone with no programming or coding background and knowledge start programming and coding?

Programming has become a necessary thing in many jobs to make the task easier.. Be it in accounting, scientific, research, engineering, networks, telecom... or even building your own website. Knowing Programming helps in many ways in each of the fields today. There are two main aspects of programming 1) Understanding programming in general, the logics, the methods, etc and 2) Understanding the programming languages. For a beginner, I would suggest to take up C Programming to begin with and once you are able to write simple programs.. Then take a guidance of a programmer to understand which programming language would suite your day-in/day-out tasks. Because, that way you can chose the programming language you want to go deep dive into. Once the programming language is selected, then take a task that you want to achieve using that language. Once you have a task to achieve, that will help you drive towards learning to meet your requirements. And there are lot of means to study the languages in today's world assuming you have internet access.
0

Kathy’s Answer

0
Updated Translate
Register with your local American Job Center. They have special programs for students who are doing career search as well as job opportunities that might be of interest to you. They offer support through job postings, job search workshops, and job fairs.

You can go to sites like www.careeronestop.org to find information on career exploration, training, and jobs. This site has tons of great information as you begin your search. You can look at different careers and what it takes for you to receive training, watch videos on different job types, and get questions answered.

You can also go to the U.S. Bureau of Labor Statistics at https://www.bls.gov/audience/jobseekers.htm to look at various occupations and learn about the current and future jobs outlook, advancement and training requirements, employment, salary, and a 10 year outlook for those occupations. There are also lots of other topics to explore on this page that will give you great information to help you get started.

Good luck!
Hi Kathy, this is really helpful information but doesn't directly answer the student's question. Where can someone who is looking to get started in programming look for support? Any resources you have for learning how to code would be helpful! Gurpreet Lally Translate
0

Morgan 🌐’s Answer

0
Updated Translate
People will say Python is the friendliest. It depends on how your brain works. I find it needlessly nitpicky and favor Javascript more.

It also depends on what you like to create.

You can learn on:

- Udemy
- FreeCodeCamp
- Youtuber tutorials (I like TraversyMedia and DevEd)

If you're still interested in Python, check out "Automate the Boring Stuff"; https://automatetheboringstuff.com/ (Free walkthroughs)
0

Darin’s Answer

0
Updated Translate
I'm in this boat right now. I'm pursuing an Associates in Computer Programming through a local Community College and have never even messed with any kind of coding. I'm doing it because I want to advance in the field with my current place of employment. I agree with those saying Udemy and Youtube but I also found that code.org has helped me some as well. My professor also showed me TIOBE to see what is the current popular programing language when I start to learn the languages. Best of luck to you
0

Harsha’s Answer

0
Updated Translate
There are plenty of video tutorials available in youtube. Pick a good channel and see them once.
Practice the codes by taking up challenge questions from websites like TopCoder , HackerRank , Codewars etc. These sites will help you tackle problem solving ability and make the code efficient!
0

Patrice’s Answer

0
Updated Translate
Here is how I would start learning to program or code with no background knowledge or experience:

1-First I would determine whether I have the temperament to do programming: Do I like paying attention to details, following through the logic of a problem until I've identified where the problem is, etc. You can search for career aptitude testing online if you want an outside opinion, but my thought is to just think about your own qualities and see if you have behaviors that make you think you'd like doing coding.

2-Next, I would try to get a feel for how I would like to apply the coding: Do I want to create a new game to sell in the App Store, do I want to learn how to program hardware like an arduino to blink and display messages, do I want to just find quicker, easier ways to do something I am already doing (like creating a set up steps to automatically update the contacts in my phone instead of typing each one manually), or maybe create a web site?

3-Once I know what I want to do, that will give me an idea what language I should use. If I just want to create a series of steps to automatically update my contacts, for instance, I might be able to do that with a scripting language or something simple, where if I want to create an app to sell in the App Store, I would most likely use the Swift language (but I'd probably use java for android). I would probably use python for general scripting, and HTML/Java to create a web site, etc.

4-I would take some classes that do whatever I was interested in from step #2 above, either through Coursera, Udemy, MIT, Codeacademy, YouTuve tutorials, Lynda.com, and any of the other references mentioned here. If my objective is to program hardware like an arduino or raspberry pi, then I would buy one of those and go through online Instructibles or tutorials. There are also some bundled projects that you can buy that will have all the necessary hardware parts, instructions on how to write sketch code, and pre-designed objectives of things for you to accomplish.

5-I would also suggest joining any groups that could help you to learn the language you choose. Search for Meetups, user groups, YouTube channels and online forums where people are doing what you are trying to accomplish. If you can identify people who are experts in the subject you are studying, subscribe to their YouTube channel or follow them on social media to see what resources they can offer.

6-When I find something that I really like, I try to identify someone an expert in that subject who is so advanced in what they do that I can barely understand anything they are talking about. Then I attend or watch a talk and go look up the words until I can get a general idea of what they are saying. This may take a long time, but there is no rush. I have been to Meetups where I went home and looked up five words each week until I could finally participate in the conversation and actually understand what people were saying.

*If you are not sure about exactly what you want to do in #2, then try a few different ones to see which ones you like best.

**Have fun doing it and learn from it. Even if you learn that you don't want to use that language, you are still gaining valuable info and you will be surprised later on when that information turns out to be useful even if you didn't pursue it further.

Patrice recommends the following next steps:

  • What do you want to do with the code you create?
  • What language would be best to achieve what I want to do with my code?
  • Find classes.
  • Find support (user groups, YouTube channels, learning web sites/apps, Meetups).
  • Find an expert who does what you want and learn from them.
Hello Patrice, thank you for such an instructive answer. I'll make sure to start with the first step as soon as possible :) Effie M. Translate
0

Tek Fai’s Answer

0
Updated Translate
There is an app which is good for beginners to understand how coding works. It is called "Swift Playground". It is free and you can download it in any apple device.
Hi Tek Fai, thank you for taking time to answer my question. Oh really? I'll definitely download it and give it a go. Thanks :) Effie M. Translate
0

Sriram’s Answer

0
Updated Translate
Hi there,

First and foremost ask yourself why you want to learn programming.
Then learn some basics of programming with some free sites with handson excise.


Salesforce has learntrailhead.salesforce.com which teaches programming in a more meaningful way.
It also provides badges as you complete modules and it can be big motivation with a developer community support around you.

Once you feel comfortable with basics of programming start researching on why you wanted to learn programming and learn about the tools you need to achieve your passion.
Self-Learning and Self-Research is an important aspect on programming.

Sriram recommends the following next steps:

  • Signup for TrialHead
0

Vanessa’s Answer

0
Updated Translate
I'd start with learning HTML to get comfortable, and then start working more
on other languages (my favorite is Python, and a lot of people say that this is one of their preferred coding languages).
Personally, I like using YouTube. There's tons of amazing tutorials on there, and I've personally
watched a ton of tutorials. Happy learning! :)
0

Sourav’s Answer

0
Updated Translate
This is a really tricky question, it can have multiple answers and every person with have his/her way of learning. Here is how i learnt coding and below is my journey:
1. STICK WITH IT - My first serious dive into coding was into java. And my first code that I wrote was on job. I FAILED miserably to even write a small program. It had lot and lot of errors. BUT one thing i did was not to GIVE UP. I had made sure googled the errors and rectified each and SUCCESSFULLY executed the code. it was tiring but was every SATISFYING which made me curious to know more.
Programming is not only about learning syntax but to stick with the problem and find solution as logic always remains the same.
2. STICKING TO SINGLE LANGUAGE BUILD STRONG FOUNDATION - In today's world, every other day a new language comes and we hear that the new language is better than the previous one. Trying multiple language, without exploring the one completely can lead to confusion. Stick to one language learn all its concepts. Logic and Concepts are mostly same in all language only syntax change. So build a STRONG FOUNDATION with one language and then try other. Dont go with crowd mentality.
3. TRY ONLINE CODING AT BEGINNING - Before beginning to code on local machines, i would suggest to learn basic fundamental and start coding on online platform like codeacademy.org so that you are frustrated with setting up the system even before writing a single line.
4. ONLINE TUTORIAL ON YOUTUBE - There are lot places to learn coding like coursera, udemy, etc but at beginning I would suggest learning it from youtube as you can get lot of contents and all are FREE. Try searching things like python for beginner or java for beginner. java course by telusko is really good for beginners.
5. BUILD A PERSONAL PROJECT: This is really important. Build something you like I would say if you like photography create something like board where you can put photos, edit it, change it. Or if you like playing video games create a small game like sudoku. Build something which will keep you motivated. Dont give up in between complete it. One more thing to consider here is to build something which is neither very complicated nor very simple. Build something which useful.
6. ENJOY GETTING HELP - While building project its normal to get stuck, not give up but try to solve it. Use google, stackoverflow, reddit, facebook group like freecodecamp, help and advice from people you know who can help, meetup etc
7. TRY TO ATTEND EVENTS: Participate in events like hackathon on hackerrank, hackerearth etc. This help you do networking and learn. Try to do free volunteering and code for them.

If you have managed to sail through all of the above then you are ready to be part of IT industry. To be among the best next step would be to make yourself better by learning advance topics like Data structures and algorithm, networking, scripting, etc. But i would recommend first make your foundations strong then its going to be a fun ride. Hope it helps you. :)
0

Pratim’s Answer

0
Updated Translate
Effie, I would suggest you to start with the online free course titled 'CS50's Introduction to Computer Science' available on edX which also has good assignments to learn from. This course would really be helpful if you have no background in Computer Science and coding. There are a lot of courses available on the internet and YouTube, but all of them may not feel beginner friendly. Hence completing CS50 first would give you an idea of what programming involves.

After that, dive deeper into Data Structures, Algorithms, Object Oriented Programming, Design Patterns, Database Management as these subjects form pretty much the base of programming and are almost always asked in interviews if you want to make a career out of it. You can also participate in Competitive Coding if you are interested in problem solving.

By then you would have an which areas of Computer Science you are interested in for example Machine Learning, Web Development, Data Science, App Development, etc. There are a lot of free and paid courses available online for these as well. Search for courses and read their syllabus and outcomes before starting.

Also, keep taking up projects (self or through internship) as practical knowledge is also as important as the theory.

All the best!
0

Veronica’s Answer

0
Updated Translate
Hi there, I'm not a programmer or work in that area but I use a platform that has free online courses and I remembered they have one about programming. The platform is called EDX and has coursed from Harvard, MIT, etc. THe website is www.edx.org

I've checked and they have quite a few courses related to coding and programming !! Take a look!

Hope it helps.

Veronica


Thank you, Veronica, for taking time to answer my question. I have already enrolled myself in those programmes, but I really appreciate your answer :) Effie M. Translate
0

Adam’s Answer

0
Updated Translate
There are lots of great answers here already!

I just wanted to point out that, for those interested in a business analyst career, a business analyst very rarely codes. A business analyst's traditional role is to accurately describe what end-users need the coder's code to do. To do that, a BA may be called upon to write some "pseudo-code," explained nicely here:

https://www.wikihow.com/Write-Pseudocode
Hello Adam, thank you for answering my question. I'll look it up :) Effie M. Translate
Hi Effie! You are most welcome. If you are interested in a business analyst career, versus a programmer/software engineer career, or are even just wondering what the heck the differences are between them, do not hesitate to ask! Adam Bank Translate
0

Jane’s Answer

0
Updated Translate
It may be challenging to determine where to start, if you have no prior understanding of the all the different programming language and tools out in the marketplace. So I recommend you do a few things. First, look to see what jobs are available and what kind of coding skills are they looking for. You don't want to pick up a program language that is somewhat outdated. Second, review the suggested websites that Maryana and other suggested above, and get a feel for how user-friendly is the on-line training.

I would also suggest taking a deeper dive into your question. If you are looking to learn how to code, to find a job, you may want to think about more specific free on-line training, such as Salesforce Trailheads:
https://trailhead.salesforce.com/en/home

It is a lot of fun, but also helps you to understand the different roles and career paths that working in the Salesforce ecosystem, will enable you. There are many companies who also will have Salesforce Bootcamp programs globally, for an entry-level applicant, so having some Trailheads points, badges, and Trailhead projects under your belt, will help with the application process.

Your job search on-line, should list "Developer" if you want that career path - and you'll see the different types of Developer roles that are out there, and which companies are hiring. I find that a more practical approach when starting a career in technology.

Good Luck!



Thank you so much, Jane, for taking time to answer my question. I really appreciate it, and I'll make sure to check them out :) Effie M. Translate
0

Julius’s Answer

0
Updated Translate
Start with intention(e.g. i want to build a mobile app for note taking), then find the programming languages suited to build that application. In this example, you may take training like Java for Android OS and Objective C for Apple OS.

If you want to build the foundational knowledge in programming and/or computer science you may want to visit this site https://github.com/ForrestKnight/open-source-cs/blob/master/README.md or https://github.com/ossu/computer-science. It is all free and online.
0