PB vs VB
I used to program in VB6 and switched to PureBasic.
There are a lot of things you can not do or just with high effort. I don't know .NET so i only speek for VB6. It's a realy pain to do low level stuff. There is no low level memory access. No inline assembler. You even can't use threads on VB6. And you can't create good old entry DLL's, only ActiveX DLL's.
VB6 is very good whenever it comes to high level stuff and GUI stuff. The visual desginer of VB6 is awesome. But i will never use it again, since PB suits my needs much bedder.
There are a lot of things you can not do or just with high effort. I don't know .NET so i only speek for VB6. It's a realy pain to do low level stuff. There is no low level memory access. No inline assembler. You even can't use threads on VB6. And you can't create good old entry DLL's, only ActiveX DLL's.
VB6 is very good whenever it comes to high level stuff and GUI stuff. The visual desginer of VB6 is awesome. But i will never use it again, since PB suits my needs much bedder.
I programmed a lot using VB6 (best in my opinion) and now I use mainly VB.NET and PureBasic.
VB.NET pro:
- really fast first results
- great IDE, Debugger and GUI-Designer
- great functionality using thousands of classes for everything
- easy supports COM/ActiveX and many third party tools
- thousands of people in internet for support
VB.NET cons:
- huge executables (even without Framework)
- huge Framework (people need to download up to 160 MB to be able to run your programs)
- slow execution start (it always needs some seconds until the first start)
- portability only if you switch to MONO instead of .NET
PB pro:
- small footprint of executables
- no Framework or other prerequisites needed
- fast (execution and startup)
- great support and many functions
- even simple low-level access using pre-defined API, threads, memory...
PB cons:
- it is not good for huge projects with many windows and dialogs (my opinion)
- the support is reduced to some handfull forums (but good support!)
- manufacturer is small and, maybe, not reliable in future (currently its good)
This lists are surely not complete in any manner, but this are the points in my view. Maybe you should keep both languages in mind and decide on each individual need?
If the software should get spread easily to a huge number of people, I recommend PureBasic (not so many support-calls related to .NET, small setups etc.). If you like to do a bigger project with a dedicated customer (maybe a tool for your company) and many database-features and dialogs you may choose .NET. It's on you...
There is another thing that I realized in the last 4 years. I have seen a lot of .NET projects in source - and most of them have ended in a real configuration-orgy. I needed to change only a small part and there have been so many additional needs to allow me first compiling (this control and that setting and in this component the following switch and and and). One project, I needed to compile, took 6 hours to setup my environment! And I have had the help of the previous developer...
So both languages fit to many needs and the decision may not be clear at any time :roll:
Kukulkan
VB.NET pro:
- really fast first results
- great IDE, Debugger and GUI-Designer
- great functionality using thousands of classes for everything
- easy supports COM/ActiveX and many third party tools
- thousands of people in internet for support
VB.NET cons:
- huge executables (even without Framework)
- huge Framework (people need to download up to 160 MB to be able to run your programs)
- slow execution start (it always needs some seconds until the first start)
- portability only if you switch to MONO instead of .NET
PB pro:
- small footprint of executables
- no Framework or other prerequisites needed
- fast (execution and startup)
- great support and many functions
- even simple low-level access using pre-defined API, threads, memory...
PB cons:
- it is not good for huge projects with many windows and dialogs (my opinion)
- the support is reduced to some handfull forums (but good support!)
- manufacturer is small and, maybe, not reliable in future (currently its good)
This lists are surely not complete in any manner, but this are the points in my view. Maybe you should keep both languages in mind and decide on each individual need?
If the software should get spread easily to a huge number of people, I recommend PureBasic (not so many support-calls related to .NET, small setups etc.). If you like to do a bigger project with a dedicated customer (maybe a tool for your company) and many database-features and dialogs you may choose .NET. It's on you...
There is another thing that I realized in the last 4 years. I have seen a lot of .NET projects in source - and most of them have ended in a real configuration-orgy. I needed to change only a small part and there have been so many additional needs to allow me first compiling (this control and that setting and in this component the following switch and and and). One project, I needed to compile, took 6 hours to setup my environment! And I have had the help of the previous developer...
So both languages fit to many needs and the decision may not be clear at any time :roll:
Kukulkan
Agreed Thorium, kinda the same story with me.
I got sick of using VB, it feels to me like when a teacher tries to show you a stupid way of doing things, and you have to go along with it, even if you know a better or faster way. I like the control that PB affords me, I like to use threading, and often I have to shut down programs internally, and PB lets me do that very efficiently.
VB panders to the needs of windows developers, PB tries to offer some of those features but falls short - but that's not a bad thing IMO. I've written a couple of dozen applications with PB and haven't used the visual designer, or any other designer except for icons. I dunno, I just prefer to make my own little GUI functions and take care of it myself, sometimes using grids to make it quick and easy. At work we have a managed shortcut bar written in PB, I can add and remove shortcuts using a master setup file, I can disable shortcuts temporarily, and have them highlight when action is needed on them... It's switching to PB that was the lynch pin for me. Grids for instance, in PB I took total complete control over these things, in VB you have to make sure you get the right grid plugin that supports everything you need, then your stuck with image lists and a fairly obtuse system at the best of times.
I still use VBA quite a bit, but PB is always my first choice when deciding on a platform for a new project. For some reason I find myself planning projects and managing them better in PB as well, it's actually quite fun to be in charge again - usually all I did in VB was procrastinate, now I actually like to get stuck into a big project. Personally I don't see why anyone who knows PB would want or need to go to VB, the grass might appear to be greener but it's fake, bloated, obtuse grass
.
I got sick of using VB, it feels to me like when a teacher tries to show you a stupid way of doing things, and you have to go along with it, even if you know a better or faster way. I like the control that PB affords me, I like to use threading, and often I have to shut down programs internally, and PB lets me do that very efficiently.
VB panders to the needs of windows developers, PB tries to offer some of those features but falls short - but that's not a bad thing IMO. I've written a couple of dozen applications with PB and haven't used the visual designer, or any other designer except for icons. I dunno, I just prefer to make my own little GUI functions and take care of it myself, sometimes using grids to make it quick and easy. At work we have a managed shortcut bar written in PB, I can add and remove shortcuts using a master setup file, I can disable shortcuts temporarily, and have them highlight when action is needed on them... It's switching to PB that was the lynch pin for me. Grids for instance, in PB I took total complete control over these things, in VB you have to make sure you get the right grid plugin that supports everything you need, then your stuck with image lists and a fairly obtuse system at the best of times.
I still use VBA quite a bit, but PB is always my first choice when deciding on a platform for a new project. For some reason I find myself planning projects and managing them better in PB as well, it's actually quite fun to be in charge again - usually all I did in VB was procrastinate, now I actually like to get stuck into a big project. Personally I don't see why anyone who knows PB would want or need to go to VB, the grass might appear to be greener but it's fake, bloated, obtuse grass

