|
Hi everybody,
O.K., let's turn our view of the things around this way:
What kind of market are you targetting to develop what kind of applications for?
Is it wise to use VC++ to do a Database app?
Is it wise to use VB to do a 3D CG app?
Is it wise to use C & Win32API (hard stuff) for any windows app VS the MFC (ready stuff), epecially when we're talking about a USER INTERFACE that glues you up to the screen?
It all really depends on what market the new programmer is targetting?
To learn C++ is best, but also to learn VB is fast!?!?!
Knowing that the computer market is HUGE, I would say LEARN ALL YOU CAN LEARN and Have fun guys!
Cheers
Masoud
|
|
|
|
|
Masoud,
I 100% agree with these comments...
|
|
|
|
|
I'd be happy to write you a database in VC++, but apart from that I agree with everything you said - learn all you can is the only credo by which we can both survive in this business, and keep enjoying it.
Christian
The content of this post is not necessarily the opinion of my yadda yadda yadda.
To understand recursion, we must first understand recursion.
|
|
|
|
|
>Is it wise to use VC++ to do a Database app?
Oh yes! Most of my previous projects were database
apps, interfacing to a variety of RDBMS. Thanks to ADO!
Plus, of course you want cool user interface with
a controllable overhead of resources.
Cheers!
|
|
|
|
|
As much as I agree that C++ is too hard to be the first language I would also stress out that VB is not a good choice either.
VB is such a messy language that doesn't enforce any structure in the code nor any good coding practices!
I still think that C might be good for start, with the slow "upgrade" to C++ kept in mind. The best choice for starters as I see it is Pascal (Delphi for whose who wanna hack a windows programs with the same ease as with VB).
|
|
|
|
|
I think the VB stigma is so cute The funny part is the same people who say "Yeah, VB is great for prototypes, but..." have been in the business quite a while and haven't touched VB since v3 or v4. And why would they? They were terrible. Those same people also usually come with comments like "VC++ over VB is a no-brainer, you've got to have OO programming!" Then after talking to me for a few minutes they say "hmmm... really? You can do OO programming in VB now? Hmm.. you have access to every API function I use in VC++, and a slew of VB functions that usually make the API unnecessary? Wow, really, you can make a COM server in VB? Wow, and it takes *how* long? Geesh." I think a large part of the stigma may be that these people gave up on VB a few years ago, and haven't kept up w/ the improvements. But then again, who can blame them? I would have done the same if I started back then.
I program in VB and VC++. Here's an example of 2 projects going on here right now (both desktop apps):
1) User can create 3D highway/bridge models and create drive-through animations, OpenGL
2) User uses a series of dialogs, interactive 2D diagrams, etc. to model a bridge to be sent to another engine for analysis. App connects to a DB (Access) of predefined parts, and allows for custom definitions to be addded.
Now why should I write #2 in VC++, or #1 in VB?? I shouldn't. IMHO, people who are so stubborn about which language they choose often times don't have enough knowledge to select the right tool.
Another example: A company I interviewed w/ wrote some really cool dental software using VC++/DirectX7 (3D model of mouth is pretty cool), using Access files to store the data. When their clients needed the data in Excel, so they could do their own manipulations, the company had their junior programmers write a conversion app in VC++. These guys had no clue what IAnything was, and they had to kludge around interface pointers and wrapper classes... they were lost. The same dinky app in VB would take no time -- set references to the Access and Excel TLBs, create some objects w/ 'New,' and away you go! They just used VC++ because that's all they knew.
I'll be the first to admit that I am a big fan of the implementation inheritance that is easier to do in C++, and I like the Doc/View architecture. And if you need to get close to the hardware (graphics), VB is not your choice. But that's about all. VB events beat the heck out of callback interfaces, message maps, or event macros. And anything to do w/ COM is ridiculously easier in VB. DB Apps, same thing.
I'm tired now I guess my point is just pick the right tool for the job, and don't be so damn stubborn. Most people who carry on the VB stigma just do so out of ignorance.
Good night folks! You've been great. I'll be here all week, try the veal.
|
|
|
|
|
You know, for a "VB Retard", you're pretty sharp !
I agree with you completely: VB has really come a long way. And today, just about every company I go to uses it over anything else. It just makes sense in so many ways.
Me personally, I hate VB's verbose syntax. I prefer C++ and Java's case-sensitive, "curly brace" notation.
But the issue here is, what language should a newbie learn first? And my vote goes to VBScript. It's VB--! No worries about types or any of that other stuff which kinda gets in your way when you're learning to program. You just set your variables and forget it -- sort of like Perl. From VBScript, then you move on to VB, and then to more well-rounded languages like Java or C#. Finally, you hit C++: the "no-holds-barred" language.
I guess the main point is, learn it all so you can use whatever fits best for the situation at hand.
Regards,
Alvaro
|
|
|
|
|
Yeah, see the question IS "what should you learn first..."
You sound like a great example of my point.. YOU
KNOW C++. So you can in fact, understand a lot of the
deeper stuff going on. Yeah, their are some "bad" junior
programmers out there that screw things up in VC++. But
I think because they know c++, even though they don't know
squat, they still have a lot more potential than the junior
programmer that just know VB.
So really for this point, the whole I love VB is irrelevant.. It is getting better, it has many great uses,
its gotten to the point where you're not embarassed to ship
something written in it as part of a complete solution...
Yada yada yada... Ive even written fairly advanced COM controls in it too, although I still had to resort to ATL
for the really good stuff!!!
But is it your best choice for learning??!!! Did you learn
VB 3 or 4(that you definitely must remember, because you nailed the description), before you learned C++???
Hmmm.....
Peace....
|
|
|
|
|
Java is a better language than C++ if you're trying to learn OOP. I think that there are too many distractions when trying to learn OOP with C++ due to the baggage inherited (sorry, bad pun) from C, not to mention the confusion object pointer notation. C# would also be good since it bears an unbelievable similarity to Java.
I find it interesting that most universities are teaching Java (not C++) in their undergraduate computer science courses. This is producing a whole new generation of Java programmers who seem to have no trouble in getting a job thus far. What exactly they do for a living, though I'm not sure.
Regardless of what language you learn...chances are that you're going to have to learn a new one anyway in a couple of years. That's just the nature of the business
|
|
|
|
|
If I was young free again and had the choice to learn a new language in this current climate, I would definetly consider C# (The middle man). Should C# success fail, you have goundings for C++ and VB. The choice of language also depends on the type of application your going to develop/target. For Database,client server applications, ie Stock Control systems, then C#/VB would be the language to use. For desktop applications or critical applications then C++ would be the order of the day.
Hope this helps
Norm
|
|
|
|
|
And I'd just like to say a hundred percent agreement, Norm
Your analysis is dead correct as far as I'm concerned,
Regardz
Colin Davies
|
|
|
|
|
Hi!
Your sentence concerning tool vs. target is as right, as trivial . The question was - the best language TO LEARN programming (at least, so I've understand). And although I've started with Assembler/360 and PL/I (are you old enough to hear about it?), here I suggested C, because I think it is the pure programming culture, not damaged with these OLE, MFC, and other ActiveX.
Once more, it's my opinion, no one has to follow me.
Regards,
Gennady
|
|
|
|
|
The question is 'the best language to learn for todays IT world'. So it's another ambiguous, many-answered question (ie the whole point of these polls! )
If I had to suggest a language for someone just starting out I'd ask them if they enjoyed problem solving, programming with power and esoteric niggly things that make life fascinating, or if they just want the $$$. If the former then I'd suggest C#, since it's easy to learn, will be very useful in a range of things (thick clients to components to web pages), and is similar enough to Java and C++ that to step off, or move up to either language is fairly painless. For the $$$ I'd go VB7. It's on the same level as all other .NET languages, it's super simple and there will always be demand. Maybe not as stimulating, but it will get you a leg up in today's IT world.
Just my 8 bits.
|
|
|
|
|
Think, the first question you'd ask them has to be:"Can you NOT to be a programmer?". My firm conviction is that programmer is not a profession, but rather the diagnosis. So if the answer will be "yes" - you may ask your other questions and send them to whatever you think. But if the answer is "no" - suppose they'll follow my way.
BTW, why only 8 bits. All world tends to at least 32.
Regards,
Gennady
|
|
|
|
|
you have to take into account the fact that as far as most of us are concerned C# doesn't even exist yet. DevStud 7 hasn't shipped and a lot of us don't have the time or desire to run MS betas. so, C# is still MS marketing spew.
and, this poll was targeted (by virtue of being on this site) at people who presumably already know something about one or more programming languages - it shouldn't be surprising that people would pick a language that they know something about instead of choosing MS's current technology of the month.
and, honestly, isn't C# just C++ for people who don't get pointers? or java for people who really love MS?
-c
|
|
|
|
|