Microsoft Programming Languages

Best Microsoft Programming Language

  • Visual C++

    Votes: 0 0.0%
  • Visual Basic

    Votes: 0 0.0%
  • Visual J++

    Votes: 0 0.0%
  • Other

    Votes: 0 0.0%

  • Total voters
    0

Prof.Wizard

Wannabe Storage Freak
Joined
Jan 26, 2002
Messages
1,460
If you had to choose (by force!) one of Microsoft's Visual Studio languages, which one would you take and why?
 

Fushigi

Storage Is My Life
Joined
Jan 23, 2002
Messages
2,890
Location
Illinois, USA
I'm not a developer, but if I had to choose it would be C++ since it's the closest implementation that follows an actual standard. A friend works for Wind River and uses VC++. They use it to create apps for multiple platforms, including Sun, NT, etc.

I thought VJ++ had been killed.

No C# <snicker> or Visual Foxpro?

- Fushigi
 

Will Rickards

Storage Is My Life
Joined
Jan 23, 2002
Messages
2,012
Location
Here
Website
willrickards.net
VB is nice for RAD stuff.
But any complex stuff and you are leaving the language and using the
underlying windows API, which is basically C.

Visual C++ really is nice, but it requires the most programmer skill.
 

HellDiver

Learning Storage Performance
Joined
Jan 22, 2002
Messages
130
Best Microsoft Programming Language
1. Frankly that sounds like "Hey, what's your favorite way of having your fingers chopped off?"
2. If VBscript/VBA can be at least remotely called "Micro$oft languages", then Visual C++ certainly can't. It's not a language to begin with, it's an integrated development environment for Windoze (IDE). And C++ isn't Micro$oft's, it's Bjarne Stroustrup's! All M$ did was implement it, and in one godawful way at that, one must admit, polluting it somewhat with their "vision of how things should be done". Borland C++, C++Builder, KDevelop and many other visual-style IDEs exist that did the same to C++.
3. C# can probably be called "M$ language" - it's just another of their crappy patented and proprietary things like VBA, VBscript, etc.
4. Prof, what the hell are you trying to do? "What's the best language ever?", "what language will replace other languages?", "what's the best micro$oft language?"... Are you planning on becoming a programmer and want to decide what you should start learning or something?
 

CougTek

Hairy Aussie
Joined
Jan 21, 2002
Messages
8,728
Location
Québec, Québec
I messed only a few days with VB. The only programming languages I used before that were assembly (mostly), Bordland C and some Basic for DOS in the 80's (I forgot most of it). I didn't like my experience on VB. Not enough control, too many variables already defined and apparently set in concrete. I'm not a programmer though, so my opinion here ain't as valuable as the one of some others (I'm talking about those who don't believe they are born with The Absolute Knowledge About Everything).

All the programmers I know despise VB though. The way they talk about it, it seems to be some kind of horror show.

I saw a few benchmarks last year (in PC-Mag so take for what it is) comparing the speed of C++ programs compiled with several compilers. MS and Intel came first, Bordland was average and there were a least another one slower. I guess MS C++ compiler must be better than their average piece of software. Never ran tests myself to compare however, never had to either.

I don't have much knowledge about MS' J++. If I had to program somethnig in Java, I would chose Sun's products instead of Microsoft's.

HellDiver said:
4. Prof, what the hell are you trying to do? "What's the best language ever?", "what language will replace other languages?", "what's the best micro$oft language?"...
Every member is free to ask what he wants as long as it isn't considered offensive material. If the subject of a thread annoys you, no one is forcing you to read it, even less to participate to it.
 

Mercutio

Fatwah on Western Digital
Joined
Jan 17, 2002
Messages
22,232
Location
I am omnipresent
Visual Foxpro is the only Microsoft language I've spent any significant amount of time with and is the only MS language I see with any interesting advantages over standard languages (Delphi, for example, which is really nice) - Foxpro has a REALLY high-quality database engine integrated into it. Work with SQL is VERY straightforward in Fox. Not nearly as brain-dead as VB/Access (Acces? I can't understand Access at all. I design tables in access and do all the coding in VB. I don't get straight-up Access development at all). I've never used VC++. I'm told it's the subject of nightmares.