- utopiomania
- Addict
- Posts: 1655
- Joined: Tue May 10, 2005 10:00 pm
- Location: Norway
If you need to be in control of everything, download the sdk, command line compiler and write your
vb express .net programs in notepad. .net is xcopy deployable, single exe is no problem. Hello World
is 19kb.
You can also switch your project to target .net 2.0, so no need for users to dl anything unless they
have a PC from year 1250, in which case, they can get their software from other sources
But I really need to switch. I'll just do my next project in
vb express, and see for myself how it works out.
vb express .net programs in notepad. .net is xcopy deployable, single exe is no problem. Hello World
is 19kb.
You can also switch your project to target .net 2.0, so no need for users to dl anything unless they
have a PC from year 1250, in which case, they can get their software from other sources

Might be true, despite what I saidPersonally I don't see why anyone who knows PB would want or need to go to VB, the grass might
appear to be greener but it's fake, bloated, obtuse grass .

vb express, and see for myself how it works out.

-
- Enthusiast
- Posts: 469
- Joined: Sun Mar 16, 2008 9:18 am
From my experience C++ is much more "legible" than VB. I don't know if anyone else can really understand what I mean if you've grown up using VB. Personally, I just can't read it.
PureBasic makes good sense and is easy to read and navigate. C++ I think is also easy to read but there are many, many nuances and various ways to do the same thing so it can be more difficult to read other people's code.
PureBasic makes good sense and is easy to read and navigate. C++ I think is also easy to read but there are many, many nuances and various ways to do the same thing so it can be more difficult to read other people's code.
Has C++ ever made sense?Mistrel wrote:From my experience C++ is much more "legible" than VB. I don't know if anyone else can really understand what I mean if you've grown up using VB. Personally, I just can't read it.
PureBasic makes good sense and is easy to read and navigate. C++ I think is also easy to read but there are many, many nuances and various ways to do the same thing so it can be more difficult to read other people's code.

