Be a Supporter!

Beginner programmer

  • 1,271 Views
  • 32 Replies
New Topic Respond to this Topic
Grimnar01
Grimnar01
  • Member since: Sep. 13, 2012
  • Offline.
Forum Stats
Member
Level 01
Blank Slate
Beginner programmer Sep. 16th, 2012 @ 02:16 PM Reply

Well as the subject states I just barely got into the world of programming. I would just like to to know where I should begin or any tips or software I should be aware of as far as writing programs and languages. Just some basic stuff or even ideas on what sort of program to write.

Mownkey
Mownkey
  • Member since: Sep. 1, 2012
  • Offline.
Forum Stats
Member
Level 03
Blank Slate
Response to Beginner programmer Sep. 16th, 2012 @ 02:31 PM Reply

I would highly recommend Python. It's extremely easy for people who just started programming, and has a plenty of good tutorials.
As for what you should start programming, I'd say simple output and input programs. You'll see, they're very easy to create.
After you gain some experience, you can move on some advanced programming languages, such as C++.

Diki
Diki
  • Member since: Jan. 31, 2004
  • Offline.
Forum Stats
Moderator
Level 13
Programmer
Response to Beginner programmer Sep. 16th, 2012 @ 03:03 PM Reply

At 9/16/12 02:31 PM, Mownkey wrote: I would highly recommend Python. It's extremely easy for people who just started programming, and has a plenty of good tutorials.

Seconding that. Python is an excellent language for beginners. This book is a phenomenal source that will get you up to speed (and it's free).
Ruby is another good choice for beginners, and the guy whom wrote that Python book also wrote a Ruby book (which is also free).

After finishing those books (should you choose to read either of them) then just start writing code. Think of something you'd like to make, and then make it.
If you're looking to get into game development: remaking Tetris or Pong are common first projects.
If you wanted to get into something like GUI programming you could try remaking Notepad, or Wordpad if you wanted more of a challenge.

In the end it really depends on what you want to make, but, no matter what you want both Python and Ruby will probably be suitable.

Mownkey
Mownkey
  • Member since: Sep. 1, 2012
  • Offline.
Forum Stats
Member
Level 03
Blank Slate
Response to Beginner programmer Sep. 16th, 2012 @ 03:25 PM Reply

At 9/16/12 03:03 PM, Diki wrote: Ruby

<3

Grimnar01
Grimnar01
  • Member since: Sep. 13, 2012
  • Offline.
Forum Stats
Member
Level 01
Blank Slate
Response to Beginner programmer Sep. 16th, 2012 @ 07:19 PM Reply

At 9/16/12 02:31 PM, Mownkey wrote: I would highly recommend Python. It's extremely easy for people who just started programming, and has a plenty of good tutorials.
After you gain some experience, you can move on some advanced programming languages, such as Caw

awesome thank you

pirateplatypus
pirateplatypus
  • Member since: Sep. 27, 2011
  • Offline.
Forum Stats
Member
Level 15
Programmer
Response to Beginner programmer Sep. 17th, 2012 @ 01:19 AM Reply

I third Python; all the cool kids are doing it. I'd also recommend checking out the tutorial at python.org . (I really hope that python.org is the right address for Python, I'm too lazy to check.)


"If loving Python is crazy then I don't want to be sane." -Diki

seanna
seanna
  • Member since: Sep. 3, 2012
  • Offline.
Forum Stats
Member
Level 01
Blank Slate
Response to Beginner programmer Sep. 17th, 2012 @ 06:19 AM Reply

Learn HTML and PHP, best and easy languages for programmer. You can learn it through http://w3schools.com .

Redshift
Redshift
  • Member since: Feb. 12, 2005
  • Offline.
Forum Stats
Member
Level 15
Programmer
Response to Beginner programmer Sep. 17th, 2012 @ 07:36 AM Reply

At 9/17/12 06:19 AM, seanna wrote: Learn HTML and PHP, best and easy languages for programmer. You can learn it through http://w3schools.com .

HTML isn't even a programming language, and PHP is rather horrible.


#include <stdio.h>
char*p="#include <stdio.h>%cchar*p=%c%s%c;%cmain() {printf(p,10,34,p,34,10);}";
main() {printf(p,10,34,p,34,10);}

BBS Signature
cisprakash
cisprakash
  • Member since: Aug. 30, 2012
  • Offline.
Forum Stats
Member
Level 01
Blank Slate
Response to Beginner programmer Sep. 17th, 2012 @ 08:08 AM Reply

This is really great, i have gone through it. Thanks for this.

Diki
Diki
  • Member since: Jan. 31, 2004
  • Offline.