I have zero knowledge of Microsoft's Java or C# offerings.

My educational background included ZERO windows programming. There's a lot of stuff about Windows development that I absolutely don't understand.

Of course, the other side of this is that programming stopped being fun the first time I got paid for it, and it isn't like I've invested any time learning anything about it since.
 

Prof.Wizard

Wannabe Storage Freak
Joined
Jan 26, 2002
Messages
1,460
OK, first things first:

LOL, of course I didn't create this thread to irritate you (dear HellDiver!)... :p The idea came when I was browsing Microsoft's site for new stuff <yes I do it now and then> and fell on the pages of the imminent launch (in 9 days time) of Visual Studio .NET.

My poll's option have been four. I presumed the "Visual" versions of C/C++, Basic, and J++ the languages with the most penetration to the developers' world and categorized as Others all the rest that's newer (Fox Pro, C#, etc.) and/or more specialized (for more specific jobs).

Actually, the J++ project is more alive than ever since the new version, which is currently beta and not included in the new Visual Studio packet for the time being, is called Visual Studio J# .NET... Microsoft has most probably a certain something for the "sharp" symbol and the .NET suffix... :wink:

Last but not least, if someone is using a modern Windows OS (dear HellDiver), why shouldn't he use one of the Visual Studio developing tools to write his code? I think it's the most integrated tool for the creation of Windows apps. It's like using Windows XP with Office XP. You can always do your job with OpenOffice or StarOffice, but which one is most integrated with the OS, eh?

PS. No, I'm not thinking of becoming a programmer or deviating from my primary field of studies. But I can always start writing code as a hobby, provided I take a summer course for the basics. :)
 

Mercutio

Fatwah on Western Digital
Joined
Jan 17, 2002
Messages
22,232
Location
I am omnipresent
Minor correction: I'm pretty sure the FoxPro codebase pre-dates C++. FoxPro is a Clipper derivative, much like the ancient package dBase, which was practically synonymous with PC database software in the earliest days of DOS ('81 or '82), while C++ wasn't implemented at all until '83 or '84.

Of course, that makes both languages almost 20. Even Java's older than you think it is; Sun was working on the project that turned into java in the late 80s, as I understand things.
 

HellDiver

Learning Storage Performance
Joined
Jan 22, 2002
Messages
130
Prof.Wizard said:
LOL, of course I didn't create this thread to irritate you (dear HellDiver!)...
Well, I didn't think you did. Judging by several of your questions - on the contrary, looks like you're trying to make up your mind about something, or decide somehting, and you're trying to nail the answer using a "fork" method... ;)

Last but not least, if someone is using a modern Windows OS (dear HellDiver), why shouldn't he use one of the Visual Studio developing tools to write his code?
Well, that'll depend on what he's trying to do. If he's doing some RAD (Rapid Application Development) there are great (better?) alternatives in the form of Delphi and C++Builder. If he's doing quality, no-nonsense Windoze development (i.e. in Assembly or Win32 API) - there are the Borlands (although v5 had some tough past!).
But in a word, the answer to "why shouldn't he" would be BLOATWARE!!! That's one of the reasons I shifted fields from Windoze code development to embedded systems - I got sick of M$ horseshit.

I think it's the most integrated tool for the creation of Windows apps.
That doesn't necessarily means it's the best for the job - it all depends on the job. Besides, IDEs like Delphi/C++Builder/Kylix are probably at least a match features-wise.

But I can always start writing code as a hobby, provided I take a summer course for the basics. :)
You won't need to take no summer courses for that. All you need is a rig to play with, a good book to read and some will to do it.

Back to your original question of "If you had to choose (by force!) one of Microsoft's Visual Studio languages, which one would you take and why?"... Just like with programming languages in general, it all depends on what you're trying to do. RAD - VB. Web - VJ++. Windoze - VC++. DBs - VisFoxPro. This is precisely the reason each one of the tools was included into the Visual Studio package - because they don't duplicate one another's purpose, but rather aimed at different tasks. Coincidentally, a lot of people use VC++ for C/C++ development not directly related to windows - just because it has a nice IDE with debugger and several very strong 3rd party add-on tools (that replace some of the screwed-up original M$ functionality).
 

