New to coding
-
Hello! I'm new to the community, so hopefully this is the right place for this kind of question. I'm looking to start learning to code. I currently live in Toronto, Canada, and have worked retail for the last few years. When I was younger I had thought about getting into the CSs, but I fell out of interest with the idea. I do enjoy working on computers and used to spend quite a bit of my time playing around on them when I was a teen, especially in design, but otherwise have no coding experience beyond what they taught us in highschool. I have no undergraduate degree, and was thinking of possibly enrolling in a bootcamp to help me get started. There seems to be so many bootcamp options that is a bit overwhelming tbh, and many have quite a high price tag associated with them. (10-20k for 6 months) I have a friend who is a data scientist and he tells me not to bother with the expensive boot camps, but I feel as if that structure could help me as I'm starting off pretty much blindly. I'm looking for a bit of guidance to get started. Should I be enrolling in free introductory courses, doing self-taught tutorials, and what areas of the industry should I be focusing on. (job roles, languages, etc.) I know this is a super open-ended question, but any information at my stage is valuable information. Thanks guys,
Saying "I want to program" is like saying I want to cook; then asking what to cook. You at least need to start with what "type" of cooking: French, Asian, Italian, Fast, Cheap, etc. You narrow your options by picking a "genre", like: scientific, gaming, data analysis, business apps, etc. Then you can refine your plan and pick a learning strategy. (Coding is not fun if it's your only job and you're not making money with it.)
It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it. ― Confucian Analects: Rules of Confucius about his food
-
Thank you! Ambition isn't a problem for me, I'm good at setting tasks for myself and working to complete them on a daily basis and am able to keep a pace over time well enough. But I also want to maximize my time and chart a somewhat efficient course towards employment at some point. I know I'd rather focus on building things, (apps/web), as opposed to mining blocks of code for data, but that is still obviously a pretty wide open statement. If employment is the ultimate goal, would you suggest EdX or some of the tutorials on slant? Or both? I'll be taking my first steps in actually learning in the next week or two, regardless of what I ultimately gravitate towards, but I'd also like to maximize the usefulness of the commitments I'll be making towards learning after the initial introductions.
If employment is the ultimate goal, a course that offers a certificate like edX seems best to me. However web development is a broad subject, and you will have to learn several languages and preferably some SQL. It makes sense to find out beforehand where you want to work and what technologies are used, there are also lists with the languages that are most in demand, see: index | TIOBE - The Software Quality Company[^] Good luck, hope you don't get too scared :-\
-
Hello! I'm new to the community, so hopefully this is the right place for this kind of question. I'm looking to start learning to code. I currently live in Toronto, Canada, and have worked retail for the last few years. When I was younger I had thought about getting into the CSs, but I fell out of interest with the idea. I do enjoy working on computers and used to spend quite a bit of my time playing around on them when I was a teen, especially in design, but otherwise have no coding experience beyond what they taught us in highschool. I have no undergraduate degree, and was thinking of possibly enrolling in a bootcamp to help me get started. There seems to be so many bootcamp options that is a bit overwhelming tbh, and many have quite a high price tag associated with them. (10-20k for 6 months) I have a friend who is a data scientist and he tells me not to bother with the expensive boot camps, but I feel as if that structure could help me as I'm starting off pretty much blindly. I'm looking for a bit of guidance to get started. Should I be enrolling in free introductory courses, doing self-taught tutorials, and what areas of the industry should I be focusing on. (job roles, languages, etc.) I know this is a super open-ended question, but any information at my stage is valuable information. Thanks guys,
take a look at this "Introduction to Computer Science" from Harvard [Lecture 0 - Introduction to Computer Science List - YouTube](https://www.youtube.com/watch?v=z-OxzIC6pic&list=PLvJoKWRPIu8G6Si7LlvmBPA5rOJ9BA29R)
-
Thank you! Ambition isn't a problem for me, I'm good at setting tasks for myself and working to complete them on a daily basis and am able to keep a pace over time well enough. But I also want to maximize my time and chart a somewhat efficient course towards employment at some point. I know I'd rather focus on building things, (apps/web), as opposed to mining blocks of code for data, but that is still obviously a pretty wide open statement. If employment is the ultimate goal, would you suggest EdX or some of the tutorials on slant? Or both? I'll be taking my first steps in actually learning in the next week or two, regardless of what I ultimately gravitate towards, but I'd also like to maximize the usefulness of the commitments I'll be making towards learning after the initial introductions.
Ambition is not the issue. The real issue is the ability to handle stress and frustration.:mad: At a certain point, and it WILL come, you are gonna face a period where you get stuck. All programming languages and the development environments you use have the ability to frustrate you with the most simple things. I wish you good luck with your ambition, and I hope that you are not giving up.:cool:
-
Hello! I'm new to the community, so hopefully this is the right place for this kind of question. I'm looking to start learning to code. I currently live in Toronto, Canada, and have worked retail for the last few years. When I was younger I had thought about getting into the CSs, but I fell out of interest with the idea. I do enjoy working on computers and used to spend quite a bit of my time playing around on them when I was a teen, especially in design, but otherwise have no coding experience beyond what they taught us in highschool. I have no undergraduate degree, and was thinking of possibly enrolling in a bootcamp to help me get started. There seems to be so many bootcamp options that is a bit overwhelming tbh, and many have quite a high price tag associated with them. (10-20k for 6 months) I have a friend who is a data scientist and he tells me not to bother with the expensive boot camps, but I feel as if that structure could help me as I'm starting off pretty much blindly. I'm looking for a bit of guidance to get started. Should I be enrolling in free introductory courses, doing self-taught tutorials, and what areas of the industry should I be focusing on. (job roles, languages, etc.) I know this is a super open-ended question, but any information at my stage is valuable information. Thanks guys,
Back in the day I started with a book. I bought books on C then C++ and learned the basics from them. A lot cheaper than boot camps. After that I started taking CS classes at the local college where ever I was stationed at in the evening. Never finished my BS in CS but have been working as a dev for over 20 years now.
-
This is what I think... First Thing To Do Ask yourself what you'd like to build. Do you just want to build a game? Is gaming your thing? Then start a simple project that allows you to build a game. Would you like to build a journaling app? Something where you could save daily entries that store your activities? Then start a project that does that. My point is that _programming is boring_ (for the most part). So you got to... Keep yourself interested. However, if you choose a project and try to get to it, you very well may fail (simply because you don't have the skills yet). That's why the second thing you have to do is: Don't View Missing the Goal as Failure Even if you don't make it to the goal you will have learned a lot. The Project Will Guide You IF you do this, the project will guide you through learning the basics : setting variable values control structures (for, while, if, etc) etc... A Lot of People Who Just Try to Learn To Program End Up Quitting Programming is full of nit-picky details and annoyances and options. That's why if you just try to learn to program you may very well become bored and quit. So, start thinking of what you'd like to build and then go build it. Which technologies to focus on first? I suggest HTML5, JavaScript, CSS. Why? 1. It's everywhere. You can show your friends what you've done by loading it in a web page. 2. You don't need any special tools (just web browser and text editor) 3. No need to learn deep details (yet) like program compiling etc. Beware JS! However, as you start out with JavaScript, just beware. You can learn bad practices and do things that work that create problems in the future. Later you'll take the next step, but for now, just learn to get things working and promise to learn later why things should not be done certain ways. Good luck. PS - If you need some ideas of interesting projects, post back and I'll give you a couple. :)
I agree with the above. However, I took a different path. I got a book like O'reilly's C# book. I created every example in the book from scratch. Most of them didn't compile, so I fixed them. Once I got it to run, then I moved on. Just reading the book, I wouldn't have learned anything. When one book was done, I grabbed the next. My list of "things to learn" would include XML, SQL, and a C-based language (like C++, C#, or Java). Almost no matter what you are working on, these will be useful at some point. Many other skills and concepts build on these 3 basics. As for SQL, don't worry about the advanced stuff, but at least learn the basics. Everything uses SQL at some point. There is a free version for all the major database management systems (DBMS) (Microsoft, Oracle, MySQL, etc.). Bond Keep all things as simple as possible, but no simpler. -said someone, somewhere
-
I agree with the first commenter to your question regarding BootCamps. To become proficient in any language will take you at least 6 months of concentrated study. However, a programming language is just a starting point. You have to decide what you want to do with it. As a result, you should start your journey with a major language such as Java, C#, or VB.NET. All of these languages can handle the entire spectrum of development. However, you will have to ask yourself if you want to become a game developer, a business application developer, an internals developer (ie: compilers, word-processors), or enter the complex world of scientific and engineering development. In all cases, you will have to learn how to handle a database in your applications. Only with business application development will you need to learn how to develop for the Internet, though with other development genres there is some web development (ie: Internet based games). Your best introduction to programming can be found on one of the many online course sites such as Udemy, which have many introductory courses to programming languages as well as the other aspects of development. In any event, if you can tell me what your aspirations are, I could provide you with some suggestions on how to begin. Please contact me at my email address at your convenience...
Steve Naidamast Sr. Software Engineer Black Falcon Software, Inc. blackfalconsoftware@outlook.com
-
Hello! I'm new to the community, so hopefully this is the right place for this kind of question. I'm looking to start learning to code. I currently live in Toronto, Canada, and have worked retail for the last few years. When I was younger I had thought about getting into the CSs, but I fell out of interest with the idea. I do enjoy working on computers and used to spend quite a bit of my time playing around on them when I was a teen, especially in design, but otherwise have no coding experience beyond what they taught us in highschool. I have no undergraduate degree, and was thinking of possibly enrolling in a bootcamp to help me get started. There seems to be so many bootcamp options that is a bit overwhelming tbh, and many have quite a high price tag associated with them. (10-20k for 6 months) I have a friend who is a data scientist and he tells me not to bother with the expensive boot camps, but I feel as if that structure could help me as I'm starting off pretty much blindly. I'm looking for a bit of guidance to get started. Should I be enrolling in free introductory courses, doing self-taught tutorials, and what areas of the industry should I be focusing on. (job roles, languages, etc.) I know this is a super open-ended question, but any information at my stage is valuable information. Thanks guys,
Everyone has their own preferred way of learning, but I strongly prefer tutorials in which I set up a compiler or IDE on my own computer and create a functioning app. You first need to decide what interests you, pick an appropriate language, then pick a tutorial.
-
This is what I think... First Thing To Do Ask yourself what you'd like to build. Do you just want to build a game? Is gaming your thing? Then start a simple project that allows you to build a game. Would you like to build a journaling app? Something where you could save daily entries that store your activities? Then start a project that does that. My point is that _programming is boring_ (for the most part). So you got to... Keep yourself interested. However, if you choose a project and try to get to it, you very well may fail (simply because you don't have the skills yet). That's why the second thing you have to do is: Don't View Missing the Goal as Failure Even if you don't make it to the goal you will have learned a lot. The Project Will Guide You IF you do this, the project will guide you through learning the basics : setting variable values control structures (for, while, if, etc) etc... A Lot of People Who Just Try to Learn To Program End Up Quitting Programming is full of nit-picky details and annoyances and options. That's why if you just try to learn to program you may very well become bored and quit. So, start thinking of what you'd like to build and then go build it. Which technologies to focus on first? I suggest HTML5, JavaScript, CSS. Why? 1. It's everywhere. You can show your friends what you've done by loading it in a web page. 2. You don't need any special tools (just web browser and text editor) 3. No need to learn deep details (yet) like program compiling etc. Beware JS! However, as you start out with JavaScript, just beware. You can learn bad practices and do things that work that create problems in the future. Later you'll take the next step, but for now, just learn to get things working and promise to learn later why things should not be done certain ways. Good luck. PS - If you need some ideas of interesting projects, post back and I'll give you a couple. :)
Well said. You covered some thoughts I had but above and beyond and better than I would have been able to. So, yes, ditto on this. OP, you are probably going to want to go with web skills and yes, pick a project to help you learn. And always make sure to learn how (the tools, and get setup) to debug your code as you will hit a wall otherwise and not know how to overcome it - a debugger will bust through that wall and keep you moving.
-
Hello! I'm new to the community, so hopefully this is the right place for this kind of question. I'm looking to start learning to code. I currently live in Toronto, Canada, and have worked retail for the last few years. When I was younger I had thought about getting into the CSs, but I fell out of interest with the idea. I do enjoy working on computers and used to spend quite a bit of my time playing around on them when I was a teen, especially in design, but otherwise have no coding experience beyond what they taught us in highschool. I have no undergraduate degree, and was thinking of possibly enrolling in a bootcamp to help me get started. There seems to be so many bootcamp options that is a bit overwhelming tbh, and many have quite a high price tag associated with them. (10-20k for 6 months) I have a friend who is a data scientist and he tells me not to bother with the expensive boot camps, but I feel as if that structure could help me as I'm starting off pretty much blindly. I'm looking for a bit of guidance to get started. Should I be enrolling in free introductory courses, doing self-taught tutorials, and what areas of the industry should I be focusing on. (job roles, languages, etc.) I know this is a super open-ended question, but any information at my stage is valuable information. Thanks guys,
I see someone mentioned Harvard's courses. That reminded me that a while back Stanford put all their CS courses online freely available. And they cover the types of programming, not just how to program. So, I think these may help you in deciding what you want to do (a common theme in answers you are getting) and then how to learn what you decide. Here is an article that talks about the Stanford courses that looks helpful. https://medium.com/the-mission/how-to-learn-to-code-for-free-at-stanford-and-make-six-figures-in-under-1-year-4bf95baf793b[^] From here you can get to the courses themselves.
-
Hello! I'm new to the community, so hopefully this is the right place for this kind of question. I'm looking to start learning to code. I currently live in Toronto, Canada, and have worked retail for the last few years. When I was younger I had thought about getting into the CSs, but I fell out of interest with the idea. I do enjoy working on computers and used to spend quite a bit of my time playing around on them when I was a teen, especially in design, but otherwise have no coding experience beyond what they taught us in highschool. I have no undergraduate degree, and was thinking of possibly enrolling in a bootcamp to help me get started. There seems to be so many bootcamp options that is a bit overwhelming tbh, and many have quite a high price tag associated with them. (10-20k for 6 months) I have a friend who is a data scientist and he tells me not to bother with the expensive boot camps, but I feel as if that structure could help me as I'm starting off pretty much blindly. I'm looking for a bit of guidance to get started. Should I be enrolling in free introductory courses, doing self-taught tutorials, and what areas of the industry should I be focusing on. (job roles, languages, etc.) I know this is a super open-ended question, but any information at my stage is valuable information. Thanks guys,
There are many ways to change careers and become a successful programmer. I have trained dozens of programmers using this method. It is not the quickest, nor the easest but all of the people I have trained have ended up being successful senior and principal-level programmers at major software companies. The first step you should take before you even begin to think about programming is to learn how the computer hardware is organized, how information moves between disk, memory, video, network, and so on. Either sign up for an introductory computer hardware course or read some of the tutorials about CPUs and computer hardware that are freely available on the internet. The next thing you should do is learn some assembly language. You don't need to spend a lot of time on this a few hours and writing a couple of hello world type apps will suffice. Your goal is to understand what the language the CPU understands and what it can and cannot do. This provides you with a foundation on which you can build your skillset. The next step as many have stated is to decide what area of programming you want to focus on. Learn all you can about that area. While you are doing this read lots of code. Yes, read code don't bother about writing it yet. While you are reading other people's code spend some time analyzing it. What did the code do well? What might have been done differently what problems might exist? What do the authors say about their code? This will help you to understand how code is put together, how it solves problems, and increase your knowledge of algorithms. While you are at it get the Algorithms in C (Computer Science Series). Study all of these. Finally, pick a program in your chosen area to solve and begin designing a program to address this area. Figure out what options should be available, how these options will work, and how they connect together. How will information be stored? How will it move from place to place? What will the user experience be? Once you think you understand how the program will work and operate you can begin writing it. Expect your initial progress to be slow, expect to discover that things don't work the way you thought they should. Regardless, keep at it. Eventually, you will work through the issues, learn a lot about programming, and build confidence. At this point, you can start looking for entry-level positions in your area of expertise. Open source and publish your solution. Many employers love being able to see good code and documentation as it lets them understand how y
-
I agree with the above. However, I took a different path. I got a book like O'reilly's C# book. I created every example in the book from scratch. Most of them didn't compile, so I fixed them. Once I got it to run, then I moved on. Just reading the book, I wouldn't have learned anything. When one book was done, I grabbed the next. My list of "things to learn" would include XML, SQL, and a C-based language (like C++, C#, or Java). Almost no matter what you are working on, these will be useful at some point. Many other skills and concepts build on these 3 basics. As for SQL, don't worry about the advanced stuff, but at least learn the basics. Everything uses SQL at some point. There is a free version for all the major database management systems (DBMS) (Microsoft, Oracle, MySQL, etc.). Bond Keep all things as simple as possible, but no simpler. -said someone, somewhere
Matt Bond wrote:
I agree with the above. However, I took a different path. I got a book like O'reilly's C# book. I created every example in the book from scratch.
Great point. I did the same way back in the day to learn C++ (with my trusty Dummies book).
-
Well said. You covered some thoughts I had but above and beyond and better than I would have been able to. So, yes, ditto on this. OP, you are probably going to want to go with web skills and yes, pick a project to help you learn. And always make sure to learn how (the tools, and get setup) to debug your code as you will hit a wall otherwise and not know how to overcome it - a debugger will bust through that wall and keep you moving.
Kent K wrote:
And always make sure to learn how (the tools, and get setup) to debug your code as you will hit a wall otherwise and not know how to overcome it - a debugger will bust through that wall and keep you moving.
Agree 100%! Great addition. :thumbsup:
-
Camps cram a language into your head in a short amount of time and leave you believing you know what you're doing. To be fair, people do come out of these camps knowing a language, but my experience in interviewing these candidates is not a positive one. Unfortunately, the compressed time schedule leaves no room for the really important things -- thinking and problem solving. These are learned with practice and experience. A new college grad who spent 8 semesters learning programming has had to solve numerous problems -- and has had the time to reflect on what worked, and what didn't. This takes elapsed time and realistically, most people need 1 to 3 years of professional work experience to honestly understand what they are doing. That said, I give all candidates a fair hearing, and if they demonstrate problem solving and ability to think, their background is far less important. Take a couple of free Intro courses to see if you want to do this.
-
The camps are mainly a way to fleece you out of your money. It takes years of practice to become a productive software developer. It's not something that can be rammed into your brain in 3 months.
The difficult we do right away... ...the impossible takes slightly longer.
upvote - listen to the man.
Charlie Gilley <italic>Stuck in a dysfunctional matrix from which I must escape... "Where liberty dwells, there is my country." B. Franklin, 1783 “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
-
Camps cram a language into your head in a short amount of time and leave you believing you know what you're doing. To be fair, people do come out of these camps knowing a language, but my experience in interviewing these candidates is not a positive one. Unfortunately, the compressed time schedule leaves no room for the really important things -- thinking and problem solving. These are learned with practice and experience. A new college grad who spent 8 semesters learning programming has had to solve numerous problems -- and has had the time to reflect on what worked, and what didn't. This takes elapsed time and realistically, most people need 1 to 3 years of professional work experience to honestly understand what they are doing. That said, I give all candidates a fair hearing, and if they demonstrate problem solving and ability to think, their background is far less important. Take a couple of free Intro courses to see if you want to do this.
Amen.
The difficult we do right away... ...the impossible takes slightly longer.
-
Hello! I'm new to the community, so hopefully this is the right place for this kind of question. I'm looking to start learning to code. I currently live in Toronto, Canada, and have worked retail for the last few years. When I was younger I had thought about getting into the CSs, but I fell out of interest with the idea. I do enjoy working on computers and used to spend quite a bit of my time playing around on them when I was a teen, especially in design, but otherwise have no coding experience beyond what they taught us in highschool. I have no undergraduate degree, and was thinking of possibly enrolling in a bootcamp to help me get started. There seems to be so many bootcamp options that is a bit overwhelming tbh, and many have quite a high price tag associated with them. (10-20k for 6 months) I have a friend who is a data scientist and he tells me not to bother with the expensive boot camps, but I feel as if that structure could help me as I'm starting off pretty much blindly. I'm looking for a bit of guidance to get started. Should I be enrolling in free introductory courses, doing self-taught tutorials, and what areas of the industry should I be focusing on. (job roles, languages, etc.) I know this is a super open-ended question, but any information at my stage is valuable information. Thanks guys,
While I'm still fairly green myself, I find actually creating something is the best way for me to learn. I would think of some project you would like and start to build it. I also might suggest even starting with Arduino. It is very satisfying to code something and see the results instantly. It is C and C++ based IDE that is free and and easy to use. The Arduino microcontroller are very cheap. As some others have said it's not learnig the language but rather problem solving.
Bryan
-
Thank you so much! I know of a few things I'd like to build already. I definitely want to build an odds website for sports metrics, (I'm a big leafs fan) and I have a couple ideas for different apps that I would personally find useful. I sat in on a couple bootcamp recruitment video calls, and a lot of the instructors mention the same thing in regards to bad practices. It is something I'll have to be conscious of.
-
Saying "I want to program" is like saying I want to cook; then asking what to cook. You at least need to start with what "type" of cooking: French, Asian, Italian, Fast, Cheap, etc. You narrow your options by picking a "genre", like: scientific, gaming, data analysis, business apps, etc. Then you can refine your plan and pick a learning strategy. (Coding is not fun if it's your only job and you're not making money with it.)
It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it. ― Confucian Analects: Rules of Confucius about his food
listen to this person!
Charlie Gilley <italic>Stuck in a dysfunctional matrix from which I must escape... "Where liberty dwells, there is my country." B. Franklin, 1783 “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
-
If I recall correctly, US was the default country when you sign up. Either that or he subscribes to the "America's Hat" theory.
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony "Common sense is so rare these days, it should be classified as a super power" - Random T-shirt AntiTwitter: @DalekDave is now a follower!
Or during these days, “America’s Hat” conspiracy.