Programing - Best Way To Start?
#39
It's syntax. Syntax is irrelevant to the greater problem of creating software.
For what it's worth I think Puff made the right choice. He is learning to code, C# forums are most active and elicit the quickest response from people trying to earn their stripes.
If you know what's going on at the lowest level you can *read* almost any language.
Troubles come when you get serious, when (for example) you find that Python's support for COM is not threadsafe (as it wasn't 3 years ago). I don't expect Puff could give a cr*p about such things.
C# is not owned by MS anymore, and as the defacto language of .NET is not going to disappear, despite wishful thinking.
For what it's worth I think Puff made the right choice. He is learning to code, C# forums are most active and elicit the quickest response from people trying to earn their stripes.
If you know what's going on at the lowest level you can *read* almost any language.
Troubles come when you get serious, when (for example) you find that Python's support for COM is not threadsafe (as it wasn't 3 years ago). I don't expect Puff could give a cr*p about such things.
C# is not owned by MS anymore, and as the defacto language of .NET is not going to disappear, despite wishful thinking.
#40
I can code in pretty much all mainstream lanuages of today (apart from the daft things M$ release as I'm as unix man)
Here are my thoughts:
C++ - IMO a bit bloated but an excelent lanuage. No real need to go down this route if its for fun. C/C++ are very low level lanuages. Your probably not gonna be interested is hacking code down on the stack and pointing to the heap. It is a derreritive of C which was designed to write operating systems. i.e. intereact with hardware.
However, its free and you can't go far wrong with compiler front ends like bloodshed
perl - One of, if not the best scripting lanuage in the world. You will move on fast with lanuages like this and learn the basics of programming easily.It free However I think your looking for compiled end products (like exe files) and perl won't give you this option.
VB - uugghh, pass me a bucket. Dare I even class VB as a programming lanuage??? Teaches bad habbits, inefficient, slow....typical microsoft.
Java - Suns answer to activeX. Very secure (can't access heap memory, no overflows) as it was designed for the web. Nice syntax easy to follow. not much bad to say about it.
Delphi - The one for you to go for IMO. This is an excellent lanauge taken from pascal. It is how VB should have been done. excelent syntax, easy to code, compiles excelent binarys when good coding practice is used. This is used for many front ends to windows programs powered by C++ backend binaries for speed. You will also find that most windows viri, trojans and worms are written in Delphi. Some very skilled coders in that range...they can't be wrong. 10/10 for delphi for the market is was designed for.
Here are my thoughts:
C++ - IMO a bit bloated but an excelent lanuage. No real need to go down this route if its for fun. C/C++ are very low level lanuages. Your probably not gonna be interested is hacking code down on the stack and pointing to the heap. It is a derreritive of C which was designed to write operating systems. i.e. intereact with hardware.
However, its free and you can't go far wrong with compiler front ends like bloodshed
perl - One of, if not the best scripting lanuage in the world. You will move on fast with lanuages like this and learn the basics of programming easily.It free However I think your looking for compiled end products (like exe files) and perl won't give you this option.
VB - uugghh, pass me a bucket. Dare I even class VB as a programming lanuage??? Teaches bad habbits, inefficient, slow....typical microsoft.
Java - Suns answer to activeX. Very secure (can't access heap memory, no overflows) as it was designed for the web. Nice syntax easy to follow. not much bad to say about it.
Delphi - The one for you to go for IMO. This is an excellent lanauge taken from pascal. It is how VB should have been done. excelent syntax, easy to code, compiles excelent binarys when good coding practice is used. This is used for many front ends to windows programs powered by C++ backend binaries for speed. You will also find that most windows viri, trojans and worms are written in Delphi. Some very skilled coders in that range...they can't be wrong. 10/10 for delphi for the market is was designed for.
#41
Scooby Regular
Join Date: Jul 2000
Location: Islington
Posts: 2,145
Likes: 0
Received 0 Likes
on
0 Posts
I do like the 'incisive' advice people are giving on this board.
Unlike some others, I *AM* a developer of 14 years (add another 8 for when i was under 18)
I've been through assembler/machine code (Z80/6502/68000/80x86), fortran, pascal, cobol, C and have settled into C++ and VB.
Contrary to popular opinion, VB is a very powerful language and very flexible, but you are right that a bad/new programmer can easily fall into the bad programming traps - that's BASIC's fault though, not VB.
The concept that all languages are much of a muchness and it's just syntax is largely no longer valid. VB is not the same as JAVA in any way!
I personally would go for the common denominator language that encompasses all the concepts you're likely to need and with much less retraining allow you to move to other languages... plain old ansi C. Learn it well and then move on to C++ or another platform's equivalent OO implementation.
Then do a math degree, learn direct X and write the next 3D engine for quake IV!!!
Email me if you've questions Puff.
Unlike some others, I *AM* a developer of 14 years (add another 8 for when i was under 18)
I've been through assembler/machine code (Z80/6502/68000/80x86), fortran, pascal, cobol, C and have settled into C++ and VB.
Contrary to popular opinion, VB is a very powerful language and very flexible, but you are right that a bad/new programmer can easily fall into the bad programming traps - that's BASIC's fault though, not VB.
The concept that all languages are much of a muchness and it's just syntax is largely no longer valid. VB is not the same as JAVA in any way!
I personally would go for the common denominator language that encompasses all the concepts you're likely to need and with much less retraining allow you to move to other languages... plain old ansi C. Learn it well and then move on to C++ or another platform's equivalent OO implementation.
Then do a math degree, learn direct X and write the next 3D engine for quake IV!!!
Email me if you've questions Puff.
#42
Puff wants to code for the PPC2003. I maintain that by far the easiest 'way in' is using the compact .net framework and either VB.net or C#, the latter being the best choice for getting a good grounding in modern languages.
#43
Scooby Regular
Join Date: Sep 1999
Location: Bedfordshire
Posts: 4,037
Likes: 0
Received 0 Likes
on
0 Posts
I bet Puff thought he would never stir up so much discussion!!! Almost like the PC vs Mac debate, anyway he's started now and gone and got a C# book.
Fosters and steven have a point about ANSI C, trouble is you cant do anything quickly or pretty as there is no RAD environment and I think as a beginner its important to see the fruits of your labour quickly as you'll lose interest.
Gedi, nice to see someone championing Delphi, been my tool of choice since 95 and yes it was what VB should have been, VBs legacy is that it was never designed properly from day one, features have been added here and there as it's progressed, Delphi 1 took 2 man years to develop and they started with a blank piece of paper, in fact what M$ have done with C# because surprise surprise its been architected by the 'father' of Delphi Anders Heijsberg (anorak mode off now!), however dont agree wih your point about C++ back-ends Delphi is on a par performance wise if your deploying n-tier using CORBA/COM.
Anyway puff this is everyone else bickering by then you'll have done your first application!
Gary
Fosters and steven have a point about ANSI C, trouble is you cant do anything quickly or pretty as there is no RAD environment and I think as a beginner its important to see the fruits of your labour quickly as you'll lose interest.
Gedi, nice to see someone championing Delphi, been my tool of choice since 95 and yes it was what VB should have been, VBs legacy is that it was never designed properly from day one, features have been added here and there as it's progressed, Delphi 1 took 2 man years to develop and they started with a blank piece of paper, in fact what M$ have done with C# because surprise surprise its been architected by the 'father' of Delphi Anders Heijsberg (anorak mode off now!), however dont agree wih your point about C++ back-ends Delphi is on a par performance wise if your deploying n-tier using CORBA/COM.
Anyway puff this is everyone else bickering by then you'll have done your first application!
Gary
#44
Scooby Regular
Join Date: Jul 2000
Location: Islington
Posts: 2,145
Likes: 0
Received 0 Likes
on
0 Posts
The question is, does Puff want to learn to develop solid applications or pretty calculators and 'hello world' proggies?
RAD languages are really bad for learning. Let's say Puff's programming a human and starts with let's do a finger nail. cool. can we stick a finger on that? not bad. a hand. need more fingers! copy and paste the finger code 4 more times.... etc.. what the hell do you end up with?!
Coding is a black art and it pays to start from scratch.
RAD languages are really bad for learning. Let's say Puff's programming a human and starts with let's do a finger nail. cool. can we stick a finger on that? not bad. a hand. need more fingers! copy and paste the finger code 4 more times.... etc.. what the hell do you end up with?!
Coding is a black art and it pays to start from scratch.
#45
Fosters: Are you saying that RAD languages don't lend themselves to refactoring or proper OO design? I think you are and if so, I disagree strongly. Because there are fewer lines of code in a C# or Java app, refactoring is less onerous. The OO facilities are also first class in both
#46
Puff,
As a VB contractor of 9 years, i'd say
1) Don't listen to the muppets who say VB.Net is "easy"... the main hurdle you need to get over is the basic fundamentals of HOW to program... i.e. the methods and logic behind what you want to acheive. Thats what i find most of the so called VB programers lack.. the fundamental understanding of how to make a program that actually works and does what the users want.
So - i'd therefore recommend you don't start with one of the books - there ok if you want to write a book club program - that at the end is all well and good but wont help you write something more relevant.
So think of a real project that will be of actual use to you. I started off with a manufacturing simulation at college - it was great cause it made me think about what i needed to implement rather than reading some naff book (often writen by someone who thinks beginers understand all the "programmers slang")... So i was able to plan what i needed - then find out how to do it.
There really is no better way than throwing yourself in the deep end.. and when you get stuck - use the web to find out how to either a) find a way or b) rethink what you wanted to do.
As your a newbie - i'd recommend something like MS Access (similar coding to VB but you get things done much quicker due to the reduced functionality (not that you'd notice ) available) rather than VB or C - they are hardcore and you may find you get fed up with a lack of progress....
Yep - MS Access is a great starting place IMHO - you can learn about database design (you'll need that for most project IMHO) and put together forms quickly.. and who knows - may even enjoy it!
Jza
As a VB contractor of 9 years, i'd say
1) Don't listen to the muppets who say VB.Net is "easy"... the main hurdle you need to get over is the basic fundamentals of HOW to program... i.e. the methods and logic behind what you want to acheive. Thats what i find most of the so called VB programers lack.. the fundamental understanding of how to make a program that actually works and does what the users want.
So - i'd therefore recommend you don't start with one of the books - there ok if you want to write a book club program - that at the end is all well and good but wont help you write something more relevant.
So think of a real project that will be of actual use to you. I started off with a manufacturing simulation at college - it was great cause it made me think about what i needed to implement rather than reading some naff book (often writen by someone who thinks beginers understand all the "programmers slang")... So i was able to plan what i needed - then find out how to do it.
There really is no better way than throwing yourself in the deep end.. and when you get stuck - use the web to find out how to either a) find a way or b) rethink what you wanted to do.
As your a newbie - i'd recommend something like MS Access (similar coding to VB but you get things done much quicker due to the reduced functionality (not that you'd notice ) available) rather than VB or C - they are hardcore and you may find you get fed up with a lack of progress....
Yep - MS Access is a great starting place IMHO - you can learn about database design (you'll need that for most project IMHO) and put together forms quickly.. and who knows - may even enjoy it!
Jza
#47
Scooby Regular
Join Date: Jul 2000
Location: Islington
Posts: 2,145
Likes: 0
Received 0 Likes
on
0 Posts
jlanng, you've got me wrong. They are great for that, but if you don't know any oo concepts or logical application design you can so easily run into problems. RAD languages aren't happy with serialised/monolithic programming styles that most n00bs start out with. you have to agree with that.
OO is fantastic (ok, let's not talk about OO dBs ).
OO is fantastic (ok, let's not talk about OO dBs ).
#48
Scooby Regular
Join Date: Jul 2000
Location: Islington
Posts: 2,145
Likes: 0
Received 0 Likes
on
0 Posts
"RAD languages aren't happy with serialised/monolithic programming"
Actually, I was wrong there, they'll happily handle it. It's the next developer changing the code that isn't.
Actually, I was wrong there, they'll happily handle it. It's the next developer changing the code that isn't.
#49
Scooby Regular
OO is nice - when needed, but it's not the "best" way to program because that will depend on your task. Use the right tool for the right job rather than rigidly sticking to "X rather than Y because of Z".
#50
I see what you're saying now Fosters. I personally believe in 'OO first' - that a new progammer's first language should be an OO one. (Unless the poor guy is destined to spend his days writing device drivers!) It's much easier to step down to procedural from OO than to get your head round OO coming from a procedural background.
steven: OO is appropriate for rapid development of GUI applications - which is what this thread is all about.
steven: OO is appropriate for rapid development of GUI applications - which is what this thread is all about.
#57
my two cents worth
I think everyone is being a bit purist here! They are many different ways of developing and all type of languages which all have the good and bad points (yes even VB has good points) and as I was also taught there are many ways to skin a cat. To get into these intricacies is far too complex and who is right or wrong is simply subjective.
My advice therefore is to focus on the task at hand, how to program. I would also focus on doing this in a fun way so that puffs interest remains stimulated. There is only one IDE that comes to mind here and thats Macromedia Flash!! haha I hear you laugh but im deadly serious Tonnes of examples, tonnes of support a pure 00 language, you can start producing real results quickly and most importantly its FUN. Its also very net orientated which lets face it is probably quite important. IMHO Flash is seriously underrated and I think it will the GUI of choice for many, very soon.
Java,c#,c/c++ etc etc are all great languages but lets face it they can be a bit heavy to a novice as none of them are trivial.
ps. b4 any of you try to berrate Actionscript do your homework
I think everyone is being a bit purist here! They are many different ways of developing and all type of languages which all have the good and bad points (yes even VB has good points) and as I was also taught there are many ways to skin a cat. To get into these intricacies is far too complex and who is right or wrong is simply subjective.
My advice therefore is to focus on the task at hand, how to program. I would also focus on doing this in a fun way so that puffs interest remains stimulated. There is only one IDE that comes to mind here and thats Macromedia Flash!! haha I hear you laugh but im deadly serious Tonnes of examples, tonnes of support a pure 00 language, you can start producing real results quickly and most importantly its FUN. Its also very net orientated which lets face it is probably quite important. IMHO Flash is seriously underrated and I think it will the GUI of choice for many, very soon.
Java,c#,c/c++ etc etc are all great languages but lets face it they can be a bit heavy to a novice as none of them are trivial.
ps. b4 any of you try to berrate Actionscript do your homework
Thread
Thread Starter
Forum
Replies
Last Post
toyney83
General Technical
10
02 October 2015 08:38 PM