Technology

How should you start learning programing Original Question: How do you learn coding? I did the following sequence to learn coding & related: Failed a programming test in college 2nd year, so joined a local institute near by house, and learnt what they thought me (C & VB) Did a lot of practicals in their Lab - interest was natural - worked from morning 7 AM to night 9 PM on sat & sun, other wise just attended classes on weekdays 7AM to 8AM - This is the key to learning - Application of you learnt is most important - Doing lab work and verify the programs work as expected after a theory class. I never missed a theory class or lab. After a month, slowly did my 1st project, it was easy due to a lot of lab I did. Then, in 2 months, did a lot projects - especially, all games, 1st level only - because somehow they challenged me, and wanted know if they really difficult (PACMAN, SOLITAIRE, BRICKS, 2playerChessGame, etc.) - most of them were done in 1 day, except for chess it took 3 days since chess theory is required. Then, I learnt a lot of languages by myself because I understood a lot patterns across all of them, due to a lot of practicals This is redundant these days, that means, it is not required to learn many languages. Below should be good enough: Python (easiest to start with) then C++14 (not many jobs, but forms basis for many other general purpose languages) then Java OR C# (take only one, master it) then JavaScript (not many jobs, but forms basis for many other web languages) Then, learnt Coding standards, that will help in coding better, most varies per language, it helps to read other’s code assuming everyone follows it Then, learnt Design patterns, that will help in coding better. Then, learnt Architectural patterns, that will indirectly help. Then, did Algorithms and Data structures, very recent, thought a 100 Rank will me all knowledge, worked hard, got it, but found Rank did not give all knowledge, not even many well know algorithms & data structures. In other words, rank helps to get an interview call, but again knowing a lot of DS & algos will help to get job. Then, found my most comfortable C++14 is not having any jobs, thinking if to master C# or Java or JavaScript. Having coded in all the 3: C#, Java, JavaScript, and since most recent is JavaScript thinking to learn more on MEAN stack (javascript, mongodb, express.js, angular.js, node.js). Since only mongodb (know couchdb) & angular.js are missing, need to add them, not sure how it will go. In other words, be expert in a popular language so you can get jobs. Hope that helped. Community suggestions (not verified by me, if some of these are incorrect, leave a comment, i will remove as time allows): Amrutha Valli K studied at International Institute of Information Technology, Hyderabad 28w ago Actually Coding is easy . It’s just Another Language like English , German , Mandarin , dutch etc… As a Beginner , you Can start coding with Python . [there are many Languages are there C , C++ , Java] , i Suggest you to Learn Python . Because Python is Beginner Friendly language , It’s Widely used in Machine Learning & Deep Learning & Artificial Intelligence & Internet of Things and Other Advanced Computing Developments . So Better to Start your Career with Python. Better to Learn Python in Online. i will Suggest you Best Python Online Courses . choose the second online course…. from this course you may learn about: Variables - Learn to conveniently store data in your programs! Numbers - Learn how numbers work behind the scenes in your programs! Strings - Master Python Text and automate messages using Strings! Logic and Datastructures - Teach your program to think and decide! Loops - Save time and effort, by making computers do the hard work for you! Functions - Automate Tasks by Building your very own Python Functions that you can use over and over! OOP - Add Python to Your Resumé By Mastering Object Oriented Programming, the industry programming standard! So whether you want to get into Data Science, Web Development or make cool robots with the Raspberry Pi, The Python Bible gives you everything you need to get started on your path! and also.. Build 11 Easy-to-Follow Python 3 Projects Automate Coding Tasks By Building Custom Python Functions Add Python 3 to your Resume by Understanding Object-Oriented Programming (OOP) Use Variables to Track Data in Python Programs Use Numbers to Create “Behind-the-Scenes” Functionality Use Strings to Create Customized, Engaged User Experiences Create Programs that can think using logic and data structures Use Loops to Improve Efficiency, Save Time, Maximize Productivity additional online courses for python: ALL THE BEST…. Arsalan Wahid Asghar Swift, Java,C,C++,HTML,CSS,SQL,Git 91w ago The best practice to learn how to code with zero knowledge in programming is know how to make Algorithms . By basic Definition an Algorithm is a set of instructions to complete a certain task. In this example lets take a task with involves making tea. Even before writing down your set of instructions for the process is to first identify: “What are the components I need to make my tea ?” The cup of Tea being the final product. After identifying the required components you make a list for those components like this one: List of Components: A cup Water A kettle Some Sugar Some Milk n Tea bag/s n= 1,2,3,4….. Once the components for completing the task are identified now one can starting writings down the processing of using these components to get the final product or program in our case which may look something like this: IF LIST OF ITEMS EXIST: Fill kettle with water While water boils Fill empty cup with n Tea bag/s Add sugar or don't add sugar (User choice) After water boils Pour hot water in Cup Let Allow tea flavor to blend in with the water Add Milk or don't add milk Have some quality Tea END ELSE: PROCURE ITEMS REQUIRED Goto step 1 Once you start solving problems via algorithms like the example above then learning any Programing langauage isn't far apart until you can make programs to solve given problems . If your looking for Website to learning Programming : Then here is a list of my personal favs: Learn to code (Code Academy) Learn to code and help nonprofits (Free Code Academy) Arihant Bansal Learning to program 94w ago 1. A Good Old-Fashioned Book You might think that most books and text books on programming would be outdated, but in fact new ones are still being published today, and there are a lot of good, useful ones. Don’t underestimate the value of a book. Most books can be purchased on Amazon in e-book form, or you can have them delivered to you in physical form. Some e-books are even free. Pros You can be sure you’re getting your information from a trustworthy source. You can also read the reviews if you’re doubtful. Books are often complete guides to their topic, telling you everything you need to know. There are plenty of books on every topic and code language. Finding a good one won’t be a problem. Cons A book isn’t going to update itself when its information changes. Where Can You Find Books? Here is a selection of all the programming books I recommend for learning to program and developing your programming skills. We’ve done all the hard work of finding the books, so you can focus on learning. 2. Hands-On Exercises This method is practicing coding techniques and concepts by trying them out yourself. In other words, learning by doing. And just like any other method, it has its pros and cons. Pros You can make sure that you fully understand each concept. When there’s no obligation for us to try it out, it’s easy to just say, ‘oh, that’s nice’ but then subsequently forget about whatever it is we were meant to be learning. Learning by doing allows us to cement our skills. Learning by doing gives you a proper feel for what writing code is like. This way, when you want to embark on a project, you’ll already be used to the coding process. Cons You’re not always going to understand every concept from the get-go. When you’re being asked to write some code, but you don’t have a clue how to write it, this method can get very frustrating. 3. Video Tutorials When we talk about video tutorials for writing code, there are two main formats. One format consists simply of a screen recording, typically with the teacher’s narration explaining their code as they write it. The second format is a combination of screen recording and face-to-face video. Pros Unlike hands-on exercises, where you’re the one writing the code, with video tutorials you can see the code being written as it’s meant to be written. There’s no learning curve – you see how to do it the right way from the start. In videos where the teacher appears on camera themselves, you’ve got the element of human connection. This is great for staying interested and motivated. Cons There’s not always a ‘test’ accompanying a video tutorial, so you can’t always check to see if you’ve got the concepts right. Where Can You Find Video Tutorials? Video tutorials are many coders’ preferred way to learn programming, and they’re abundant on the web. Treehouse is a great online technology school that combines video tutorials with hands-on learning, so you get the best of both worlds. Here’s an example of a video tutorial from Treehouse: 4. Text-Based Tutorials Text-based tutorial websites have been around since the start of the internet. Some are step-by-step tutorials, others take more of a reference approach and some simply explain their topics in general. Pros There are so many websites featuring text tutorials, on all kinds of code languages. Finding one will never be a problem. Being able to read the content is an advantage if you like to be able to go over it carefully and refer back to it. Cons Of course, due to the high volume and how easy it is for anyone to create a website and put up a tutorial, this also means that there are a lot of sub-standard and outdated tutorials you probably shouldn’t follow. Like with video tutorials, because you’re not necessarily practicing, the learning might not always stick. 5. Challenges/Games Code challenges and games are another form of ‘tutorial’ you can find on the internet, for those who like their learning to be a bit more fun. This category ranges from code challenges based around a discussion board, right up to fully-fledged games. Pros Code challenges and games are great if you’re losing interest and want some more fun. Also, because there are other coders writing the same code, you get to see all their different methods and perspectives. You can have them critique your code, and look at theirs to see how they did things. For the same reason, you get to meet lots of other like-minded coders. Cons If you restricted your sources for learning to code to just challenges and games, you probably wouldn’t get as full of a picture of whatever topic or language you’re studying as you would if you took a conventional tutorial. Some people might even find this format distracting. Where Can You Find Hands-On Exercises? Code Avengers is a fully-fledged game that teaches HTML5, CSS3 and JavaScript, and runs in the browser. Google Code Jam is one high profile code challenge, but challenges can be found basically anywhere where there’s a discussion board. 6. Class or Workshop Attending a programming class or workshop in the flesh is the traditional way to learn code. Just like any other way, it has its pros and cons. Pros You can ask questions and interact with the teacher – something you can’t always do on the internet. Like code challenges, you can meet other like-minded coders this way. It’s very easy to get coding help. Like books, classes are complete guides to their topic. You’re less likely to get bored programming. Cons You can’t go back and refer to a class, like you can with a website (unless you recorded it). Finding a class is never going to be as easy as finding a website. 7. Coding in the Deep End with a Project Jumping into the deep end and creating an application or website may scare you at first, but it’s really not so bad. All you need to do is brainstorm some ideas for programming projects, pick one and start coding. Pros You can often learn more from doing a project than from a tutorial, and the learning will stick. You get a feel for what real coding is like – not just completing exercises. Cons There’s not much you can do unless you already have a solid foundation with the languages you’re using. In Conclusion… Most coders have their preferred way to learn, but that doesn’t mean you have to agree with them. Every way has its pros and cons, and you’re welcome to make up your own mind on which is best for you. There’s no right or wrong answer. Vani Ananthuni Software Developer 88w ago There are a lot of languages that are very simple to learn and write. You could start with Matlab, like what others have suggested but in my opinion, you can start off with abstract coding and also learn basic programming theory if you don’t know yet. It will make things easy for you to convert the logic into any programming language by learning the syntax. If you are into You can start learning through code camps or courses. Start with fork-ing existing CodePen projects and then github projects. Try doing FrontEnd Development first and then move to backend development. You can start with study projects and then try to building a simple website by using just HTML. Something that uses all the tags of html. Then add CSS to it. Your next goal should be adding life to the website. Once you start using JS, things get really interesting here. There’s so much that you can do, it can never get boring. You need to be motivated through out. So yeah, try using CMS or code snippets and edit them out. Try to set reminders, subscribe to Medium or SitePoint and see what is happening around. Check out junior web developers’ portfolios or single page websites that have been built using HTML CSS and JS alone. Copy pasting code snippets isn’t bad unless you don’t understand what the code is doing. W3Schools Online Web Tutorials is a good place to start as they have their own editor. (try to play around ) You can also join Learn to code and help nonprofits (i personally like this as its project based and very simple). There are many courses in udemy and code academy that teach you from the starch. Along with all of these, try youtube videos. There are millions of hours of content to help you with any language you want. Above all these things, don’t set high goals. Start with something simple as a hello world. html :

