PDA

View Full Version : Could someone teach me about programming?



megadomonic
04-13-2009, 02:20 PM
I'm a high schooler and the school I attend doesn't even have any type of computer classes. So I wish to know if someone could teach me about programming, scripting, language scripting, basics, C-base, and so on.

kaneda84
04-13-2009, 02:39 PM
im not too good on that stufs but all that i know i learned by my self... i recomend u google for pdf tutorials and serch for forums of programing and if the program u use (like visualstudio, etc) have a help-tutorial menu use it and good luck ;)

Wh1t3y3t1
04-13-2009, 02:51 PM
It's called the internet, from this you get utorrent and search something called google.

When you do this the fairies will tell you to get the "dummies guide to C".

Thank the fairies

solarenemy
04-13-2009, 03:02 PM
Yep check your local book store or library for the Whatever for dummies series. They usually have books on things like programming in various languages. That would be your best bet. teaching over the net is nearly impossible especially if you have no foundation to begin with.

neokai
04-13-2009, 03:03 PM
First things first, what do you want to know? You listed a bunch of general topics, so not sure what and where to start advising.

You might want to start out with what you intend to do with the knowledge. We can work from there.

Vaslav
04-13-2009, 03:27 PM
If you want C, try this site as a starter (http://www.cprogramming.com)
Then grab books for more advanced knowledge.

Choose one language in the beginning, learn the basic structure & rules, which is usually shared among different languages and quite boring. Tiny differences do exist. There will be many more variations in dealing with specific tasks.

You can decide which one to master later, depending on job prospect, interest or college requirement. In college, some language are learned by self-learning too, and often in problem solving basis.

megadomonic
04-13-2009, 05:42 PM
All right, thanks a lot. I'm trying to learn this for future preparation. For now, all I know is that I can open my notepad and start a script off like this...

wscript.echo "Type Something Here..."
Then save as a .vsb script.

SniperTak
04-13-2009, 07:42 PM
Oh, id be happy to teach you programming.


10101000100101110010101010100100010101010111010100 001010110010000100101001000010100110101010110

Happy?

BOFH
04-13-2009, 07:51 PM
All right, thanks a lot. I'm trying to learn this for future preparation. For now, all I know is that I can open my notepad and start a script off like this...

wscript.echo "Type Something Here..."
Then save as a .vsb script....and the first recommendation of an ex-coder (and a long-time sysadmin) will be: "keep away from VB and VBscript for as long as you can" ^_^

Learning programming languages is easy. Learning how to program is not. If you can handle the hard (but proper) way, learn how to create algorithms and data flow charts. Because once I draw a flowchart (i.e. know how data and logic flows in my process), I can take a book on any programming language, including those I don't know, and write code very quickly. And if I don't understand exactly every step of my "process", writing code will result in something that won't even compile.


Once you can describe data and logic flow, you can either go the classic way and learn C or C++, or turn to the dark side and go for either VB or C#. Or take the middle path and go for a scripting language like Perl.

ElExperto
04-13-2009, 10:52 PM
I know you may be starting to know the "programming world" but It would be good if you know what you wanna do and what you really like. Something like your own Word, paint, music player, etc. Or if you like databases you would get a good match for programming. I recommend SQL, ORACLE, PL/SQL. But if you just want to make some programs, I recommend Visual Basic just to start, and then you can go to C++.

psychopompos
04-13-2009, 11:58 PM
does anyone have a few years & a few hundred to spend on books & study material lying about?

darkandshadow
04-14-2009, 12:20 AM
...and the first recommendation of an ex-coder (and a long-time sysadmin) will be: "keep away from VB and VBscript for as long as you can" ^_^

Learning programming languages is easy. Learning how to program is not. If you can handle the hard (but proper) way, learn how to create algorithms and data flow charts. Because once I draw a flowchart (i.e. know how data and logic flows in my process), I can take a book on any programming language, including those I don't know, and write code very quickly. And if I don't understand exactly every step of my "process", writing code will result in something that won't even compile.


Once you can describe data and logic flow, you can either go the classic way and learn C or C++, or turn to the dark side and go for either VB or C#. Or take the middle path and go for a scripting language like Perl.

That's going to be the best answer you're going to get.
Doesn't matter which language you want to start out with,
but if you don't have an idea on what you're going to use
it for, you might as well give up, as it's only going to frustrate
you.

Brainstorming your ideas, especially into easy to follow flow
charts, plus giving yourself a realistic date of completion,
should allow you to take on any language. As as BOFH says,
avoid VB for as long as possible. It's very messy, sometimes
confusing and little extra work for simple stuff to start
working.

If you plan on doing web coding, start with HTML/CSS
If you plan on doing software, start with C/SQL

...then you just build from there.

A nice reference website for a bunch of coding tips/tricks:
http://www.w3schools.com

inxaract
04-14-2009, 07:09 PM
- this depends on how determined you are to learn programming and why do you want it ?

gvbn
04-14-2009, 08:50 PM
hongfire is like the worst possible place
to ask programming questions. just look
at all these people recommending c and
visual basic

you should start with c#, java or python.
then get a good beginner's book, check
amazon for reviews. msdn has some really
good tutorials if you decide to start with c#

BOFH
04-15-2009, 05:55 AM
hongfire is like the worst possible place
to ask programming questions. just look
at all these people recommending c and
visual basicI'm sorry to say that you haven't a slightest idea what you're talking about. I started my coding with QBASIC and Assembler back in the days of the ROM interpreter equipped computers with no hard drives, and went all the way to C#. And I'll tell you that IMO, studying C is absolutely essential, because it teaches one to think structurally and logically. The fact that lots of *NIX code is still written in C (as in "not C++") is an added benefit.
...though I agree that recommending VB to someone is a _very_ bad idea... ^_^



you should start with c#, java or python.Not the worst languages to learn programming, but by far not the best - especially if one wants to learn programming, and not coding. Then again, what could I expect from someone who recommends MSDN as a resource... :rolleyes:

gvbn
04-15-2009, 08:22 AM
ah i see you're just some linux fanboi.
go write your lunix kernals with your
legacy languages and let real men
learn programming by using a modern
language and .net

BOFH
04-15-2009, 09:21 AM
ah i see you're just some linux fanboi.I guess you could call me a BSD fanboi, though I doubt you know the difference. I prefer to describe myself as a technogeek, meaning "one who knows what he's talking about" - because I worked with pretty much all major operating systems released in last 30 years, and wrote code in a dozen programming and scripting languages.



go write your lunix kernals with your
legacy languages First, if it's being widely used right now, it ain't legacy. Second, it's kernel as in single entity. You might want to get your dictionary right, or your sarcasm will miss the point.


and let real men
learn programming by using a modern
language and .net.NET applications are getting closer to being fully interpreted rather than compiled, which decreases stability and performance in favour of portability and ease of coding. As far as I know, only real boys want to program in .NET - the real men will do it only if they have to. And even then, the most often used libraries are still tweaked and optimized in Assembler, then sold for a fair price.
BTW, if the "modern" languages and .NET are so good, mind explaining why banks, major financial companies, and governments are still mostly on Mainframe, AS400, and RS6000? I'll give you a hint... A company I used to work for, decided to convert all applications to Microsoft base, meaning Windows, MS SQL, and .NET. Two years later, they abandoned the idea because it will cost them approximately thirty million more over the course of 10 years than staying with the existing platform. And I'm not talking about conversion costs, but operating costs - licenses, support, hardware required etc.

Welcome to the real world, buddy. What you want to code in doesn't mean jack unless ROI and TCO figures tell the top execs it's more profitable.

gvbn
04-15-2009, 11:23 AM
yeah well i programmed lisp before it
was invented and developed all major
operating systems released in the last
30 years. i prefer to describe myself as
a technonigger


BTW, if the "modern" languages and .NET are so good, mind explaining why banks, major financial companies, and governments are still mostly on Mainframe, AS400, and RS6000? I'll give you a hint... A company I used to work for, decided to convert all applications to Microsoft base, meaning Windows, MS SQL, and .NET. Two years later, they abandoned the idea because it will cost them approximately thirty million more over the course of 10 years than staying with the existing platform. And I'm not talking about conversion costs, but operating costs - licenses, support, hardware required etc.

Welcome to the real world, buddy. What you want to code in doesn't mean jack unless ROI and TCO figures tell the top execs it's more profitable.
cool but this thread is about a high
schooler who wants to learn how to
program, not about real life profitability

and yeah c is pretty much legacy. most
job openings out there are for c++, java,
c# and php

salopte
04-15-2009, 11:56 AM
It's called the internet, from this you get utorrent and search something called google.

When you do this the fairies will tell you to get the "dummies guide to C".

Thank the fairies

LOL...dam ur brutal yo

Covvie
04-15-2009, 12:09 PM
ahahaha, gbvn.

---
I'm not going to suggest which languages you should learn or what books you read from yet because they don't tell you what program you start need to start coding. As a high schooler, I wanted to have a little fun with coding rather than to immerse myself with it. I didn't know what SDK or compilers were.

The first step I would encourage you to do is to get a running development environment.

http://www.eclipse.org/

Eclipse is mostly for java, but it's free for you. When you get the stuff running, then you can ponder about what coding is.

gvbn
04-15-2009, 12:19 PM
most beginner books have a chapter
dedicated on installing an ide and
getting it to run properly

also
http://www.microsoft.com/express/download/default.aspx
visual studio is pretty much the best
ide out there regardless what some
tux cocksuckers might say and the
express editions are free

blozzee
04-15-2009, 12:33 PM
I used to get my ebooks here www.flazx.com, have fun learning

BOFH
04-15-2009, 01:03 PM
yeah well i programmed lisp before it*shudders at the memory*



cool but this thread is about a high
schooler who wants to learn how to
program, not about real life profitabilityIndeed. He wants to learn programming, not become a trained code monkey. And learning C is like one of those seemingly pointless things that Zen masters impose on their students. It trains one's mind and makes sure he goes down the right path (as opposed to easy one)


and yeah c is pretty much legacy. most
job openings out there are for c++, java,
c# and phpI guess you know that better. I've switched to being a sysadmin and didn't need to look at the job openings ever since.



http://www.eclipse.org/

Eclipse is mostly for java, but it's free for you. It's also for C/C++. Interesting thing is that Eclipse is so good, Borland decided to abandon the IDE market because of it.


visual studio is pretty much the best
ide out there regardless what some
tux cocksuckers might say and the
express editions are freeDo me a favour, run VS2008 on a P4 (which could be an average high-schooler's comp) and tell me how quickly you can develop anything... the main reason I won't use VS unless my boss holds a knife to my throat is that it's a bloated resource hog, used to produce more bloated resource hogs. The part where it thinks it's smarter than me and doesn't let me type the code the way I want is an additional annoyance.

As for your continuing aggression towards "the tux", you seem to have blinded yourself to the fact that Linux and Open Source are not the same thing. I do suggest you do fix your dictionary before embarrassing yourself even further...

megadomonic
04-15-2009, 01:39 PM
I'll look up on all of these.

SebastianvonKane
04-15-2009, 02:13 PM
If good at math, there's nothing to worry about. You'll catch it easily.
Try to focus on a standar language.
Thereafter, you will see migrating from one language into another will be easier.

From there, you can jump into projects.

blozzee
04-15-2009, 09:49 PM
http://www.hongfire.com/forum/avatars/avatar152076_26.gif.........VS........http://www.hongfire.com/forum/avatars/avatar384289_10.gif
..(Gvbn)Troll........................Fake Moderator
.............................................(BOFH )

I'm gonna put my money on BOFH to win the argument, when comes to knowledgeable argument, troll always lost the game..but the troll could retaliate with his sneaky HaX attack too which potentially made the troll the winrar at the end


back to the topic, as for a compiler I would prefer using devCpp, if ur learning c++

ghost333
04-17-2009, 03:06 PM
i started in my early years with Qbasic and the assembler.
after some time the first IBMs and were there and things change somehow.
I recommend C which will teach you a lot fo good things and wont make a "code junky"
i think u will learn essentials that will help you with the philosophy and the logical thought behind the process called "coding"
C For dummies is a very good book for studing C since it has a lot of easy excercises and coments that teach you easy / fun and most important dont harash you with all things , but instead u learn them step by step .
charts are very good but i think u probably dont want to go there ?
i assume u just want to learn it as a hooby am i right?
anyway thats all i wanted to say sry for bad english.

neokai
04-18-2009, 04:52 AM
i started in my early years with Qbasic and the assembler.
after some time the first IBMs and were there and things change somehow.
I recommend C which will teach you a lot fo good things and wont make a "code junky"
i think u will learn essentials that will help you with the philosophy and the logical thought behind the process called "coding"
C For dummies is a very good book for studing C since it has a lot of easy excercises and coments that teach you easy / fun and most important dont harash you with all things , but instead u learn them step by step .
charts are very good but i think u probably dont want to go there ?
i assume u just want to learn it as a hooby am i right?
anyway thats all i wanted to say sry for bad english.

Translation:
In my early years i started with qBasic and assembly language. After some time the first IBM machines came out and things changed somehow (Translator note: welcome Microsoft dominance).

I recommend C, which teaches you a lot of good things (so you don't become a code monkey), like the essentials behind understanding the logical process behind coding. C for dummies is a very good book for studying C since it has a lot of easy exercises and tips to make it easy/fun. Most importantly it doesn't barrage you with a ton of information, but leads you step by step. Process-flow charts are also good but I do not think you will want to go there right?

Anyway that's all I want to say, sorry for the bad english.

AngelsThesis
04-18-2009, 06:18 AM
i'm posting here cause it ups my post count

and this is what everyone else is also doing besides the two that are arguing and the topic starter

ghost333
04-18-2009, 09:35 AM
thx neokai
i was kind of drunk.
Well actually u forgot the question about the hobby part, but i guess is not a big issue anyway.

neokai
04-18-2009, 11:40 AM
i'm posting here cause it ups my post count

and this is what everyone else is also doing besides the two that are arguing and the topic starter

俺は君と一緒にするな。

But I think OP has pretty much gotten all his pertinent info to get started. GL and have fun with learning, at least you can say the knowledge is useful in society.

moonfire88
04-27-2009, 05:59 AM
Learning programming languages is easy. Learning how to program is not. If you can handle the hard (but proper) way, learn how to create algorithms and data flow charts. Because once I draw a flowchart (i.e. know how data and logic flows in my process), I can take a book on any programming language, including those I don't know, and write code very quickly. And if I don't understand exactly every step of my "process", writing code will result in something that won't even compile.

This is the best advise. Learn the fundamentals behind all programming languages and you can pick up any language quickly. Unfortunately you'll never really understand the theory without trying to put it into practice.

Therefore, my recommendation is to learn something (say pointers for example) and then try it out in a quick simple application. When you come across errors (which you will, especially with pointers); figure out why you're getting them and then correct yourself. Move onto the next topic. In this way you will learn thoroughly a few concepts at a time. This is the best way to go.

The language(s) you learn should be based on what you want to do with them or what you want to learn from them.

C - Very good for understanding low-level code. Play around with bit-twiddling and pointers. Learn about memory management.
Java - Very good for learning about Object-Orientated Programming and design patterns.
C++ - This is where you want to end up.

If you can program in C++; combining both low-level code and very high-level object-orientated code, then you are doing well.

At the end of the day the old software engineering saying applies: Keep It Simple Stupid!

Only digest as much knowledge as you can and take one step at a time.

I should also point out that if you are planning on going into games programming: PAY ATTENTION IN GEOMETRY CLASS!

That's about it. Good luck and have fun. :)