Page 2 of 6 FirstFirst 12345 ... LastLast
Results 41 to 80 of 230

Thread: Should i learn VB6?

  1. #41
    PowerPoster
    Join Date
    Feb 2017
    Posts
    2,947

    Re: Should i learn VB6?

    Quote Originally Posted by Niya View Post
    This problem can be avoided entirely by using scaled down high resolution images
    Small sized icons doesn't look good when rendered from large images.

    Other thing: I still don't get how you can design the GUI in WPF all with relative coordinates.

    Suppose you place a label, Label1. Do you say somewhere "position: left is at 5% of the form width, and top at 10% of the form height"?
    And the same for the size.
    Then for Label2: "position: left is at the end of Label1 + 5% of the form width, and top the same as Label1"

    I don't know how.

  2. #42
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by Eduardo- View Post
    Other thing: I still don't get how you can design the GUI in WPF all with relative coordinates.
    If you've ever worked with HTML/CSS then you've worked with relative positioning before. It's the exact same concept. Minor adjustments are all done with margins and paddings.

    In WPF you live and die by panels. There are StackPanels, Grids, WrapPanels etc. By combining these panels along with their properties and the properties of their contents, you can pretty much achieve any layout you can imagine. Let me give you an example of a simple login form:-
    XAML Code:
    1. <Window x:Class="MainWindow"
    2.         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    3.         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    4.         xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    5.         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    6.         xmlns:local="clr-namespace:WpfApp4"
    7.         mc:Ignorable="d"
    8.         Title="MainWindow"  Width="320" Height="220" FontSize="20">
    9.    
    10.    
    11.     <!--Everything is contained inside a DockPanel. The DockPanel allows us
    12.     to dock element to the edges of the form. In this case
    13.     we want to dock the Log In and Cancel Buttons to the bottom-->
    14.    
    15.     <DockPanel>
    16.  
    17.          <!--Use a horizontal StackPanel to place the Log In and Cancel buttons.
    18.         The StackPanel itself is docked to the bottom of the DockPanel-->
    19.    
    20.         <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" DockPanel.Dock="Bottom">
    21.             <Button Margin="20,10,0,10" Width="100" >Log in</Button>
    22.             <Button Margin="10,10,20,10" Width="100" >Cancel</Button>
    23.         </StackPanel>
    24.  
    25.         <!--Use a vertical StackPanel to stack the login data entry elements vertically.
    26.         This StackPanel is itself docked in the center of the DockPanel-->
    27.  
    28.         <StackPanel >
    29.             <TextBlock Margin="0,0,0,5" >User name</TextBlock>
    30.             <TextBox Margin="10,0,10,15"  />
    31.  
    32.             <TextBlock>Password</TextBlock>
    33.             <TextBox Margin="10,0,10,0" ></TextBox>
    34.            
    35.         </StackPanel>
    36.  
    37.  
    38.     </DockPanel>
    39. </Window>

    The above XAML produces this:-


    As you can see from the XAML, there is no absolute positioning. The only thing absolute in the above XAML is the size of the Buttons and the Size of the Window itself. Everything else is positioned using a combination of alignments, margins and panels. Also, note that although the Window and Button sizes are absolute, it still works well with multiple DPI configurations because internally WPF is not measuring these sizes in pixels, they are measured in some kind of device independent units.

    In case you're curious about the margins, the order of margins start at the left margin and goes clockwise to the bottom margin. So a margin value of "10,20,30,40" means left margin = 10, top margin = 20, right margin = 30, bottom margin = 40.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  3. #43
    PowerPoster
    Join Date
    Feb 2017
    Posts
    2,947

    Re: Should i learn VB6?

    Ok, thanks. Yes, I have some clues of how HTML5/CSS works (not in depth) because I had to learn a bit for making my last website responsive.

    And are you able to set size and positions with WPF at design time or just by code?

  4. #44
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by Eduardo- View Post
    And are you able to set size and positions with WPF at design time or just by code?
    Yes, all of these properties are set at design time using XAML. To put it in VB6 terms, XAML is the text you find in frm files that tells you what controls a Form has, where they are etc. This is what the WPF designer looks like:-


    The designer shows what your Form would look like as you're writing the XAML at design time.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  5. #45

  6. #46
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Your question seems to be hinting at concerns over how the XAML is married to VB code. Underneath it all, XAML is just a way of instantiating objects. For example this:-
    XAML Code:
    1. <Grid x:Name="grd1">
    2.         <TextBox FontSize="20" Margin="10,10,10,0" Foreground="Blue" VerticalAlignment="Top" >This is my text</TextBox>
    3.     </Grid>

    Could be done with this VB.Net code:-
    vbnet Code:
    1. Private Sub MainWindow_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
    2.  
    3.         Dim t As New TextBox With {.FontSize = 20,
    4.                                    .Margin = New Thickness(10, 10, 10, 0),
    5.                                    .Foreground = New SolidColorBrush(Colors.Blue),
    6.                                    .Text = "This is my text",
    7.                                    .VerticalAlignment = VerticalAlignment.Top}
    8.  
    9.  
    10.         grd1.Children.Add(t)
    11.     End Sub

    The only different between the two approaches is that the XAML is processed before the a Window's Loaded event so in the XAML version, the TextBox would have been instantiated before the Window's Loaded event was triggered. The code version happens in the Window's Loaded event which takes place after all of the XAML has been processed. Other than that, both approaches do the exact same thing.
    Last edited by Niya; Jan 21st, 2021 at 10:12 PM.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  7. #47
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by Eduardo- View Post
    OK, thank you.
    You're welcomed.

    See I'm not such a bad guy after all.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  8. #48
    PowerPoster
    Join Date
    Feb 2017
    Posts
    2,947

    Re: Should i learn VB6?

    Quote Originally Posted by Niya View Post
    You're welcomed.

    See I'm not such a bad guy after all.
    Yes, ... sometimes

  9. #49
    Fanatic Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    653

    Re: Should i learn VB6?

    Niya, you have been trying hard to be nice, we'll grant you that. It's quite a change and a pleasant one.

  10. #50
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by yereverluvinuncleber View Post
    Niya, you have been trying hard to be nice, we'll grant you that. It's quite a change and a pleasant one.
    I've always been nice. But nice doesn't mean I'm not willing to speak the truth just because it offends some people. When I say that VB.Net is better than VB6, I'm not saying that to be mean spirited. I say it because it's true but because that idea offends so many people they interpret it as me being mean. I'm a pragmatic person by nature. I tend to look at things very objectively. I never get religious about anything.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  11. #51
    PowerPoster wqweto's Avatar
    Join Date
    May 2011
    Posts
    2,692

    Re: Should i learn VB6?

    VB.Net is better than VB6 like C# is better than VB.Net and Rust is better than C# -- is this so offending? It must be objective evaluation if I feel it's so :-))

    cheers,
    </wqw>

  12. #52
    PowerPoster techgnome's Avatar
    Join Date
    May 2002
    Posts
    33,202

    Re: Should i learn VB6?

    Quote Originally Posted by wqweto View Post
    VB.Net is better than VB6 like C# is better than VB.Net and Rust is better than C# -- is this so offending? It must be objective evaluation if I feel it's so :-))

    cheers,
    </wqw>
    It's objective if you can back that up with logical sounding reasons why ... otherwise it's just an opinion and by definition subjective.

    -tg
    * I don't respond to private (PM) requests for help. It's not conducive to the general learning of others.*
    * I also don't respond to friend requests. Save a few bits and don't bother. I'll just end up rejecting anyways.*
    * How to get EFFECTIVE help: The Hitchhiker's Guide to Getting Help at VBF - Removing eels from your hovercraft *
    * How to Use Parameters * Create Disconnected ADO Recordset Clones * Set your VB6 ActiveX Compatibility * Get rid of those pesky VB Line Numbers * I swear I saved my data, where'd it run off to??? *

  13. #53
    Lively Member
    Join Date
    Aug 2020
    Posts
    125

    Re: Should i learn VB6?

    Quote Originally Posted by techgnome View Post
    It's objective if you can back that up with logical sounding reasons why ... otherwise it's just an opinion and by definition subjective.

    -tg
    Niya has repeatedly said that there are many features in VB.NET that VB6 cannot implement. Olaf asked Niya to give an example, and then Niya disappeared (or the conversation stopped). A few months later, Niya would come out and said the same thing again, and think he was telling the truth.

    As audiences, we just hope to learn new knowledge in the debate, instead of repeatedly seeing unfounded views.
    Last edited by SearchingDataOnly; Jan 22nd, 2021 at 08:28 AM.

  14. #54
    PowerPoster wqweto's Avatar
    Join Date
    May 2011
    Posts
    2,692

    Re: Should i learn VB6?

    It's hard to be objective talking about VB6 when for N-th consecutive year VBA is the most disliked programming language on SO and most other sites while VB6 is ignored in those surveys as not worthy even being asked about :-))

    cheers,
    </wqw>

  15. #55
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by techgnome View Post
    ..It's objective if you can back that up with logical sounding reasons why...
    I can, but I've learned that on this forum, it's a waste of time to try. Instead, I will say that VB.Net is better and leave it right there. If someone comes along who I feel would genuinely like to know why it's better, I will gladly tell them why.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  16. #56
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by SearchingDataOnly View Post
    Niya has repeatedly said that there are many features in VB.NET that VB6 cannot implement. Olaf asked Niya to give an example, and then Niya disappeared (or the conversation stopped). A few months later, Niya would come out and said the same thing again, and think he was telling the truth.

    As audiences, we just hope to learn new knowledge in the debate, instead of repeatedly seeing unfounded views.
    I'm not getting into this with you guys again. Believe whatever you want.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  17. #57
    PowerPoster techgnome's Avatar
    Join Date
    May 2002
    Posts
    33,202

    Re: Should i learn VB6?

    jfc... now I see why things are the way they are...my comment had NOTING... NOTHING to do with Niya... NOTHING... it had to do with wqweto's comment, that's why I commented wqweto, not Niya...

    The only problem I had with Niya and Edwardo- is that they went off on this semi-random tangent discussion (which while interesting, probably should have been shuffled off into it's own thread - on that note twips was supposed to be the answer to device independence, but it didn't just quite work out the way it should have) ... meanwhile we haven't heard back from the OP... so this thread should probably be allowed to just die.


    -tg
    * I don't respond to private (PM) requests for help. It's not conducive to the general learning of others.*
    * I also don't respond to friend requests. Save a few bits and don't bother. I'll just end up rejecting anyways.*
    * How to get EFFECTIVE help: The Hitchhiker's Guide to Getting Help at VBF - Removing eels from your hovercraft *
    * How to Use Parameters * Create Disconnected ADO Recordset Clones * Set your VB6 ActiveX Compatibility * Get rid of those pesky VB Line Numbers * I swear I saved my data, where'd it run off to??? *

  18. #58
    Super Moderator Shaggy Hiker's Avatar
    Join Date
    Aug 2002
    Location
    Idaho
    Posts
    35,775

    Re: Should i learn VB6?

    I'm not into twips. Quips, on the other hand....I'm all over that.

    I found the diversion very interesting. I was going to look into WPF for work, but was told not to go there, so I didn't. Now I realize that I re-wrote some of the features of WPF using XNA, and now MonoGame. Oops, guess I should have stuck with WPF. Water under the bridge now, though.

    However, as interesting as the discussion was, I'm glad it has gotten back more or less on whatever track it could be expected to be on, considering that the OP appears to have never come back. If they DO come back, they'll at least see the passion surrounding the subject. I never realized that anybody would care until axisdj started a thread over in Network Programming well over a decade back. Up till then, I felt it was just screwdrivers with different color and shape of handle: A person could reasonably prefer one color and shape over another, but wouldn't care all that much. Now, I know better.

    Personally, when I realized what VB.NET offered, I jumped on that. Now, I'm not saying it was better or worse. For me it was very much just the color and shape of the handle. I did have a preference, and what .NET offered was my preference. I didn't feel that it was better, or 'more right', just that I understood my preference and .NET fit that preference more perfectly. WPF does NOT fit my preferences so well, so I haven't been all that moved by WPF. C# also does not fit my preferences, so I haven't done all that much there if I had a choice.

    That's how I think a person might choose a programming language. Of course, that doesn't work. You'd have to know what your preference was, which is something you can't know when just starting out (I had studied ASM and used C, C++, BASIC, VBA, and VB6 by the time .NET came along). You also rarely get to choose. If you are working for somebody else, they may be dictating which language you use. If you work in a group, the group will be deciding. If you work on some obscure piece of hardware, that hardware may dictate your choice (I've written for a few highly specialized chips and situations).

    Starting out, if you get a choice, dabble in the languages mentioned: Python, .NET, Java, and possibly C/C++, but go for a language that gives you free developer tools. Don't pay for anything until you know it is worth the money.
    My usual boring signature: Nothing

  19. #59
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by techgnome View Post
    jfc... now I see why things are the way they are...my comment had NOTING... NOTHING to do with Niya... NOTHING... it had to do with wqweto's comment, that's why I commented wqweto, not Niya...
    Nevertheless, it is very applicable to my case. It's very easy to make an argument that I'm being subjective. I'm just pointing out that I can back up what I say but only to those willing to listen with an open mind.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  20. #60
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by Shaggy Hiker View Post
    I found the diversion very interesting. I was going to look into WPF for work, but was told not to go there, so I didn't. Now I realize that I re-wrote some of the features of WPF using XNA, and now MonoGame. Oops, guess I should have stuck with WPF. Water under the bridge now, though.
    The more I use WPF, the more I fall in love with it. You just feel so powerful, like there is no kind of UI you cannot create with it. It even feels better when you're creating simple UIs with plain only vanilla Controls. I never felt that way about WinForms.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  21. #61
    PowerPoster
    Join Date
    Feb 2017
    Posts
    2,947

    Re: Should i learn VB6?

    Quote Originally Posted by yereverluvinuncleber View Post
    Niya, you have been trying hard to be nice, we'll grant you that. It's quite a change and a pleasant one.
    If you pay attention, you'll see that I was the one to be nice, at least before.

    Niya told me that he had spent two hours trying to understand what means that VB6 uses twips, and he couln't.
    Then I was moved to spend some minutes explaining it to him, I dind't timed it was I gues I spent like an hour.

    Then I mentioned that I didn't understand how .NET works in that regard, I guess he didn't do either (or not very well, judging from things he had said), so he researched it (for his own understanding and interest) and shared what he found here. That's nice, yes.

    Other topic:
    Objectivity doesn't exist for us as humans, because we are subjects. Everything for us is subjective.
    There is a method that tries to reach objectivity and is called scientific method. What it really can reach is not objectivity but what is called intersubjectivity. If you measure something 10 inches and I measure it and also see 10 inches, we can agree that it has 10 inches intersubjectively.

    There is also a human tendency to think that what we think is "the truth".

    Being said that, and coming down more to normal everydays views, even being objective the people can have different actitudes.
    For example if you say a woman all the time you are fat, you are ugly, may be "the thuth" but you would be doing wrong.

    VB6 may be "better" than .NET on some thing, and worse than .NET in other things. That was discussed to the end many times.
    But as the time goes on, .NET is evolving and VB6 not. So of course every time, as the time passes, .NET will be every time "better" than VB6, because it is stuck.

    If someone asks "should I learn VB6", I can understand that someone says no, better go to .NET. I would probably say the same (I did say that I would nort recomend to learn VB6 to a beginner).
    But if the person says 10 times that VB6 is crap (not exact words) and .NET is heaven (not exact words), in a VB6 forum, that is considered in most forums trolling.

    We have our own problems and we kwow it, we don't need someone to remember them every two posts. It is like he is laughing at our problems. That is definitely not NICE.

  22. #62
    PowerPoster
    Join Date
    Jun 2013
    Posts
    5,238

    Re: Should i learn VB6?

    Quote Originally Posted by Niya View Post
    I'm just pointing out that I can back up what I say ...
    Well, so far you always bowed out, when I asked you to prove your claims with .NET example-code.

    Just saying...

    Olaf

  23. #63
    Fanatic Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    653

    Re: Should i learn VB6?

    So, the answer to the OP's question is a resounding YES or no

  24. #64
    PowerPoster
    Join Date
    Feb 2017
    Posts
    2,947

    Re: Should i learn VB6?

    Quote Originally Posted by yereverluvinuncleber View Post
    So, the answer to the OP's question is a resounding YES or no
    No.-

  25. #65
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by Schmidt View Post
    Well, so far you always bowed out, when I asked you to prove your claims with .NET example-code.

    Just saying...

    Olaf
    I realized it was a waste of time. Because all we ended up doing was going head to head .Net vs RC5. But here's the thing, you had to spend all that time to write that library, I didn't. This is what it comes down to in the end for me. I have no time for "do it yourself" solutions to simple problems. I'd rather spend my time actually writing the application. I already wrote a post on the idea of productivity being an important consideration when deciding what tool you're going to use. Remember this? I was talking about the productivity benefits of writing UI heavy applications in WPF compared to the much older WinForms.

    And you know what? Come to think of it, I shouldn't have even tried to argue any of this in the first place because the market has already made the argument for me. MS killed VB6 and introduced .Net and the market accepted it. If replacing VB6 with .Net was the wrong move, the market backlash would have certainly forced MS to abandon that move and continue moving VB6 forward but that didn't happen. What happened was the majority either accepted .Net or they jumped ship to things like Java, web development and mobile development. Meanwhile about 20 of you stayed behind trying to keep VB6 alive. Except for a few pockets on the internet like this forum, vbCity and a few blogs here and there, the world has largely forgotten about VB6.

    If you guys like VB6 it great, but there is a reason the majority left it behind and those reasons are very valid. I'm not gonna waste anymore time trying to explain those reasons anymore. You want to know why most of the world would rather write Windows applications in just about anything but VB6 in this modern day, go find out for yourself.

    I'll say one final thing. I'll speak for myself and tell you what got me to move from VB6 to VB.Net. I remember writing a Winsock application and I wanted to be able to handle concurrent connections on multiple threads. I didn't know where to find guys like you or dilettante who would have known how to do this in VB6 so I was largely on my own trying to figure it out. I found one or two articles where guys hacked together proof of concept stuff with CreateThread but nothing that should be trusted in production code. Time was running out. I needed to get my program working and I didn't have time dig into all the technical details behind threading in VB6 so I made the decision to knock together the most disorganized and heartbreaking code imaginable to sort of fake it with the use of Timers and DoEvents. In the end the program worked, always 1 step away from falling apart but for the most part I succeed.

    It wasn't until about a year later when I somehow ended up with a copy of Visual Studio 2008 and gave .Net a try. I very quickly discovered that it had exactly what I needed but I never gave it a chance because I was listening to idiots on the internet talking about how VB6 is the greatest thing ever and that .Net sucked. I believed all of that nonsense not ever realizing that it had a lot of things that I wanted, including the ability to very easily spin up worker threads, something I was dying for back in VB6. I had no RC5. There was no Olaf. There was no Krool. I had to spend incredible amounts of time figuring out all kinds of things on my own while there was a huge library in the form of .Net that had all the answers I wanted.

    I remember missing an important deadline because I stopped dead in the middle of development to write my own custom controls for the application because I wanted a certain type of UI. Development of these controls dragged on for several weeks, because I was basically writing them from scratch. One of the controls I wanted was a Button with a gradient background. It took me something like a week for that one control. I had to write all the button functionality myself. I wish someone had told me about WPF in that time. I started using it last year and realized that if I was using that tech back them, I could have done that in like 10 minutes by simply modifying the Button control's template. Hell, I could have done it in like 1 minute by assigning a LinearGradientBrush to the Background property of the Buttons.

    This is the reason I'm usually so passionate when people start comparing VB6 and VB.Net. This is the reason I make the posts I do because I don't want someone who might be in the position I was in to be mislead. I wish someone had told me all those years ago that VB.Net had all the things I wanted. I wish someone provided me with an objective analysis instead of "VB6 good .Net bad". This would have saved me huge amounts of time. Some of my failures would have turned out completely different if I just had someone to tell me the truth. Instead, I had to stumble into it by accident.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  26. #66
    Fanatic Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    653

    Re: Should i learn VB6?

    Weren't there 12 million people once coding with VB6? The backlash was that they all stopped. Well, almost all.

    VB.NET is not something Fred Bloggs or John Doe would just pick up and start coding just for the fun of it as it was with VB6 in its heyday. As for the backlash? Microsoft just took it on the chin and pretended that it didn't matter, they had to pretend, as they had made their mistake for all the right technical reasons... but the result still wasn't what most of those 12 million wanted, VB6 turbo. With VB.FRED most simply stopped and did something else entirely and the whole sphere of programming suffered (or improved depending upon your point of view).

  27. #67
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by yereverluvinuncleber View Post
    but the result still wasn't what most of those 12 million wanted
    None of us wanted it but we needed it.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  28. #68
    PowerPoster
    Join Date
    Jun 2013
    Posts
    5,238

    Re: Should i learn VB6?

    Quote Originally Posted by Niya View Post
    I realized it was a waste of time.
    Because all we ended up doing was going head to head .Net vs RC5.
    Of course... as soon as we compare "Apples with Apples" (ClassFramework with other ClassFramework) -
    then we wouldn't find many differences (in functionality and coding-efforts in the languages, which glued these Framework-Classes together).

    But what you said was: ".NET is better than VB6" (a ClassFramework is better than a language).

    Formulate precisely (pointing out, that VB6+COMLibs allow similar coding-comfort as VB# + .NET-ClassLibs),
    and everything is fine.

    But as your citation above stands there, it is utterly misleading.

    Quote Originally Posted by Niya View Post
    But here's the thing, you had to spend all that time to write that library, I didn't.
    But already that should tell you something.
    I have invested about 3 full man-years into the RC6-Classes over the last 15 years or so.

    Whereas the (sumed up) man-years on the side of MS (invested into the .NET-Classes) was probably more than 10 times that.

    Please ask yourself "why?" (the VB6 + COM approach required significantly less time, to come up with something functionally comparable).

    Quote Originally Posted by Niya View Post
    I wish someone provided me with an objective analysis instead of "VB6 good .Net bad".
    ...if I just had someone to tell me the truth...
    First "the truth" (as I see it) regarding the OPs question:
    - Hobbyist Background? -> go with VB6
    - starting a career as a Developer? -> don't mention any language with "Basic" or "VB" in its name in your resume (sad, but true)

    And here an objective technological analysis (based on Apples vs Apples - comparing the two frameworks):
    - class-coverage for modern App-Dev scenarios? (nearly identical - including Unicode- and DPI-awareness, threading, WebScenarios)
    - class-amount? (.NET about 100 times as many ... for the same functionality)
    - class-framework-size? (.NET about 100 times as large)
    - deployment-process? (instant regfree + App-local deployment ... vs. Windows-Update which takes about 15 minutes here, before the CPU-load goes down)
    - startup-time of larger Apps (about 10 times longer - comparing the old COM-based SQLManager with the new .NET-based one)

    You see also in this listing, that there's something fundamentally wrong with the .NET approach also technologically.

    Here's, what I think causes the disadvantages of the .NET-Classes in the listing above:
    - the non-native IL-representation of most "binaries" (which contribute a large part of the 15min CPU-load in case of a .NET-update)
    - the "Everything is an Object" philosophy (it's what causes the huge amount of classes in .NET)
    - the abundantly used function-overloading (it contributes to making .NET binaries larger, compared to using 2 or 3 optional Parameters in VB6)
    - the JIT-compiling is causing the load-time differences in larger Apps (not to mention the GC which sometimes kicks in at the wrong time)

    And I cannot repeat this often enough.
    COM is "the recent, leading tech" in the MS-OS and MS-Office-Products (and I think the above list shows, why MS made that choice).

    So, from a technical point of view, VB6 is currently the only language for Windows-Desktop-Development (besides MS-VC++),
    which fully embraces "the recent, leading tech" (producing COM-libs is much easier, than what the C++ guys have to jump through).

    It's primarily these technical facts, why I'm still on board here (with VB6 - for Windows-development).

    Olaf
    Last edited by Schmidt; Jan 23rd, 2021 at 12:43 AM.

  29. #69
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by Schmidt View Post
    But what you said was: ".NET is better than VB6" (a ClassFramework is better than a language).
    A key mistake I made back then was not choosing my words carefully. I didn't realize what I think and what I was actually saying were 2 different things. I also made the mistake of not realizing my perspective was different. Let me explain.

    When I said VB.Net was better, I was actually thinking about VB6 and VB.Net as self contained packages. I wasn't thinking about 3rd party libraries and all that. I was thinking about how right out the box VB.Net was just way more powerful than VB6. When you install VB.Net, you get the .Net Framework, a far more advanced IDE with more productive auto-complete features and an updated version of the BASIC syntax that made life a little easier with additions like the ability to define and assign values to a variable in one line. Functions became first class citizens, higher order functions were added. There was a whole host of nice additions. It was actually the combination of the new IDE, the .Net Framework and the updated language that I grew to love. It wasn't really any one thing. I failed to communicated that properly.

    As for my perspective, it was outdated. In my VB6 prime, there was no RC5. There was nobody like Krool or you around creating all these powerful additions to VB6. I had to claw and scrape whatever I needed from around the internet if I couldn't find the answer online, I had to roll up my sleeves and do it myself which often times was very time consuming. So when .Net came along with all these niceties packaged in, it was a very easy choice once I tried it for myself.

    Today is different from what I knew. You guys have created all these powerful libraries and components so you don't feel the sting I did way back when. There are options available to VB6 programmers today that either I didn't know about or simply didn't exist. I didn't even know of RC5's existence until well after I had moved to VB.Net and if I had discovered it back then, there was a very high chance that I might have been a VB6 programmer still. I loved VB6, I really did but once I experienced doing something in .Net that would have taken me like 3 times the effort I was gone.

    So the question becomes, now that I know of these things, would I ever consider going back to VB6? The answer is, not a chance in hell. While Krool's controls and your RC5 library did bring a lot to VB6, it still just covers only a small portion of all the new things that came with the arrival of VB.Net. The IDE and the BASIC language itself is still way behind what we have today. There is no way I would choose to go back to living without the more advanced auto-complete features that came with modern versions of Visual Studio. That single feature has been such a huge productivity boost that I would hate to have to live without it. If I had no choice, I could live without it but I do have the choice. I would not choose to go back to a BASIC dialect that lacks all little things that makes VB.Net a more productive language to write code in. For example, one of the biggest annoyance I have whenever go back and dip into writing VB6 code is a lack of generics.

    Bottom line is, while you guys did do some great work in modernizing VB6, it's still far behind. You still need a new IDE and you still need a new compiler. I cannot with a straight face say that it's any better than VB.Net as this time.

    Quote Originally Posted by Schmidt View Post
    Please ask yourself "why?" (the VB6 + COM approach required significantly less time, to come up with something functionally comparable).
    You're seriously underestimating the sheer size of the Framework if you think RC5 is anywhere close to it in functionality. RC5 is functionally comparable in commonly used functionality but not comparable to the framework as a whole. Just to pick a random thing, how powerful is RC5's reflective capabilities? What about CodeDOM, does RC5 have anything like it? If so, how powerful is it? Does RC5 include something like the massively popular Roslyn compiler? Now these are not commonly used features. The only one of those I have ever actually used is reflection but the point is, it's there for someone to use should the need ever arise. Also, the entire type system used by all .Net languages is implemented in the framework, this even includes all the simple types like Integers, Doubles and Strings. Does RC5 implement its own type system?

    Quote Originally Posted by Schmidt View Post
    starting a career as a Developer? -> don't mention any language with "Basic" or "VB" in its name in your resume (sad, but true)
    Why is this sad?

    Quote Originally Posted by Schmidt View Post
    And here an objective technological analysis (based on Apples vs Apples - comparing the two frameworks):
    - class-coverage for modern App-Dev scenarios? (nearly identical - including Unicode- and DPI-awareness, threading, WebScenarios)
    Ok, I will grant you that. You have proven to me many times over the years how powerful your framework is.

    Quote Originally Posted by Schmidt View Post
    - class-amount? (.NET about 100 times as many ... for the same functionality)
    As I've said before, it's highly unlikely your one man operation produced just as much functionality as a corporate giant. Commonly used functionality, yes, no doubt but not if we include all functionality.

    Quote Originally Posted by Schmidt View Post
    class-framework-size? (.NET about 100 times as large)
    A non-issue. I have a 250 GB drive in my PC just for booting Windows. I have a 1 TB drive for storing all my actual data. .Net's tiny footprint is less than a mosquito bite.

    Quote Originally Posted by Schmidt View Post
    deployment-process? (instant regfree + App-local deployment ... vs. Windows-Update which takes about 15 minutes here, before the CPU-load goes down)
    For years now my deployment process consisted of just copying the binaries onto client PCs and just running them. Unless you're talking about deploying VB6 applications, I have no idea what Windows Update has to do with anything.

    Quote Originally Posted by Schmidt View Post
    - startup-time of larger Apps (about 10 times longer - comparing the old COM-based SQLManager with the new .NET-based one)
    How does that old saying go? A poor workman blames the tool. Bad code would run slow no matter what it was written in. Meanwhile, the extra 0.3 second start up time of my own applications haven't caused me any sleepless nights.

    Quote Originally Posted by Schmidt View Post
    You see also in this listing, that there's something fundamentally wrong with the .NET approach also technologically.
    Here's, what I think causes the disadvantages of the .NET-Classes in the listing above:
    - the non-native IL-representation of most "binaries" (which contribute a large part of the 15min CPU-load in case of a .NET-update)
    15 minute load time? Where are you getting these fantasies from? I have to ask, have you ever written and deployed a .Net application?

    Quote Originally Posted by Schmidt View Post
    - the "Everything is an Object" philosophy (it's what causes the huge amount of classes in .NET)
    I actually love this for several reasons which I'm not going to get into. It's just personal preference and not a hill I'm looking to die on.

    Quote Originally Posted by Schmidt View Post
    - the abundantly used function-overloading (it contributes to making .NET binaries larger, compared to using 2 or 3 optional Parameters in VB6)
    This is actually one of my favorite features of .Net. Also, optional parameters don't allow you to specify alternate return values. They also don't allow you to choose different types for a single parameter, a common example being a function that allows you to specify a rectangle as either a Rectangle object in 1 parameter or as 4 numeric parameters corresponding to it's X,Y, width and height. Overloading solves an aspect of the problem of namespace pollution. You give all the different versions of your function a single name. Easy to remember, easy to use.

    Again, this is just my preference. You don't like it but it's a selling point to me. I'm not trying to die on this hill either.

    Quote Originally Posted by Schmidt View Post
    - the JIT-compiling is causing the load-time differences in larger Apps (not to mention the GC which sometimes kicks in at the wrong time)
    Never had a single problem in this area with any of my .Net applications in this area. I'm not writing mission critical applications that need to respond with millisecond precision to keep planes from crashing. We deal with business oriented stuff mostly. No one in this domain gives two hoots about 0.3 second load times. They only care the the applications are getting the money right.

    Quote Originally Posted by Schmidt View Post
    Here's, what I think causes the disadvantages of the .NET-Classes in the listing above:
    - the non-native IL-representation of most "binaries" (which contribute a large part of the 15min CPU-load in case of a .NET-update)
    - the "Everything is an Object" philosophy (it's what causes the huge amount of classes in .NET)
    - the abundantly used function-overloading (it contributes to making .NET binaries larger, compared to using 2 or 3 optional Parameters in VB6)
    - the JIT-compiling is causing the load-time differences in larger Apps (not to mention the GC which sometimes kicks in at the wrong time)
    This is exactly the kind of thing I was talking about when I said I wished for an honest and objective assessment. None of those points mentioned the things that really mattered in the end. You think I cared about the size of the framework or that everything was compiled by a JIT? No, I wanted to know if it was a better tool to write Windows Desktop applications than VB6 was. For me, the answer was a resounding yes.

    I wish someone had told me about how powerful the new IDE was. I wish someone had told me how much more productive it was to write applications with .Net because of how much less time I would spend actually importing Win32 APIs on account of all the stuff in the framework that was readily available with no extra effort. I wish someone had mention the productivity gains you get from LINQ. I got none of this. All I got was the JIT this, the GC that, constant whining about footprints and all manner of nonsense that didn't make one lick of difference to me and still doesn't to this day.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  30. #70
    Super Moderator Shaggy Hiker's Avatar
    Join Date
    Aug 2002
    Location
    Idaho
    Posts
    35,775

    Re: Should i learn VB6?

    Quote Originally Posted by Niya View Post
    I wish someone had told me about how powerful the new IDE was.
    Hey, Niya, the new IDE is really powerful.

    There, you got your wish. Better late than never, right?

    Something to consider: The load time is going away, and that's a features that has long held true for computers. VS2010 loaded instantly on my computer, but VS2015 took a couple seconds. Then I updated the computer, and VS2019 loads in sub-second time, whereas VS2010...well, it was instant before, so what is instant..er?

    Similarly, in early .NET, the framework was large. Lately, it doesn't really matter. You don't deal with it, because it's part of the OS, just like the VB6 runtime is part of the OS, so all you distribute is the compiled code and not the framework. As for the size, with the price of memory getting lower and lower (I forget how cheap memory is), and SSD getting faster, those who care anymore are unfortunate.
    My usual boring signature: Nothing

  31. #71
    Frenzied Member PlausiblyDamp's Avatar
    Join Date
    Dec 2016
    Location
    Newport, UK
    Posts
    1,323

    Re: Should i learn VB6?

    Quote Originally Posted by Niya View Post
    So the question becomes, now that I know of these things, would I ever consider going back to VB6? The answer is, not a chance in hell. While Krool's controls and your RC5 library did bring a lot to VB6, it still just covers only a small portion of all the new things that came with the arrival of VB.Net. The IDE and the BASIC language itself is still way behind what we have today. There is no way I would choose to go back to living without the more advanced auto-complete features that came with modern versions of Visual Studio. That single feature has been such a huge productivity boost that I would hate to have to live without it. If I had no choice, I could live without it but I do have the choice. I would not choose to go back to a BASIC dialect that lacks all little things that makes VB.Net a more productive language to write code in. For example, one of the biggest annoyance I have whenever go back and dip into writing VB6 code is a lack of generics.
    Personally I find so many of the language features of .Net so useful and intuitive these days that I would hate to lose them..

    Generics are especially powerful when it comes to writing strongly typed code without a lot of cut and paste duplication. Other things you mentioned in your post such as overloaded functions make the code so much easier to read / write once you get used to them, not having multiple versions of the same function with slightly different names based on parameters is an utter blessing.

    Option Strict and Option Infer can make for safer and more readable code, no more automatic type conversions causing odd bugs everywhere... Delegates / Lambdas can make code so much more compact without also being unreadable.

    Linq (and most of the other things mentioned above combined) also make for more readable and simple code when working with arrays / collections / databases / whatever that I miss the syntax whenever I use a language that doesn't have similar capabilities.

    Async / Await turn multi-threading and similar concepts into a trivial task compared to manually dealing with threads and callbacks etc.

    As much as I used to love VB6 when that was my main programming language, I really wouldn't want to give up all the features .Net and the newer VB syntax offer; while I am impressed and amazed at the work people are doing with VB6 and the tools people like Olaf and Krool are producing it wouldn't convince me to go back. If I was still on VB6 then they might help to extend the product's lifetime and have kept me using it for longer, but they wouldn't be enough to make me go back.

  32. #72
    Frenzied Member
    Join Date
    Dec 2014
    Posts
    1,363

    Re: Should i learn VB6?

    yeah, the same discussion we could have about single thread 32bit applications.
    nowadays we can create "almost" anything and it will run fast, those milliseconds will not make any impact to the user.
    theres situations when everything is about performance, in those cases, we need 64bit, multi-threading. but 90% of the time we dont need that.
    that is also why VB6 is still good. performance is ultrafast most of the time, but I remember 20 years ago, it was quite slow comparing to other languages.

  33. #73
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by Shaggy Hiker View Post
    Hey, Niya, the new IDE is really powerful.

    There, you got your wish. Better late than never, right?
    lmao. Ill take it

    It's funny, even someone simply saying that may have been enough but noooo. Everyone was talking about how slow it was and that it took years to start. No mention of it's power as a development tool.

    Quote Originally Posted by Shaggy Hiker View Post
    Something to consider: The load time is going away, and that's a features that has long held true for computers. VS2010 loaded instantly on my computer, but VS2015 took a couple seconds. Then I updated the computer, and VS2019 loads in sub-second time, whereas VS2010...well, it was instant before, so what is instant..er?

    Similarly, in early .NET, the framework was large. Lately, it doesn't really matter. You don't deal with it, because it's part of the OS, just like the VB6 runtime is part of the OS, so all you distribute is the compiled code and not the framework. As for the size, with the price of memory getting lower and lower (I forget how cheap memory is), and SSD getting faster, those who care anymore are unfortunate.
    You know it's interesting because I did find what everyone was saying about how slow the new IDE was to start up was actually true. My early experience with the new IDEs did involve some truly horrendous start up times. However, what I had to discover on my own was that paying the 1 time start up cost was soooooo worth it. I didn't mind paying that price for all the features that I've always wanted. Of course today, that problem has largely disappeared. Visual Studio 2019 has a very decent start up time on my current PC.

    I also did have a couple of poor experiences in my earlier .Net days with needing to install .Net on client machines. That issue disappeared in the age of Windows 7. There is also another thing I didn't mention, as annoying as it was the one or two times I had to install .Net on someone's machine, it was nothing compared to the years of nightmares I had to deal with when deploying VB6 applications. Even to this day I hate deploying VB6 applications. Something ALWAYS breaks. There's always an OCX or DLL missing or something. Aside from things breaking the process itself is quite painful, we have one large VB6 application and boy the amount of hoops we have to jump through to get it working on a new machine. We have like a 3 or 4 .Bat files that have to do a tonne of work installing like a billion third party components. Plus we still have to run a standard installer on top of that.

    One of my main goals for the next 2 years is a complete re-write of that application in .Net. I can't wait to be rid of that VB6 version. The maintenance work on it has become way too painful. Random crashes, things not quite working right. Every year something new breaks. Seems to coincide a lot with Windows updates. On the other hand, I've had .Net applications work flawlessly for years, even across major transitions between Windows versions.

    On the topic of installers, I did have an experience in my very early VB6 days that I will never ever forget. I remember making contributions in an online modding community. One of the things I wanted to release was a modding tool and boy did I get flak for it when I mentioned it was written in VB6. There were a number of programmers in that community. All of them writing their stuff in C++ and I was the only one using VB6. At the time, someone having the VB6 runtime on their PC was not a guarantee so it was always prudent to include an installer. Even in cases where they did have the runtime, you still had to include one for any third party COM components your application was using. You see, the standard with regards to tools provided by the programmers among us was that they would provide either a single executable or a folder with the executable and whatever DLLs were needed and the members could just run it right away. They really were not loving the idea of having to run an installer for my stuff and they let me know it, and they weren't too kind about it either. Of course I felt some type of way about it but that pales in comparison to how felt about what happened later. Someone tried to install my stuff on their PC and the VB6 installer broke something seriously. I had to correspond with this poor guy over emails for a week trying to fix his PC. I had never felt so embarrassed. I remember wondering what the hell was I thinking. They had this "no installers" standard for a reason and I forced the issue and broke someone's PC as a result. I tried to figure out ways to package VB6 applications without needing to package an installer but I failed. I never found a way to do it so I never bothered with writing modding tools after that. I didn't know C++ at the time so I didn't have the option of doing it like everybody else so I was done as far as programming contributions in that community. As a side note, it was my experiences in that community that finally led me to learn C though not to the extent that I could write full applications but I did learn how to write DLLs in C during this time.

    I loved VB6 but I have a lot of horror stories like that. The impression that experience left on me tainted my views on VB6 from that day. I remember being so envious of the C++ guys who could just compile their programs into a single exe and just run it on any PC while I was breaking people computers and putting people through the joys of having to click next on a wizard a bunch of times just to use some simple tool. I hated that feeling. I am aware that today that problem is largely gone. The VB6 runtime is standard on all modern versions of Windows and then there is registration free COM. However, VB.Net did exist at the time I was going through all that but I was much like the VB6 members here, thinking that VB.Net was trash and VB6 was better and I ignored it. Little did I know that if I had adopted VB.Net in that time, I would not have had to go through that. I know this because there was one other modding tool that the community used, arguable the most important one, a map editor and that was written in C#. It didn't need an installer because .Net had already gained a lot of steam and most people had the Framework on their PCs. As as side note, I did notice something interesting, despite VB6 being older, more people had the .Net Framework installed than the VB6 runtime. .Net had taken the world by storm. Everyone had it. If I was programming in VB.Net instead of VB6 at that time, I would have had a much better experience writing modding tools in that community. I would have been able to release a single executables like everyone else and if on rare occasion they didn't have the framework, they could go install it on their own time. I could assume no responsibility for breaking someone's PC.

    So yea, I loved VB6 but I have a lot of bad memories with it too. These experiences left me with a lot of bias against it when I finally moved to .Net. I was so angry that I ignored .Net for so long when it had all the answers I was looking for. Now I am aware that I can be unfairly biased against VB6 at times. I will be the first to admit that a lot of my bad experiences with VB6 was due to my own lack of knowledge but I cannot in good faith blame all my bad experiences on this lack of knowledge. .Net really did cure a lot of ills for me, even to this day.

    Quote Originally Posted by PlausiblyDamp View Post
    Personally I find so many of the language features of .Net so useful and intuitive these days that I would hate to lose them..

    Generics are especially powerful when it comes to writing strongly typed code without a lot of cut and paste duplication. Other things you mentioned in your post such as overloaded functions make the code so much easier to read / write once you get used to them, not having multiple versions of the same function with slightly different names based on parameters is an utter blessing.

    Option Strict and Option Infer can make for safer and more readable code, no more automatic type conversions causing odd bugs everywhere... Delegates / Lambdas can make code so much more compact without also being unreadable.

    Linq (and most of the other things mentioned above combined) also make for more readable and simple code when working with arrays / collections / databases / whatever that I miss the syntax whenever I use a language that doesn't have similar capabilities.

    Async / Await turn multi-threading and similar concepts into a trivial task compared to manually dealing with threads and callbacks etc.

    As much as I used to love VB6 when that was my main programming language, I really wouldn't want to give up all the features .Net and the newer VB syntax offer; while I am impressed and amazed at the work people are doing with VB6 and the tools people like Olaf and Krool are producing it wouldn't convince me to go back. If I was still on VB6 then they might help to extend the product's lifetime and have kept me using it for longer, but they wouldn't be enough to make me go back.
    It comes down to productivity. I found that I could do so much more in so much less time. It was a combination of all these language features you mentioned, the IDE and the Framework. One of my favorite things added to the newer IDEs was the auto-complete working as soon as you start typing on a new line. It comes it very handy when you want to access class methods and you don't quite remember the name of the class or you don't want to have to type out whole name. Visual Studio 6 lacks this ability so when writing code in VB6 I always had to try and remember the names of the functions and subs I want to call or classes I wanted to use. It sounds like such an inconsequential feature but this feature is such a big deal. It's like a night and day difference. It's just sooo much more productive especially for someone like me who like using very descriptive identifiers. You should see some of the method names I used in my own programs. Here's an example of a class name in one of my projects it's called ItemDisplayLayoutsToBooleanConverter. Imagine having to deal with names like that without an advanced auto-complete. I'd have never used an identifier name like that in my VB6 days. I'd have to type that entire thing out every time I wanted to use it in Visual Studio 6.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  34. #74
    Fanatic Member
    Join Date
    Jan 2020
    Posts
    637

    Re: Should i learn VB6?

    Quote Originally Posted by Niya View Post
    lmao. Ill take it

    It's funny, even someone simply saying that may have been enough but noooo. Everyone was talking about how slow it was and that it took years to start. No mention of it's power as a development tool.
    VB6 multithreading, I modified a long time, the smallest only 39 lines of code. It's because Microsoft didn't provide this function that it abandoned VB6 and switched to development VB.NET It's too late. So little bugs can't be fixed, let alone 64 bit programs.
    About VB6 development program to register some OCX, DLL, there is no registration method, but 90% of people do not know this perfect method. After all, he hasn't been updated for 23 years. He has long been regarded as Win98, and no one wants free gifts.
    I developed nearly 20 years, all programs are basically free of installation, there is no need to install programs, the only thing is to run a bat, register some controls, and never write the registry, mainly using ini to save software configuration.
    It's not difficult to master this. The main reason is that there are no ecological resources. Even this programming forum has few users. after all VB.NET With tens of thousands of functions added, VB6 can't catch up.
    So using VC + +, C #, vb.net Java has become an inevitable choice. After all, there are too few VB developers, so it is difficult to find a successor for the project.

  35. #75
    Frenzied Member
    Join Date
    Dec 2014
    Posts
    1,363

    Re: Should i learn VB6?

    well, almost all my tools are install-free. I dont use .ocx or any components that I know will require some .dll that windows needs.
    my tools are downloaded by ten of thousands and my latest game the same. no issues at all.

    if I use c++ it would require a lot of work to do the same, I suspect, quite the similar work, but maybe a bit more.
    I use the form and a picturebox, the mouse and key triggers, that part I need to code in c++, while I have it for free in VB6,
    next is the language, that is much easier to understand and the IDE is really nice. what do I get in c++?

    why am I saying this?
    because you say you created "mods" that required a setup, but if you did write your program like I do, you wouldn't demand that.
    its not that, if I dont use the components or a third party activex, its better to use another language, you can actually use VB6 and use it to code "everything", like we need to do in most other programming languages.

    for me VB6 and its IDE and the language is what I like and enjoy working in, not the ancient components

  36. #76
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by baka View Post
    well, almost all my tools are install-free. I dont use .ocx or any components that I know will require some .dll that windows needs.
    my tools are downloaded by ten of thousands and my latest game the same. no issues at all.
    ....
    why am I saying this?
    because you say you created "mods" that required a setup, but if you did write your program like I do, you wouldn't demand that.
    I didn't say it wasn't possible. I just didn't know how. My knowledge on Windows and COM in those days were still far too limited to figure out how to do it on my own. Even when I looked up online for information on how to do it, a lot of the times it just flew over my head or it was too much of a hassle to implement it relative to the value of the application itself. I didn't know anything about registration free COM. I didn't even learn that was possible until years later. And then there is still the big problem of the VB6 runtime not being on everyone's PC at the time. Even if I figured out how to deploy a VB6 application without the need for an installer, would they have been willing to download the entire run time with the application? The internet in those days wasn't like it is today. People liked small downloads. It's not like today where people don't bat an eye about multi-gigabyte downloads.

    .Net applications made no such demands. I would have been able to get by with my more limited knowledge if I was using .Net instead. I get that you like VB6 and that's fine but you cannot deny that the burden of knowledge required is much higher when it comes to VB6 applications. There are all kinds of challenges to developing a working VB6 application, many of which don't exist in the .Net world.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  37. #77
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    6,021

    Re: Should i learn VB6?

    Quote Originally Posted by xiaoyao View Post
    The main reason is that there are no ecological resources. Even this programming forum has few users. after all VB.NET With tens of thousands of functions added, VB6 can't catch up.
    So using VC + +, C #, vb.net Java has become an inevitable choice. After all, there are too few VB developers, so it is difficult to find a successor for the project.
    This is just the way it goes. Technology is always improving and old technology become obsolete. That's life. Even VB.Net's time will come to an end, it has already begun.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena


    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. -jmcilhinney

  38. #78
    PowerPoster
    Join Date
    Jun 2013
    Posts
    5,238

    Re: Should i learn VB6?

    Quote Originally Posted by Niya View Post
    Technology is always improving and old technology become obsolete.
    That's life.
    No, that's not "life" - that's "the big lie"... (at least as far .NET "technology" is concerned).

    For years they were selling you big, unwieldy Rubber-Anvils, and Rubber-Hammers - to forge your own "rubbery-stuff".

    All the while talking, how the quality of "the next generation of rubber-anvils+hammers" was improved in each version.

    But if you look into, what the vendor is using in his own "smithy" - it is (to this day) still:
    - solid steel anvils
    - solid steel hammer-heads with hardwood-shafts
    (talking about completely "rubber-free" VC++ produced Flat- and Class-libs - the Class-libs usually adhering to the COM-ABI)

    Languages the world over, are only "the binding glue" (they are not as important) -
    what's important for a language is, to be able to "easily connect to libs, made out of steel".

    And the more "bindings" (to "steely libs") a language is able to make use of (out of the box) - the better for its success.
    That's for example the reason for the success of Python.

    It's just a (high-level) Scripting-language (not able to produce "steely libs" itself) -
    but it ships with a lot of well-made bindings to "steely libs" (produced with C or C++).

    And of course MS was showing you "Iron-Python" (to enable that clone, to allow bindings to "stuff, produced in the rubber-universe").
    (please note, that Iron-Python is not a successful language - everyone the world over sticks to "the original" ... for a reason)

    Ok - now switching to VB6 - isn't it great to have a high-level language,
    which is not only able to "connect" (bind) to:
    - "steely flat libs" (via Declare statements or typelibs)
    - or "steely Class-libs which adhere to a Standard-ABI (COM-Dlls and OCXes)
    but also able to produce fast, native compiled "steely libs" itself?

    I always see C or C++ based languages in the top-rankings (because they are the first "goto"-tools when it comes to producing "steely libs").
    But what else is VB6 other than a "higher level abstraction of C++" (using the same compiler in the end, to produce its steely binaries).

    A higher-level-language like that is rare (if you compare with e.g. Python, which is basically only a "consumer of libs") -
    and its potential is not even fully unfolded (e.g. by enabling CDECL imports in Declare Statements, or enabling it to produce Dlls with "flat-API-exports").

    In my opinion, there's no reason to "panic" because software-technology does not progress as fast
    as the advertisers of "books and consulting-services" are trying to make you think...

    But when it progresses, it mostly does so in manifestations of "steely libraries" -
    and a language which is able to "bind to" these new libs, will "progress along".
    (latest example -> the existing VB6-Binding to the new Edge/Chromium-BrowserControl)

    IMO we have more than enough time, to come up with a decent replacement for VB6 over the next decade.

    Olaf

  39. #79
    Fanatic Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    653

    Re: Should i learn VB6?

    Quote Originally Posted by Schmidt View Post
    IMO we have more than enough time, to come up with a decent replacement for VB6 over the next decade.
    With regard to a potential successor to VB6, that's the most positive thing that I've heard in years... coming from such a knowledgeable source. I'll take that as a proper positive.

  40. #80
    Frenzied Member
    Join Date
    Dec 2014
    Posts
    1,363

    Re: Should i learn VB6?

    and with Schmidt just posted,
    VB6 will survive as long C/C++ exists in its forms, at least as long 32bit are available.
    so its a question of, when will 32bit disappear?. thats the concern.
    what we need is a identical VB6 that can use 64bit.

    so, should I learn VB6? only if a 64-bit version of VB6 will be available in the future.

Page 2 of 6 FirstFirst 12345 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width