Why is software so expensive?
-
My work recently aquired the Visual Studio 2005 after a number of years of avoiding 2002 and 2003 net upgrades thinking that they need to upgrade to the new new system - Cause VISTA is coming? Typical bosses with too much money and little grey matter didn't realise that all the resources developed over the last 10 years are now defunk and of little use to anyone because they simply are'nt compatable. Anyway, enough said on that, I get paid by the hour so who gives a hoot. I'll spend the next numerous years updating software to suit a by then out of date system... Self preservation employment at its best!!! After 2 months of trying to use VS2005 its now become apparent that our computers can't handle it! Upgrade them too :doh:;) $$$$$$$ We now find that code is actually slower now so we need to re invent the wheel to keep things running smoothly! :sigh: We find out that all this is unlikely to be compatable with Vista..... :~ $$$$$$$$$ Start again when its released with a new budget :wtf:$$$$$$$$ Unofficially - 90% of the code going out for "NEW" software is written on VS 6 (Hidden under the NET to keep the bosses and accountants happy! - Justify the expense! ;) And the big question everyone asks! Why is software so expensive ? :rolleyes:
-
My work recently aquired the Visual Studio 2005 after a number of years of avoiding 2002 and 2003 net upgrades thinking that they need to upgrade to the new new system - Cause VISTA is coming? Typical bosses with too much money and little grey matter didn't realise that all the resources developed over the last 10 years are now defunk and of little use to anyone because they simply are'nt compatable. Anyway, enough said on that, I get paid by the hour so who gives a hoot. I'll spend the next numerous years updating software to suit a by then out of date system... Self preservation employment at its best!!! After 2 months of trying to use VS2005 its now become apparent that our computers can't handle it! Upgrade them too :doh:;) $$$$$$$ We now find that code is actually slower now so we need to re invent the wheel to keep things running smoothly! :sigh: We find out that all this is unlikely to be compatable with Vista..... :~ $$$$$$$$$ Start again when its released with a new budget :wtf:$$$$$$$$ Unofficially - 90% of the code going out for "NEW" software is written on VS 6 (Hidden under the NET to keep the bosses and accountants happy! - Justify the expense! ;) And the big question everyone asks! Why is software so expensive ? :rolleyes:
Programit wrote:
We find out that all this is unlikely to be compatable with Vista.....
Why ? VC6 is rubbish, BTW, it's not even remotely standards compliant, in a whole lot of areas, and it's STL is just a joke. How much of your VC6 code even compiled under VC2005 ?
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog
-
Programit wrote:
We find out that all this is unlikely to be compatable with Vista.....
Why ? VC6 is rubbish, BTW, it's not even remotely standards compliant, in a whole lot of areas, and it's STL is just a joke. How much of your VC6 code even compiled under VC2005 ?
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog
-
Yuk - STL itself is the joke. No proper way to initialize it, the error messages are bout a mile long.
A cynic is a man who, when he smells flowers, looks around for a coffin.
-H.L. MenckenJWood wrote:
STL itself is the joke
What a joke of a statement. The only validity in your statement is your comment on the comprehensibility of the compiler's error messages. That said compilers are getting better and producing better diagnostics with each new version. The Boost library, which builds on top on the STL, is the most impressive library I've ever seen in any programming language.
Steve
-
Yuk - STL itself is the joke. No proper way to initialize it, the error messages are bout a mile long.
A cynic is a man who, when he smells flowers, looks around for a coffin.
-H.L. MenckenJWood wrote:
No proper way to initialize it,
What on earth do you mean ?
JWood wrote:
the error messages are bout a mile long.
That's a function of how bad the compiler is, especially VC6. You soon learn to decipher them.
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog
-
JWood wrote:
No proper way to initialize it,
What on earth do you mean ?
JWood wrote:
the error messages are bout a mile long.
That's a function of how bad the compiler is, especially VC6. You soon learn to decipher them.
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog
Christian Graus wrote:
JWood wrote:
No proper way to initialize it,
What on earth do you mean ?
I was wondering that myself.
Steve
-
Programit wrote:
We find out that all this is unlikely to be compatable with Vista.....
Why ? VC6 is rubbish, BTW, it's not even remotely standards compliant, in a whole lot of areas, and it's STL is just a joke. How much of your VC6 code even compiled under VC2005 ?
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog
-
Yuk - STL itself is the joke. No proper way to initialize it, the error messages are bout a mile long.
A cynic is a man who, when he smells flowers, looks around for a coffin.
-H.L. Mencken -
Man, you are starting to sound like a mini-Nish. VC++ 6.0 is just great for those of us who have never had the luxury of using STL. Not being able to declare for (int i=0;i
I use MSVC 6 extensively and have done for years. I know it like the back of my hand and am comfortable with it. That said, there is no denying that by today’s standards it is rubbish. Anyone who doubts this needs to "get out more". There are many quality libraries that either don't work at all or only partially work on MSVC 6, but work fine on just about any other modern compiler. The lack of partial template specialisation is like being hobbled, for those if us who find templates useful. It's funny that you say, "If I ever need STL". Any application can use (and benefit from) STL: It contains universal concepts and algorithms that are used in one way or another in any program. It boils down to the age old decision in computer programming: Do I spin my own or reuse an existing implementation? If I take reuse option is there a "standard" choice that most programmers will already know (or should already know)? STL is just a collection of production quality implementations of algorithms any C++ programmer needs that are shipped with every modern C++ compiler.
Steve
-
Programit wrote:
We find out that all this is unlikely to be compatable with Vista.....
Why ? VC6 is rubbish, BTW, it's not even remotely standards compliant, in a whole lot of areas, and it's STL is just a joke. How much of your VC6 code even compiled under VC2005 ?
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog
Christian Graus wrote:
VC6 is rubbish
And that's a crock of shit.
Christian Graus wrote:
How much of your VC6 code even compiled under VC2005 ?
Well, it seems 100% of ours can be compiled with VS2005. The first time we tried compiling our flagship product (675,000 lines of code), we got over 5000 warnings and 2200 errors. Using the NO_DEPRECATE macro, we instantly went down to about 90 warnings. The rest of the warnings were due to minor (and fixable) changes to MFC and the CRT. About 1200 of the errors dealt with the for loop scoping rules, 200 were related to namespace changes concering the XMLDOM library we were using, another 400 were due to yus failing to inherit from a specific class in a template library, and the rest were errors in message handling the VC seemed to ignore. Total time to get a clean compile and run - 4 hours. BTW, we don't use STL at all. I think that fact alone saved us DAYS of refactoring. So it's not VC6 that is rubbish - it's STL in all of its evil incarnations that gives everyone heartburn. Think about it, it it's a "STANDARD" template library, why are there so many different kinds, and why aren't any of them the same? So much for the standard part, eh?
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 -
I use MSVC 6 extensively and have done for years. I know it like the back of my hand and am comfortable with it. That said, there is no denying that by today’s standards it is rubbish. Anyone who doubts this needs to "get out more". There are many quality libraries that either don't work at all or only partially work on MSVC 6, but work fine on just about any other modern compiler. The lack of partial template specialisation is like being hobbled, for those if us who find templates useful. It's funny that you say, "If I ever need STL". Any application can use (and benefit from) STL: It contains universal concepts and algorithms that are used in one way or another in any program. It boils down to the age old decision in computer programming: Do I spin my own or reuse an existing implementation? If I take reuse option is there a "standard" choice that most programmers will already know (or should already know)? STL is just a collection of production quality implementations of algorithms any C++ programmer needs that are shipped with every modern C++ compiler.
Steve
Stephen Hewitt wrote:
t's funny that you say, "If I ever need STL". Any application can use (and benefit from) STL
In all honesty, I've been writing C/C++ code for almost 20 years, and I've only needed STL in ONE application, and that was three years ago for a proprietary compilation of Windows CE 2.0. Further, the only reason I needed to use STL is because that's what the program was already using because it couldn't use MFC. STL is not the panacea that so many claim it is. It's a bloated obscure library of spaghetti code that I wouldn't wish on Bill Gates.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 -
Man, you are starting to sound like a mini-Nish. VC++ 6.0 is just great for those of us who have never had the luxury of using STL. Not being able to declare for (int i=0;i
bob16972 wrote:
who have never had the luxury of using STL.
How is using a core part of the standard language a luxury ? VC6 is broke in plenty of other places.
bob16972 wrote:
for (int i=0;i What's at issue *there* is that VC6 does not stick to the standard. I don't care about the scoping rule terribly much, I do care that VC6 has it wrong.
bob16972 wrote:
but the IDE is just horrible compared to VC++ 6.0.
I thought so too, at first, but I learned it, and now I find VC6 clunky as hell.
bob16972 wrote:
If I ever need STL
I don't percieve how you can write very much without needing container classes.
bob16972 wrote:
why don't you donate your copy
1 - I work on library code that needs to work in VC6 2 - it's part of my MSDN, so I'm not sure I could give it away if I wanted to
bob16972 wrote:
Why don't you just rewrite all your code so it'll compile on VC++ 2005.
As I work on a library, my code compiles on VC6, VC2002, VC2003 and VC2005. However, all of my own code compiled direct from VC6 to VC2002, because I knew C++ well enough to write code that would compile on a standards compliant compiler.
bob16972 wrote:
The boss will appreciate the standards compliant code you produced in a mere 6-12 months of his time.
Like I said, a programmer who knows what they are doing, and cares about the standard, would have written code that compiled in VC2002 when it came out. Poor tools are not an excuse for poor work, it was still possible to write good code on VC6, it just allowed writing of bad code. I've worked on projects where the VC6 code was plain terrible, and converted it to VC2005. I did this mostly because VC2005 reported stuff that needed fixing, there were methods that returned int implicitly all over the place, and many of them when written, did not return anything explicit, for example.
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog
-
Christian Graus wrote:
VC6 is rubbish
And that's a crock of shit.
Christian Graus wrote:
How much of your VC6 code even compiled under VC2005 ?
Well, it seems 100% of ours can be compiled with VS2005. The first time we tried compiling our flagship product (675,000 lines of code), we got over 5000 warnings and 2200 errors. Using the NO_DEPRECATE macro, we instantly went down to about 90 warnings. The rest of the warnings were due to minor (and fixable) changes to MFC and the CRT. About 1200 of the errors dealt with the for loop scoping rules, 200 were related to namespace changes concering the XMLDOM library we were using, another 400 were due to yus failing to inherit from a specific class in a template library, and the rest were errors in message handling the VC seemed to ignore. Total time to get a clean compile and run - 4 hours. BTW, we don't use STL at all. I think that fact alone saved us DAYS of refactoring. So it's not VC6 that is rubbish - it's STL in all of its evil incarnations that gives everyone heartburn. Think about it, it it's a "STANDARD" template library, why are there so many different kinds, and why aren't any of them the same? So much for the standard part, eh?
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001John Simmons / outlaw programmer wrote:
Well, it seems 100% of ours can be compiled with VS2005.
One problem with VC6 is that it will compile really bad, and just plain wrong code. I didn't have any trouble going from VC6 either, but people who don't know C++ so well can find it a major headache.
John Simmons / outlaw programmer wrote:
About 1200 of the errors dealt with the for loop scoping rules
I always wrote loops like this in VC6: int i = 0; for(;i < 1000; ++i) so that when standards compliance came along, my code compiled for both.
John Simmons / outlaw programmer wrote:
I think that fact alone saved us DAYS of refactoring.
Days that you probably spent coding if your app has any sort of need to keep and manipulate collections. I assume you use the MFC containers ? Did you know they are there for legacy reasons only ? They were written prior to the STL, and the STL is meant to replace them.
John Simmons / outlaw programmer wrote:
So it's not VC6 that is rubbish - it's STL in all of its evil incarnations that gives everyone heartburn. Think about it, it it's a "STANDARD" template library, why are there so many different kinds, and why aren't any of them the same? So much for the standard part, eh?
VC6 has an STL implimentation from Dinkum. It was really bad, and MS knew it. They had signed a contract, VC6 was the last version where they were obliged to ship that version. From VC7, the STL implimentation was awesome. Having said that, I've used various STL implimentations to plug in and replace the VC6 one, and I've never seen any indication of 'different kinds' or them not being 'the same'. Boost is a library that adds to the STL, but the STL is indeed standard, and always the same in my experience.
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog
-
Man, you are starting to sound like a mini-Nish. VC++ 6.0 is just great for those of us who have never had the luxury of using STL. Not being able to declare for (int i=0;i
I've been using VS6 since it came out in 1998, and good though it was in its day (especially compared to the god-awful VS5) there is just no denying that it is showing its age badly today. Aside from the STL issues, the compiler is no-where near standards compliant, the IDE can't handle large projects (we had awful problems with it crashing at Sonardyne; opening the Class View would crash the IDE, and often even just opening the workspace. We lost countless hours of time that way) and the extensibility interface is truly ghastly (although not a consideration for many I admit; we've more cause to curse it than most). That said, if you're working on relatively small projects without using modern libraries then it's "good enough" for most purposes - as long as you are aware of its limitations. However, if you need to use Boost, STL, write standards compliant code etc. VS2003 is a far better bet. The IDE isn't that different when you break it down, really - and the compiler and libraries are far, far, better. ATL7 alone is worth the upgrade. With regard to VS2005 I'd leave it alone until SP1 arrives unless you are doing .NET development or need features introduced in that version.
Anna :rose: Currently working mostly on: Visual Lint :cool: Anna's Place | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work.
-
Programit wrote:
We find out that all this is unlikely to be compatable with Vista.....
Why ? VC6 is rubbish, BTW, it's not even remotely standards compliant, in a whole lot of areas, and it's STL is just a joke. How much of your VC6 code even compiled under VC2005 ?
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog
No where did I mention VC6! We do use it for some code but not all! (COM Mainly!)
Christian Graus wrote:
How much of your VC6 code even compiled under VC2005 ?
One particular object - used to synchronise network data between clients and validate basic security and access was converted. - 7,500 lines of code - 392 errors and warnings. We have approximately 40 ActiveX components similar to do! :sigh: Wrapping COM objects to maintain compatability until they can be rewrit! '2nd major problem! DirectX 8 code is not compatable with VS 2005 - (Nor Vista we believe!) Also not compat with DX9. (But DX9 is not compatable with DX9 :confused: changes every 3 month SDK - modern standards in action! :wtf:) We've used VB6, VC6 and DirectX 8 for 3 years with very little changes required. - Now thats a standard!:-> Time is money!
-
bob16972 wrote:
who have never had the luxury of using STL.
How is using a core part of the standard language a luxury ? VC6 is broke in plenty of other places.
bob16972 wrote:
for (int i=0;i What's at issue *there* is that VC6 does not stick to the standard. I don't care about the scoping rule terribly much, I do care that VC6 has it wrong.
bob16972 wrote:
but the IDE is just horrible compared to VC++ 6.0.
I thought so too, at first, but I learned it, and now I find VC6 clunky as hell.
bob16972 wrote:
If I ever need STL
I don't percieve how you can write very much without needing container classes.
bob16972 wrote:
why don't you donate your copy
1 - I work on library code that needs to work in VC6 2 - it's part of my MSDN, so I'm not sure I could give it away if I wanted to
bob16972 wrote:
Why don't you just rewrite all your code so it'll compile on VC++ 2005.
As I work on a library, my code compiles on VC6, VC2002, VC2003 and VC2005. However, all of my own code compiled direct from VC6 to VC2002, because I knew C++ well enough to write code that would compile on a standards compliant compiler.
bob16972 wrote:
The boss will appreciate the standards compliant code you produced in a mere 6-12 months of his time.
Like I said, a programmer who knows what they are doing, and cares about the standard, would have written code that compiled in VC2002 when it came out. Poor tools are not an excuse for poor work, it was still possible to write good code on VC6, it just allowed writing of bad code. I've worked on projects where the VC6 code was plain terrible, and converted it to VC2005. I did this mostly because VC2005 reported stuff that needed fixing, there were methods that returned int implicitly all over the place, and many of them when written, did not return anything explicit, for example.
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog
Christian Graus wrote:
How is using a core part of the standard language a luxury ?
I must have missed some important boat back in the early 90's when I went from C and Pascal to getting some of the Turbo C++ and Borland C++ compilers at that time. I don't remember ever hearing about STL. I heard about MFC and started to use it, depend on it, about the same time I got wind of STL. I'm not so sure it was "core" to the people trying to use C/C++ early on with Turbo C++ 3.0 or even at the time VC++ 6.0 came out. It may have become "core" since then but some of us developed ourselves long before that. Frankly, MFC was so easy to use, templates look like a disaster. Granted, I appreciate the fact that MFC has been getting templated in the meantime but it's been passive to the end user and the need to learn how to "write" template classes has been non-existent. I learned to program C/C++ (1989-1994) from Schildt, Dilascia, Norton, and Yao and none of these ever mentioned the "core" STL you speak of at that time. Templates were just getting introduced as a new feature in the Turbo/Borland 3.0 C++ series at that time. Your "core" feature wasn't around in the mainstream I'm afraid. I can understand why programmers who came to C/C++ toward the late 90's would consider it "core" but don't forget that a large number of your peers might have been churning out code and developing habits around OOP long before STL finally started to find it's way into mainstream programming books.
Christian Graus wrote:
I don't percieve how you can write very much without needing container classes.
MFC (Collection/Template classes) :|
Christian Graus wrote:
As I work on a library, my code compiles on VC6, VC2002, VC2003 and VC2005.
That is indeed quite a feet considering some ATL_DEPRECATED items can't be used as is from VC++ 6.0 to VC++ 2003 without the deprecated warnings. There are some that have no equivalent functions with the parameters in the same order. My hats off to you if that is true. (I am being serious by the way) -- modified at 20:15 Saturday 22nd July, 2006
-
No where did I mention VC6! We do use it for some code but not all! (COM Mainly!)
Christian Graus wrote:
How much of your VC6 code even compiled under VC2005 ?
One particular object - used to synchronise network data between clients and validate basic security and access was converted. - 7,500 lines of code - 392 errors and warnings. We have approximately 40 ActiveX components similar to do! :sigh: Wrapping COM objects to maintain compatability until they can be rewrit! '2nd major problem! DirectX 8 code is not compatable with VS 2005 - (Nor Vista we believe!) Also not compat with DX9. (But DX9 is not compatable with DX9 :confused: changes every 3 month SDK - modern standards in action! :wtf:) We've used VB6, VC6 and DirectX 8 for 3 years with very little changes required. - Now thats a standard!:-> Time is money!
Programit wrote:
No where did I mention VC6!
"My work recently aquired the Visual Studio 2005 after a number of years of avoiding 2002 and 2003 net " So, what are you using then ?
Programit wrote:
7,500 lines of code - 392 errors and warnings.
Wow - that's 5% of your code !! Although I assume a lot of warnings, and few errors, and also the whole 'one bad line makes 5 errors' syndrome.
Programit wrote:
DirectX 8 code is not compatable with VS 2005 - (Nor Vista we believe!)
Why not ?
Programit wrote:
We've used VB6, VC6 and DirectX 8 for 3 years with very little changes required. - Now thats a standard!
Use the same language, whatever it is, and of course you won't need changes.
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog
-
I've been using VS6 since it came out in 1998, and good though it was in its day (especially compared to the god-awful VS5) there is just no denying that it is showing its age badly today. Aside from the STL issues, the compiler is no-where near standards compliant, the IDE can't handle large projects (we had awful problems with it crashing at Sonardyne; opening the Class View would crash the IDE, and often even just opening the workspace. We lost countless hours of time that way) and the extensibility interface is truly ghastly (although not a consideration for many I admit; we've more cause to curse it than most). That said, if you're working on relatively small projects without using modern libraries then it's "good enough" for most purposes - as long as you are aware of its limitations. However, if you need to use Boost, STL, write standards compliant code etc. VS2003 is a far better bet. The IDE isn't that different when you break it down, really - and the compiler and libraries are far, far, better. ATL7 alone is worth the upgrade. With regard to VS2005 I'd leave it alone until SP1 arrives unless you are doing .NET development or need features introduced in that version.
Anna :rose: Currently working mostly on: Visual Lint :cool: Anna's Place | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work.
I agree with you Anna. I use VS 2003 at home (and VS 6) Visual studio 6 required breaking down major projects into sections but far cleaner and easier to use! -(Also maintained compatability) VS 2005 is typical bloatware and annoyingly slow to use. The second point is that nothing remain compatable. We started converting DirectX routines to DX9 using Feb SDK and VS2005. We then upgraded to June SDK to find none, zero, nada, of the original source would compile without minor rewrites. My suggestion to management was to wait until Vista and appropriate development tools are out before committing to changes that are inappropriate. We are currently setting up a Vista BETA machine to experiment with and to start familiarising with NetFX. Wait and get VS2007 and do a complete rewrite to suit WinFX (Net 3):-D
-
Christian Graus wrote:
How is using a core part of the standard language a luxury ?
I must have missed some important boat back in the early 90's when I went from C and Pascal to getting some of the Turbo C++ and Borland C++ compilers at that time. I don't remember ever hearing about STL. I heard about MFC and started to use it, depend on it, about the same time I got wind of STL. I'm not so sure it was "core" to the people trying to use C/C++ early on with Turbo C++ 3.0 or even at the time VC++ 6.0 came out. It may have become "core" since then but some of us developed ourselves long before that. Frankly, MFC was so easy to use, templates look like a disaster. Granted, I appreciate the fact that MFC has been getting templated in the meantime but it's been passive to the end user and the need to learn how to "write" template classes has been non-existent. I learned to program C/C++ (1989-1994) from Schildt, Dilascia, Norton, and Yao and none of these ever mentioned the "core" STL you speak of at that time. Templates were just getting introduced as a new feature in the Turbo/Borland 3.0 C++ series at that time. Your "core" feature wasn't around in the mainstream I'm afraid. I can understand why programmers who came to C/C++ toward the late 90's would consider it "core" but don't forget that a large number of your peers might have been churning out code and developing habits around OOP long before STL finally started to find it's way into mainstream programming books.
Christian Graus wrote:
I don't percieve how you can write very much without needing container classes.
MFC (Collection/Template classes) :|
Christian Graus wrote:
As I work on a library, my code compiles on VC6, VC2002, VC2003 and VC2005.
That is indeed quite a feet considering some ATL_DEPRECATED items can't be used as is from VC++ 6.0 to VC++ 2003 without the deprecated warnings. There are some that have no equivalent functions with the parameters in the same order. My hats off to you if that is true. (I am being serious by the way) -- modified at 20:15 Saturday 22nd July, 2006
bob16972 wrote:
I don't remember ever hearing about STL.
The standard was released in 1993. STL was developed by Alexander Stepanov, and it was a very late inclusion, it only made the standard because it was so compelling. So, anything before 1993, and you couldn't have heard of it. I have no idea how long it took to be widely adopted once the standard came out.
bob16972 wrote:
I'm not so sure it was "core" to the people trying to use it early on with Turbo C++ 3.0 or even at the time VC++ 6.0 came out.
It was certainly part of the standard. I used VC6 from 1999 ( when I started C++ ) and at that point I found out about STL through my own research ( I am self taught ).
bob16972 wrote:
Frankly, MFC was so easy to use, templates look like a disaster.
Templates are also part of C++, and a very important part. Lots of people are scared of them, but how do you do a container class without them ? And really, templates to specify a container type is pretty trivial, it's hardly a 'disaster' to have to learn a tiny bit of syntax.
bob16972 wrote:
but it's been passive to the end user and the need to learn how to "write" template classes has been non-existent.
The need to write template classes is equally no-existant if you use STL or if you use MFC container classes.
bob16972 wrote:
I learned to program C/C++ (1989-1994) from Schildt, Dilascia, Norton, and Yao and none of these ever mentioned the "core" STL you speak of at that time.
See above - C++ was not a standards defined language until 1993, and STL just made it to the standard.
bob16972 wrote:
Your "core" feature wasn't around in the mainstream I'm afraid.
For reasons that I stated above. Are you claiming that you have the same skillset you have in 1994 ? I've been programming for a living much shorter than that, but I expect to learn new things for as long as I keep coding. I certainly used MFC containers briefly, before coming across the STL. Interestingly, I worked with university educated programmers, and I was the one who found and pursued the STL, and when I changed jobs, I found the STL being used, but used badly there, too. The literature is out there, it's not hard, it's jus
-
I've been using VS6 since it came out in 1998, and good though it was in its day (especially compared to the god-awful VS5) there is just no denying that it is showing its age badly today. Aside from the STL issues, the compiler is no-where near standards compliant, the IDE can't handle large projects (we had awful problems with it crashing at Sonardyne; opening the Class View would crash the IDE, and often even just opening the workspace. We lost countless hours of time that way) and the extensibility interface is truly ghastly (although not a consideration for many I admit; we've more cause to curse it than most). That said, if you're working on relatively small projects without using modern libraries then it's "good enough" for most purposes - as long as you are aware of its limitations. However, if you need to use Boost, STL, write standards compliant code etc. VS2003 is a far better bet. The IDE isn't that different when you break it down, really - and the compiler and libraries are far, far, better. ATL7 alone is worth the upgrade. With regard to VS2005 I'd leave it alone until SP1 arrives unless you are doing .NET development or need features introduced in that version.
Anna :rose: Currently working mostly on: Visual Lint :cool: Anna's Place | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work.
Anna-Jayne Metcalfe wrote:
there is just no denying that it is showing its age badly today
Yeah, it doesn't have all those nice gradients and it's just too darn perky. It responds way too fast for me. I prefer having some moments to myself to think while the VC++ 2003 IDE loads, and loads, and loa...ahhh, there it is. Finally. Now type som....oops, it waits, and waits, wai...ahhh, it finally caught up with me. Now lets get MSDN up to che...darn, it hangs, and hangs, and...
Anna-Jayne Metcalfe wrote:
relatively small projects without using modern libraries then it's "good enough" for most purposes
Yes, all my projects are relatively small as a rule. Monolithic designs are for pre-COM days. "It's good enough for most purposes" would probably not warrant a term like "rubbish" being used to describe it. Did you hear that Christian? It's good enough. Now let's all go read up on all the spanky new features coming in Vista so we can all get ready for next years debate about why VC++ 2003 is suddenly "rubbish" because it doesn't support WinFX and VC++ 2007 has some pretty icons and a speak and spell feature that we all can't live without. -- modified at 20:39 Saturday 22nd July, 2006 I forgot to add my agreement with the VS C++ 2005 statement. I'm definitely waiting for SP1 at a minimum. -- modified at 20:41 Saturday 22nd July, 2006