HellDiver

Learning Storage Performance
Joined
Jan 22, 2002
Messages
130
Prof.Wizard said:
...and fell on the pages of the imminent launch (in 9 days time) of Visual Studio .NET
As an afterthought. Oh, yeah. That's another excellent reason to stay away from M$ development tools - .NET. Very bad shit is inbound in the form of this .NET thing, and I know I for one - don't want to be a part of it.

BTW, Prof - how did your activation of Windoze XP go? Smoothly I presume? ;)

The other way to look at .NET is as a continuation of the great M$'s bloatware tradition. To be able to do anything more than "Hello World" under Windoze in VC++ you have to learn truckload of APIs and architectures : MFC, ADO, DAO, COM, COM+, DCOM, Doc/View (the list goes on)... And now, there's .NET. It almost looks like M$ are trying to make the bulk of their money from educational activities (books, courses, degrees, seminars) rather than selling software - they keep creating APIs, architectures and concepts without which you can't do anything in Windoze at a frightening rate!
 

Mercutio

Fatwah on Western Digital
Joined
Jan 17, 2002
Messages
22,232
Location
I am omnipresent
All those three letter acronyms HD listed above are the precise reason I never got into programming on Windows.
 

Prof.Wizard

Wannabe Storage Freak
Joined
Jan 26, 2002
Messages
1,460
OK, I'm thinking to try my luck with Visual C#... Modern, powerful, flexible.... :)
And there's a great number of books out there showing its tricks.

Isn't that a median solution?! I need a language to create scientific/bio-informatics projects. Not too much complex or sophisticated, but I need a language with enough fine-tuning options.
 

timwhit

Hairy Aussie
Joined
Jan 23, 2002
Messages
5,278
Location
Chicago, IL
Prof.Wizard said:
OK, I'm thinking to try my luck with Visual C#... Modern, powerful, flexible.... :)
And there's a great number of books out there showing its tricks.

Isn't that a median solution?! I need a language to create scientific/bio-informatics projects. Not too much complex or sophisticated, but I need a language with enough fine-tuning options.

VB is the easiest language to program in. It might not run huge blocks of code as fast as VC++ but it is fine for most windows apps. I wrote DB code in VB all last summer. It is not hard and you can do some pretty complex things with it. It is not restrictive like some other people have said. There isn't anything that you can't do with VB.

-Tim
 

timwhit

Hairy Aussie
Joined
Jan 23, 2002
Messages
5,278
Location
Chicago, IL
Mercutio said:
Did the new version of FoxPro come with VS.NET?

I didn't see an option for it in setup. BTW I have the Architect edition so its supposed to have everything. A full install takes 3GB.

-Tim
 

Prof.Wizard

Wannabe Storage Freak
Joined
Jan 26, 2002
Messages
1,460
James said:
Build OSF/1 executables that run on Alpha? ;)
LOL... Then VB is for me... I won't be doing that for sure James... :-?

Mercutio, I'll give a good search regarding MatLab... I want to see which are my alternatives. The reason I wanted to try C# is because it's a direct derivative of C/C++ which are the most used languages... So I could actually even get online help. And because there's a LOT of stuff you can read on these matters. (I could even sneak in a "C" course in the Department of Informatics of my University... :wink: )

C/C++/C# is like British/American/Australian English... high-penetration languages which once you learn them (even at a basic level) you can find your way around using one or the other... or at least this is how I see it.
 

Mercutio

Fatwah on Western Digital
Joined
Jan 17, 2002
Messages
22,232
Location
I am omnipresent
C# shares very little of its heritage with C and C++. Microsoft is forcing it on developers by doing little things like publishing huge amounts of sample code in C# and dropping even mention of the word 'java' from anything microsoft-related. C# is only penetrating because a pin-head in Redmond decided to make it difficult for a certain class of developers to do things differently.

