Welcome, Guest: Register On Nairaland / LOGIN! / Trending / Recent / New
Stats: 3,154,558 members, 7,823,456 topics. Date: Friday, 10 May 2024 at 10:24 AM

Faq:programming And Other Stuff For Beginners - Programming - Nairaland

Nairaland Forum / Science/Technology / Programming / Faq:programming And Other Stuff For Beginners (1004 Views)

Message To Nairaland Programmers On Programming and Success / Lets Learn C# Here!(study Group For Beginners) / How To Build An Android Chat Like Whatsapp For Absolute Beginners (2) (3) (4)

(1) (Reply) (Go Down)

Faq:programming And Other Stuff For Beginners by uvalued(m): 2:01am On Jun 28, 2015
[quote]Welcome

Welcome to /r/learnprogramming. This is a list of some of the most frequently asked questions on this subreddit. If your question is one of these, it has probably been answered many times before, and you should try using reddit's search facilities (look in the sidebar) to find previous answers before posting here.

Getting Started

How do I get started with programming?

This is by far the most asked question on this subreddit. Some call it the wrong question, but we'll take a crack at an actual answer.

This YouTube video is perhaps one of the best places to begin - How to Learn to Code. Kevin Cheers does an outstanding job outlining just what is it programmers do and why they do it, and illustrates the proper perspective novices should have when starting out.

Learning programming, like anything, is not an exact science, and as such there is no universally agreed upon way of doing so. It is generally suggested that newcomers should start with a single language, and that they should follow a single, high-quality, beginner-oriented resource. If you want to dive right in to programming, a good language to start with is Python. You can find resources for learning Python at the following links:

Online resources
books
Curated Programming Resources - Python
If you are interested in the different types of language available, see our language types page. If you want to specifically focus on learning how to make games, make websites, or make mobile apps, our FAQ has more information below.

It's important to understand that learning to program can be a long process. Many people spend years of their lives learning and practicing before they consider themselves competent enough to look for a job or contribute to a significant project. Fortunately, just getting started is not difficult at all.

Which programming language should I start with?

There are two common misconceptions that cause people to ask this question. The first is that there actually is a "best" programming language for learning, and the second is that the first language you learn will decide what the rest of your programming career looks like.

In reality, there is no best language to start with, and your first language has virtually no lasting effect on your eventual career. What really matters are core programming concepts which can be applied across languages of various types (or paradigms). Programming languages can vary wildly in style and syntax, but these differences are of little concern to the novice programmer.

All programmers should ideally have experience in multiple types of languages. Once you are comfortable with one language, move on to another language which differs in some fundamental way. As you learn more languages, you will become more equipped to choose the right tool for the task at hand, which is a hallmark of a good programmer. Since programming concepts are what matter most, we recommended that beginners start with a language like Python or Ruby. These types of languages enable beginners to start writing simple applications and practice programming without having to use any of the more complex language features.

So read how to get started, and if you still can't decide, choose Python. It is a good, beginner-friendly language with a huge community and many libraries for doing most anything you want, like making games or websites. Try to find a learning resource which focuses on concepts and fundamentals before diving into more complex applications.

You can find instructions for starting with Python and several other languages on our getting started page.

Alternatively, this site may help you make a choice.

Where can I find some good learning resources?

Books
Online Resources
Curated Programming Resources
Where can I find practice exercises and project ideas?

Here is a large list of 100+ project ideas that you can do. The list is meant for Python, but most of the ideas can be implemented in any programming language. These contain fun projects but also have some good exercises that you can do for practice. We highly recommend checking it out.

Here is a list of 49 game clones you can write, chosen based on their simplicity.

Want to make something new? Check out Idea Machine and The Internet Wishlist, where people post their ideas for apps that they really want to see happen.

As for practice exercises, here are some good sites/resources to start with:

