Is C++ still alive??????????
-
Pertinent question. Sometimes I feel just like you: preaching in the desert. You know, when you hear people saying that C++ is just for systems development is because they don't have a clue. These are the same people who believe that XML is king and you should always use it to transfer data, no matter what the application is, no matter what the hardware is. That has already been thrown to my face, when discussing how to implement a protocol for syncronization with mobile devices: "But with XML is better, right?". And I said: "Not necessarily. We need low overhead over a GPRS connection, so why not use a proprietary format?". Answer: "No, XML has to be better". Explaining this person that XML requires parsing, and that XML files tend to be MUCH larger than a proprietary format was tough. After all everybody's doing it with XML, so why aren't we? There is a similar trend with C++. The truth of the matter is that, as I see it, C++ is TOUGH to learn and master. You must read tons of books, read and write thousands of lines of code, spend an inordinate amount of time in websites like this just to keep up your skills in proper conditions. Is this what everybody wants? Hell, no. Nowadays, people want to have it all and now. And then, there is a growing number of people with very low technical skills who believe everything the marketing people (especially from one company in Redmond) say. I'm working in embedded development, and I have seen some interesting applications lately. Things that will take 30 seconds to boot, and more than 10 seconds to show a dialog. They hog the device's memory, not just in what they need for storage, but also in the runtime. It's unbelievable. But hey, they are using the very latest technologies. Wow! By comparison, the most complex C++ application I have developped has less than 300K of footprint, boots in a hurry (and it is using a heavywheight database, from those Redmond guys), and there is no dialog that takes more than one second to show up fully populated. But it seems like I'm wrong.
Testify, bro! :) I am currently making a KILLING, however, doing C++ programming consulting, so I should talk -- but these people know what they need... But it is for systems stuff -- DCOM code to have two computers talk to each other and who both need to control a large factory glass-pane optical scanner. So C++ is still out there. THe best thing I can recommend -- code and PUBLISH PUBLISH PUBLISH, repeat, and do it for years and years. This will get you exposure. Then, when someone comes along and e-mails you about your article, go to their websire, research their company, and then e-mail them and offer your services. Of course, duhhh, everyone knows to do the above, but I personally cannot stress enough the importance of getting exposed. Publish out your...well...you know...this is a 'family' site :) Sincerely Yours, Brian Hart Department of Physics and Astronomy University of California, Irvine
-
i am a student of computer system engineering and basically loves to work on C++ ( MFC,ATL and WTL).. i was just looking the pakistani software market and noticed that there are very very few places where any project is now being done in C++. i dont know the reason :confused: and among those companies which are working on C++ , some of them says that it is now an old technology and now u should do project in either .NET or JAVA2EE as they are new technologies. can any one explain me the reason? why people are willing to compromise on peroformance and money and invest in a new technology which would cost much more than that besides performance loss???? now i am used to listen such comments by people here " No you shouldnt do this project in VC++, it is just for System programming related tasks.. go for VB or JAVA" :( and once it happened with me that my teacher was unwilling to accept my DB project becoz he says it is in VC so it is of more of system programming stuff :( BTW any pakistani developer reading this question plz reply how much scope of C++ do u think is still there in Pakistan?? Thanx Muhammad Shoaib Khan http://geocities.com/lansolution
pretty much any software title you see on the shell was written in C/C++. It's still the #1 choice for products that have to run on diverse system configurations and still be reasonably stable. The thing about the higher level lanagues is opacity. With C++, you can throw away the MFC/ATL, etc. and work directly with the OS. Of course, the OS is still quite opaque (lots of black boxes), but you have quite a bit of flexibility. With Visual Basic, Delphi, etc. you just have more black boxes. This is both a good thing and a bad thing. It's good in the sense that you have more functionality available (less coding), but it's bad in the sense that if something doesn't behave the way you want or expect, you're stuck with it. Of course, if you work in C++, you're often still stuck with the way the OS works. I can't, for example, change the way Auto Play V2 works on Windows XP - it is what it is regardless of what programming language you're using.
-
i am a student of computer system engineering and basically loves to work on C++ ( MFC,ATL and WTL).. i was just looking the pakistani software market and noticed that there are very very few places where any project is now being done in C++. i dont know the reason :confused: and among those companies which are working on C++ , some of them says that it is now an old technology and now u should do project in either .NET or JAVA2EE as they are new technologies. can any one explain me the reason? why people are willing to compromise on peroformance and money and invest in a new technology which would cost much more than that besides performance loss???? now i am used to listen such comments by people here " No you shouldnt do this project in VC++, it is just for System programming related tasks.. go for VB or JAVA" :( and once it happened with me that my teacher was unwilling to accept my DB project becoz he says it is in VC so it is of more of system programming stuff :( BTW any pakistani developer reading this question plz reply how much scope of C++ do u think is still there in Pakistan?? Thanx Muhammad Shoaib Khan http://geocities.com/lansolution
C++ is good for desktop apps, too. It all depends on how much time you want to take developing. For me, I have a whole lot of ideas, and not enough time to implement them, so I like a higher-level language to save myself time. Plus, I don't have MFC/ATL/WTL and all those goodies which speed up development time, so if I want to make a C++ app, I have to do it from scratch. :( My biggest gripe is: why do .NET and GDI+ have to be so slow? The answer is, of course, that MS doesn't want to take the time and bother to hardware-accelerate GDI+ and optimize .NET, because they figure people will use them anyway, because of faster processor speeds. Well, they may be somewhat right there, but I think they'd win over a lot more people if they speeded them up. (AND IT IS POSSIBLE!)
"Blessed are the peacemakers, for they shall be called sons of God." - Jesus
"You must be the change you wish to see in the world." - Mahatma Gandhi -
C++ is good for desktop apps, too. It all depends on how much time you want to take developing. For me, I have a whole lot of ideas, and not enough time to implement them, so I like a higher-level language to save myself time. Plus, I don't have MFC/ATL/WTL and all those goodies which speed up development time, so if I want to make a C++ app, I have to do it from scratch. :( My biggest gripe is: why do .NET and GDI+ have to be so slow? The answer is, of course, that MS doesn't want to take the time and bother to hardware-accelerate GDI+ and optimize .NET, because they figure people will use them anyway, because of faster processor speeds. Well, they may be somewhat right there, but I think they'd win over a lot more people if they speeded them up. (AND IT IS POSSIBLE!)
"Blessed are the peacemakers, for they shall be called sons of God." - Jesus
"You must be the change you wish to see in the world." - Mahatma Gandhijdunlap wrote: why do .NET and GDI+ have to be so slow? Last I had heard they were considering making the next version of GDI+ take advantage of hardware acceleration. Improvements to .NET execution speed can be made with better optimizing compilers and JITters. I would guess that the latter is higher up on the priority at MS so all .NET languages could benefit. James "I despise the city and much prefer being where a traffic jam means a line-up at McDonald's" Me when telling a friend why I wouldn't want to live with him
-
jdunlap wrote: why do .NET and GDI+ have to be so slow? Last I had heard they were considering making the next version of GDI+ take advantage of hardware acceleration. Improvements to .NET execution speed can be made with better optimizing compilers and JITters. I would guess that the latter is higher up on the priority at MS so all .NET languages could benefit. James "I despise the city and much prefer being where a traffic jam means a line-up at McDonald's" Me when telling a friend why I wouldn't want to live with him
-
i am a student of computer system engineering and basically loves to work on C++ ( MFC,ATL and WTL).. i was just looking the pakistani software market and noticed that there are very very few places where any project is now being done in C++. i dont know the reason :confused: and among those companies which are working on C++ , some of them says that it is now an old technology and now u should do project in either .NET or JAVA2EE as they are new technologies. can any one explain me the reason? why people are willing to compromise on peroformance and money and invest in a new technology which would cost much more than that besides performance loss???? now i am used to listen such comments by people here " No you shouldnt do this project in VC++, it is just for System programming related tasks.. go for VB or JAVA" :( and once it happened with me that my teacher was unwilling to accept my DB project becoz he says it is in VC so it is of more of system programming stuff :( BTW any pakistani developer reading this question plz reply how much scope of C++ do u think is still there in Pakistan?? Thanx Muhammad Shoaib Khan http://geocities.com/lansolution
Imho that's a bit like asking, "What should I buy? A sports car, sedan or an SUV?". Well, there are lots of people buying lots of each. It depends what you want to do with it and what the risks involved are. A software engineer should be asking the same questions. /ravi Let's put "civil" back in "civilization" Home | Articles | Freeware | Music ravib@ravib.com
-
jdunlap wrote: why do .NET and GDI+ have to be so slow? Last I had heard they were considering making the next version of GDI+ take advantage of hardware acceleration. Improvements to .NET execution speed can be made with better optimizing compilers and JITters. I would guess that the latter is higher up on the priority at MS so all .NET languages could benefit. James "I despise the city and much prefer being where a traffic jam means a line-up at McDonald's" Me when telling a friend why I wouldn't want to live with him
-
i am a student of computer system engineering and basically loves to work on C++ ( MFC,ATL and WTL).. i was just looking the pakistani software market and noticed that there are very very few places where any project is now being done in C++. i dont know the reason :confused: and among those companies which are working on C++ , some of them says that it is now an old technology and now u should do project in either .NET or JAVA2EE as they are new technologies. can any one explain me the reason? why people are willing to compromise on peroformance and money and invest in a new technology which would cost much more than that besides performance loss???? now i am used to listen such comments by people here " No you shouldnt do this project in VC++, it is just for System programming related tasks.. go for VB or JAVA" :( and once it happened with me that my teacher was unwilling to accept my DB project becoz he says it is in VC so it is of more of system programming stuff :( BTW any pakistani developer reading this question plz reply how much scope of C++ do u think is still there in Pakistan?? Thanx Muhammad Shoaib Khan http://geocities.com/lansolution
M.Shoaib Khan wrote: i am a student of computer system engineering Thats cool...one more computer related person. BTW honestly tell me whether you advice your young nephew to become software engineer now ? M.Shoaib Khan wrote: i was just looking the pakistani software market and noticed that there are very very few places where any project is now being done in C++. Looking at your profile, you belong to Lahore. Yes the focus of people is shifting away from C++, but here in Karachi there are still many many many companies working in C++ (including mine ;)) M.Shoaib Khan wrote: once it happened with me that my teacher was unwilling to accept my DB project becoz he says it is in VC so it is of more of system programming stuff He has given you a project and now it is your choice to do it any way yourself. If he is not accepting your project just because it is in C++, then sorry to say that the man is an extra mass on country's educational system. M.Shoaib Khan wrote: i dont know the reason Companies have their own finiancial and commercial reasons and also it depends on a project. New languages are much easy to deal with, more object oriented, low nuisances and features suitable to low quality programmers like ease of use, automatic garbage collection e.t.c Traditional C++ libraries like MFC are there for about a decade. MFC was introduced to make the windows programming easier by encapsulating many low level API details. MFC was used widely. Many top class windows applications were written on it and it ruled for many years. Now we've to move forward. Traditionally there we problems in writing application directly in assembly so there joined C. It was proved difficult to write win32 apps in C, so there came MFC. Now we've to move forward. There are better tools now, better hardware and better software engineering techniques. All languages and tools are for us, and we should select right tool for right job. You work in C++, thats very good and those who are not accepting you are totally morons. But we should also try to go one step ahead and see what is inside new languages and why are the people accepting them quickly and then use them for right job.
-
jdunlap wrote: why do .NET and GDI+ have to be so slow? Last I had heard they were considering making the next version of GDI+ take advantage of hardware acceleration. Improvements to .NET execution speed can be made with better optimizing compilers and JITters. I would guess that the latter is higher up on the priority at MS so all .NET languages could benefit. James "I despise the city and much prefer being where a traffic jam means a line-up at McDonald's" Me when telling a friend why I wouldn't want to live with him
.NET is slow by design. Because it is running under a virtual machine which emulates the processor. I know they have jit but you will always pay a penalty of not compiling and optimizing for the target processor. John
-
M.Shoaib Khan wrote: i am a student of computer system engineering Thats cool...one more computer related person. BTW honestly tell me whether you advice your young nephew to become software engineer now ? M.Shoaib Khan wrote: i was just looking the pakistani software market and noticed that there are very very few places where any project is now being done in C++. Looking at your profile, you belong to Lahore. Yes the focus of people is shifting away from C++, but here in Karachi there are still many many many companies working in C++ (including mine ;)) M.Shoaib Khan wrote: once it happened with me that my teacher was unwilling to accept my DB project becoz he says it is in VC so it is of more of system programming stuff He has given you a project and now it is your choice to do it any way yourself. If he is not accepting your project just because it is in C++, then sorry to say that the man is an extra mass on country's educational system. M.Shoaib Khan wrote: i dont know the reason Companies have their own finiancial and commercial reasons and also it depends on a project. New languages are much easy to deal with, more object oriented, low nuisances and features suitable to low quality programmers like ease of use, automatic garbage collection e.t.c Traditional C++ libraries like MFC are there for about a decade. MFC was introduced to make the windows programming easier by encapsulating many low level API details. MFC was used widely. Many top class windows applications were written on it and it ruled for many years. Now we've to move forward. Traditionally there we problems in writing application directly in assembly so there joined C. It was proved difficult to write win32 apps in C, so there came MFC. Now we've to move forward. There are better tools now, better hardware and better software engineering techniques. All languages and tools are for us, and we should select right tool for right job. You work in C++, thats very good and those who are not accepting you are totally morons. But we should also try to go one step ahead and see what is inside new languages and why are the people accepting them quickly and then use them for right job.
Imran Farooqui wrote: BTW honestly tell me whether you advice your young nephew to become software engineer now ? No way. I think we all benifited a lot from Y2K but after it is all over companies overspent and over budgeted hardware, software and employees. There will be a few years till the market forces fully correct itself. This brings me to another thing. There is another problem in the computer hardware industry. CPUs are fast enough for most things that people do today. No one needs a 3 GHz processor to run a word processor or browse the web. So unless the software industry comes up with new applications that require more CPU power most people will have no need to upgrade in the future. Maybe this is where .NET fits into the puzzle. It will allow software vendors to deliver more reliable code in a faster time span and will also spend some of the CPU power that AMD and Intel are producing right now while we wait for things like voice recognition (that works), better OCR and improvements in artificial intelligence. John P.S. If this makes no sense please excuse me it is 4:00AM and I need sleep..:zzz:
-
i am a student of computer system engineering and basically loves to work on C++ ( MFC,ATL and WTL).. i was just looking the pakistani software market and noticed that there are very very few places where any project is now being done in C++. i dont know the reason :confused: and among those companies which are working on C++ , some of them says that it is now an old technology and now u should do project in either .NET or JAVA2EE as they are new technologies. can any one explain me the reason? why people are willing to compromise on peroformance and money and invest in a new technology which would cost much more than that besides performance loss???? now i am used to listen such comments by people here " No you shouldnt do this project in VC++, it is just for System programming related tasks.. go for VB or JAVA" :( and once it happened with me that my teacher was unwilling to accept my DB project becoz he says it is in VC so it is of more of system programming stuff :( BTW any pakistani developer reading this question plz reply how much scope of C++ do u think is still there in Pakistan?? Thanx Muhammad Shoaib Khan http://geocities.com/lansolution
Let me tell you a little story. Back in the early 80s people where with C/C++ as many are the new languages today. They said there were slow and bulky. Why they could easily have a complete program running in only 8K of memory instead of 32K and it would load instantly and only take a fraction of a second to execute while a program in C/C++ would take several seconds to execute. That was people like me who liked Assembler and found it hard to swallow all the waste of a C/C++ program. But thankfully, I was not as think headed as some of my friends ;) I got hooked into C and found that I could build libraries (or purchase some) that would be easy to integrate in other appllications. That was my hook. More code reuse without having to always keep track of which register had what values or what I had on the stack. When Windows came along the same battle brewed again, this time most developers were firmly in the C/C++ trenches and Assembler programs were a sparse crowd promoting thier 3K web servers. Well, MS-DOS programmers could not understand why anyone would use graphics for text, maybe a chart but not actual text and user interface. Too slow and too bulky.. That sounded familar! I did not hold back on this one, when Windows 3.0 hit I jumped in full force. A few years most of those DOS programmers were coming to Windows whining about "how do you do this", "how do you do that". They where still stuck in a dead technology and now just babies in a new one that they could have been ruling in if they had any vision of what was coming. Both these examples are really close to what we face today. A new world is coming in technology and this is just the beginning. Old technologies will dry up. There is still a need for some programmers of older technologies but that area is always crowded. I have programmed in C/C++ for over 20 years now. For that last ten years I have hungered for something new and almost jumped on the Java bandwagon but it did not feel quite right. Once I got my hands on .NET platform and the C# language, I realized that this was the new C or the new Windows. The .NET frameworks has a huge libray and C# really makes life easy. There are things I had to really fight to accept, but the benefits are huge. Is C++ dying, I beleive so. Oh, there will be jobs in that market for probably a decade to come but there will be fewer and fewer every year. For most markets it does not make sense to spend a year or more creating an C++ application with three months of debugging and te
-
Imran Farooqui wrote: BTW honestly tell me whether you advice your young nephew to become software engineer now ? No way. I think we all benifited a lot from Y2K but after it is all over companies overspent and over budgeted hardware, software and employees. There will be a few years till the market forces fully correct itself. This brings me to another thing. There is another problem in the computer hardware industry. CPUs are fast enough for most things that people do today. No one needs a 3 GHz processor to run a word processor or browse the web. So unless the software industry comes up with new applications that require more CPU power most people will have no need to upgrade in the future. Maybe this is where .NET fits into the puzzle. It will allow software vendors to deliver more reliable code in a faster time span and will also spend some of the CPU power that AMD and Intel are producing right now while we wait for things like voice recognition (that works), better OCR and improvements in artificial intelligence. John P.S. If this makes no sense please excuse me it is 4:00AM and I need sleep..:zzz:
John M. Drescher wrote: No one needs a 3 GHz processor to run a word processor or browse the web. Thats what I thought until the other day, when I went to a web site had a flash advert on it that made my fast machine chug a grown and get all upset. Seemed like the website developer should have been shot.
"Je pense, donc je mange." - Rene Descartes 1689 - Just before his mother put his tea on the table. Shameless Plug - Distributed Database Transactions in .NET using COM+
-
i am a student of computer system engineering and basically loves to work on C++ ( MFC,ATL and WTL).. i was just looking the pakistani software market and noticed that there are very very few places where any project is now being done in C++. i dont know the reason :confused: and among those companies which are working on C++ , some of them says that it is now an old technology and now u should do project in either .NET or JAVA2EE as they are new technologies. can any one explain me the reason? why people are willing to compromise on peroformance and money and invest in a new technology which would cost much more than that besides performance loss???? now i am used to listen such comments by people here " No you shouldnt do this project in VC++, it is just for System programming related tasks.. go for VB or JAVA" :( and once it happened with me that my teacher was unwilling to accept my DB project becoz he says it is in VC so it is of more of system programming stuff :( BTW any pakistani developer reading this question plz reply how much scope of C++ do u think is still there in Pakistan?? Thanx Muhammad Shoaib Khan http://geocities.com/lansolution
VB is for people who think they're programmers. Java is for VB Programmers who relaized that VB sucks. C# is for lemmings who believe everything Microsoft tells them. C++ is for the enlightened few. Assembly is for everyone wanting true and unrivaled performance. Editing binary streams manually and in real time - now *THAT'S* programming. ------- signature starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 Please review the Legal Disclaimer in my bio. ------- signature ends
-
VB is for people who think they're programmers. Java is for VB Programmers who relaized that VB sucks. C# is for lemmings who believe everything Microsoft tells them. C++ is for the enlightened few. Assembly is for everyone wanting true and unrivaled performance. Editing binary streams manually and in real time - now *THAT'S* programming. ------- signature starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 Please review the Legal Disclaimer in my bio. ------- signature ends
:laugh::laugh: John Simmons / outlaw programmer wrote: Editing binary streams manually and in real time - now *THAT'S* programming. Absolutely :-D Ryan Being little and getting pushed around by big guys all my life I guess I compensate by pushing electrons and holes around. What a bully I am, but I do enjoy making subatomic particles hop at my bidding - Roger Wright (2nd April 2003, The Lounge)
Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late - John Nichol "Point Of Impact" -
James T. Johnson wrote: Last I had heard they were considering making the next version of GDI+ take advantage of hardware acceleration. What I heard, that was dropped due to support of new Longhorn style GUI.
geo_m wrote: that was dropped due to support of new Longhorn style GUI Doesn't the Longhorn GUI stuff require or at least use hardware acceleration? At any rate something is happening with GDI+ :) James "I despise the city and much prefer being where a traffic jam means a line-up at McDonald's" Me when telling a friend why I wouldn't want to live with him
-
.NET is slow by design. Because it is running under a virtual machine which emulates the processor. I know they have jit but you will always pay a penalty of not compiling and optimizing for the target processor. John
John M. Drescher wrote: I know they have jit but you will always pay a penalty of not compiling and optimizing for the target processor. In an ideal situation the only penalty you would pay would be the time it takes to do the JIT, because it would optimize your code for the current processor. Not knowing anything about compiler design (:)), I can't think of a reason why you couldn't create an optimizing JIT which would do many of the things your current optimizing C/C++ compilers can do. The only difference is that the C/C++ folks have had many more years (30+?) to research better compiler design, while the .NET folks have had only 5 or 6. .NET programs would still pay a penalty because of the "safe" features of .NET -- type safety, array bounds checking, overflow checking, permission demands. By all means though, if your program needs to run at the absolute fastest it can .NET is not the technology to use. James "I despise the city and much prefer being where a traffic jam means a line-up at McDonald's" Me when telling a friend why I wouldn't want to live with him
-
geo_m wrote: that was dropped due to support of new Longhorn style GUI Doesn't the Longhorn GUI stuff require or at least use hardware acceleration? At any rate something is happening with GDI+ :) James "I despise the city and much prefer being where a traffic jam means a line-up at McDonald's" Me when telling a friend why I wouldn't want to live with him