Overclock.net › Forums › Software, Programming and Coding › Coding and Programming › Can you teach yourself programming?
New Posts  All Forums:Forum Nav:

Can you teach yourself programming? - Page 3

post #21 of 49
Java is fairly simple, might be a good place to start.
From FX to i7
(15 items)
 
  
CPUMotherboardGraphicsRAM
I7-7700K 5ghz delid MSI Z170A Gaming M7 1080Ti 32GB Trident Z @ 3600 
Hard DriveHard DriveOptical DriveCooling
Samsung PM961 M.2 850 Evo LG Bluray Drive Phanteks PH-TC14PE 
OSMonitorPowerCase
Win 10 x 64 P2715Q 4K  EVGA SuperNOVA 750G2 Phanteks Enthoo Pro  
  hide details  
Reply
From FX to i7
(15 items)
 
  
CPUMotherboardGraphicsRAM
I7-7700K 5ghz delid MSI Z170A Gaming M7 1080Ti 32GB Trident Z @ 3600 
Hard DriveHard DriveOptical DriveCooling
Samsung PM961 M.2 850 Evo LG Bluray Drive Phanteks PH-TC14PE 
OSMonitorPowerCase
Win 10 x 64 P2715Q 4K  EVGA SuperNOVA 750G2 Phanteks Enthoo Pro  
  hide details  
Reply
post #22 of 49
Don't do VB!!!! Everybody is right on that one.

Nobody has really asked you what kind of programming you want to do. Do you want to do web apps? Desktop software? iPhone development. There are many "best" programming languages depending on what your development choice is. While some are easier to learn than others, it doesn't make sense to start with C/C++ if you want to do iPhone app ( You should probably learn objective C if that was the case ).

Start with a language that is going to allow you to do something in the environment you want to start creating in and it will hold your interest better and you will learn faster. Very few people actually get off on the actual programming. Find a smaller easy project that you want to complete and learn actually doing that. Don't try to just pick up a book and learn programming. You will more than likely get bored and give up unless you are making progress on something.
White TITAN
(16 items)
 
   
CPUMotherboardGraphicsRAM
intel core i7-3770k Asus Z77 Sabertooth EVGA GTX 780 SC ACX Corsair Dominator Platinum 16GB (2x8GB) 
Hard DriveHard DriveHard DriveOptical Drive
Samsung 840 Pro  WD Black Crucial M4 LG Blueray 
CoolingOSMonitorPower
Swiftech H220 (Stock cooler on while RMA :( ) Windows 7 64bit Dell 2311h Ultrasharp x 2 Corsair AX850 
CaseMouseMouse PadAudio
Fractal Design Define R4 White (w/ Window) Logitech G700 Razer Control Edition Sound Blaster ZxR 
CPUMotherboardGraphicsRAM
Intel 980x Asus Rampage iii Extreme EVGA GTX580 SLI Patriot Viper Xtreme 12GB DDR3 2000 (PC3 16000) 
Hard DriveHard DriveHard DriveOptical Drive
120GB Corsair Force Series 3 SSD WD Caviar Black 640GB Crucial M4 128GB SSD LG Black Blu-ray Drive SATA Model UH12LS28 
CoolingCoolingCoolingCooling
XSPC RX360 and RX120 Rads Watercool HeatKiller 3.0 Limited Edition Black ... XSPC Dual Bay Res with Swiftech MCP655 Pump Silver Shining Bitspower Compression Fittings 
CoolingCoolingCoolingCooling
PrimoFlex Pro LRT Black Tubing -1/2in. ID X 3/4in. 3x Gentle Typhoon 120mm Fan 1850RPM (AP-15)  1x Noiseblocker NB-BlackSilentPro PL-2 120mm Ul... Koolance VID-NX580 Full Cover GPU Waterblock x2 
OSMonitorKeyboardPower
Windows 7 Home Premium x64 Dell U2311 Ultrasharp x2 Max Keyboard Nighthawk X8 Semi-Custom - Mechani... Antec High Current Gamer 900W 
CaseMouseMouse PadAudio
Xigmatek Elysium Black Logitech G700 Razer Goliathus Creative Sound Blaster Recon3D Fatal1ty Pro 
  hide details  
Reply
White TITAN
(16 items)
 
   
CPUMotherboardGraphicsRAM
intel core i7-3770k Asus Z77 Sabertooth EVGA GTX 780 SC ACX Corsair Dominator Platinum 16GB (2x8GB) 
Hard DriveHard DriveHard DriveOptical Drive
Samsung 840 Pro  WD Black Crucial M4 LG Blueray 
CoolingOSMonitorPower
Swiftech H220 (Stock cooler on while RMA :( ) Windows 7 64bit Dell 2311h Ultrasharp x 2 Corsair AX850 
CaseMouseMouse PadAudio
Fractal Design Define R4 White (w/ Window) Logitech G700 Razer Control Edition Sound Blaster ZxR 
CPUMotherboardGraphicsRAM
Intel 980x Asus Rampage iii Extreme EVGA GTX580 SLI Patriot Viper Xtreme 12GB DDR3 2000 (PC3 16000) 
Hard DriveHard DriveHard DriveOptical Drive
120GB Corsair Force Series 3 SSD WD Caviar Black 640GB Crucial M4 128GB SSD LG Black Blu-ray Drive SATA Model UH12LS28 
CoolingCoolingCoolingCooling
XSPC RX360 and RX120 Rads Watercool HeatKiller 3.0 Limited Edition Black ... XSPC Dual Bay Res with Swiftech MCP655 Pump Silver Shining Bitspower Compression Fittings 
CoolingCoolingCoolingCooling
PrimoFlex Pro LRT Black Tubing -1/2in. ID X 3/4in. 3x Gentle Typhoon 120mm Fan 1850RPM (AP-15)  1x Noiseblocker NB-BlackSilentPro PL-2 120mm Ul... Koolance VID-NX580 Full Cover GPU Waterblock x2 
OSMonitorKeyboardPower
Windows 7 Home Premium x64 Dell U2311 Ultrasharp x2 Max Keyboard Nighthawk X8 Semi-Custom - Mechani... Antec High Current Gamer 900W 
CaseMouseMouse PadAudio
Xigmatek Elysium Black Logitech G700 Razer Goliathus Creative Sound Blaster Recon3D Fatal1ty Pro 
  hide details  
Reply
post #23 of 49
having taken classes on VB, C++, and Java and reading some books along the way, I would say C# is a good place to start.

a lot of it depends on the industry you are in, but in my experience C# is a little more intuitive in its help system than C++ and Java. VB is certainly the easiest, but I only find myself using it for database applications.

The Head First books are a good place to start, they read fairly easy and are well written.

http://headfirstlabs.com/books/hfprog/

just a note - no amount of self study will really teach you programming without some sort of instruction/tutoring/mentoring and a LOT of practice.
Alienware 15
(10 items)
 
  
CPUGraphicsRAMHard Drive
Intel i7-4710HQ 3.5GHz Nvidia GeForce GTX 970M 3GB 16GB (2x8GB) Crucial Ballistix 1600 MHz Crucial MX200 500GB SSD 
OSMouseMouse PadAudio
Windows 8.1 Razer DeathAdder Chroma SteelSeries Qck StarCraft II Creative Sound Core3D-EX Audio 
OtherOther
Creative Aurvana Live Headphones SteelSeries QcK Starcraft Heart of the Swarm Mo... 
  hide details  
Reply
Alienware 15
(10 items)
 
  
CPUGraphicsRAMHard Drive
Intel i7-4710HQ 3.5GHz Nvidia GeForce GTX 970M 3GB 16GB (2x8GB) Crucial Ballistix 1600 MHz Crucial MX200 500GB SSD 
OSMouseMouse PadAudio
Windows 8.1 Razer DeathAdder Chroma SteelSeries Qck StarCraft II Creative Sound Core3D-EX Audio 
OtherOther
Creative Aurvana Live Headphones SteelSeries QcK Starcraft Heart of the Swarm Mo... 
  hide details  
Reply
post #24 of 49
Two of the best programmers I know have never gone to school to learn, they however both began at a young age, and learn everything from books and tutorials online.

One of the works for TM Software, and the other for CCP.
theLegacy
(13 items)
 
  
CPUMotherboardGraphicsRAM
Athlon 64 K8 +3000 1.8 GHz Winchester Abit Fatal1ty AN8 Ultra Radeon X850 XT Platinum Edition Corsair TwinX1024-3200XL Pro 
Hard DriveOSPower
Seagate Barracuda 320GB W7 Seasonic 400W 
  hide details  
Reply
theLegacy
(13 items)
 
  
CPUMotherboardGraphicsRAM
Athlon 64 K8 +3000 1.8 GHz Winchester Abit Fatal1ty AN8 Ultra Radeon X850 XT Platinum Edition Corsair TwinX1024-3200XL Pro 
Hard DriveOSPower
Seagate Barracuda 320GB W7 Seasonic 400W 
  hide details  
Reply
post #25 of 49
Quote:
Originally Posted by JakeM;13489337 
Two of the best programmers I know have never gone to school to learn, they however both began at a young age, and learn everything from books and tutorials online.

One of the works for TM Software, and the other for CCP.

this is possible... if you start very early, although not probable. The best programmer i know never went to school either, but he has 40 years experience. school gets you the job faster and on a higher salary trajectory.

often getting that shot at the big dance with no degree or schooling is a long process requiring much patience and luck.

I dont know any programmers at Microsoft under 40 with no formal education. That's not to say it can't happen, it is just becoming more and more rare.

the way it was explained to me was that reading books can give you a good learning foundation, but dont expect to get a career from reading them. being a true software engineer is something more - theory, design, problem solving... in addition to the syntax.
Alienware 15
(10 items)
 
  
CPUGraphicsRAMHard Drive
Intel i7-4710HQ 3.5GHz Nvidia GeForce GTX 970M 3GB 16GB (2x8GB) Crucial Ballistix 1600 MHz Crucial MX200 500GB SSD 
OSMouseMouse PadAudio
Windows 8.1 Razer DeathAdder Chroma SteelSeries Qck StarCraft II Creative Sound Core3D-EX Audio 
OtherOther
Creative Aurvana Live Headphones SteelSeries QcK Starcraft Heart of the Swarm Mo... 
  hide details  
Reply
Alienware 15
(10 items)
 
  
CPUGraphicsRAMHard Drive
Intel i7-4710HQ 3.5GHz Nvidia GeForce GTX 970M 3GB 16GB (2x8GB) Crucial Ballistix 1600 MHz Crucial MX200 500GB SSD 
OSMouseMouse PadAudio
Windows 8.1 Razer DeathAdder Chroma SteelSeries Qck StarCraft II Creative Sound Core3D-EX Audio 
OtherOther
Creative Aurvana Live Headphones SteelSeries QcK Starcraft Heart of the Swarm Mo... 
  hide details  
Reply
post #26 of 49
I personally started with C before moving to C++ and Java. I learned everything in college though.


I did dabble with teaching myself C++, and I used this free tutorial:
http://www.learncpp.com/

It is very knowledgeable, and stresses important programming concepts early and often. It tries to avoid many of the bad habits which can be picked up easily by beginners.
It even has quizzes at the end of each section.
It starts with basic C programming, which is a good place to start.
post #27 of 49
Quote:
Originally Posted by dutchgenius;13489866 
the way it was explained to me was that reading books can give you a good learning foundation, but dont expect to get a career from reading them. being a true software engineer is something more - theory, design, problem solving... in addition to the syntax.

tl;dr - You can absolutely teach yourself programming in any language.

A degree in anything should teach you overarching concepts like design theory or whatnot. That doesn't mean that you can't learn them on your own, but it will take a lot more effort. It also depends on your goals. Do you want to be a software engineer at Microsoft? Then yes, you will probably need an extensive and competitive education.

If you want to write iPhone apps for fun, you could be running in a week.

If you are really interested in progress, you should look for someone to mentor you in some capacity. You can absolutely teach yourself programming and work through any problem with dedication, but someone with experience giving you advice will save you tons of time and prevent you from developing bad habits.

I spent several days recently getting an input library to work in C++, when someone looking at my code may have been able to point out my simple error in 30 seconds. I learned, but it took a lot more time and effort than it could have.
Edited by _02 - 5/13/11 at 8:38am
    
CPUMotherboardGraphicsRAM
Phenom II X3 720 @ 3.5 (1.39v) Gigabyte GA-MA790XT-UD4P ASUS 5850 @ 880/1180 (1.118v) 4gb 1333mhz G.Skill DDR3 
Hard DriveHard DriveHard DriveHard Drive
64gb Crucial M4 SSD 3x 250gb WD2500JD - RAID0 1tb WD1001FALS 1tb WD10EARS 
Optical DriveCoolingOSMonitor
Pioneer DLDVD/CDRW Arctic Freezer Pro 64 Win 7 64bit Ultimate E2305 LG 23" LED 
KeyboardPowerCaseMouse
Filco Majestouch II Ninja Tenkeyless Fortron BlueStorm II 500w CM 690II Advanced Razer DeathAdder 
Mouse PadAudioAudio
generic Echo Miamidi PCI M-Audio BX5a Studio Monitors 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
Phenom II X3 720 @ 3.5 (1.39v) Gigabyte GA-MA790XT-UD4P ASUS 5850 @ 880/1180 (1.118v) 4gb 1333mhz G.Skill DDR3 
Hard DriveHard DriveHard DriveHard Drive
64gb Crucial M4 SSD 3x 250gb WD2500JD - RAID0 1tb WD1001FALS 1tb WD10EARS 
Optical DriveCoolingOSMonitor
Pioneer DLDVD/CDRW Arctic Freezer Pro 64 Win 7 64bit Ultimate E2305 LG 23" LED 
KeyboardPowerCaseMouse
Filco Majestouch II Ninja Tenkeyless Fortron BlueStorm II 500w CM 690II Advanced Razer DeathAdder 
Mouse PadAudioAudio
generic Echo Miamidi PCI M-Audio BX5a Studio Monitors 
  hide details  
Reply
post #28 of 49
Quote:
Originally Posted by Fkyx;13463541 
Yes, you can be a self-taught programmer.

I don't read, so I can't offer any book suggestions.

No, you don't have to be good at math, but chances are if you're good at math, you'll be good at programming, and vice versa. Being able to process algorithms to solve math problems is a valuable skill in solving programming related problems. I'm personally just a workhorse. I'm not particularly good at math, but I can solve programming problems with time and hard work.

Higher level languages (C#, Python, Java) hide too much functionality from the programmer to be great programming learning tools. Starting at a lower level (C/C++) will require you to learn the true fundamentals of programming, and will provide a solid base to grow on.

If you want to get into programming, I suggest you start with C/C++. Picking up other languages will be cake once you've got a firm grasp of C++. C++ isn't the "best" language, but I feel it's an essential language for everyone to know, and like I said, will provide a very solid base to build on.

If you just want to use a single, easy language, Python is a great language to use with plenty of documentation. Java is a common starting place, but I don't personally like it.

Don't touch VB. It will ruin your life.


I completely disagree with this.

Python or Java is what most schools in Canada start with for a reason. In the beginning it's all about the logic and thought process not memory allocation, etc.....

[ame="http://www.amazon.com/Python-Programming-Introduction-Computer-Science/dp/1887902996"]http://www.amazon.com/Python-Programming-Introduction-Computer-Science/dp/1887902996[/ame]

^This is an awesome book.
post #29 of 49
Quote:
Originally Posted by Phoriver;13490066 
I completely disagree with this.

Python or Java is what most schools in Canada start with for a reason. In the beginning it's all about the logic and thought process not memory allocation, etc.....

http://www.amazon.com/Python-Programming-Introduction-Computer-Science/dp/1887902996

^This is an awesome book.

I don't know...

I don't program Java, but I can definitely see how abstracting everything so that the user doesn't need to manage resources, etc can definitely bite them later if they develop a complex C++ application, for example. But it would also get right to teaching them high level concepts.

I'm not sure if that is good or not in the long run. When I was in school, they started by teaching you assembly.
Edited by _02 - 5/13/11 at 8:56am
    
CPUMotherboardGraphicsRAM
Phenom II X3 720 @ 3.5 (1.39v) Gigabyte GA-MA790XT-UD4P ASUS 5850 @ 880/1180 (1.118v) 4gb 1333mhz G.Skill DDR3 
Hard DriveHard DriveHard DriveHard Drive
64gb Crucial M4 SSD 3x 250gb WD2500JD - RAID0 1tb WD1001FALS 1tb WD10EARS 
Optical DriveCoolingOSMonitor
Pioneer DLDVD/CDRW Arctic Freezer Pro 64 Win 7 64bit Ultimate E2305 LG 23" LED 
KeyboardPowerCaseMouse
Filco Majestouch II Ninja Tenkeyless Fortron BlueStorm II 500w CM 690II Advanced Razer DeathAdder 
Mouse PadAudioAudio
generic Echo Miamidi PCI M-Audio BX5a Studio Monitors 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
Phenom II X3 720 @ 3.5 (1.39v) Gigabyte GA-MA790XT-UD4P ASUS 5850 @ 880/1180 (1.118v) 4gb 1333mhz G.Skill DDR3 
Hard DriveHard DriveHard DriveHard Drive
64gb Crucial M4 SSD 3x 250gb WD2500JD - RAID0 1tb WD1001FALS 1tb WD10EARS 
Optical DriveCoolingOSMonitor
Pioneer DLDVD/CDRW Arctic Freezer Pro 64 Win 7 64bit Ultimate E2305 LG 23" LED 
KeyboardPowerCaseMouse
Filco Majestouch II Ninja Tenkeyless Fortron BlueStorm II 500w CM 690II Advanced Razer DeathAdder 
Mouse PadAudioAudio
generic Echo Miamidi PCI M-Audio BX5a Studio Monitors 
  hide details  
Reply
post #30 of 49
DO NOT START WITH VB, i started with JavaScript then Java. Do you understand the concept of object oriented? If not do some java script tutorials and then start java. to program in java u need a workbench and the JDK download BlueJ to get ur self to grips with it as its easy to see inside objects in debug mode, and then move on to eclipse.
Edited by andrewmchugh - 5/13/11 at 9:04am
^3
(11 items)
 
   
CPUMotherboardGraphicsRAM
Intel Core i7 5930K  EVGA x99 Micro EVGA GTX 980 SC ACX 16GB Corsair DDR4 Vengeance LPX Black PC4-21300 
Hard DriveCoolingOSMonitor
500GB Samsung 840 EVO H105 Win 10 ASUS ROG PG279 
KeyboardPowerCase
Ducky Shine 1 MX-Red Corsair AX 860i  Fractal Design Node 804 Black 
CPUGraphicsRAMHard Drive
Core i7 @ 2.6  GT650 16GB of 1600 MHz DDR3L SDRAM 256GB SSD 
OSMonitorKeyboard
Mac OSX Lion Retina Display US layout 
  hide details  
Reply
^3
(11 items)
 
   
CPUMotherboardGraphicsRAM
Intel Core i7 5930K  EVGA x99 Micro EVGA GTX 980 SC ACX 16GB Corsair DDR4 Vengeance LPX Black PC4-21300 
Hard DriveCoolingOSMonitor
500GB Samsung 840 EVO H105 Win 10 ASUS ROG PG279 
KeyboardPowerCase
Ducky Shine 1 MX-Red Corsair AX 860i  Fractal Design Node 804 Black 
CPUGraphicsRAMHard Drive
Core i7 @ 2.6  GT650 16GB of 1600 MHz DDR3L SDRAM 256GB SSD 
OSMonitorKeyboard
Mac OSX Lion Retina Display US layout 
  hide details  
Reply
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Coding and Programming
Overclock.net › Forums › Software, Programming and Coding › Coding and Programming › Can you teach yourself programming?