Re: Microsoft leaving VB?
Quote:
Originally Posted by Pinky98
Urm... are we atlking VB the language? Because the language is still alive and kicking in the form of VB .NET, but yes M$ don't even want to know about VB6 any more.
Well, every company who comes up with something new would like their current customers (and new ones) to all jump on the bandwagon. That's how they make money. As always they promote the heck out of it, but the VB developer base is very large. There's a lot of momentum to keep it going. What's to stop it? There is no magic button that m$ can push to make all copies of VB simply stop operating. It seems many feel somehow "forced" to move to whatever they say is "the new big thing". If that where true, we'd all be switching between browsers, media players, IM clients, etc, as well as every new piece of hardware that ever comes out. But we don't, do we? Sure, if the need arrives, and we can afford it and such, then it might make sense. Otherwise we keep what we have because it works, and it's generally a good idea to leave well enough alone. There is a saying: "Don't fix what ain't broke". We don't buy a car only to get another one the following year just because a new model is made, or it comes in a new color.
While switching from VB to another language certainly makes sense for some, it doesn't for others. And for those who need to move to something else there are many choices. The newest offering is not automatically the best.
As I see it, .net is m$'s answer to Java. Let's not forget that they got sued for copyright infringement. They still aim to capture that market, and obviously a lot more if they can get it. Ask a non-Java developer what they don't like about Java, and you'll likely get a response starting with "speed...". Nothing will ever make managed code as fast and efficient as what unmanaged code can deliver. Perhaps the one exception to this is if m$ can somehow put a bottleneck on everything but managed code and the OS itself, but then there'd be such a move to Linux or some other OS it would be the end of m$ altogether. That's if all the law suits didn't ruin them first. Or, just keep what you have and don't buy the new OS :)
Heck, let's keep in mind that windows is written in C++.
Re: Microsoft leaving VB?
Quote:
Originally Posted by WizBang
Well, every company who comes up with something new would like their current customers (and new ones) to all jump on the bandwagon. That's how they make money. As always they promote the heck out of it, but the VB developer base is very large. There's a lot of momentum to keep it going. What's to stop it? There is no magic button that m$ can push to make all copies of VB simply stop operating. It seems many feel somehow "forced" to move to whatever they say is "the new big thing". If that where true, we'd all be switching between browsers, media players, IM clients, etc, as well as every new piece of hardware that ever comes out. But we don't, do we? Sure, if the need arrives, and we can afford it and such, then it might make sense. Otherwise we keep what we have because it works, and it's generally a good idea to leave well enough alone. There is a saying: "Don't fix what ain't broke". We don't buy a car only to get another one the following year just because a new model is made, or it comes in a new color.
While switching from VB to another language certainly makes sense for some, it doesn't for others. And for those who need to move to something else there are many choices. The newest offering is not automatically the best.
As I see it, .net is m$'s answer to Java. Let's not forget that they got sued for copyright infringement. They still aim to capture that market, and obviously a lot more if they can get it. Ask a non-Java developer what they don't like about Java, and you'll likely get a response starting with "speed...". Nothing will ever make managed code as fast and efficient as what unmanaged code can deliver. Perhaps the one exception to this is if m$ can somehow put a bottleneck on everything but managed code and the OS itself, but then there'd be such a move to Linux or some other OS it would be the end of m$ altogether. That's if all the law suits didn't ruin them first. Or, just keep what you have and don't buy the new OS :)
Heck, let's keep in mind that windows is written in C++.
Not only that, but they took away pointers. I can't belive they did that given Windows was written in C++.
Re: Microsoft leaving VB?
RoyK - they didn't take away pointers at all. You still have access to the memory in .NET if you need to (for arrays for instance).
Java's a slightly different beast as if I'm not wrong (and I probably am because these are just drawn out of references I've encountered in passing)
(1) It was originally designed to be interpreted and not JITted.
(2) It wasn't designed with networking in mind right from the word go.
(3) What would normally be considered a "library" e.g. windows functionality is built-into the .NET framework and is actually a standard : the BCL is a standard.
(4) I'm not sure how good it's reflection is (i.e. getting information about a Type) : but I can say that C# is excellent.
(5) Probably loads of other things like making every method virtual.
Basically if .NET is Java Mk II then so be it. But I've found .NET (C# specifically) to be excellent - I'm a long-term C++ programmer and a real stick-in-the-mud. But once I learned what C# (or .NET) was capable of I smiled nicely to myself and thought "wow ! how nice !". I.e. I love the thing.
Just my 2 cents of course, and the arguments over Java Vs .NET will continue for eons, but let's just face it shall we ?
Right tool for right job. .NET is better at some things, Java is probably better at others, C++ has it's advantages too and heck so has assembler.
In my position I don't do any network programming (except for raw socket interactions) so I've never had a need to learn Java. But I do actively use C# in preference to C++ for most things now, and it's never let me down.
Let's keep our minds open and realise that everything (as always) has its pluses and minuses.
Except for VB6 where I can see all minuses, but that's just my point of view...
Darwen.
Re: Microsoft leaving VB?
Actually I've just re-read a post on this thread which was rather old about "how can .net be faster than C++ ?"
I know the answer to this question now : it's to do with how the memory is managed in the garbage collector. Basically the GC organises its memory linearly : unlike the C++ heap. So if you have a large number of small objects they're addresses are all butted up against each other (in theory) so memory access is faster. Also memory allocation is faster. Or something like that...
Also file access is faster in .NET with the FileStream etc. That has definately been proven. In fact I believe there's a series of articles about the efficiency of .NET over C++ on this very site (by Kate Gregory I think).
If anyone's interested they really should buy "Applied Microsoft .NET Framework Programming" (Microsoft Press). All you'll ever need to know about .NET programming, including how the GC works and how each assembly is organised.
I'm quite pleased that this thread has be resurrected. I always thought we should have at least 10 pages - to do the subject justice.
Darwen.
Re: Microsoft leaving VB?
The .Net debate is a burning issue in my mind right now, and I've just read this and its sister thread. Lots of excellent arguments/opinions from both sides, and it has been a really enjoyable read. With so much whizzing around my head, I'm finding it difficult to organize my thoughts, so I hope I write something coherent.
Wizbang, I agree with a lot of your comments. I too am concerned about the dumbing down effect, but my concern here is not restricted to the world of programming - it is a deeply worrying trend in society in general; the culture of instant gratification results in people unwilling to invest time and effort to achieve a qualitative result. Quantative is everything. Things have to be produced rapidly, numbers have to be satisfied, an 'Oh that'll do' attitude is now prevalent and it enrages me. I once read a fabulous quote, whereby a film director was hassling a famous composer about the score for a film not being completed, to which the composer replied "You can have it done today, or you can have it done properly." If only this attitude was more prevalent...
It is preferable if people do not think - everything now has to be idiot proof, noone is prepared to have to do some work to see something work - it just has to, instantly. As far as I can see, making things idiot-proof just produces more idiots. This, unfortunately, is pleasing to society because it is easy to placate the idiots with a few hours of vacuous television.
VB6 is in effect a victim of its own success. Its greatest strength is also, unfortunately, its greatest weakness. It is easy to produce working programs in VB6. That's the top and bottom of it. In all walks of life, there are artists, there are tradesmen, and there are cowboys. VB6 possess perhaps more than its fair share of cowboys because it is easy to write bad code in VB6 that will compile and ostensibly work. There aren't as many C++ cowboys because it is harder to learn C++; you must know what you are doing to even get C++ code to compile.
Which brings me neatly back to my point about quality; there are plenty of denegrators of VB6 because there are plenty of examples of bad programming using the language; IMHO, a well written VB6 app can be almost as efficient as an equivalent app written using C++. And if speed is your concern, then there is the API. I do a lot of graphics programming in VB6, and using the API I can achieve comparable performance to a C++ app. You don't see too many 'cowboy' VB6 programmers using the API, because you need to know what you are doing, and it takes effort and thought to implement correctly.
Where is all this going? Well, I have recently downloaded VB2005 express edition, as I intend to learn .Net programming. I have accepted that if I wish to keep my employment options open and I want to continue programming Windows applications in the future, then I must learn the new(ish) Windows technologies.
WizBang, in the other thread you say that programming is an art - I agree with this entirely. There is craft and beauty to programming, well written C++ has a stark, austere beauty, and well written VB6 has a simple, elegant beauty. As long as we have Quality as the goal, all will be well whichever language you are writing in.
I am looking forward to learning .Net, but I do have some concerns. I shall miss having direct access to the API. I'm sure this will have performance implications. (Is the API now encapsulated by the Namespaces? I'm a bit uncertain about this.) Also, what is going to happen with Vista? (Awful name - keep LongHorn, at least you can have a peurile snigger with that! ;)) Is it true that Win32 will be no more? And what is Avalon I keep hearing about? A new API? How will this affect .Net? Does this mean we will see some form of Win32 emulator for legacy support? Questions, questions!
I can't imagine I will leave VB6 behind, especially not in the near future. I suppose it depends on how I take to .Net. Maybe in a year or two I will automatically fire up VB2005 to build a quick app rather than VB6. Who knows?
...
Re: Microsoft leaving VB?
Someone said that VB6 won't even install on Vista Beta 2, out last week.
As far as an artist having to move from vb6 to vb.net, that's like requiring an oil painter to start using a graphics tablet, because "technology dictates it"
Programming isn't really an art, but more like an acquired skill.
If someone told me that I had to switch from the piano to the harp, saying that they are similar, I would have to laugh in their face, only because I've done both.
I was born with musical and logic skills. These can't be taught, imho. Writing code can be taught, but unless one has logic, then they tend to write 'bad' code. If they work hard enough, they may be able to get it to run (we have all seen bad apps), but good apps stand out.
I've tried VB.Net 2003, and had a few problems with it. I downloaded Express, but haven't installed it. I am expecting VB.Net 2005 Pro next week (as my MVP choice from MS) so I am compelled to install it. I've heard great things about it, compared to 2003, but wasn't going to actually purchase it to see if it ranked.
I suppose VB.Net will keep getting better, but unless they make it simple for the masses, then new programming will drop way down for the next 10 years. At least it will give hardware mfg's a chance to get ahead, so we have the same 'race' that we did thru the '80's
Re: Microsoft leaving VB?
I have to agree and disagree.
Firstly, coding isn't artistry. Just like anyone can draw a picture of a car.
Where the art comes in is in the design : just like how the Mona Lisa is art opposed to a 5-year-olds drawing of his mum.
What the .NET languages do is to shift the emphasis from the implementation to the design of software. No bad thing in my book.
Unfortunately we'll always have bad programmers : nothing's ever going to stop that.
But what the .NET languages allow is for good programmers to get even better.
Not everyone can be a programmer. Even fewer can design software. It's like trying to find someone who's an architect and a builder.
So true we could see awful programs being written in .NET. But I think we'll see far more good ones than at present.
Darwen.
Re: Microsoft leaving VB?
Coding is knowing what tools to use and how to use them, just like playing the piano requires you to know how to play scales, and read the music, and repeatedly practicing. I've always gone by the axiom "If I can't figure out how to use it, it must be really bad" when it comes to PC's (Apple), cars (Owner's Manuals to find a switch), or electronics (too many to list)
Going from mainframe to QB45 was easy. Going to VB4-6 took a little more work, but there were steady payoffs. I've gotten pretty good at it (and gotten an MVP for it) Going from VB6 to VB.Net 2003 produced more headaches than anythig.
I'd hate to think 10 years from now, about someone that has become an expert using '03 Net, when they are up to Framework 12.02, and they start to drop backwards compatibility.
Just like the old Assembler programmers. It used to take 100 lines of asm to do one thing in QB. Now, a graphical "Hello World!" asm program would be pretty much impossible for a newbie. I've written such an app as a console app, but they aren't accepted now.
Re: Microsoft leaving VB?
.Net is .Net,I hate it!What can replace VB?
Re: Microsoft leaving VB?
Coding to me has always been a vocation. So it's actually quite nice when the technology changes for the better, even if it means I have to learn more.
I have to say my stress levels have reduced considerably since switching to C# from C++.
Anyway, each to their own. At least a change in technology keeps us all in a job for the next few years.
Darwen.
Re: Microsoft leaving VB?
Programming/Coding is not just about knowing what tools to use and how to use them. If you know which tools to use and how to use them to work on your car's engine you would still need the technical, logical, and artistic skills to fix it. Also, even if you do get it to run you still need the artistic touch and skill to get it to purr like a kitty.
This is the same with coding. You have your copy/paste programmers, skilled programmers, and senior programmers that have that special touch to create the proper design architecture, logical flow, and get it all to integrate together seamlessly and perform great. The senior programmer is the type of programmer a true programmer desires to be and does achieve.
Now with VB6 its going to die as the professional use narrows as businesses make the upgrades over time. I dont think the small need will be enough to keep the job market viable for vb6 programmers. VB6 will continue to live as the hobbiest programmers will have no problems to continue to use it for years to come still.
VB.NET is a cow of a different color. It still has its problems and unless they make some major improvements it will continue to be difficult to accept. C# and C++ are still going to be the dominate language for professional development and will also pay the most as it takes a more knowledgeable programmer to successfully write apps in them.
In the end, just let VB6 die its professional death.
Re: Microsoft leaving VB?
Lots of great comments to comment on :)
Rather than quoting several, I'll just trust that the reader has read them and knows what I'm referring to.
The bits about music struck a cord with me, as I do play a few instruments. Learning the notes doesn't make one capable of the kind of performance which will carry the behearer into a state of ecstasy. The person must also be able to play with "feeling". There are nuances which differ from one performance to another, even for the same performer. While the notes on the page are the same, the rendering is often noticably different.
Getting back to programming; A main reason which people are now using to support .net is exactly the same as what C++ programmers use to trash VB: That it takes away a lot of the work. This is arguably why there are so many bad VB programs. If .net allows the programmer to focus on design, then in this way it is like VB. The phrase "just make it work" comes to mind. Therefore what encourages bad VB programmers will also do the same for .net. It seems such programs are like cars: we only bring it to the shop when it won't go well enough to get by, not when the gas milage slips a little. Often times, the programmer reasons that it's acceptable if the program runs "well enough" on their own system. They rationalize that the users should all be constantly upgrading to the very latest and fastest anyway, which is expected to make up for the sluggish code. They say "who's gonna notice?".
There's also the common dislike of a runtime. Changing the name to "framework" doesn't change this fact.
Another thing I cannot overlook is the fact that .net code is not secure. While any program can be hacked in some ways, you don't have your source code freely distributed. That is unless you use .net for a publicly distributed program! Obfuscate all you want, the runtime will still need to read and manage the thing.
This is how I think the folks at Redmond are planning to make .net viable for more than an alternative to Java:
1) First push .net very hard. Many will jump on board just because it's "the new thing" anyway. The fact that it's easy to spit out a program makes it attractive to the same crowd that embraces VB. That's a lot of people.
2) Keep said developers hooked long enough for companies to find it easier to get the job done cheaper/faster with them, since .net programmers would be a dime a dozen.
3) While things may seem positive at first, more and more developers and companies will be troubled that they can't actually sell .net software to the public.
...And now for the knight in shining armor to come save the day.
Microsoft to the rescue: The "software as a service model".
Remember passport? I think it's no coincidence that it came out when it did. The idea was to get it widely accepted by the time .net grew up. Why you may ask? Well, the answer is simple. Since software can't be sold, suppose users subscribe to it instead? Microsoft is already suggesting this, and they have cleverly supplied everything, right down to the glut of crippled developers who can't use anything else but .net.
So under this model, software sits securely on a server (.net of course), and users only see an interface (presumably ActiveX). That may be one reason why ActiveX stayed in the browser even with all the security problems. They might need it there for this model to succeed. This means users would no longer own certain software titles, but instead would pay-per-use, or monthly, etc. Yes, there are still the speed issues with so many users that don't have broadband. But the more this idea becomes accepted, the less choices those users will have.
Who'd want to pay for day-to-day computing tasks? It does sound ridiculous, and while it doesn't seem reasonable for such an idea to overtake the software market, it's seems Microsoft wants to make as large a dent as possible. It also remains to be seen how system performance might purposly be catered to favor .net apps, especially if they want to encourage a transition to the technology.
I refer the reader to the following articles:
http://www.ftponline.com/wss/2002_07...s/webservices/
http://www.pcmag.com/article2/0,1895,1902332,00.asp
I'm sure VB will gradually disappear from use. Just like 16 bit apps, win3.xx, or any number of other things. As has already been stated, C++ will continue longer, but it can't last forever either. If new and better technology always won out over the rest in a short period of time, we wouldn't still be using a hardware architecture limited to 16 IRQ's and incapable of true multitasking. This is partly why a Mac can outperform a windows system even with a processor clocked at a lower frequency. That fact still didn't make Apple's technology take the major portion of the home computing market.
As for the whole win32 API thing, backward compatability ensures a relatively long future. Old standards die hard. I already make use of win32 API to a large degree, and I have pretty much tapped VB's limits. Whatever I transition to will have to be more than a slight step up in performance, and it must be closed-source. I've been looking toward C++, Delphi, or something like that, but I don't see it happening today. What makes me look to something other than VB has been there even before .net came into existance. The same is true for any programmer who continues to progress.
For those who worry about what to replace VB with, there's RealBasic, LibertyBasic, and many others. Still, there's not much to really stop someone from continuing to use VB for a while yet unless Microsoft prevents VB apps from installing. I've already read reports that VB programs work fine on Vista. It doesn't seem like they could make so many apps unusable without anti-trust suits all over the place. Let's be realistic. VB6 apps will run because the runtime will run, which is true because C++ code has to be supported. If the API isn't expanded to take advantage of new features that programmers want, someone else will create something, and it would likely be free too.
Re: Microsoft leaving VB?
But, I heard that VS 6.0 won't INSTALL under VISTA, so that would definitely be a problem to any developer that upgrades his system.
Re: Microsoft leaving VB?
Quote:
Originally Posted by dglienna
But, I heard that VS 6.0 won't INSTALL under VISTA, so that would definitely be a problem to any developer that upgrades his system.
I just did a Google search, and it seems it installs fine if you first install MSXML 6.0.
Re: Microsoft leaving VB?
Just thought I'd post a link to an open source IDE project aimed at VB developers:
http://sourceforge.net/project/showf...roup_id=166337