ok first some info about me which will make sense later. Im a 12 year old that loves computers but im not a full nerd. Anyways im really more into the hardware/software part of a comp. ive already asembled 12 comps worth a couple of grand. now i want to learn software. I dont want to buy any type of book but i want to know is there any info on this site for fully new programmers with out an ounce of programming knowledge?. thanks for any help.
I really want to become a programmer becuase in the future i could be one of the best at one of my favourite things and also get payed. logical yes?
Oww and when i mean total i mean TOTAL new to all aspects of software. how to make drivers and all that new. all i can do is put a comp together. oww but i can install things
Also if u think im too young, europe and australias' best porgrammers started at about my age and some evn earlier then 9.
Manish Malik
January 31st, 2002, 07:58 AM
The only thing you will lose by not going towards any books is lots of time. Books are a real time saver, and many times they teach you the topic exhaustively -- which you otherwise may not find on any sites.
Try searching for "Thinking in C++" and "Thinking in Java" in Google. These are excellent books, and they are available free online.
And remember -- to become a good programmer -- Practice A Lot!
Good Luck!
Manish
http://www.manishmalik.com
Discuss it all at the Developer Forum : http://www.codeguru.com/cgi-bin/bbs/wt/wwwthreads.pl?action=list&Board=devforum ...
Xeon
February 1st, 2002, 03:23 AM
Hi there Binary kid! Manish is right, I tell you. Even the best industry expert programmers experienced difficulty in learning programming without books! Just how many outta 1000 programmers can achieve this feat? There's too much things to learn in programming, and you can't even finish learning them even after 35 years! So, save your precious time for other stuff. Even with programming books, you can experience extreme levels of learning curves, and personally, I do think that software programming is definetly more tedious and tougher and leaner and meaner than hardware engineering.
To learn programming, you gotta choose your sword. 'Sword' in this case means the programming language. Every programmer needs to use some form of programming language, I tell you.
The most commonly heard ones include C, C++, Visual Basic(derived from BASIC, with bells and whistles from other languages), Java and recently, C#.
You might be asking : which language should you choose?
Bascially, if you wanna minimize the learning curve and take things step by step, I would suggest you learn Visual Basic first.
It's almost like an all-in-one programming package, wioth almost all the development tools you ever need.
Visual Basic's aim is to create programs in the fastest time possible with the least effort.
I can tell you, seriously, that if you're a total beginner to programming(regardless of how knowledgeable u're in computers in general), you will definetly experience learning curves. The only thing is how tough these learning curves can be.
Recently, my course is teaching us Visual Basic, and I'm the only one who don't really feel any learning curve, cos' I program in Visual C++/C++.
I've observed, and I've seen that almost all the students in the class are feeling the pressure! But compared to other programming lanuages and tools, Visual Basic(VB) is already a god-send. :-)
The main disadvantage is that VB programs are slower than C++-based programs, which is why.
As for C++, well, it's a programming language created by Bjarne Stroupstrup and his team in the 80s, I think. C++ is among the most powerful, most portable, fastest and most famous programming languages known to mankind. Tons of programmers program in this, that's why.
If you're thinking of jumping to C++ straight away without learning VB or anything, then I would say that's a brave leap!
2 years ago, I pick up this great book called "C++ For Dummies", and got tons of frustration and pressure. The learning pain is totally unbearable, I tell you. It's like having a thousand fire-ants biting your heart, bit by bit. But of course.......you'll save tons of time this way!(direct leap to C++!)
Undoubtly, C++ is also one of the toughest languages to learn, so you've to bear through this. But C++ is almost universal. U can create programs for the Palm OS, Linux, the Macs(I believe) and other OSes. C++ is also used in electronic engineering too. That's the thing. You've to experience the strom before smelling the sweet lushy grasses over the other far side of the valley. :-)
It took me around 3 months before I more or less know how to program in C++(without copying source code directly from books), and after C++, the next step is to move on to Visual C++.
Programming in Visual C++ has 2 paths that you can choose to begin with : either the MFC(Microsoft Foundation Classes) or the Win32 API.(Application Programming Interface)
The MFC route is easier, and if you wanna learn it, there's some good and darn simple-to-understand MFC books out there. I would suggest that you either start with "Programming Windows with MFC" by Jeff Prosise, or start with "Using Visual C++ 6" by Jon Bates. The latter is much easier to understand, while the former s much more comprehensive. If you wanna minimize the learning curve, choose the latter first, and then read the former. But if you wanna save time, choose the former directly.
MFC, for your informartion, is a set of classes......
Ok ok. I know you're kinda confuse.....ok! MFC is a set of programming tools created by Microsoft for use by programmers to
create powerful and mighty Windows programs.(not exactly accurate, but just for your general understanding)
MFC wraps up the Win32 API, and even adds in tons of tools and features!
The Win32 API is the heart of Windows. It has almost all the functions you ever need to create your own Windows programs. :-)
Next on the list is the Java programming language, invented by James Gosling in 1991.(should be 1991.)
This chap worked for Sun Microsystems, that's the thing.
Java is an "evolved" form of C++, but it's mainly meant for the Internet, such as Java applets etc.
It's very rare to see Java programs running as client applications in Windows! I dunno much about Java, but I know that Java is a easier language to learn than C++, but if you wanna create Windows programs, then go C++ or VB. Else go Java.
Java's coding style is somewhat different from C++, and the language concepts are pretty different too,but as someone has said before, "To learn Java is to learn 90% of C++".
If you choose to learn Java, then when you learn C++, the learning curve will be heavily, greatly minimized. :-D
But from your post, I guess that you're either more interested in VB or Visual C++.(and the C++ programming language)
Visual C++ is a programming tool, and it creates C++ programs. Visual Basic is a programming tool too, but it generates Visual Basic-based code.
There used to be a programming tool called "Visual J++" and it creates Java applets and Java stuff, but it has since then been stopped by Microsoft, most likely cos' Microsoft is a fierece rival of Sun, and it's currently creating it's own Java-clone language, called C#.
I've read a few pages from a darn thin book on the code of C#, but in some ways, it resembles a combination of C++, Java, and Visual Basic. The disadvantage with C# is that it's totally controlled by Microsoft, but this isn't the same case as C++.(controlled by ANSI)
From what I know, a lot of programmers are still using a wait-and-see attitude towards this language, especially those with over 12++ years of programming experience. I, myself haven't learn or read up about this language too.
C# is mainly for the Microsoft .net platform, and if u were to ask me what .net really is, I would have given you a blank stare. :-)
There's tons of articles on the Web and on Microsoft's web site, and a forum on .net and C# too, in Codeguru.com.
Basically, I believe that in terms of speed and power, C# is no match for C++. But in terms of programming time and ease, C# wins.
By the way, C# is pronounced as C-Sharp and C++ is pronounced as C-Plus-Plus.
I think I should conclude here for now. There's simply to much to say, I tell you! Here's a line that you said in your post :
"how to make drivers and all that new. all i can do is put a comp together. oww but i can install things"
How to make drivers! Bascially, from where you're now, you still have a long, long, long, long, long way to go!
What you gotta do now is to learn a programming language, a programming enviroment, tools and concepts etc. needed for the targetted platform(such as Windows) and finally, to the specialized area of your choice.
There's many interesting areas in Windows programming : Games programming, Multimedia programming, Internet programming, COM/ATL/ActiveX programming and last but not least, System programming(drivers included) and Database programming.
I tell you, Binary kid......Drivers programming is among the toughest and nastiest of all programming specializations. Ask around and you'll know what I mean. Also, driver programming is very expensive. Once, I've asked Jamie Harahan, a well-known expert in Windows driver programming what one would need to create drivers, and he says the minimum should be 2 computers, or if not, a NuMega SoftIce debugger, which costs around US$700 and above, I believe.(saw it once)
And last but not least.....my! To think that you're a 12 year old boy! Interesting! How I admire ye'! :-)
Most 12 year old boys would probably be fighting, and do all those boys stuff!
I myself started programming at age 15, but I really wish that I could start as young as you! Once, in this forum, there's this **** called Maggie May, and she's only 10 years old! But guess what? She's already making replies and posts in the Codeguru.com's Visual C++ forum, and the way she explains the solutions is just like a programmer with 10++ years of programming experience! Needless to say, her programming skills totally exceeds mine! :-)
(but one of these days.......)
When you're learning programming, try to take things one step at a time, or you'll never learn anything. For example, it's a well-known fact that in the world of Game programming, beginners wanna create awesome games like Quake and Diablo II within a few weeks time of their learning quest!
But I can tell you......if you work hard at your chosen area, you'll definetly begin to see the light. I, myself, took around 1 year before I can tell myself : I understand the basics of Visual C++ and C++, and I can create totally darn simple but quite useful programs! 1 year......and u're still young! 13 years old! U're well on your way to become a great programmer provided you don't give up, boy. :-D
In any case, you coders are all more fortunate than me. At least you found this forum called Codeguru.com! It was only after around 7 months of programming that I realised that there's actually such forums on the web! But of course, experienced programmers are even more unfortunate. No forums, no good books, no nothing. They've to learn everything the hard way! :-)
But I can say that the way to really learn how to create real-functional programs is to create one! You'll find that you'll learn tons and loads of things not found in any programming book.
Also, if u're interested, here's a link to one of my previous post :
I'm a good boy now after all that has happened. :-)
Captain Nuss
February 1st, 2002, 08:17 AM
After Xeon's excellent answer, I'd like to share my VB-Java experience with you. I am 17 and started my programming "career" at the age of 11 or 12, just like you want to, with QBasic. I learned the basics of programming, how to think, how to create and structure your programs, by programming "applications" that imitated the awesome computer interfaces of my favourite TV series. After 1 or 2 years, over VBA (Visual Basic for Applications, the language used to program macros and things in MS Office), I stepped over to Visual Basic. For a newbie to windows programming, it's pretty darn easy.
Now, the problem comes when you want to take the step of learning C++ or Java, when you'll have to learn the concepts of object oriented programming (which is a totally different way of thinking than the VB way). I took this step, and it took me about a year to find good ressources and understand this (new) way of thinking.
I don't know if it's easier to do this step in reverse (stepping over to VB from Java or C++), but I think it would be best to learn an object oriented language right from the start. And as C++ is in my opinion one of the most complicated languages there are, it would possibly be better to start off with Java. In addition, knowing Java you can create applications that run on different platforms (Unix, Windows, Mac...) without any change.
----
[Insert something senseless here]
http://www.teamwork-software.de | Priceless Freeware for Nothing
Welcome to the very last line.
Xeon
February 1st, 2002, 08:55 AM
Hi there Captain Nuss! Here's what u said :
"I don't know if it's easier to do this step in reverse (stepping over to VB from Java or C++), but I think it would be best to learn an object oriented language right from the start."
U're totally right, u know! From my recent experience, it's totally easy to switch from Java/C++(especially C++) to VB. If u're a C++/Java programmer switching to VB, it's like a piece of jelly-cake! An analogy is that if you've conquered a dragon, what other beast do u fear/ A dog? A leopard? Lion? Tiger? :-)
Also, regarding that thing about learning an OOP language from the start, I agree with you too. VB actually has things called "classes" and some OOP concepts! But from my own view point, VB's OOP concepts can be somewhat twisted, and if you carry these twisted concepts to a true OOP language one day, you might be unstable. That's why. :-)
OP is one of the roots of the foundation of modern programming, so it's best that one learns an OOP language first, provided he can endure the pain and hardship. It wasn't easy at all, Nuss! How many times have I thought of giving up C++ when I first learn it!!!! :-)
I'm a good boy now after all that has happened. :-)
Binary Baller
February 2nd, 2002, 03:53 AM
Firstly i do all that "boy" stuff like playing sport. i play all kinds of football and i am built. muscled. anyways im also very smart. smart+fit= one big daddy. but anyways i wanna learn every type of porgramming language, or atleast the most used ones. This way when i become a full-time programmer i can do any job with a particular specialtiy in ..... Since i have no idea even what that message box code at the bottom is for, im assuming im even more ignorant of computer programming now.
So im asking if anyone could compile a list for me a list of the most common/useful languages and put them in a list of hardest learning curve to least and also where i could find some online sources for TOTALLY NEW PROGRAMMERS, even if the text isnt directed towards a certain language but an introductory type text. Thanx for the help so far. i can see the road to being a succesful programmer is gonna be one hell of a ride!
Im also convinced buy some books on programmign aswell
Xeon
February 2nd, 2002, 06:26 AM
Hi! I'm only really sure of around 5 programming languages's learning curve. Here they're : from the hardest to the simplest :
1) C++
2) C#
3) Java
4) C
5) Visual Basic
Hi my fellow programmers! If I'm wrong in this list, do correct me. :-)
I'm a good boy now after all that has happened. :-)
Binary Baller
February 3rd, 2002, 12:12 AM
ok. now that ive got that straight, ive downloaded some tutorials and programs but the most useful one seems to be about a specific program (Microsoft Visual Basic 6) is this program downloadable or what?.
if it is downloadable could someone point me to the site or if it isnt please suggest another programm that i can download with matching files on what is VB and how to use the porgram. basically a program for beginners. thanks.
Xeon
February 3rd, 2002, 01:03 AM
VB 6 isn't downloadable! It costs around US$269++!!!!!
Go to : http://www.amazon.com/exec/obidos/search-handle-form/102-9527198-1883305
for more details. :-)
Buy the Learning edition if you can't afford it at this time, but I'm pretty sure you're quite a rich guy for your age, cos' u can always make $$$ from fixing computers. :-D
The other way is to get the CD from any pals around your area, or a pirated version will do.
When u've made enough money to get the legal version, throw away the pirated version and make up for your wrongdoings by contributing to MS's treasury. I understand that VB and worse still, VC++ costs too much for younger folks to afford. These "evil" ideas are just suggestions for you, my son! :-)
The other way, which is legal, is that you can take advantage of the fact that you're a student. I dunno about your country(USA, I assume) but over here in Singapore, Microsoft sells programming tools to us students at Educational/Student Prices, which is tons and tons much cheaper!!!!!!!
Maybe you should call MS and check with them to see if there's such things there. I'm sure there is. :-D
I'm a good boy now after all that has happened. :-)
Binary Baller
February 3rd, 2002, 03:40 AM
i dont think my parents would aprovew of me spending money to learn about comps. while all ure tactics are good, none of my frineds are really into the software department and burned copys of software (cept any windows) r hard and expensive to find. ow i live in Sydney, Australia.
Got any other programs anyone can direct me to?
Ow and ure link comes up with a missing file error.
ow and even the learning adition here is $150++
Xeon
February 3rd, 2002, 04:14 AM
Hi there! Hmmm......have you tried DarkBasic? I think it's free, and lets you compile BASIC code.(not Visual Basic code......but.....)
This is the closest way, though. Microsoft's Visual Basic is the only VB compiler, I tell you! I'm sure there's quite a number of pirated software vendors in the dark streets in Sydney, right? If not, do persuade your parents to take you on a holiday to Asian countries like Malaysia.(the best source for pirated software, according to the newspapers)
The pirated software trade is flourishing like anything : Windows XP, 2000, ME, Visual Studio 6(which includes Visual C++ 6, Visual Basic 6, and tons and tons of other programming tools!)
Another last way.......that I can think of is to go to ye' school's laboratories and see if there's any VB software there. Copy all those stuff onto a CD(assuming u and they have CD-writers)
If not, try to gain entry into high schools that teach Visual Basic programming. Copy the stuff to CDs.
There's lots more tactics to use, so good luck! :-)
*PS* : Isn't there such things as a version of Visual Basic 6 sold at Student/Educational prices? I'm sure there's such thing in Australia, right? :-)
For your future, and your happiness, do check out with the software shops there. :-D
I'm a good boy now after all that has happened. :-)
Binary Baller
February 3rd, 2002, 04:25 AM
soft ware shops??
i am sorry i am not familiar with that term. jk.
over here the software part of computers is seriously under appreciated and under developed so there out. the holidays idea is ok but my parents would rather go to some other place. ow if MVS was sold at student prices, i dont know where to start. ill try the school tomorrow.
Captain Nuss
February 3rd, 2002, 07:44 AM
Well, another programming language / environment you could learn would be Borland Delphi. It is said to be pretty easy (perhaps not as easy as Visual Basic, but anyway...) and there's a version that can be downloaded for free at http://www.borland.com. You'll have to register with Borland, but that's not that hard, is it.
I would still recommend learning Java :) Sun (the creators of Java) have a pretty good tutorial at http://java.sun.com/docs/books/tutorial/, I think it's well suited for absolute beginners. And, best of all, Java is completely free, so no need for piracy there!
If you still want to get Visual Basic, just ask Microsoft directly for those student offers. I myself bought Office 2000 and Visual Studio 6 with these special offers and don't regret it even one minute. Best of all: They don't sell you any crippled ****, they sell you the professional versions for one hell of a good price!
----
[Insert something senseless here]
http://www.teamwork-software.de | Priceless Freeware for Nothing
Welcome to the very last line.
Xeon
February 3rd, 2002, 08:16 AM
Ha ha! I guess, pal.......the Educational price tactic is the best way to take. :-)
You can try at school, and ask the highest-tech teachers you can get.(preferably, a teacher who knows something about VB/VC++ programming etc.)
You can also take extreme approaches like visiting a high school, or better still, a college, or even a university. I can say that colleges should be able to direct you to some good source where you can get software priced at Educational prices.
U know, for example, Norton SystemWorks 2002. It costs S$139 here!!!!! Too much for us poor students to afford! But the Educational version(totally full version!!!)......is priced at only S$49!!!!!!(you can easily save that money, right?)
Once, I even wanted to buy a copy of Microsoft Office 2000 Professional Edition I saw displayed at a shop. It costs S$539++!!!!! But the Educational version costs around S$200!!!(that's still a lot, but consider the savings!!!)
You can save so much with Educational prices, so use all your resources to get 'em. As a last resort, phone Microsoft Australia! :-)
I'm a good boy now after all that has happened. :-)
Binary Baller
February 3rd, 2002, 11:48 PM
hey guys, thanks for all the help. I do go to high school. Anyways ive strated usig Dark basic and im going pretty good so far. i really dont need any more hlep from now, if i do i know where to come :-). Thanks again
oww MVB 6 sells for $200 here and i could buy it through my school but there diots and WILL i repeat WILL lose my money
Binary Baller
February 3rd, 2002, 11:51 PM
thanks to Xeon ive got a list in whic order ill learn the most popular languages.first VB then C then Java. thanks for the great site though
Xeon
February 4th, 2002, 01:28 AM
Good to hear you're on ye' way, pal! ;-)
I'm a good boy now after all that has happened. :-)
Captain Nuss
February 4th, 2002, 08:07 AM
You're welcome!
----
[Insert something senseless here]
http://www.teamwork-software.de | Priceless Freeware for Nothing
Welcome to the very last line.
Xeon
February 5th, 2002, 08:20 AM
Hi there Binary pal! Just a gift for ye' :
http://www.informit.com/free_library/
This is a totally legal, high-quality and powerful site that has tons and tons of free books online : from basic how-to Windows OS guides to the leanest and meanest ATL COM programming books!
C, C++, Java, Visual Basic books all included! :-)
Just use the yellow-framed navigator pane on the left to PICK & CHOOSE your HOT FREE DARN BOOKS NOW!!!!!! :-)
I'm a good boy now after all that has happened. :-)
Binary Baller
February 10th, 2002, 03:50 AM
Xeon u r god
Xeon
February 10th, 2002, 05:59 AM
Thanks for the extremly ego-boosting compliment, but I'm no God, pal! :-)
Just gimme some gurls to play with will do. ;-)
(just kidding! :-D)
Dinosaurs rule, k?
Surender Singh
February 11th, 2002, 05:02 AM
ok hai but mr. manish u r right tht books r very time saver and all.
but now these days with book nothing can be done
some time books r not use full and net is usefull b'coz every thing is available on net
bye and hv nice day
Surender Singh
hello: 011-642 0340, 641 6075
Noahs Ark
February 14th, 2002, 03:26 PM
I see that you have decided to start with Visual Basic, since it is the easiest to learn. I would agree with that. But just in case it turns out to be too expensive for a while, you may want to look into the free version of Java provided on the WEB by Sun.
Sun Microsystems owns the Java Programming Language, and they are interested in encouraging as many Java Programmers as possible. So they allow individuals to download the complete Java2 Platform, Standard Edition to program with. (I think they figure that if they create tons of Java Programmers around the world, then lots of big companies will pay Sun Big Bucks for their Java Enterprise Edition.)
Go to java.sun.com and click on "Products & APIs". You'll find the Java2 Platform Standard Edition which can be downloaded for free.
You can also find a lot of documentation and training material on the Sun site.
I agree, also, that you will need to use a lot of books if you are serious about learning programming. Some good ones to start with: "Java In A Nutshell" is a good starter book for Java. "The C Programming Language" by Kernigan & Ritchie is the best book you'll ever find about C. Kernigan & Ritchie created the C Programming Language back in the 1970's, and it is still fully in use as a sub-set of the C++ language. It is a short book, but it has more solid and deep C knowledge in it than books 5-times as thick!
I used basic years ago, but it has been too long for me to be able to recommend a good book for BASIC, visual or otherwise.
One good writer described BASIC as a programming language designed for people who don't know how to program. It starts from the premise that the programmer probably doesn't know what he is doing, so stop him if he starts to get into trouble. So BASIC is a fairly safe language to work with, but it is somewhat limited in the things it can do. C, on the other hand, was designed by progrmmers to be used by programmers. C starts with the basic premise that the programmer knows what he is doing, so don't get in his way! This design philosophy behind C makes it easy for a beginning programmer to get into trouble pretty easily (crashing the system, etc.)
C++ took the C language and extended it into a super collossally huge language, but it also made C a little safer to use. (All the features of C are included in C++).
Java is a little in between. It is easier to learn than C++ and it keeps you out of trouble a little more effectively. (In C++ you have to be concerned with something called "garbage collection", while Java and BASIC take care of that for you.
Good luck. If you are really serious about wanting to learn programming there is a great big beautiful world ahead of you that will require a lot of reading, writing programs, scratching your head, writing programs, wringing your brain, writing more programs, and writing more programs.
I've heard writers say that the only way to learn to write is to write. The same is true of programming. If you really like it, and want to do it, the best thing you can do is to write as many programs as you can.
Xeon
February 15th, 2002, 09:34 PM
(Xeon applauses)
Just how many posts in Codeguru.com is worthy of an applause loud as thunder? :-)
My! That was indeed interesting, Noah's Ark!
Yeah, yeah! Writing programs is the only way to truly learn : the more realistic and leaner the program, the more you'll learn. But first, start with small classroom-kid-like programs. Examples include displaying a message box when a button is clicked, or when the dialog is clicked using the right mouse button, display a large icon of a really really cute ****. Period. :-D
Dinosaur of the moment : Allosaurus
Binary Baller
March 1st, 2002, 10:29 PM
hey my school does have MVB 6 but the guy wont lend it to me for some reason. another bump in the road
codeguru.com
Copyright Internet.com Inc., All Rights Reserved.