hello world!

css: p{color:blue;} js: If you want to learn other languages, start with syntaxes. Then move on to next step, multiple elements and multiple functions and then so on. Remember that it is all gradual. Every language is built from 1s and 0s. So start with baby steps and you will be there in no time! Also remember to work with projects. Even if its just printing out a statement, try to do it on an editor. ( http://jsfiddle.com or Online REPL, Compiler & IDE or CodePen are good to start ) Just know that once you know a minimum level of stuff, you’re gonna feel invincible and you can do anything. Actually you can do anything! Happy programming! Lindsey Spratt Computer Scientist (2017-present) 193w ago I am interpreting this question as "How are you learning to code?" I started learning to code 45 years ago, and I still hope to become really good at it. I am learning to code by reading books about programming, reading programs, and writing programs. A lot of programs. And talking to programmers. A lot of talking. I started programming the DigiCompI using boolean algebra in 9th grade (1969). It was so cool. (Minds-On Toys - Kits) I finally got back to declarative programming using Prolog (my favorite programming language) in 1986. In between I programmed in Fortran, PL/I (IBM and Multics), and Lisp. For each of these languages I read books, wrote programs, read other people's programs, and talked to people who were expert programmers. I did not take any classes in programming languages; that might have been useful. However, I was an undergraduate at MIT and there were programmers and computers and programming projects everywhere. So I got jobs where I learned to program on the job and saved my formal education for subjects I loved but could not find anyone to pay me to learn: mathematics; history, theory, and criticism of architecture; music theory, composition, and performance (yay trombone). The mathematics has been really useful in programming: particularly algebra (groups, rings, functions, isomorphism), number theory (primes, big O notation), mathematical logic (proof theory, model theory, axioms, inference, …), set theory (union, intersection, power set), and probability and statistics. I recommend learning as much discrete math as you can - it will make you a better programmer. After working for 11 years as a programmer (Multics operating system, computer-aided software engineering tools), I went back to school and earned a masters and doctorate in computer science. This was finally some formal learning that improved my programming. Eventually I picked up languages in the C family: C, C++, Objective C, Java. yuck. I do not like these languages but they are pervasive. As long as you are programming, you should always be learning to program better. Read books about programming, talk to other programmers, read other people's programs (with so much open source code, there are a lot of programs available to read), and write a lot of programs. Do this every day. Think about it all of the time. Enjoy yourself. Even after 45 years of this, I am still having a great time programming. Mark Miller Academic wanderer, writer, aspiring computer scientist 193w ago I first learned to program in Atari BASIC on an Atari 400 that my local library allowed patrons to sign up for time on back in 1981. I was 11 going on 12. The first program I got working, that was my own idea and was more than just the equivalent of "Hello world," was a little math quiz I wrote to help myself with my arithmetic skills. What motivated me to learn about programming was I witnessed a middle-aged man doing some on the same machine. He was working with graphics, and was trying to get some sort of low-rez horse racing game working the way he wanted. I had done a little practice with animation on paper when I was younger, so I could relate a bit to what the man was trying to do. The first thing that caught my eye were the colorful graphics. What fascinated me was the idea that this man was doing something to the machine to generate them. I had never witnessed this before. The guy didn't look superhuman, or anything out of the ordinary. That gave me my first clue that maybe I could do what he did. At first it was just a wish. I thought that since he was an older adult, perhaps working for the library, he must've had special permission to use the computer. That had been my experience. Computers were expensive, delicate, and rare, and usually only special people got to use them, even if they were kids. My mom noticed my interest and goaded me to ask the librarian if I could use it. She said yes, anyone 10 years or older could use it. All I had to do was take a 15-minute orientation. I tried out an interactive tutorial from Atari called "An Invitation to Programming." It was kind of nice as it started out slow, but they didn't design the learning curve well. It got steep pretty quickly, and I got lost and frustrated. After going through it a couple times I realized this wasn't the right way to go for me, but I was not deterred in my goal. I asked a librarian if they had anything else I could use to learn about programming the computer, and they told me they had the Atari Basic manual. I tried that. It was less exciting, and gave me a headache reading it, but I found I was learning more from it than the tutorial, so I kept reading it. That gave me a good start, but I still needed a lot of help. Fortunately, there were always other kids and young adults that hung around the computers, and we'd discuss programming problems. They were a tremendous help. Within several months I learned there were computer magazines around that had type-in programs readers could try out. I read them eagerly, typed in the printed listings, and read the technical explanations of how they worked. This opened up possibilities in my mind for my own projects.

No comments: