Fog Creek Software
Discussion Board




VB vs BCB vs...and where to go next

Firstly, hi. some time lurker, first time post.

I am a recent Comp. Sci Grad from a little university in Australia.

my apologies if this topic is not in the right vein.

Basically I am trying to decide what to do next.
Recently married and not wanting to leave the small city I live in (80,000 people) I am kind of stuck. I hope to one day (maybe) move for a better job etc. But for the next few years I will be not moving.

I am not sure what to do in the meantime. I work a fulltime job which sees me fairly busy with IT related causes (however ultimately I work for a bunch of accountants and do alot of admin). I definetly keep an eye out for jobs around town that would advance my career, however these are few. In the interest of self-advancing myself I am after some advice.

I program in C++ and VB. Though do not own any serious developer studio type software (except an academic version of BCB used during uni).

I am toying with the idea of writing some little useful apps to appease tiny niche markets. More with the aim of learning to design and code (ie sales would be a bonus). Even if I was to do this, which I would need a studio package (ie BCB or Visual Studio, or Visual Studio. Net etc). My big question is which one???

Or alternativel, can anyone offer any other suggestion for where to go next?

An Aussie Chick
Tuesday, August 12, 2003

If you want to program small niche programs just for the experience, then you can buy the individual components of Visual Studio.Net (VB.Net, C#.Net and C++.Net) from Harvey Normans for $250 each. That might get you started?

Chris
Tuesday, August 12, 2003

I have to admit, I took no notice of the whole appearance of .Net.

Is it just another programming language? ie the upgrade to Visualk Studio 6???

An Aussie Chick
Tuesday, August 12, 2003

If you want to learn skills which will later get you employed, try Java, C# .NET or VB 6.

If you want to work with an excellent environment, which makes development very easy and is very powerful, try Borland Delphi.

B.J. Thunderstone
Tuesday, August 12, 2003

And if you do want to look into .NET note that you can download the whole Framework SDK for free... you just need to supply your own editor:

http://msdn.microsoft.com/library/default.asp?url=/downloads/list/netdevframework.asp

Chris Nahr
Tuesday, August 12, 2003

For low cost C#:

$0
http://www.icsharpcode.net/OpenSource/SD/
http://www.borland.com/products/downloads/download_csharpbuilder.html#
http://microsoft.com/downloads/details.aspx?familyid=9b3a2ca6-3647-4070-9f41-a333c6b9181d&displaylang=en

~100$
http://www.microsoft.com/catalog/display.asp?subid=22&site=11132&x=26&y=11
http://www.microsoft.com/mspress/books/6704.asp

Just me (Sir to you)
Tuesday, August 12, 2003

If your serious about selling your software, then you need to consider distribution.

The .Net framework isn't installed on many PCs and is not available for Win9x.

Java requires a runtime environment that needs installing.  This complicates installation and support even though a version of Java is on most machines, there are different versions out there.

VB6 also requires a runtime, but this is so established that you can take it for granted that it will already be installed.  However, VB6 programs tend to rely upon other components (Such as MDAC) that will need installing.  Again, installation and support are complicated.  It is possible to minimise these issues, but you have to be smart and avoid some of the more convenient features.

The borlands VCL family (Delphi and C++ Builder) compile to an executable, but you may have other dependencies for database access and other features.

Since you are writing and distributing your own programs then you have freedom in the choice of language.  As a one person outfit you want to use something high level, because this gives you the maximum results.  You also need to make sure that those support issues are kept to a minimum.

Ged Byrne
Tuesday, August 12, 2003

Actually Ged, I think you can install the .NET *runtime* in Win98 - you just can't develop in it (i.e. deploy the SDK) - at least officially.

Unofficially, you can in fact install the SDK in Win98 if you cheat a bit (I did, for a while). But it's unsupported and none too stable...

I think the size of the .NET runtime is a bit offputting if you're developing small apps you expect people to d/l. But if you're going to be deploying off CD, no problemo.

Dave Hallett
Tuesday, August 12, 2003

I do not know any people that download software but would be scared of by a one time 20Mb runtime.
How much is that in mp3's anyway?

Just me (Sir to you)
Tuesday, August 12, 2003

There will be no single best answer because it depends, of course, on what you want to do and how forward looking you wish to be.

For developing standalone Windows apps, I'll echo other sentiments on the forum and point you to Delphi.  If you are developing a database app, there are very good add-ons to Delphi that permit you to distribute your app with a minimum of fuss and overhead (e.g. dbisam).

All that being said, developing standard Windows apps is a bit backward looking.  The market is strong now for these kinds of things but Delphi is still behind the curve on .NET development (the next version will support .NET). 

Newer skills that anticipate market trends, like C#, may well put you in a far more marketable position.  Even as new as C# is (and as much as I love Delphi), the market for C# developers is already larger than that for Delphi (at least in my area). 

Finally, if you are anticipating doing an Web apps then the decision should be extremely simple: use .NET.  There are no outside deployment issues and VS.NET is extremely good at creating web apps (I've published a number of articles on ISAPI development, have worked at length in ColdFusion, and played with Java so I've tried quite a few).

Good luck!

Mark Brittingham
Tuesday, August 12, 2003

If you're wanting to build Windows desktop apps, BCB is an excellent choice. I've worked with both it and VB, and BCB will build a better looking, easier to deploy and support application.  This lines up well with the Delphi recommendations, because they use the same component libraries and development environment. The result is that you get just as nice a looking application.

The recommendations are correct regarding market share though. The jobs that are available are for the Microsoft suite, because Nobody Ever Got Fired For Choosing Microsoft. Much as I prefer the Borland tools, you'll be hard pressed to find a job using them.

Don't let the Borland dependency issues worry you though. There are applications which let you find all of the dependencies, which makes the work a lot easier. Also, if you're willing to pay for their Enterprise development suite, you get access to all of the ADO tools.  The .NET runtime is coming soon as well.

Clay Dowling
Tuesday, August 12, 2003

Clay, you opinion echoes my concerns.

I have done most of my projects in BCB, it has a wonderful support group (in the form of a mailing list) and I find the IDE so easy to use.

However all the job advertisements talk about Visual Studio (or some componenet of it). I have VB6.0 on my computer, however I much prefer writing in C++, and I much prefer using BCB. However before I plunge all my time into mastering BCB I do want to be sure it is taking me in the right direction, and I really think I will need to spend my time using some sort of Microsoft Visual Studio component .

An Aussie Chick
Tuesday, August 12, 2003

I'd caution against going with VB6 if you're just getting started -- although it's necessary for maintaining legacy code, in my opinion it's not the best choice for new development.  Microsoft is slowly abandoning it in favor of the .Net framework languages.  (VB.Net, C#, etc.)

If you like Visual Basic, take a good look at VB.Net.  I switched from VB6.  There was a bit of a learning curve, but I really love it.  It has the same basic syntax of VB6, but adds many new features -- a fully object-oriented approach, structured exception handling, etc.  Because it's built on the .Net framework, it has the same power and performance of C#.  You can find more information about .Net from the MSDN site:

http://msdn.microsoft.com/netframework/

Choosing VB.Net vs. C# really boils down to personal preference -- Visual Basic-style keywords and formatting, or C-style keywords and formatting.  Once you learn either language, it's easy to pick up the other, especially if you're already familiar with C++ and VB6.  There are plenty of newsgroup threads on the VB.Net vs C# topic (search groups.googe.com for "VB.Net C#".)  If you want a more level-headed comparison, look at this ebook:

http://www.amazon.com/exec/obidos/tg/detail/-/B00005YX8N/qid=1060726458/sr=8-1/ref=sr_8_1/103-9070582-8558248?v=glance&s=books&n=507846

Also, both VB.Net and C# are both first-class tools for developing standalone Windows Forms applications.  They share a common, comprehensive library of components.  If you're using the Visual Studio IDE, it's drag and drop -- just like VB6, but with more power and flexibility.

One other thing -- you can buy just "VB.Net Standard Edition" or "C# Standard Edition" instead of Visual Studio .Net, but the "standard editions" are really like "learning edition" products (moderately crippled in functionality.)  If you can afford it, buy the Visual Studio .Net Professional Editional package instead.

Robert Jacobson
Tuesday, August 12, 2003

Heres my recommendation for squaring the circle.

1)  Continue using BCB.  You like it and it fits the purpose well.

However, you concern is about BCBs fitness for the market.  This is easily addressed in your CV.

2)  Never refer to BCB on your CV or in an interview.  Always refer to it as C++.

3)  Gain MCP for C++.net. 

This way you can claim x years experience coding in C++, and Microsoft certification for C++.net.

Ged Byrne
Wednesday, August 13, 2003

Thanks,

Would this really be okay?

I have decided to stick with BCB and my copy of VisualBasic 6.0. Between the two of them I should be able to tinker around to gain some experience. I do like the idea of doing an MCP(?), I will look into it.

As I gain a better understanding of the things that seem to be 'general' knowlege (MFC, API..) I will move to the .Net studio.

Thanks for you thoughts.

An Aussie Chick
Wednesday, August 13, 2003

Looking ahead a few years, I don't think theres much benefit to learning MFC/API.  The .Net framework is the future.

Sure, there will always be a market for MFC/API, but that will be taken up by all the diehards with decades of experience and a reluctance to change.

Same goes for VB6.  Your probably best served by going straight to .Net and learning C# (which from c++ should be easy).

As a newcomer the MCP is a must.

Ged Byrne
Thursday, August 14, 2003

You guys have helped alot.

I wasn't sure what to do, I even considered going back to do a masters or a post-grad bachelor.

However I lookp into the MCP, and saw that microsoft has a pre-mcp type course which looks very suited to my needs. And I completely agree, to get ahead in .Net means 5 years from now I will have as much experience as most in the field.

This would definetly not be the case with other languages (ie VB6 API/MFC etc).

Your comments have all helped me alot.

An Aussie Chick
Thursday, August 14, 2003

*  Recent Topics

*  Fog Creek Home