Forum Stats
Moderator
Level 13
Programmer
Response to Beginner programmer Sep. 17th, 2012 @ 09:16 AM Reply

At 9/17/12 01:19 AM, pirateplatypus wrote: (I really hope that python.org is the right address for Python, I'm too lazy to check.)

Yep. That's the correct domain for Python.

At 9/17/12 06:19 AM, seanna wrote: You can learn it through http://w3schools.com .

Do not use W3Schools as a learning resource. It is horribly outdated, and teaches poor practice (especially their JavaScript tutorials).
This site does a good job of outlining the problems with W3Schools.

If you want to learn HTML/CSS then head over to HTML Dog.

At 9/17/12 07:36 AM, Redshift wrote: PHP is rather horrible.

There's also that. PHP is mind-boggingly terrible. I don't recommend that a beginner learn PHP; it has so many idiosyncrasies that it's best avoided until you're a competent programmer (technically it's best avoided all-together).
I won't go on one of my classic PHP rants, so to anyone reading this whom thinks PHP is a good language I request that you read this or this.

Rawnern
Rawnern
  • Member since: Jan. 24, 2009
  • Offline.
Forum Stats
Member
Level 28
Movie Buff
Response to Beginner programmer Sep. 22nd, 2012 @ 03:07 AM Reply

First: Start off easy. And gradually make more advanced things.

Second: Choose the language you want to start with. Are you going to develop for a spesific OS or something? Maybe you want to make it cross-platform. It's up to you and what you want to make... and HOW you want it to be avaible.

You can start with something easy like Python as already suggested. I have heard it's a good start when programming and still is used by people in big compaines.

What I recomend...
In the start, I learned Visual Basic and it's good - especially when you want to start of easy. Many compain about the speed and it's not cross platform, and all the restrictions. I liked programming in it and it gave me a good introduction to programming.

You can also start web developing which is both fun and good if you have a hosting site. You can reach loads of people with this - computers, smartphones, tablets and whatnot!

Bottom line...
I belive the web is the future, so personally I would have started web developing. But hey... that's just my opinion! Good luck!

warewolves
warewolves
  • Member since: Oct. 10, 2011
  • Offline.
Forum Stats
Member
Level 02
Blank Slate
Response to Beginner programmer Sep. 22nd, 2012 @ 06:51 AM Reply

Python language is what my teacher taught me in computer programing, and it is failry easy once you grasp the basic syntax problems, the difference between x=0 and x==0

First, download python. Don't go onto that pygame stuff untill you can program with ease with simple programs.
Second, start with basic things.

Firstly, there's a few commands you need to know, a few things you can do and so on and so forth.

For now here is something to play around with.

raw_input("Enter your name: ")
will print when run "Enter your name: " where you can type into the command line and it will allow the user to input a string(letters)
you can put that into a variable(basically a box containing a value(data)
the basic variable is x.

for example
x=raw_input("Enter your name: ")
will put what the person types into the variable x.
for example, if the person types 'steve'
if you put in after print x
it will print steve

now since this is a string, you can add extra to it fairly easy.
for example the command
print "You are", x
will print "You are steve"

I'll stop rambling now, if you want some more help starting just send me a note.


<Blank>

Diki
Diki
  • Member since: Jan. 31, 2004
  • Offline.
Forum Stats
Moderator
Level 13
Programmer
Response to Beginner programmer Sep. 22nd, 2012 @ 02:04 PM Reply

At 9/22/12 06:51 AM, warewolves wrote: raw_input("Enter your name: ")

Just pointing this out for anyone reading this whom doesn't know: that will only work on Python 2.x; if you are using Python 3.x you need to use input() instead.

warewolves
warewolves
  • Member since: Oct. 10, 2011
  • Offline.
Forum Stats
Member
Level 02
Blank Slate
Response to Beginner programmer Sep. 23rd, 2012 @ 01:06 AM Reply

At 9/22/12 02:04 PM, Diki wrote:
At 9/22/12 06:51 AM, warewolves wrote: raw_input("Enter your name: ")
Just pointing this out for anyone reading this whom doesn't know: that will only work on Python 2.x; if you are using Python 3.x you need to use input() instead.

No that's for intergers(numbers)
raw_input is letters(string)('abababa')
input is numbers(intergers)(18262)


<Blank>

pirateplatypus
pirateplatypus
  • Member since: Sep. 27, 2011
  • Offline.
Forum Stats
Member
Level 15
Programmer
Response to Beginner programmer Sep. 23rd, 2012 @ 01:17 AM Reply

At 9/23/12 01:06 AM, warewolves wrote:
At 9/22/12 02:04 PM, Diki wrote:
At 9/22/12 06:51 AM, warewolves wrote: raw_input("Enter your name: ")
Just pointing this out for anyone reading this whom doesn't know: that will only work on Python 2.x; if you are using Python 3.x you need to use input() instead.
No that's for intergers(numbers)
raw_input is letters(string)('abababa')
input is numbers(intergers)(18262)

Diki's right. raw_input doesn't exist in Python 3.x. PEP 3111


"If loving Python is crazy then I don't want to be sane." -Diki

warewolves
warewolves
  • Member since: Oct. 10, 2011
  • Offline.
Forum Stats
Member
Level 02
Blank Slate
Response to Beginner programmer Sep. 23rd, 2012 @ 01:40 AM Reply

At 9/23/12 01:17 AM, pirateplatypus wrote:
At 9/23/12 01:06 AM, warewolves wrote:
At 9/22/12 02:04 PM, Diki wrote:
At 9/22/12 06:51 AM, warewolves wrote: raw_input("Enter your name: ")
Just pointing this out for anyone reading this whom doesn't know: that will only work on Python 2.x; if you are using Python 3.x you need to use input() instead.
No that's for intergers(numbers)
raw_input is letters(string)('abababa')
input is numbers(intergers)(18262)
Diki's right. raw_input doesn't exist in Python 3.x. PEP 3111

'The Python 2 to 3 conversion tool will replace calls to input() with eval(input()) and raw_input() with input().'
I understand what they are saying but do you have any idea why they changed it?
print()
*Frowns*
print is an inbuilt function isn't it? in idle you don't need to import anything to use print. So now we have to put two more brackets? what about 'these marks?' do we need them anymore?


<Blank>

Diki
Diki
  • Member since: Jan. 31, 2004
  • Offline.
Forum Stats
Moderator
Level 13
Programmer
Response to Beginner programmer Sep. 23rd, 2012 @ 01:51 AM Reply

At 9/23/12 01:06 AM, warewolves wrote: No that's for intergers(numbers)

Thanks for clarifying that an integer is a number. I would have been confused otherwise.

I understand what they are saying but do you have any idea why they changed it?

For the same reason a lot of the changes in Python 3.x exist: they don't provide any real new functionality but are more clear and succinct. For that reason some people are torn on Python 3.x. (for example Armin Ronacher, the creator of the Flask framework, doesn't really like it).

I leave it up to you to decide what you think.

print is an inbuilt function isn't it?

Yes.

So now we have to put two more brackets?

Because it's a function and not an operator.
Again this is just part of the changes Python 3.x provides: doesn't really give you anything new but it is more "correct".

warewolves
warewolves
  • Member since: Oct. 10, 2011
  • Offline.
Forum Stats
Member
Level 02
Blank Slate
Response to Beginner programmer Sep. 23rd, 2012 @ 02:25 AM Reply

Again this is just part of the changes Python 3.x provides: doesn't really give you anything new but it is more "correct".

I see, well good to know because if there was some critical change and my computer hapened to go kaploey then It might be hard readjusting.


<Blank>

Diki
Diki
  • Member since: Jan. 31, 2004
  • Offline.
Forum Stats
Moderator
Level 13
Programmer
Response to Beginner programmer Sep. 23rd, 2012 @ 03:11 AM Reply

At 9/23/12 02:25 AM, warewolves wrote: I see, well good to know because if there was some critical change and my computer hapened to go kaploey then It might be hard readjusting.

There sort of is critical changes, such that it's possible for code to not be compatible between versions; Python 3.x was not designed to be backward compatible.
Example:

Python 2.x

map(lambda a:a, [1,2,3])

Returns [1,2,3]

map(lambda a:a, [1,2,3])

Returns: <map object at 0x...>

Which matters because:

Python 2.x

map(lambda a:a, [1,2,3])[0]

Returns 1

Python 3.x

map(lambda a:a, [1,2,3])[0]

Produces the following error: TypeError: 'map' object is not subscriptable.

Diki
Diki
  • Member since: Jan. 31, 2004
  • Offline.
Forum Stats
Moderator
Level 13
Programmer
Response to Beginner programmer Sep. 23rd, 2012 @ 03:15 AM Reply

Meant to type Python 3.x before that second Python code block.
Yeesh, is Newgrounds ever going to get an "edit post" feature?

warewolves
warewolves
  • Member since: Oct. 10, 2011
  • Offline.
Forum Stats
Member
Level 02
Blank Slate
Response to Beginner programmer Sep. 23rd, 2012 @ 03:55 AM Reply

At 9/23/12 03:15 AM, Diki wrote: Meant to type Python 3.x before that second Python code block.
Yeesh, is Newgrounds ever going to get an "edit post" feature?

I think there is one, hover over your post and in the bottom right I think there's an edit icon.

I see what you mean. I don't have any reason to update python, but it is good to know if I ever do.


<Blank>

Diki
Diki
  • Member since: Jan. 31, 2004
  • Offline.
Forum Stats
Moderator
Level 13
Programmer
Response to Beginner programmer Sep. 23rd, 2012 @ 10:46 AM Reply

At 9/23/12 03:55 AM, warewolves wrote: I think there is one, hover over your post and in the bottom right I think there's an edit icon.

Nah, that's for editing your signature.

Thegluestickman
Thegluestickman
  • Member since: Mar. 16, 2007
  • Offline.
Forum Stats
Member
Level 13
Game Developer
Response to Beginner programmer Sep. 23rd, 2012 @ 11:33 AM Reply

At 9/23/12 10:46 AM, Diki wrote:
At 9/23/12 03:55 AM, warewolves wrote: I think there is one, hover over your post and in the bottom right I think there's an edit icon.
Nah, that's for editing your signature.

Maybe he's tapped into knowledge no man should know.

What if he knows about the edit button and we don't Diki?


To protect the world from devastation.
kidd25 is the best Newgrounder ever.

BBS Signature
pirateplatypus
pirateplatypus
  • Member since: Sep. 27, 2011
  • Offline.
Forum Stats
Member
Level 15
Programmer
Response to Beginner programmer Sep. 23rd, 2012 @ 11:57 AM Reply

At 9/23/12 11:33 AM, Thegluestickman wrote:
At 9/23/12 10:46 AM, Diki wrote:
At 9/23/12 03:55 AM, warewolves wrote: I think there is one, hover over your post and in the bottom right I think there's an edit icon.
Nah, that's for editing your signature.
Maybe he's tapped into knowledge no man should know.

What if he knows about the edit button and we don't Diki?

He speaks the truth. There is an edit button. Tom, being a sneaky bastard, set it up so that only those using IE 5 can use the edit button.

At 9/23/12 01:40 AM, warewolves wrote: what about 'these marks?' do we need them anymore?

Please correct me if I'm wrong. I believe you only need the quotes when you are printing a string. print(my_string) will print the variable my_string; print('my_string') will print the string 'my_string'.


"If loving Python is crazy then I don't want to be sane." -Diki

Diki
Diki
  • Member since: Jan. 31, 2004
  • Offline.
Forum Stats
Moderator
Level 13
Programmer
Response to Beginner programmer Sep. 23rd, 2012 @ 01:36 PM Reply

At 9/23/12 11:57 AM, pirateplatypus wrote: Please correct me if I'm wrong. I believe you only need the quotes when you are printing a string. print(my_string) will print the variable my_string; print('my_string') will print the string 'my_string'.

That's correct. It's just like Ruby, PHP, JavaScript, AS3, et al: strings are contained in either single or double quotation marks (it doesn't matter which you use).
Personally I, by default, use the double quotation marks, but that's just out of habit from writing C++ for so long.

Having both is handy since it allows you to put quotations inside strings without needing to escape (should you need to do this):

foo = "  'hello world'  "
bar = '  "hello world"  '

P.S.
Nice signature. :)

DefiledNH
DefiledNH
  • Member since: Sep. 20, 2012
  • Offline.
Forum Stats
Member
Level 03
Programmer
Response to Beginner programmer Sep. 26th, 2012 @ 01:10 AM Reply

At 9/16/12 02:16 PM, Grimnar01 wrote: Well as the subject states I just barely got into the world of programming. I would just like to to know where I should begin or any tips or software I should be aware of as far as writing programs and languages. Just some basic stuff or even ideas on what sort of program to write.

I said this to some other guy, but here :)

"Well, being 15, I've manage to pick up a few.

Start of with QBasic. Lots of the operators and commands are childishly easy, should take you a few weeks, if you're very hard working. Then, I'd move on to DBase. DBase is a bit more advanced, but the layout is more similar to other languages. I can't give you an exact time estimate for it. And after that [where I currently am] is C. There is C,C+,C++etc. Master them, and most other languages should be easier. Python, JAVA, Unix etc.etc. HTML doesn't help much when it comes to games. After you finish C, [and all it's advancements] you're pretty much set. Learn Flash,Java,Python etc.etc. and you'll be able to do your thing. If you want to take programming seriously.....

READ BOOKS. I'm serious. They are POTS OF GOLD when it comes to information. I haven't read any myself, but my dad, a computer architect told me to. I've just gotten the free time.

Trust me, this is probably the best way you can learn :) Take it from a fellow programmer. I know QBasic, DBase, and a bit of C. Currently, in my school, we're learning theory on the hardware of computers for this year. That is important too.

Remember, there are NO SHORTCUTS. You WILL have to bust your ass. This is not a slow process. Probably could take 3 years.. Don't let me discourage you however, I'm just giving you a feel of how it's gonna be. Prepare to be in this for the long run. Excuse me if my post has any inaccuracies. :D

On a side note : First post :O "

Dean
Dean
  • Member since: Feb. 16, 2008
  • Offline.
Forum Stats
Moderator
Level 45
Gamer
Response to Beginner programmer Sep. 26th, 2012 @ 01:37 PM Reply

At 9/16/12 03:03 PM, Diki wrote: Seconding that. Python is an excellent language for beginners. This book is a phenomenal source that will get you up to speed (and it's free).
Ruby is another good choice for beginners, and the guy whom wrote that Python book also wrote a Ruby book (which is also free).

Glad I had a look through this thread earlier. I was sitting around, bored at uni waiting for my bus and I had a skim through that Python book. Think I'm going to follow it all the way through even if the start is fairly trivial stuff. I was particularly interested in the automated testing section and the bit on parsing user input. Both things that I'd like to look into more.

Can't say I ever make use of Python though. Only time I used it was to do some of the Project Euler stuff. I thought it would be fun to do it with a language I'd never used before. I'll follow that book through though and try to work on the basic text game project that it builds up.

I'm also interested in trying out Ruby but for a language that is designed to be fun to write, it looks really unappealing to me for whatever reason.


BBS + Chat Moderator - Feel free to send me a PM if you have a problem!
Want to instant message me? [ Skype - DeanNewgrounds ]

BBS Signature
Drony
Drony
  • Member since: Nov. 10, 2009
  • Offline.
Forum Stats
Member
Level 18
Melancholy
Response to Beginner programmer Sep. 28th, 2012 @ 09:47 PM Reply

At 9/26/12 01:37 PM, Dean wrote:
At 9/16/12 03:03 PM, Diki wrote: Seconding that. Python is an excellent language for beginners. This book is a phenomenal source that will get you up to speed (and it's free).
Ruby is another good choice for beginners, and the guy whom wrote that Python book also wrote a Ruby book (which is also free).
Glad I had a look through this thread earlier. I was sitting around, bored at uni waiting for my bus and I had a skim through that Python book. Think I'm going to follow it all the way through even if the start is fairly trivial stuff. I was particularly interested in the automated testing section and the bit on parsing user input. Both things that I'd like to look into more.

Can't say I ever make use of Python though. Only time I used it was to do some of the Project Euler stuff. I thought it would be fun to do it with a language I'd never used before. I'll follow that book through though and try to work on the basic text game project that it builds up.

I'm also interested in trying out Ruby but for a language that is designed to be fun to write, it looks really unappealing to me for whatever reason.

I tried Ruby as my first language, didn't like it as well. Python is a great starter and I bought that same book, in exercise 16 now. I'd say the only things you'd need to know before starting on that book is how to list and change to files using the powershell (or command prompt).


BBS Signature
Dean
Dean
  • Member since: Feb. 16, 2008
  • Offline.
Forum Stats
Moderator
Level 45
Gamer
Response to Beginner programmer Sep. 29th, 2012 @ 11:28 AM Reply

At 9/28/12 09:47 PM, Drony wrote: I tried Ruby as my first language, didn't like it as well. Python is a great starter and I bought that same book, in exercise 16 now. I'd say the only things you'd need to know before starting on that book is how to list and change to files using the powershell (or command prompt).

I've been programming for the past 4 or 5 years now, so I'm already familiar with most of the concepts covered in those books. I'm just not really familiar with either Python or Ruby and I'm always interested in checking out new languages if I get the chance. Like I mentioned in an earlier post, one of the main things about that book that interested me was the section on automated testing. It's not something that I ever really make use of and should probably look into it more.

I still feel like I'm a long with off in terms of what I think my level of ability should be. I suppose it doesn't make me feel any better when I'm on a computer science degree surrounded by some people who program 24/7. I feel like I know nothing in comparison to those guys.


BBS + Chat Moderator - Feel free to send me a PM if you have a problem!
Want to instant message me? [ Skype - DeanNewgrounds ]

BBS Signature
silentpain123
silentpain123
  • Member since: Sep. 26, 2012
  • Offline.
Forum Stats
Member
Level 02
Blank Slate
Response to Beginner programmer Sep. 29th, 2012 @ 01:02 PM Reply

This seems cool. I might try to give programming a try sometime. :D