C is great, because it is in many ways quite similar to BASIC. On the other hand, it is quite "antiquated" in my opinion (why does one need a main procedure anyway?). It's 2009 and honestly speaking the only programming language, which is both mature and modern, is PureBasic. Constantly are we seeing new features developed and Fred along with the rest of the PureBasic team listen to the community and try their best to give us exactly what we want.
Should I ever choose something over PureBasic though, then it probably would be Java. The reason for this is mobility. It is possible to develop for the web, desktop computers and even smartphones. Java is very widespread and as a language quite similar to C, but still quite tedious to learn and get used to.
In the end however, it boils down to what you want to do with the programming language and if you can do it with language X, then no one should be in your way. Go code and get some coffee for those all-nighters. There simply is no "perfect" language, even if some are very close to that (such as PureBasic or Java).
- utopiomania
- Addict
- Posts: 1655
- Joined: Tue May 10, 2005 10:00 pm
- Location: Norway
Re: PB vs VB
What about programming for Windows 7 that supports touch screens, and the rest of the stuff that MS will dream up for the future?
This new stuff is .NET isn't it?
Or will MS add this to the current Window API so that PB can pick it up for us???
This new stuff is .NET isn't it?
Or will MS add this to the current Window API so that PB can pick it up for us???
Re: PB vs VB
> This new stuff is .NET isn't it?
Have MS programmed anything in .NET?
I think, windows7, ms-office and so on are not programmed in .NET.
Is .NET to slow for MS-Products?
greetings
Thomas
Have MS programmed anything in .NET?
I think, windows7, ms-office and so on are not programmed in .NET.
Is .NET to slow for MS-Products?

greetings
Thomas
- Rook Zimbabwe
- Addict
- Posts: 4322
- Joined: Tue Jan 02, 2007 8:16 pm
- Location: Cypress TX
- Contact:
Re: PB vs VB
Well my POS applications are about 9000+ lines of code and at least 12 windows that hide and float and have configurable gadgets determined by menu files in databases etc. It works seamlessly and despite the size... with Byteessence Installer it still fits on a floppy disk (mdb files as well!)- it is not good for huge projects with many windows and dialogs (my opinion)
I have rough coded an app like ClearView now for service companies since CView could NOT understand some of the finer points of service. This is over 16,000 lines so far and about 64 windows at the moment and compiles to 1.1m has Client / Server functions and is estensible with a scripting language... PB ALL!
What kind of APP were you wanting to write?
-
- Addict
- Posts: 1073
- Joined: Fri Apr 25, 2003 11:13 pm
- Location: Netherlands
- Contact:
Re: PB vs VB
>huge Framework (people need to download up to 160 MB to be able to run your programs)
This was the same case during VB6, the 'huge' runtime *every* enduser had to 'instal'.
And now VB6 is fine??! and vb.net sucks..?!
Oh man, this discussion is so poor, each time the same anti-library fokes telling you the same.
VB6 's runtime is now installed on every computer and it isn't a discussion any longer.
Well, in the mean time Windows got all kinds of .NET releases, you may even have it without knowing it..
XP had no .NET framework but is required by a more and more software nowdays, a silly 30MB install for .NET v2 makes things happen.
Windows Vista came with v3.0 *installed* and guess what.. it is based on v2.. so your software written in v2 works fine..
Windows 7 will most likely have v3.5, it does had that on the RC, it was still v2 based(!)
If v4 is installed it will run v2 apps just fine since seeing the RC, it does install v2 as well.
All 3.x versions where just extended versions of v2, they where extended with shitty presentation stuff no-one is going to use except that single company.
v4 is indeed a new framework.
Extending v2 was imo indeed a poor step from MS however.. it is now installed by default on each new Windows machine so who cares?!
Nowadays we simply have the same VB6 scenario, the library is already on and this no big installations or exes.
The XP users can install v2 (30MB) unless they get a specific v3.x application.
Only applications written to go all the way may be an issue.
Fokes used to 30kb apps will never install it anyway.
This discussion could have been more fruitful if people actually knew what they where talking about?
They see a big installation and scream murder.
If i had to distribute me a .net v2 based app today, i would not embed the framework myself.
This was the same case during VB6, the 'huge' runtime *every* enduser had to 'instal'.
And now VB6 is fine??! and vb.net sucks..?!
Oh man, this discussion is so poor, each time the same anti-library fokes telling you the same.
VB6 's runtime is now installed on every computer and it isn't a discussion any longer.
Well, in the mean time Windows got all kinds of .NET releases, you may even have it without knowing it..
XP had no .NET framework but is required by a more and more software nowdays, a silly 30MB install for .NET v2 makes things happen.
Windows Vista came with v3.0 *installed* and guess what.. it is based on v2.. so your software written in v2 works fine..
Windows 7 will most likely have v3.5, it does had that on the RC, it was still v2 based(!)
If v4 is installed it will run v2 apps just fine since seeing the RC, it does install v2 as well.
All 3.x versions where just extended versions of v2, they where extended with shitty presentation stuff no-one is going to use except that single company.
v4 is indeed a new framework.
Extending v2 was imo indeed a poor step from MS however.. it is now installed by default on each new Windows machine so who cares?!
Nowadays we simply have the same VB6 scenario, the library is already on and this no big installations or exes.
The XP users can install v2 (30MB) unless they get a specific v3.x application.
Only applications written to go all the way may be an issue.
Fokes used to 30kb apps will never install it anyway.
This discussion could have been more fruitful if people actually knew what they where talking about?
They see a big installation and scream murder.
If i had to distribute me a .net v2 based app today, i would not embed the framework myself.