How to gain programming experience

Click For Summary

Discussion Overview

The discussion revolves around gaining programming experience, particularly in C++. Participants explore various project ideas, educational resources, and programming languages, including suggestions for beginners and alternative learning paths.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested
  • Homework-related

Main Points Raised

  • Some participants suggest starting with simple projects like a blackjack game or a calendar and contacts program to practice programming skills.
  • One participant shares their experience of learning through an ambitious project, replicating code from an old game, which helped them gain knowledge in both object pascal and Visual Basic.
  • Another participant mentions using Project Euler for math-oriented programming challenges, indicating it is suitable for those interested in mathematical applications rather than application development.
  • There is a discussion about the MIT course 6.00, with some participants questioning its applicability for learning C++ since it focuses on Python.
  • Several participants express interest in learning to program for Android and iOS, discussing the languages used (Java for Android and Objective-C for iOS).
  • One participant humorously suggests that learning C is essential, while others reflect on the relevance of learning languages like Scheme from the 6.001 course.

Areas of Agreement / Disagreement

Participants generally agree on the value of project-based learning and the importance of exploring different programming languages and resources. However, there are competing views regarding the best starting point for learning programming and the relevance of specific courses.

Contextual Notes

Some participants express uncertainty about the effectiveness of the 6.00 course for learning C++, and there are differing opinions on the necessity of learning languages like Scheme. The discussion includes various suggestions that may depend on individual interests and goals.

Who May Find This Useful

Individuals seeking to gain programming experience, particularly beginners interested in C++, Python, or mobile app development, may find the suggestions and resources discussed here helpful.

fluffy123
Messages
19
Reaction score
0
Physics news on Phys.org
try a blackjack game
 
fluffy123 said:
I've been trying to look around for projects to do in C++ to gain programming experience but I can't really find any. Can anyone here suggest any programming projects a non-expert in C++ can do?

Or would working through this class be a good way to start?
http://ocw.mit.edu/courses/electric...o-computer-science-and-programming-fall-2008/

That course looks to be using Python, rather than C++.

As Punky says, games are a good way to practice some parts of programming. What GUI builder will you be using?

In addition to games, you could write a simple calendar and contacts type of program. That will give you practice in data structures and even database stuff if you want to take it farther...
 
I think a good way is to embark on an ambitious project. That's how I taught myself Visual Basic back when I was a high school student. I wanted to replicate the code of a non-playable character in an abandonware game that was originally written in object pascal. The end result was a basic knowledge of object pascal and an intermediate knowledge of Visual Basic.
 
Thanks for the awesome suggestions!
berkeman said:
That course looks to be using Python, rather than C++.

Yeah, I know. I was asking (or meant to ask) if learning python from that course would be a good idea to do in my break.
 
John Carmack's Twitter said:
tip for starting out: When he was young, John Romero made a game for every letter of the alphabet. That was wise.
...
 
fluffy123 said:
I've been trying to look around for projects to do in C++ to gain programming experience but I can't really find any. Can anyone here suggest any programming projects a non-expert in C++ can do?

Or would working through this class be a good way to start?
http://ocw.mit.edu/courses/electric...o-computer-science-and-programming-fall-2008/

Pick a domain and then from that a project that you like and work on it.

On top of this listen to other coders, read books, get open source projects, and just devour as much you can.
 
I've been teaching myself Python recently. I've been using a site called Project Euler. It's good if you want to do more math-oriented programming, as opposed to writing applications, etc. Problems range from easy to complex, and tend to run a wide range of commands required. Give it a look.

http://projecteuler.net/
 
fluffy123 said:
Yeah, I know. I was asking (or meant to ask) if learning python from that course would be a good idea to do in my break.

If you want to do professional/semi-professional experience with computer programming, then you'll need to go into 6.001. In my life, I've only taken one formal course in computer programming, and that was it.

The story of 6.00 is interesting. There is a generation of people in the late-1970's and early-1980's who started programming at age 6 with TRS-80's and Commodore 64's.

That generation disappeared from universities around 2000, and 6.00 is intended to give people experience that an earlier generation of people would have gotten playing with BASIC.

One other thing that you can do is to learn to program Android apps and flash games.
 
  • #10
twofish-quant said:
If you want to do professional/semi-professional experience with computer programming, then you'll need to go into 6.001. In my life, I've only taken one formal course in computer programming, and that was it.

The story of 6.00 is interesting. There is a generation of people in the late-1970's and early-1980's who started programming at age 6 with TRS-80's and Commodore 64's.

That generation disappeared from universities around 2000, and 6.00 is intended to give people experience that an earlier generation of people would have gotten playing with BASIC.

One other thing that you can do is to learn to program Android apps and flash games.

Really, 6.001? I kinda got discouraged when I learned it was in scheme...

And what languages should I learn to program Android or iphone apps?
 
  • #11
Android apps are written in java, iOs apps are written in Objective-C.

Wiki them for more info
 
  • #12
fluffy123 said:
Really, 6.001? I kinda got discouraged when I learned it was in scheme...

You'll never use Scheme for real-world programming, but you'll learn a lot about programming from that course. About twenty years ago I worked through part of Abelson and Sussman's book Structure and Interpretation of Computer Programs using a Scheme interpreter on a Mac, and had a blast.
 
  • #13
Get A Book On C. It is book that teaches C. It has many exercises. C is the only Lang you need to know, anyway (kidding, kidding)
 

Similar threads

  • · Replies 12 ·
Replies
12
Views
2K
  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 9 ·
Replies
9
Views
3K
  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 17 ·
Replies
17
Views
3K
  • · Replies 5 ·
Replies
5
Views
2K
  • · Replies 3 ·
Replies
3
Views
1K
Replies
6
Views
2K
  • · Replies 9 ·
Replies
9
Views
2K