If you want to learn general-use programming, I would strongly suggest that you start with ANSI C or with C++, or with Java. I would likewise suggest looking at Delphi over VB.
There are good reasons for all of the above recommendations, but what it boils down to is, you can either learn to do things properly, or you can do things the microsoft way - which offers a lot of crutches but also creates a lot of bad habits (particularly in VB, where the IDE will actually fill in keywords for you).
 

timwhit

Hairy Aussie
Joined
Jan 23, 2002
Messages
5,278
Location
Chicago, IL
Mercutio said:
There are good reasons for all of the above recommendations, but what it boils down to is, you can either learn to do things properly, or you can do things the microsoft way - which offers a lot of crutches but also creates a lot of bad habits (particularly in VB, where the IDE will actually fill in keywords for you).

VC++ fills in stuff and has all the same crutches that VB or VBA has, so if you want to use an unadulterated language write Java code in notepad then run it on a unix box across telnet. Thats what I used to do, but its such a pain in the ass.

If you want to write simple programs to save you time I would not bother learning C++ (or C# which I know nothing about). They are just way too complex for a beginner who wants to write simple code. I like Java's structure more than C++ and VB, but if I want to write an app real fast I would write it in VB or VBA.

-Tim
 

Prof.Wizard

Wannabe Storage Freak
Joined
Jan 26, 2002
Messages
1,460
Can Visual Basic access hardware?

The most complex thing we might do (in co-operation with the department of electrical engineering) is connecting an EEG with the PC to study the spikes with a custom program.

The connection would be (of course) custom, most probably via serial port. Can it be done?

Can you write a program in VB that accesses the parallel, serial, or USB ports? I/O direct capability is something we might use... C/C++ can do it as far as I know. What about Borland/VB?
 

Prof.Wizard

Wannabe Storage Freak
Joined
Jan 26, 2002
Messages
1,460
What I like about the new .NET Visual Studio packet is the seemless co-operation (according to Microsoft) of the various development tools. It says, for example, that you can actually write the core of the program in VB, one or two more complex components in VC++, and something else (eg. a web app) in VJ#...

Of course, you can do this with other programs as well, but the integration is more complete with the Visual Studio suite.

Actually, since the programs I will create will be 100% Windows apps, since VB is indeed very powerful if its latest incarnations (2000/XP), and since it's the easier of all to learn and master for a novice... why should I try something else?!

To the moment, viable alternatives are Matlab and Delphi...
 

Prof.Wizard

Wannabe Storage Freak
Joined
Jan 26, 2002
Messages
1,460
What about a parallel port?
A USB?
An infrared?

Can you write an Internet browser for example? (Windows specific of course)
 

Mercutio

Fatwah on Western Digital
Joined
Jan 17, 2002
Messages
22,232
Location
I am omnipresent
Writing a passable web browser with VB is possible with maybe as little as a few dozen lines of code and two or three OCXes. Basically, you have to have IE installed to make it work, but it can be done very easily. Beginner stuff, really.

Starting fresh might be a bit more difficult, but at its heart all a browser does is send text and receive text for display. A programming language that can't handle that is several shades of useless.
 

Prof.Wizard

Wannabe Storage Freak
Joined
Jan 26, 2002
Messages
1,460
From what I understood, as long as you work in the Windows enviroment with VB (well, you can't do else anyway...), you can do literally everything... 8)
 

Mercutio

Fatwah on Western Digital
Joined
Jan 17, 2002
Messages
22,232
Location
I am omnipresent
As long as you're willing to work with their prepackaged components, yes.
If you find yourself wanting or needing to do something different, good luck.
 

time

Storage? I am Storage!
Joined
Jan 18, 2002
Messages
4,932
Location
Brisbane, Oz
That's one of the bigger differences between VB and Delphi. It's dead easy to create new components in Delphi, so there's a veritable supermarket of free and shareware components available all over the net. Which you can tailor to your own needs or just write your own.

Delphi is superior to VB in several significant ways, but I'm not going to bore you with the details. What's also interesting is the scope for mutual exchange of components between Delphi and Borland's C Builder.

Which brings me to your belief that learning any C will enable you to use OOP versions, Prof. Guess again. That's the easy part, and it's not hard to switch between C, Pascal, and VB, although VB has more idiosyncracies.
 

Prof.Wizard

Wannabe Storage Freak
Joined
Jan 26, 2002
Messages
1,460
One of the reasons you SF freaks drive me crazy is that you're (almost) always RIGHT!!! :D
One of the best articles I've read. And clearly states all I wanted to know...

Mercutio and time, believe me guys... I'm just afraid of going to a non-MS product... :( That's all... I had such a disturbing experience with Linux (remember?), that I wouldn't want to leave again the Beast... Only if that else is really very interesting, very compatible, and very friendly... Borland Delphi 6 Personal seems the right tool for me, although bear in mind that I'm not coming from an IT enviroment and I don't have that much of extra time to read and read tons of books to program 10 lines of code.

I need your suggestions for a last time... what to do?
Visual Basic .net or Delphi 6 Personal

Thanks for your time... :)
 

Prof.Wizard

Wannabe Storage Freak
Joined
Jan 26, 2002
Messages
1,460
Delphi Success Stories: All these people are saying that it has the easiness of Visual Basic and the power of Visual C++...

It's almost what I want... Pascal in respect to Basic and C/C++ is older or newer as a language?
 

HellDiver

Learning Storage Performance
Joined
Jan 22, 2002
Messages
130
I've skimmed the first article you linked to. Most of it is pretty much true. Among the things to remember is that if you start out with Delphi, you have several growth paths before you : Delphi->C++Builder->VisualC++ and Delphi->Kylix->Linux development, for example. There's pretty much nothing to move over to directly from VB.

As far as VCL components availability goes - I can confirm that myself, there's more stuff out there than you can imagine and most of it is either free or available for laughable fee with sources included (I never seriously used Delphi, but I did use C++Builder for some project).

Pascal was created in late '60s, officially defined in 1970 and officially standartized as ISO 7185 in 1983. In 1990 a slightly revised ISO 10206 Extended Pascal Standard was published.
First Object Pascal implementation was released in 1986, with "Object-Oriented Extensions to Pascal" published by Pascal Standards Committee in 1993.
Basic was officially defined in 1963, "Minimal BASIC" was standartized as ISO 6373 in 1984 and "Full BASIC" was standartized as ISO/IEC 10279 in 1991.
Visual Basic is a moving target, not a language, has no specific standard and gets bloated every year or two, so no point in giving any dates.
C was created in 1969-1973, was revised in 1977-1979 and officially standardized as ISO/IEC 9899 in 1990.
C++ was created in 1979-1983, commercially released for the first time in 1985, revised in the late '80s and officially standartized as ISO/IEC 14882 in 1998.

If you give any though to the years quoted above you'll begin to realize that terms "older" and "newer" are very relative in this busines, as all of those languages were in widespread usage before the official ISO standards were ratified, yet various implementations differed slightly from one another as languages kept developing.

"Older" does not necessarily mean neither "more powerful" nor "more flexible" nor "more complex".
 

HellDiver

Learning Storage Performance
Joined
Jan 22, 2002
Messages
130
I must be pretty tired 'cause I keep goofing. Here's the last correction I care to add - "any thought"...
 

Mercutio

Fatwah on Western Digital
Joined
Jan 17, 2002
Messages
22,232
Location
I am omnipresent
C is older than Pascal. C++ is actually fairly "new". Pascal is an interesting language; like the newer lanugage Python, it's designed as a "learning" language - a perfect introduction for students.

Personally, I find Pascal syntax to be something of a pain in the @$$, but Delphi is otherwise a very solid product.

Interestingly, older versions of Delphi are often on the freebie CDs that come with computer magazines sometimes, so a legal copy of Delphi is within your reach even if you can't afford the $99 student version.

Delphi also comes with a decent printed reference if you buy a boxed copy (I have v1 and v3).

As far as "non-MS" languages... Borland has been around a long, long time, and makes nothing but products for developers. Their C++ Builder and Delphi products are both very, very good packages, and Borland is not going anywhere.
 

HellDiver

Learning Storage Performance
Joined
Jan 22, 2002
Messages
130
Mercutio said:
C is older than Pascal.
Strictly speaking it's a couple of years younger, at least if you consider the age of a language to be based on a year in which a first more-or-less tolerable written definition showed up (which is a very logical way to determine language's age, IMO).

