Page 1 of 1

whats the best ???

Posted: 20 Jul 2009, 21:08
by Mclaren
I have been playing for a few days now with, Visual Basic express and Visual C# express, but for a windows forms based front end to an MS Access or SQL DB, what would be the best to start learning.

I like both of the above, but do not know enough about programming in general to know what would be the best.

Re: whats the best ???

Posted: 20 Jul 2009, 21:53
by c0d3r
You want to know which is better between C# and VB.net? For beginners, I would say VB.net. VB is much more verbose and "conversation-like" than C#.

The logic behind the 2 languages is the same, it is just the syntax that differs. There are millions of examples on the net for when you get stuck and I'm sure we have a bunch of programmers that will be able to help you which ever way we can.

Good luck!

Re: whats the best ???

Posted: 20 Jul 2009, 23:29
by RuadRauFlessa
Go C#

The language just makes more sense. And no it is not the same. It may use the same .Net runtime environment but you use them differently. There are also a lot more ppl on the forum that knows C# and can help you with something right off the bat. I have seen ppl on the forum suffer with VB.Net problems on the forum where if the problem was posed for a C# app it would have had an answer in a matter of minutes.

Re: whats the best ???

Posted: 21 Jul 2009, 07:30
by c0d3r
RuadRauFlessa, for a beginner VB is a better language to learn. Once you know the .NET framework, then it doesn't really matter in which language you code. If you check the (rather complete) MSDN site, you will find that examples are given in both C# and VB.net.

VB is more verbose (like it is being spoken) instead of colons, brackets and other abstract symbols. I have found that newbies understand VB.net better and faster.

Very nice link about the code differences between VB.net and C#.
Why VB.net is better than C#
Why C# is better than VB.net
Advantages of C# over VB.net and vice versa
The choice between C# and VB.NET is largely one of subjective preference. Some people like C#'s terse syntax, others like VB.NET's natural language, case-insensitive approach. Both have access to the same framework libraries. Both will perform largely equivalently (with a few small differences which are unlikely to affect most people, assuming VB.NET is used with Option Strict on). Learning the .NET framework itself is a much bigger issue than learning either of the languages, and it's perfectly possible to become fluent in both - so don't worry too much about which to plump for.
Source

Re: whats the best ???

Posted: 21 Jul 2009, 08:20
by rustypup
c0d3r wrote:for a beginner VB is a better language to learn.
i couldn't disagree more if you were waving a hannah montana flag.... :lol:

while not quite as bad as VBA, VB has always been an abomination among languages... coding habits people develop through its use mark them as permanently damaged goods.... (at least, in my book... ) :/

