Use of VB or VC in consumer apps
-
Christian, Thanks for the answer, and your sympathy I can sure use it :-) But with the advent of faster and better computer technology is speed really an issue now? I mean when everyone upgrades their machines, just to run WinXP :-) and they have a 1.somthing GHz processor and at least 512M of RAM do people really notice the speed difference in applications. I mean doesn't the line start to blur once you start to upgrade your machine? The only difference in speed I would notice would be Graphic intensive applications (games :-) ) But then the bottleneck would be the graphics card, as shown in many benchmarks, and humongous applications like Word, Excel, etc... But consumer applications like checkbook managers, auction managers, would speed really matter once your computer is at that level? And for applications like these, which I know several shareware authors make good money from (wish I had the time to do that :-) ) do you need the power of VC? Maybe it would help if I clarify the type of consumer application I'm thinking about, applications used in everyday life, like budget programs, types of calculators, check printers, etc... Nothing like NuMega BoundsChecker or development tools (Unless their ActiveX controls they better be in VC :-) ) Sam C ---- Systems Manager Hospitality Marketing Associates
Basically I read your comment re: faster computers to mean 'we have fast enough computers now that we can use bad tools to create slow, bloated code and it won't matter'. I don't agree. I admit, I work on graphically intense applications, but I differ that the bottleneck is just the graphics card. Yes, it usually is, but the graphics card has nothing to do with the process of internally tiling an array of bitmaps that allow you to create one larger than windows allows, or turning a 1600x1200 bitmap into a char array and iterating through a pixel at a time, checking a total of 25 pixel values per color per pixel to apply a filter, and then writing out the new values. Can VB even do that ? The absence of pointers would make it pretty yuck, even if it is possible. I admit you could write a checkbook manager in Logo and it wouldn't really matter nowadays. But why build skills in a language that has a built in brick wall if something more complex comes your way ? The question is, does the power come at a cost ? Maybe in terms of learning curve, but I don't think so significantly in terms of development time. Christian #include "std_disclaimer.h" People who love sausage and respect the law should never watch either one being made. The things that come to those who wait are usually the things left by those who got there first.
-
I kind of hinted on this topic on another thread but would like to hear all the responses from you Hard Core develoeprs :-) However, what are the pros and cons of using VB or VC in a consumer application, basically, would you as a developer use VB to release an application to the consumer market (let's make the focus shareware type applications or shelf applications) From a consumer point of view, saying they where part of the 90% of users who barely know how to turn on their computer, and use their CD trays as coffee cup holders :-) they wouldn't know the difference between something written in VB or VC, I feel from this aspect it is mostly programmer ego, I would think :-) But not only analyze the consumer end but also as developers, VB offers RAD, great debugging tools, a lot of ActiveX control support. VC supports POWER, threading, etc... But please let me here all you expierenced developer view on development issues with either language. All the applications I have developed professionally have been in house, so I don't know what it is like to respond to user questions, support issues, etc... Basically, let me here your pros and cons on either language on development, debuggging, piracy issues, etc... on using either language for consumer level apps. Thanks (Sorry if my post is incoherent trying to take care of my 4 year old son who is just wriggling around for no apparent reason) Sam C ------ Systems Manager Hospitality Marketing Associates
My take on the entire BV/C++ issue seems to be slightly different than most. The often discussed issues such as speed of execution versus speed of developement, ease of debugguing, power versus RAD, etc., have been covered in great detail (perhaps endlessly?) in the VB/C++ debate. The one that seems to get rarely discussed (perhaps it is just implied/assumed?)is scaleability/size. VB has never been designed to work in large scale situations. You can do it, but you've got your work cut out for you. C++ scales well. The techniques, designs and code/file/project structures for a relatively small project (say, 5-10 cpp files of a few K lines of code each) are pretty much the same as for medium and large scale projects (a few hundred cpp files, say). This means the skills learned in small projects provide a solid foundation for medium and large scale development (but expect to learn plenty new, as well!) For me, if the project is small, and staying small, then VB may often be a better choice (that decision depends upon the other issues, such as speed). But I find it hard to understand why anyone would attempt, by choice, to do medium and large scale development in VB. It just isn't designed for it. I tend to stick to C++ nowadays even for small projects, simply because I hate swapping between languages for different projects.
-
Christian, Thanks for the answer, and your sympathy I can sure use it :-) But with the advent of faster and better computer technology is speed really an issue now? I mean when everyone upgrades their machines, just to run WinXP :-) and they have a 1.somthing GHz processor and at least 512M of RAM do people really notice the speed difference in applications. I mean doesn't the line start to blur once you start to upgrade your machine? The only difference in speed I would notice would be Graphic intensive applications (games :-) ) But then the bottleneck would be the graphics card, as shown in many benchmarks, and humongous applications like Word, Excel, etc... But consumer applications like checkbook managers, auction managers, would speed really matter once your computer is at that level? And for applications like these, which I know several shareware authors make good money from (wish I had the time to do that :-) ) do you need the power of VC? Maybe it would help if I clarify the type of consumer application I'm thinking about, applications used in everyday life, like budget programs, types of calculators, check printers, etc... Nothing like NuMega BoundsChecker or development tools (Unless their ActiveX controls they better be in VC :-) ) Sam C ---- Systems Manager Hospitality Marketing Associates
VC leaves a far smaller footprint than VB This is important to me as I deliver my apps over the internet. but, if I was delivering on a CD-ROM size wouldn't be an issue. VC also allows for Reusability of COM Objects better than VB permits. But Most importantly for me I'm more at home working in VC++. I realise that the results are similar. Regardz Colin Davies
-
My take on the entire BV/C++ issue seems to be slightly different than most. The often discussed issues such as speed of execution versus speed of developement, ease of debugguing, power versus RAD, etc., have been covered in great detail (perhaps endlessly?) in the VB/C++ debate. The one that seems to get rarely discussed (perhaps it is just implied/assumed?)is scaleability/size. VB has never been designed to work in large scale situations. You can do it, but you've got your work cut out for you. C++ scales well. The techniques, designs and code/file/project structures for a relatively small project (say, 5-10 cpp files of a few K lines of code each) are pretty much the same as for medium and large scale projects (a few hundred cpp files, say). This means the skills learned in small projects provide a solid foundation for medium and large scale development (but expect to learn plenty new, as well!) For me, if the project is small, and staying small, then VB may often be a better choice (that decision depends upon the other issues, such as speed). But I find it hard to understand why anyone would attempt, by choice, to do medium and large scale development in VB. It just isn't designed for it. I tend to stick to C++ nowadays even for small projects, simply because I hate swapping between languages for different projects.
Chris (Hope you don't mind if I shortened your name :-) ) touche on your point on fast computers and bad tools. I have never looked at it from that perspective and that is why I appreciate all the feedback everyone is giving. Mike, has also touched on scalability. Since all the apps I have worked on have been in a 1-man development team enviornment (me!) I did not know about the scalability issue, namely one huge team working on an application, it has always been just me, so of course I have developed bad programming techniques since school (no commenting, no docs, poor aesthitic code layout, etc...) And, if you are working on a large scale project wouldn't documentation of the object help alleviate some of the problems of VB, say most of the interactive/business logic code is written in VB classes and well docuemted another developer can then go out and use the documented functions and interfaces. Sam C ---- Systems Manager Hospitality Marketing Associates
-
I kind of hinted on this topic on another thread but would like to hear all the responses from you Hard Core develoeprs :-) However, what are the pros and cons of using VB or VC in a consumer application, basically, would you as a developer use VB to release an application to the consumer market (let's make the focus shareware type applications or shelf applications) From a consumer point of view, saying they where part of the 90% of users who barely know how to turn on their computer, and use their CD trays as coffee cup holders :-) they wouldn't know the difference between something written in VB or VC, I feel from this aspect it is mostly programmer ego, I would think :-) But not only analyze the consumer end but also as developers, VB offers RAD, great debugging tools, a lot of ActiveX control support. VC supports POWER, threading, etc... But please let me here all you expierenced developer view on development issues with either language. All the applications I have developed professionally have been in house, so I don't know what it is like to respond to user questions, support issues, etc... Basically, let me here your pros and cons on either language on development, debuggging, piracy issues, etc... on using either language for consumer level apps. Thanks (Sorry if my post is incoherent trying to take care of my 4 year old son who is just wriggling around for no apparent reason) Sam C ------ Systems Manager Hospitality Marketing Associates
Analogy time. VB is like a moped with stabalisers. Anyway can learn to ride it in matter of minutes, and you'll find it hard to crash. VC++ is a high performance japanese motor bike, difficult to ride but once you've mastered it, the performance is astronomical, when you crash, you big time. I have a rule of thumb, if your applications are Data Centric (Many forms require data input/retreival) then use VB (.Net) or Delphi. If your application is somewhat large scale or mission critical. eg Desktop application or Satellite navigation interface, then use C++. Hope this helps in one way or another. Normski
-
Analogy time. VB is like a moped with stabalisers. Anyway can learn to ride it in matter of minutes, and you'll find it hard to crash. VC++ is a high performance japanese motor bike, difficult to ride but once you've mastered it, the performance is astronomical, when you crash, you big time. I have a rule of thumb, if your applications are Data Centric (Many forms require data input/retreival) then use VB (.Net) or Delphi. If your application is somewhat large scale or mission critical. eg Desktop application or Satellite navigation interface, then use C++. Hope this helps in one way or another. Normski
-
Now *WHY* didn't you tell me that about 5 years ago, I'm disappointe(r)d in you :-D C++/C# Student. Wither Thee VB.Net.
-
Alex Nice pun -> disappointe(r)d <-. To iterate is human. To recurse is devine. "Bjarne's C++ Book"
To iterate is human. To recurse is devine. I curse, does that make me half-devine? maXallion
"Look for bugs, I hate bugs!" - Warden, The Mummy
www.maxallion.de - coded evil & more -
Analogy time. VB is like a moped with stabalisers. Anyway can learn to ride it in matter of minutes, and you'll find it hard to crash. VC++ is a high performance japanese motor bike, difficult to ride but once you've mastered it, the performance is astronomical, when you crash, you big time. I have a rule of thumb, if your applications are Data Centric (Many forms require data input/retreival) then use VB (.Net) or Delphi. If your application is somewhat large scale or mission critical. eg Desktop application or Satellite navigation interface, then use C++. Hope this helps in one way or another. Normski
That is actually a pretty good rule of thumb for which language to use in which enviornment. What makes C++ that much more robust in terms of VB? Does VB tend to compile it's code into some sort of weird spaghetti mess that may cause it to crash more frequently than VC compiled (and linked) code? I didn't want to turn this into another which is better VB or VC debate you can find a ton of those discussions on this board and others :-) However, I did want to know from you hardcore developers out there what is the advantage you had from writing consumer based apps in one language or the other? What advantage does the language you use have on the consumer? For instance, you deployed your application there's a bug, with just the standard tools that comes with the VC or VB Enterprise Edition, which is faster to track a bug down and get the problem resolved (After getting Enterprise I couldn't get 3rd party tools, such as NuMega and what not :-) ) Practicing development in a black box enviornment for these many years (in house software development for applications distributed to only several dozen people) has put blinders on me. I know the apps I have developed in that time using VB and VC (but mostly VB "put the tomatoes down!" :-) ) would not hold up to the scrutiny of the consumer mass market. But would anyone of you release a consumer level app (shareware, shelf-ware, etc...) written in VB? Or, basically would the consumer even know the difference, assuming he or she is not a "power-user" ? Is it mostly our pride that makes us code the app in VC? I mean, if it is easier to code in VB, develop apps faster,and the consumer doesn't know the difference than why not use VB? I would love to hear what type of consumer mass market apps (so no satellite tracking systems, since the mass wouldn't even have the equipment to run it ) you guys have developed and in what language, and if it was a general success, if it was shareware did it sell decently, if it was freeware did it have a high amount of downloads? And if it was in VB did any of the consumers complain, speed, size of file, and what not... Uuugh, it is early here in CA, I must sound redundant now...My four year old is already awake wanting to play Q3A :-D Daddy's boy! But so far I like everyones point of view. Sam C ---- Systems Manager Hospitality Marketing Associates
-
To iterate is human. To recurse is devine. I curse, does that make me half-devine? maXallion
"Look for bugs, I hate bugs!" - Warden, The Mummy
www.maxallion.de - coded evil & moreTo me that the mark of a clever programmer is how tight he/she can write a recursive routine, and I'm not talking factorials either. I've tried twice to write a generic recursive derivative pricer, but I think my final result can be improved upon. It tended to create too many nodes because it doesn't know about a couple of tricks, but when I tried to add them my brain exploded (as did the length of the code, and the number of frig's to make it work) I think I'll try again soon.. you've inspired me .. C++/C# Student. Wither Thee VB.Net.
-
That is actually a pretty good rule of thumb for which language to use in which enviornment. What makes C++ that much more robust in terms of VB? Does VB tend to compile it's code into some sort of weird spaghetti mess that may cause it to crash more frequently than VC compiled (and linked) code? I didn't want to turn this into another which is better VB or VC debate you can find a ton of those discussions on this board and others :-) However, I did want to know from you hardcore developers out there what is the advantage you had from writing consumer based apps in one language or the other? What advantage does the language you use have on the consumer? For instance, you deployed your application there's a bug, with just the standard tools that comes with the VC or VB Enterprise Edition, which is faster to track a bug down and get the problem resolved (After getting Enterprise I couldn't get 3rd party tools, such as NuMega and what not :-) ) Practicing development in a black box enviornment for these many years (in house software development for applications distributed to only several dozen people) has put blinders on me. I know the apps I have developed in that time using VB and VC (but mostly VB "put the tomatoes down!" :-) ) would not hold up to the scrutiny of the consumer mass market. But would anyone of you release a consumer level app (shareware, shelf-ware, etc...) written in VB? Or, basically would the consumer even know the difference, assuming he or she is not a "power-user" ? Is it mostly our pride that makes us code the app in VC? I mean, if it is easier to code in VB, develop apps faster,and the consumer doesn't know the difference than why not use VB? I would love to hear what type of consumer mass market apps (so no satellite tracking systems, since the mass wouldn't even have the equipment to run it ) you guys have developed and in what language, and if it was a general success, if it was shareware did it sell decently, if it was freeware did it have a high amount of downloads? And if it was in VB did any of the consumers complain, speed, size of file, and what not... Uuugh, it is early here in CA, I must sound redundant now...My four year old is already awake wanting to play Q3A :-D Daddy's boy! But so far I like everyones point of view. Sam C ---- Systems Manager Hospitality Marketing Associates
WEll for the contract company that I use to work for, projects were in both VB and VC. It really depended on what the customer wanted. We had a very large contract with a Fortune 500 (maybe 1000) company that demanded that the billing system that we wrote be in VB. They already had parts of it done in VC and wanted them rewritten in VB. Needless to say that they were overall unhappy with the performance of VB when it was done, but that is what they asked for despite us telling them not to go that way. I think that most of the issues if this language is faster or that one develops faster will be blurred when .NET is out. VB apps get the speed of the VC apps because both compile down to the same IL and from there its just a preference as to what language you like best. And as for people saying that developing on one language is easier, I tend to believe that one language is user because you know that language better. I have used (and taught) both VB and VC. I prefer VC and can do things faster in that then in VB because I use it more. Others can do the same things faster in VB than in VC. Its all what you know and are familiar with. Steve Maier, MCSD
-
WEll for the contract company that I use to work for, projects were in both VB and VC. It really depended on what the customer wanted. We had a very large contract with a Fortune 500 (maybe 1000) company that demanded that the billing system that we wrote be in VB. They already had parts of it done in VC and wanted them rewritten in VB. Needless to say that they were overall unhappy with the performance of VB when it was done, but that is what they asked for despite us telling them not to go that way. I think that most of the issues if this language is faster or that one develops faster will be blurred when .NET is out. VB apps get the speed of the VC apps because both compile down to the same IL and from there its just a preference as to what language you like best. And as for people saying that developing on one language is easier, I tend to believe that one language is user because you know that language better. I have used (and taught) both VB and VC. I prefer VC and can do things faster in that then in VB because I use it more. Others can do the same things faster in VB than in VC. Its all what you know and are familiar with. Steve Maier, MCSD
That is probably true. However, one thing worries me with your posting and I hope you can clarify it. If everything compiles down to the same IL, since .NET will use the CRL, how easy will it be for people to now decompile your application? Is your program compiled to some form of byte or p-code? If so, will there be name mangling and variable substitution, or obfuscation, to make it hard for people to decipher your code even if decompiled? Sam C ---- Systems Manager Hospitality Marketing Associates
-
That is probably true. However, one thing worries me with your posting and I hope you can clarify it. If everything compiles down to the same IL, since .NET will use the CRL, how easy will it be for people to now decompile your application? Is your program compiled to some form of byte or p-code? If so, will there be name mangling and variable substitution, or obfuscation, to make it hard for people to decipher your code even if decompiled? Sam C ---- Systems Manager Hospitality Marketing Associates
That specific issue has been brought up recently. The compiler does come with a decompiler that I have not played with yet. When a manager on the VS.NET team was asked about the decompiling and reusing of other people's code he had said that they were talking about an obfuscation method to help with that. But from what I have read, there is one company that is already taken someone else's IL code and is using it as theirs. Not sure how true it is. As for the form of the IL, I think that MS has documented this fairly well. I am sure someone here has a like to that info. Steve Maier, MCSD
-
I kind of hinted on this topic on another thread but would like to hear all the responses from you Hard Core develoeprs :-) However, what are the pros and cons of using VB or VC in a consumer application, basically, would you as a developer use VB to release an application to the consumer market (let's make the focus shareware type applications or shelf applications) From a consumer point of view, saying they where part of the 90% of users who barely know how to turn on their computer, and use their CD trays as coffee cup holders :-) they wouldn't know the difference between something written in VB or VC, I feel from this aspect it is mostly programmer ego, I would think :-) But not only analyze the consumer end but also as developers, VB offers RAD, great debugging tools, a lot of ActiveX control support. VC supports POWER, threading, etc... But please let me here all you expierenced developer view on development issues with either language. All the applications I have developed professionally have been in house, so I don't know what it is like to respond to user questions, support issues, etc... Basically, let me here your pros and cons on either language on development, debuggging, piracy issues, etc... on using either language for consumer level apps. Thanks (Sorry if my post is incoherent trying to take care of my 4 year old son who is just wriggling around for no apparent reason) Sam C ------ Systems Manager Hospitality Marketing Associates
I used to program my shareware utility "AnyWhere" (then, AnyWhere 95) in VB. For about two years people were forced to download a 2mb install just to use this little tiny app because I had to distribute the vb runtime dlls with the install (You almost can't get away with not shipping the dlls. End users don't understand dll-hell and would rather throw your app away than hunt down runtime dlls). Most people just passed it up. I had been toying with the idea of using C++ for quite a while, but VC didn't have a built in "directory tree" like VB. Eventually, I broke down and coded it. Statically linked, the entire thing came out to around 180k. I saw 120% increase in downloads and a big boost in sales. While many people are using high-speed dsl or cable now, the majority are still on dialup and won't tolerate a large download. In my opinion, VC is the only way to go for shareware. -Mike Stevenson CoderX@liquidmirror.com Owner, Liquid Mirror Software (http://www.liquidmirror.com) Owner, Shareware Junction (http://www.sharewarejunction.com) Owner, Internet Shopping Spree (http://www.internetshoppingspree.com/)
-
I used to program my shareware utility "AnyWhere" (then, AnyWhere 95) in VB. For about two years people were forced to download a 2mb install just to use this little tiny app because I had to distribute the vb runtime dlls with the install (You almost can't get away with not shipping the dlls. End users don't understand dll-hell and would rather throw your app away than hunt down runtime dlls). Most people just passed it up. I had been toying with the idea of using C++ for quite a while, but VC didn't have a built in "directory tree" like VB. Eventually, I broke down and coded it. Statically linked, the entire thing came out to around 180k. I saw 120% increase in downloads and a big boost in sales. While many people are using high-speed dsl or cable now, the majority are still on dialup and won't tolerate a large download. In my opinion, VC is the only way to go for shareware. -Mike Stevenson CoderX@liquidmirror.com Owner, Liquid Mirror Software (http://www.liquidmirror.com) Owner, Shareware Junction (http://www.sharewarejunction.com) Owner, Internet Shopping Spree (http://www.internetshoppingspree.com/)
Thanks for the bit of input Mike, I have always used MFC as a dynamically linked library thinking it would would add a tremendout amount of overhead to distributed code (file size). But 180k is not bad considering you can get a basic MFC skeleton app compiled at about 15-20k in size. That is something I would consider as amicable. (Going to try statically linking the MFC library to some of my sample apps :-) and gauging file size). Sam C ---- Systems Manager Hospitality Marketing Associates
-
Thanks for the bit of input Mike, I have always used MFC as a dynamically linked library thinking it would would add a tremendout amount of overhead to distributed code (file size). But 180k is not bad considering you can get a basic MFC skeleton app compiled at about 15-20k in size. That is something I would consider as amicable. (Going to try statically linking the MFC library to some of my sample apps :-) and gauging file size). Sam C ---- Systems Manager Hospitality Marketing Associates
That is why for my shareware projects right now I use WTL. Most of the same functionality as MFC and no statically linked mfc dlls. Steve Maier, MCSD
-
That is why for my shareware projects right now I use WTL. Most of the same functionality as MFC and no statically linked mfc dlls. Steve Maier, MCSD
Steve, can you post some links to WTL? Mainly something that will describe it I hear a lot about it, but never had time to go indepth with it. In the meantime I'll look on MSDN as well as search this site for information pertaining to WTL. Thanks. Sam C ---- Systems Manager Hospitality Marketing Associates
-
Steve, can you post some links to WTL? Mainly something that will describe it I hear a lot about it, but never had time to go indepth with it. In the meantime I'll look on MSDN as well as search this site for information pertaining to WTL. Thanks. Sam C ---- Systems Manager Hospitality Marketing Associates
There are alot of articles on CP on WTL. Here are a few links off of it. DevelopMentor ClipCode Plus the forums have had alot of talk about it too if you search the old posts. Steve Maier, MCSD
-
I kind of hinted on this topic on another thread but would like to hear all the responses from you Hard Core develoeprs :-) However, what are the pros and cons of using VB or VC in a consumer application, basically, would you as a developer use VB to release an application to the consumer market (let's make the focus shareware type applications or shelf applications) From a consumer point of view, saying they where part of the 90% of users who barely know how to turn on their computer, and use their CD trays as coffee cup holders :-) they wouldn't know the difference between something written in VB or VC, I feel from this aspect it is mostly programmer ego, I would think :-) But not only analyze the consumer end but also as developers, VB offers RAD, great debugging tools, a lot of ActiveX control support. VC supports POWER, threading, etc... But please let me here all you expierenced developer view on development issues with either language. All the applications I have developed professionally have been in house, so I don't know what it is like to respond to user questions, support issues, etc... Basically, let me here your pros and cons on either language on development, debuggging, piracy issues, etc... on using either language for consumer level apps. Thanks (Sorry if my post is incoherent trying to take care of my 4 year old son who is just wriggling around for no apparent reason) Sam C ------ Systems Manager Hospitality Marketing Associates
Just a side note: the Moped vs. Crotch Rocket comparison is not really accurate. Each language can produce very fast code and the best written VB app will be fater than the worst written C++ app. In many ways this is an apples to oranges comparison. Case in point: My wife worked on the site for the Ericsson Open tennis match that was held in March. She programmed the dynamic scoring pages (realtime scores, ~15 sec. turnaround), dynamic draw sheets and other dynamic parts of the site (player info w/ match and score info, upcoming matches, etc.). She programmed this in VB6 on a single cpu Win2K web server and a single cpu SQL 2000 server hosted out of Jacksonville, FL. The dynamic pages were 95% of the site hits, 90% on a single page (the live scoring page). The site served up ~45 million hits over 12 days, with peak usage hitting about 2000 hits/minute. That's not a moped! ;) Would the app have performed better if it were programmed in C++? Probably, but she coded her part of it in six weeks. -John
-
There are alot of articles on CP on WTL. Here are a few links off of it. DevelopMentor ClipCode Plus the forums have had alot of talk about it too if you search the old posts. Steve Maier, MCSD
Thanks I went ahead and looked up some information on this site as well as MSDN. So far WTL looks to be a more abstract replacement for ATL, which I hardly use (another admission to naivety :-) ) But I'm going to delve into it even further and see what more it has to offer. Thanks for the links to the cool sites! Sam C ---- Systems Manager Hospitality Marketing Associates