Their C++ Builder and Delphi products are both very, very good packages
True enough. One thing to keep in mind - both C++Builder and Delphi's online help systems (at least for versions 1 through 4 of each) and are relatively OK, but nowhere near either VC++5's on-line help system nor MSDN (i.e. VC++6's on-line help system) usability-wise. This I can say as someone who had to use both for extended periods of time. IIRC (from my brief forced period of interaction with VB5) VB5's help system sort of sucked too, was notably worse than that of VC++5/6 and about of the same usability as that of C++Builder/Delphi.

...and Borland is not going anywhere.
<sigh> At the moment, about the only company I can wholeheartedly say is not going anywhere is Mocro$oft. Unfortunately... As for Borland... At present - there are no indications, but what will happen tomorrow - who know?
 

Prof.Wizard

Wannabe Storage Freak
Joined
Jan 26, 2002
Messages
1,460
One of the most complex things I will be doing (most probably in less than 5 years) is writing an app or two for my job. One of the reasons I appended again this thread was that small, cool simulation program some guys from the Tehran University of Medical Sciences created using Delphi 5. Now don't laugh just because the app comes from Iran! The article has been just published in the premium neurosurgery journal of the medical community.

If you have time or will, download the app (it's really small!) and see for yourself what I'll want to do with my programming... You can download the app here!
 

HellDiver

Learning Storage Performance
Joined
Jan 22, 2002
Messages
130
Downloaded. Had a lookie. Didn't understand a thing, but I suppose that's to be expected - closest I ever got to anything that sounds remotely medical were neural networks... :lol:

Anyhows, if some Iranian folks have done it using Delphi, I guess a Greek should manage just fine! :wink:

One thing I'll tell you - as long as you'll be using pretty much anything except VB, you'll be learning how to do things "old skool", i.e. the proper way... ;)

P.S. The above sentence mentioning different nationals and possibly implying their programming or mental skills may be inferior is intended as joke only, and only as a response to Prof's "don't laugh just because...". It does not necessarily represent my true views on those issues! How's that for being politically correct? ;)
 

Prof.Wizard

Wannabe Storage Freak
Joined
Jan 26, 2002
Messages
1,460
LOL. Crystal clear HellDiver! :D

Shall I tell you something funny? I want to work it out the opposite way: I know the medical approach (basic & clinical neurosciences), but I don't know a thing regarding the electrical engineering & computer science approach... :(

I would love to learn some stuff regarding communication & information theory, signal processing, and neural networks in depth... Unfortunately, med school doesn't provide such stuff. These are advanced courses in Neuroengineering, one of the most fascinating fields of today's applied science. Yes, you presumed right. This is post-graduate stuff... :roll:

Back to our topic: You know, I admit that I'll probably give a glimpse to Visual Basic .NET just for the heck of it. But I found that the Delphi 6 Personal costs a mere $50 (half of MS's program) and is very good for starters in Pascal. :wink:

Believe me HellDiver, I really want to do things the right way. I recall the growth paths (C++, Kylix) you mentioned earlier. But there are some things you must not get for granted when talking to a non-IT person. Six months ago I didn't know even what the verb "compile" meant. Now, although familiar with the basic logic of programming i still haven't touched a thing regarding code. I have a very busy schedule, leaving me at most 4-5 hours per week to read and exercise me in a new language. I want a productive and straight-forward tool (so C/C++ is out of the question at a first moment) which will not limit my apps to stupid-looking buggy GUIs with no actual function. I take as example the cool simulation those Iranian neurosurgeons did... 8)

PS. I think I read somewhere that MS's .NET in VB is using something similar to Delphi's VCL components. Is it true?
PPS. Can you write me one darn positive thing about VB?!? :p
 

Mercutio

Fatwah on Western Digital
Joined
Jan 17, 2002
Messages
22,232
Location
I am omnipresent
The IDE (Integrated development environment) looks pretty nice. And newer versions of VB tend to be much better than those that precede it.

VB is very good for certain types of small projects.

VB still has a lot of room to grow to be comparable with other languages, unfortunately.
 
Top