On reddit
/r/dailyprogrammer - a subreddit with daily programming challenges
/r/ProgrammingPrompts - small, simple projects
/r/tinycode - a subreddit dedicated to doing big things with little code
/r/programmingchallenges - a subreddit dedicated to programming challenges, could use reviving
General exercises
Project Euler [/b]has almost 500 math related (i.e. number theory, primes, numeral systems) problems that are meant to be solved using programming (in any language).
[b]CodeAbbey
over 200 programming problems starting from very basic, awards certificates for solving 125 exercises. Encourages studying from others' solutions.
Rosalind another "project-euler-like" site, with over 200 programming problems related (slightly) to bioinformatics.
Codingbat.com has Java and Python exercises for the beginners, up to AP-level.
codegolf.stackexchange.com - site for posting and discussing programming puzzles
Ruby Quiz - a series of "quizzes" which ask you to write short programs of varying complexity. The canonical solutions are all in Ruby, but the prompts are language-agnostic so you should be able use any other programming language as long as you don't mind not having a definitive solution for reference.
Problems from programming competitions
UVa Online Judge - collection hundreds of programming contests problems with online solution checking system
TopCoder has algorithmic challenges accumulated over years of contests accessible from several popular languages. Also hosts online programming competitions several times each month.
CodeForces - similar to TopCoder, but more tasks at competitions, and few special features including "virtual contests"
Timus - similar to UVA, includes problems from many past competitions (world and regional scale)
SPOJ - similar to UVA, with largest choice of programming languages allowed for solutions
CodeForces has algorithmic challenges accumulated over years of contests accessible from several popular languages.
USACO has several algorithmic challenges accompanied with tutorials.
Language-specific:
For Prolog, Lisp, and similar languages, check out the P-99 and L-99, a set of 99 problems to increase your proficiency in the language.
Python Challenge - combines riddles and programming puzzles to move through different levels
4Clojure - A set of programming exercises specifically geared around Clojure, a Lisp-variant.
Where can I find examples of good code and projects to study?

Try checking out the Showcases section on Github -- it has a curated list of tons of popular and interesting open-source programs that range from libraries and games to music and open journalism/data analysis. The source code is also publicly viewable, so you can try downloading and tinkering with these projects yourself.

1 Like

Re: Faq:programming And Other Stuff For Beginners by Nobody: 2:02am On Jun 28, 2015
Ok
Re: Faq:programming And Other Stuff For Beginners by Gyarados(m): 5:09am On Jun 28, 2015
Ok bro, nice post grin
Re: Faq:programming And Other Stuff For Beginners by Nobody: 7:17am On Jun 28, 2015
@op, source please?
Re: Faq:programming And Other Stuff For Beginners by Nobody: 10:28am On Jun 28, 2015
MisterNobody:
@op, source please?

Reddit, where else?

/r/learnprogramming.
Re: Faq:programming And Other Stuff For Beginners by Nobody: 4:11pm On Jun 28, 2015
Jregz:

Reddit, where else?
/r/learnprogramming.
I have the source already... I just want it Stated by the Op.
Re: Faq:programming And Other Stuff For Beginners by uvalued(m): 1:12pm On Aug 22, 2015
MisterNobody:


I have the source already... I just want it Stated by the Op.

i was trying to place the source and the bot on the site denied me access and so i left it like that but guess the guy up there gave the site

(1) (Reply)

Bootstrap 4 Alpha Released / A Quick Survey To The Programmers In The House / Unlimited Internet

(Go Up)

Sections: politics (1) business autos (1) jobs (1) career education (1) romance computers phones travel sports fashion health
religion celebs tv-movies music-radio literature webmasters programming techmarket

Links: (1) (2) (3) (4) (5) (6) (7) (8) (9) (10)

Nairaland - Copyright © 2005 - 2024 Oluwaseun Osewa. All rights reserved. See How To Advertise. 28
Disclaimer: Every Nairaland member is solely responsible for anything that he/she posts or uploads on Nairaland.