outside of java, (or Ron2K's pet frog, python), you'd be hard pressed to find a better starter language... one which encourages code reuse, loosely enforces at least some OOAD patterns and provides a solid base from which the learner can expand their coding toolkit into other languages.. C# at least opens the door to c++, (namespaces, operator overloading, classes, etc, etc), which in turn sits on top of c...

@Mclaren: start here...

Re: whats the best ???

Posted: 21 Jul 2009, 08:29
by doo_much
rustypup wrote:
c0d3r wrote:for a beginner VB is a better language to learn.
i couldn't disagree more if you were waving a hannah montana flag.... :lol:

while not quite as bad as VBA, VB has always been an abomination among languages... coding habits people develop through its use mark them as permanently damaged goods.... (at least, in my book... ) :/

outside of java, (or Ron2K's pet frog, python), you'd be hard pressed to find a better starter language... one which encourages code reuse, loosely enforces at least some OOAD patterns and provides a solid base from which the learner can expand their coding toolkit into other languages.. C# at least opens the door to c++, (namespaces, operator overloading, classes, etc, etc), which in turn sits on top of c...

@Mclaren: start here...
Then again - if he wants to start with Java he's more than welcome to my varsity books!
I'm afraid the enforced use of Bluejay at NWU killed any affinity I might have developed for programming. :?

Re: whats the best ???

Posted: 21 Jul 2009, 08:30
by c0d3r
rustypup wrote:
c0d3r wrote:for a beginner VB is a better language to learn.
i couldn't disagree more if you were waving a hannah montana flag.... :lol:

while not quite as bad as VBA, VB has always been an abomination among languages... coding habits people develop through its use mark them as permanently damaged goods.... (at least, in my book... ) :/
Bad coding habits? Lazy and badly educated people develop bad coding habits; programming languages don't create bad habits.

Please don't get the wrong impression regarding my preference towards programming languages. I am fluent in both C# and VB.net (I have more experience with C#) but I don't see the need to completely put VB.net down as a "abomination" and useless programming language. If that were the case, don't you think Microsoft would've stopped supporting VB.net ages ago?

Re: whats the best ???

Posted: 21 Jul 2009, 08:40
by Ron2K
Right, my take...

Out of the two languages, C#. Simple reason for this: the syntax is derived from the C family of languages, which makes languages with similar syntax (C, C++, Java, PHP, Python to a certain extent, and probably others as well) easier to learn. Trust me, if you're going to take software development seriously, you are going to need to know more than one language, and you want to get to the point where you can learn a new language in days by applying what's in the textbook to what you already know - if the languages are syntactically similar, it can help somewhat.

I've found that Visual Basic's syntax rules leads to bad coding habits, especially when the programmer decides to pick up a language that has decent syntax. There's other things about Visual Basic that I don't like (no operator overloading for instance, whereas you can do this in C# - there's other things as well, but I'd be spending the entire day typing up a very verbose explanation), so to me, there really is no choice. Sorry c0d3r.

rusty, about Java as a first language - I'm going to disagree here. Problem is, you need to write a lot of boilerplate code to get a simple "hello world" program running, and if it's the programmer's first language, you either try and explain the boilerplate (which could well go straight over the poor sod's head if he's really new to programming), or just say "you don't need to know about that right now" - none of which are particularly good solutions, in my opinion. It's obviously not an issue for the experienced programmer, but from what I've seen, the new ones do struggle. This is why I recommend Python to someone just starting out - you don't need a lot of boilerplate code around your "hello world" program, while at the same time being a well-designed language, which stands the new programmer in good stead for when he does decide to learn Java. :wink:

Re: whats the best ???

Posted: 21 Jul 2009, 08:43
by po10cy
yeah i gotta say aswell c# would be my choice.

Ron makes a good argument

" the syntax is derived from the C family of languages, which makes languages with similar syntax (C, C++, Java, PHP, Python to a certain extent, and probably others as well) easier to learn"

Re: whats the best ???

Posted: 21 Jul 2009, 09:31
by RuadRauFlessa
Ron2K wrote:Right, my take...

Out of the two languages, C#. Simple reason for this: the syntax is derived from the C family of languages, which makes languages with similar syntax (C, C++, Java, PHP, Python to a certain extent, and probably others as well) easier to learn. Trust me, if you're going to take software development seriously, you are going to need to know more than one language, and you want to get to the point where you can learn a new language in days by applying what's in the textbook to what you already know - if the languages are syntactically similar, it can help somewhat.

I've found that Visual Basic's syntax rules leads to bad coding habits, especially when the programmer decides to pick up a language that has decent syntax. There's other things about Visual Basic that I don't like (no operator overloading for instance, whereas you can do this in C# - there's other things as well, but I'd be spending the entire day typing up a very verbose explanation), so to me, there really is no choice. Sorry c0d3r.

rusty, about Java as a first language - I'm going to disagree here. Problem is, you need to write a lot of boilerplate code to get a simple "hello world" program running, and if it's the programmer's first language, you either try and explain the boilerplate (which could well go straight over the poor sod's head if he's really new to programming), or just say "you don't need to know about that right now" - none of which are particularly good solutions, in my opinion. It's obviously not an issue for the experienced programmer, but from what I've seen, the new ones do struggle. This is why I recommend Python to someone just starting out - you don't need a lot of boilerplate code around your "hello world" program, while at the same time being a well-designed language, which stands the new programmer in good stead for when he does decide to learn Java. :wink:
+1

Exactly my point. Also as I said before you will get quicker responses from the community if you do C# rather than VB.Net

Re: whats the best ???

Posted: 21 Jul 2009, 10:03
by c0d3r
Ron2K wrote: I've found that Visual Basic's syntax rules leads to bad coding habits, especially when the programmer decides to pick up a language that has decent syntax. There's other things about Visual Basic that I don't like (no operator overloading for instance, whereas you can do this in C# - there's other things as well, but I'd be spending the entire day typing up a very verbose explanation), so to me, there really is no choice. Sorry c0d3r.
Operator overloading in VB.net since framework 2.0. :)

Anyways, Mclaren, if you want a real challenge, try Turbo Pascal.

Re: whats the best ???

Posted: 21 Jul 2009, 11:58
by Mclaren
C# it is, I am not a Beginner Begginer, as i have a rather sound understanding of VB (vb as used through the MS Access interface).

Re: whats the best ???

Posted: 21 Jul 2009, 17:23
by Sojourn
c0d3r wrote:Anyways, Mclaren, if you want a real challenge, try Turbo Pascal.
Can you say "Cobol"...
"The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense."