![]() |
|
![]() |
|
|
Thread Tools | Display Modes |
|
|
#1 |
|
Newbie
Join Date: Jun 2007
Posts: 0
Rep Power: 0
![]() |
Learning to program
Hello
I am new here. Changes in my life have made me decide that I would like to get back into programming (I took a few classes in college almost 10 years ago). I am not in any position to go back to school. So I thought I would teach myself and work my way up bit by bit. I did learn a little C++ back in college. Should I start there? What is a good book to use? I feel confident in this as I know there are many resources on the net to help me along the way. Thank you in advance |
|
|
|
|
|
#2 |
|
Resident Grouch
![]() ![]() ![]() ![]() ![]() ![]() Join Date: Jun 2005
Posts: 6,453
Rep Power: 10
![]() |
How are you at solving problems? The language is almost incidental in that context. If you want to know how the hardware truly solves abstract problems in a down and dirty way, then get down and dirty. If you're only interested in solutions, then pick the most abstract and inefficient language you can find and comprehend.
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code. Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers |
|
|
|
|
|
#3 |
|
Programming Guru
![]() Join Date: Jun 2005
Location: Adelaide, South Australia
Posts: 1,254
Rep Power: 5
![]() |
In addition to Dawei's comments, you need to decide what type of applications you want to develop. If you just want to play with programming, then it doesn't actually matter what language you use.
If you want to do lots of text processing, assembler is probably not the right language but perl might be. Fortran will be a good choice for numerical analysis, but perl would not sub-optimal. For some things (eg GUI, database manipulation) availability of libraries and development environments is more important than the language you use. Abstraction is not the same thing as inefficiency. If you are using a language that supports high levels of abstraction, you can do things in a few lines of code that would take pages of code in another language. Languages that support high levels of abstraction can be more efficient in terms of programming effort, and less efficient in terms of runtime overhead, than languages that support less abstraction. Languages that support higher levels of abstraction also require more effort from the programmer to understand the abstractions and use them rationally -- including avoiding the overhead of applying language features that are unnecessary to solving the problem at hand. |
|
|
|
|
|
#4 |
|
Hobbyist Programmer
Join Date: May 2006
Location: West Jordan, Utah, United States
Posts: 176
Rep Power: 3
![]() |
Are you looking to get a job with this knowledge or just playing around? I have heard lots of good things about Ruby lately. If I were to start over, I think that I would try that language. It really depends on your goals. Once you decide what you want to do, everyone here can reccommend websites, languages, and books.
|
|
|
|
|
|
#5 |
|
Professional Programmer
Join Date: Jun 2004
Location: South Africa, Johannesburg
Posts: 301
Rep Power: 5
![]() |
Well, if you've done C++ before, then that might be the best option since it should be easier to pick up again, or you could also try any other C based language (java, PHP...)
Personaly, if I were to start over, Python would be my choice due to its neatness and simplicity. That, my friend, is called Brainfuck.
__________________
[SIGPIC][/SIGPIC] |
|
|
|
|
|
#6 |
|
Battle Programmer
Join Date: Feb 2006
Location: Bellevue, WA, USA
Posts: 769
Rep Power: 3
![]() |
Or Whitespace. Or if you're really a masochist, Malbolge.
__________________
<insert disclaimer here> <insert shameless plug for Visual Studio here> |
|
|
|
|
|
#7 |
|
Hobbyist Programmer
Join Date: May 2006
Location: West Jordan, Utah, United States
Posts: 176
Rep Power: 3
![]() |
Brainfuck is pretty efficient and not very abstracted!
|
|
|
|
|
|
#8 |
|
Caffeinated Neural Net
![]() Join Date: Jun 2005
Location: Wet west coast of Canada
Posts: 1,120
Rep Power: 5
![]() |
I think you should consider what you want to do. C++ is definitely worth learning more of, but if you want to play around with making GUIs and such, it's generally not the easiest language for that sort of thing (though there are toolkits and libraries available). Another language you might want to look into is C#, as you can get the compiler and some IDEs free, and C# makes it easy to develop Windows GUI applications. It's also similar enough to C++ in many respects so that you don't have to start from scratch, though you will need to adjust your thinking somewhat.
__________________
And once again, Probability proves itself willing to sneak into a back alley and service Drama as would a copper-piece harlot. - Vaarsuvius, Order of the Stick |
|
|
|
![]() |
| Bookmarks |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| General advice for learning to program VB6 | john Wesley | Visual Basic | 12 | Jun 9th, 2006 9:08 AM |
| Language display in program | Prm753 | C++ | 3 | May 30th, 2006 6:45 PM |
| Creating a program to test a program | sixstringartist | C | 8 | Jan 21st, 2006 2:15 PM |
| A Python program for learning | Gilward Kukel | Existing Project Development | 4 | Sep 19th, 2005 11:41 AM |
| airport Log program using 3D linked List : problem reading from file | gemini_shooter | C++ | 0 | Mar 2nd, 2005 5:12 PM |