13 ms·
The Rise and Fall of Visual Basic
- uchman 7y agoAm I dating myself if i say i started with GW-BASIC... I remember how it was a big deal to code a menu by highlighting text based on the arrow keys... and then based on mouse movement
- tssva 7y agoIf it makes you feel any younger I started with TRS-80 Level 2 BASIC years before GW-BASIC existed.
- pier25 7y agoAs a kid I dabbled with BASIC on an MSX, but the first real desktop app I made was with VB on Windows 98 if memory doesn't fail me. It was a catalog of Starcraft units.
- deleted 7y ago[deleted]
- gus_massa 7y agoI'll copy one of my recent comments with some minor changes: I still sometimes program in Classic VB, (aka VB6). Each year it is more difficult to install the IDE, but the runtime is still installed by default. It is incredible easy to build a nice one screen application with not very a very complicated background logic. Normal people like a nice graphical interface with a few buttons, and with Classic VB you can create them very easily and iterate and customize the form. My last big problem was that it doesn't have a build in sort function, so you can use a n^2 sort or write a good sorting function by hand :( . When the logic start to be not so easy, there begin to apear problems. -- About the article: I agree with most of it. > Also on the big side: There was no more edit-and-continue feature. I still miss that when I program in other languages. It kills so many (all!) optimizations possibilities, but it's extremely handy. > VB.Fred and the .NET Solution I call it VB# or VB#.Net instead of VB.Fred.
- rubber_duck 7y agoMaybe I'm missing something since I haven't touched any of this in years but isn't .net winforms builder the same experience but with a saner language ?
- cm2187 7y agoAgree. To me the VB.net improvement all made sense. But it is true that VB.net introduced a few complexities as well. Like strings can be null, so checking for emptyness is a bit more complicated. But also simplified other things, like I believe VB6 was using only reference counting for its garbage collection so it was important not to create circular references.
- smhenderson 7y agoThe first money I made using a computer was writing simple business automation apps in VB, first 5 and for a short while 6. I also dabbled in Access Basic and then VBA when all the office apps standardized on it instead of each having their own flavor. VB was great like you said until you needed to do something difficult. I remember Bruce McKinny’s Hardcore Visual Basic book being my best friend for a little while. It thought me I could do the hard stuff in C, make a DLL and drop that into my VB project. Bruce had a saying, VB makes 95% of the job easy and the other 5% impossible.
- jeffFrom18F 7y agoI was going to make a reference to "Hardcore Visual Basic" but you beat me to it. Fantastic book, it's hard to find a tech book that is that useful and fun at the same time. My first job started out with mostly Visual Basic 6. One of the modules written in VC++ by a bunch of guys who were looking to get that on their resume (they had since departed). It probably should have just been in VB as well and was always a nightmare to debug and enhance. Once .net was prominent we mostly moved to C#. There didn't seem to be much of a reason to go with VB.Net, C# seemed more "legitimate" and without the hassles of Visual C++/MFC. Decades later and I still find myself writing an Excel macro in VBA now and then but I've largely moved on.
- 7y ago
- kimi 7y ago-1 it's on Medium
- chunsj 7y agoThe story is behind the paywall but I think from my experience that the VB had been an inferior version of smalltalk.
- Bishonen88 7y agouBlock with Firefox gives me no paywalls on medium.
- ravenstine 7y agoAnyone wanting to relive the glory of VB but on a modern system can use Gambas: http://gambas.sourceforge.net/en/main.html http://gambas.sourceforge.net/en/main.html
- Doubl 7y agoVb6 is still out there being developed with, on Windows 10. Active community at vbforums
- jasode 7y ago>And though historians love to talk about the visual part of Visual Basic, its signature ability had nothing to do with graphical widgets. Instead, VB became famous for a legendary feature called edit-and-continue, which allowed developers to run their programs, find problems, fix them, and then keep going with the new code. I agree that Edit-&-Continue was a nice debugging feature but I disagree that it was the main draw to VB. The main attraction to VB really was the easy-to-use graphical widgets which was exposed to the programmer via an abstraction called "windows forms". If one takes a look at a 1990s era Win32 "hello world" app[0] written in raw C Language, it has tons of complicated boilerplate. Lots of complexity with CreateWindow(param1, param2, etc, param11), GetMessage() loop, WndProc() callback. The Win32 HelloWorld example doesn't even handle a click event. One would have to add a switch case statement for the "WM_LBUTTONDOWN" message. The VB "winforms" IDE eliminated all that and let a programmer "drag & drop" UI elements onto a "form" and put code on a "click" event. It was a clever simplification of raw Win32 API calls for business-oriented user interfaces. In the ~1991 era, the winforms abstraction empowered a bunch of 1980s 4GL programmers (e.g. dBase, Clipper, Foxpro) and business language programmers (e.g. COBOL) to immediately be productive writing apps for Windows -- without the steep learning curve of C/C++ and the raw Win32 API. A lot of VB programmers I knew were not even aware of Edit&Continue but they nevertheless were able to drag a command button from the UI toolbox and add code to the button_click() event. Another VB feature that I believe was more utilized than Edit&Continue was the VBX components ecosystem. Lots of programmers would buy add-on VBX widgets from various companies to enhance the UI such as calendar date picker, datagrids, charts & graphs, etc. [0] http://www.prowaretech.com/Computer/Windows/WinApiHello http://www.prowaretech.com/Computer/Windows/WinApiHello
- badsectoracula 7y ago> I agree that Edit-&-Continue was a nice debugging feature but I disagree that it was the main draw to VB. The main attraction to VB really was the easy-to-use graphical widgets which was exposed to the programmer via an abstraction called "windows forms". I'd disagree with both of you! VB's draw wasn't the edit-and-continue nor the drag-and-drop WYSIWYG GUI builder, it was all of the above plus more in a single self-contained package. VB was popular because you could do a lot of things using it, even if the depth provided by it was rather shallow (most people are fine with that). And if that wasn't enough, just grab some ActiveX control and it'll do what you want. VB was also built on the "common ground" of Windows tech, COM, essentially being the scripting language glue for Windows (yes Windows had a real scripting language - two in fact - but especially in the 90s, Windows=GUIs so it makes sense that The scripting language for Windows to be a one dedicated to GUIs). It could have been better though, for example databases feel bolted-on instead of an inherent part of it, but i suppose if they added native database support (to the same level as native GUI support, not just talking to databases) it would cannibalize Access sales.
- dvdhsu 7y agoI’m so glad people are finally talking about VB! For a certain subset of programming, VB is very effective. I’ve been working on “VB, but hosted in the cloud, and built specifically for developers”: https://tryretool.com https://tryretool.com. We’re still early, so I'd appreciate any feedback :). To use Retool, you’re ideally an engineer who knows both SQL and JS. We connect to most databases, as well as any arbitrary REST / GraphQL APIs. (Our docs are at https://docs.tryretool.com. https://docs.tryretool.com.) Edit: removed a part I didn’t fully agree with, but paraphrased.
- maxxxxx 7y ago"As the essay notes though, I think VB possibly made programming _too_ easy, which led to poorly built and poorly maintained apps." This feels a little elitist to me. VB (and Access) allowed a lot of people to develop mission critical things rapidly they would never have been able to afford before. When I look at the complex monstrosities we develop these days I don't know if they are in any way more maintainable or well-built. Yes the people who created them know them in and out but give them a few years to become legacy and outdated and they will become a maintenance nightmare.
- AnIdiotOnTheNet 7y ago> which led to poorly built and poorly maintained apps. Looking around, I don't think these needed any help from VB to exist.
- pier25 7y agoThis looks pretty good. Is pricing per developer or viewing users too? What's your front end stack?
- soup10 7y agoStarted programming with BASIC on a graphing calculator and it was easy to move on to C and Java from there. The use of english words over symbols and a lack of boiler plate and "concept clutter" is beginner friendly.
- karmakaze 7y agoVB was the greatest thing I'd seen (before I saw SmallTalk or NeXTSTEP). I preferred the 1.0 'edit on your desktop' over the later nested window UX. I had recently taken OS/2 Presentation Manager courses at Microsoft and started to tinker with making an OS/2 version. The toy turned into a client/server product for the company that produced code generator and analysis tools for enterprise. It eventually because a cross-platform tool running on OS/2 or Win NT and targeting OS/2 and Win32/Win16. A separate X11 editor targeted several Unixes using the same document format and generator templates. Good times.
- iforgotpassword 7y ago> I preferred the 1.0 'edit on your desktop' over the later nested window UX. Later versions including 6 could be switched back to SDI mode. I never liked it though, too confusing if you had stuff open in the background.
- jacquesm 7y agoVB and Delphi as well as other 'RAD' software from the 90's still has its fans, and some of these systems power very large installations even today. You wouldn't know about it because all you see is the outside but behind the scenes you'd be surprised what is running.
- jasonlhy 7y agoI think VB dead just because RAD is dead just like the article states: Careless newbies, bored company workers, and summer students trampled in, solving challenges that would have been much more difficult on any other platform, and spraying spaghetti code everywhere. In other words, because VB was easy enough to use even if you weren’t a trained coder, it was used by plenty of people who weren’t trained coders. And VB did nothing to encourage them to correct their bad habits.
- pjmlp 7y agoI have done a couple of projects during the last years at a few life sciences companies part of Fortune 500. Their researchers aren't using R, Python or even eyeing on Julia. They use Excel with VB macros and those skillful enough, get IT to install them Visual Studio Professional and carry on using VB.NET. Also remember that VB.NET, contrary to F#, enjoys equal footing with C# across all .NET deployment scenarios and Visual Studio graphical tooling.
- graycat 7y agoAs I recall, Kernighan and Ritchie in The C Programming Language admitted that C had "idiosyncratic syntax" (with lots of results on Google and I'll save time by not searching the book itself). Then C++ used that, and C# borrowed some of it. The .NET version of Visual Basic, VB.NET, seems to be about as good as C# for getting at the .NET Framework and taking advantage of the "common language runtime" (CLR) but with more traditional syntax (Kemeny, Kurtz Basic, Algol, Fortran, Pascal, PL/I, etc.) easier to teach, learn, read, write, and debug. So, shock, I wrote the code for my startup in VB.NET! But, IIRC, there's a translator to convert at least one way between C# and VB.NET!
- oaiey 7y agoExcept that .NET Core 3.0 will be the first core version with full support for the VB runtime lib
- 7y ago
- JeanMarcS 7y agoThe first version of the software that made our company launch back in the 90’s was made with Delphi with a browser like component that we discovered, after making successful demos to French historic telco leading to more visible demos, was a 30 days demo and that we couldn’t compile anymore without a message box stating that. So due to emergency we rewrote all in a week in VB6 (or maybe it was 4 or 5 I don’t really remember) with the Internet Explorer browser object. And thanks to the simplicity of Visual Basic it was possible to do so ! And then the demos lead to sales and we are still here 22 years later
- repolfx 7y agoThat's kind of weird. I recall Delphi could embed IE directly, maybe not in the version you used? Why was it easier to rewrite all your code than just buy a license to the component though?
- JeanMarcS 7y agoI think it was Borland Delphi 3 or 4, and there where a browser object, perhaps based on IE, but demo. It was in 1997 and it was not possible to order via Internet so the times the letter with the licence number arrive from US to France and we would have missed the important demo. Plus, to be completely honest, we were totally broke !
- zubairq 7y agoI loved VB a lot and am trying to build a modern day version of it which can build Webapp and Microservice based apps at yazz.com (Full disclosure: I work at Red Hat but my views do not necessarily reflect my employers views)
- EdgarVerona 7y agoYet another interesting benefit of/interesting feature of VB is that it was the Python of its day in terms of the "there's a library to do that" factor. Not only was it easy to pick up, but (while not built-in like Python) it had access to thousands and thousands of easy to install and easy to use ActiveX libraries. There was almost always an ActiveX Library to suit your needs, ready to literally drop into the WYSIWYG editor and use. That combined with the easy to use WYSIWYG editor and the edit and continue functionality were, to me, what made it such an amazingly useful language for creating quick utilities or small programs. It was truly a "Rapid Application Development" language. I also saw some nightmares in my days, though I don't blame VB as much as the people who created the app. The most notable one was a document management system that I'd been asked to port from VB3 to VB6 (so that it could run on win32 among other reasons) and to turn the system from a batch system for document processing facilities into a desktop DMS for home use. I will never forget when I opened up the project and there were 60 some-odd "forms" in it, and when I opened any one of them up not a single one defined a variable. They all - every last one - was defined as a global variable in a single globals.bas file. There were thousands of global variables. Every single one in the entire application declared there, and edited at will in any of the myriad forms wherever they fancied. My first task became "untangle the global variable mess."
- AdrianB1 7y agoI learned BASIC in the late eighties. When VB appeared it was close, but not really BASIC. When VB.NET and Visual Basic for Applications (Excel/Access/etc version of VB) forked in all directions I had to write some VBA, but I ran away as soon as possible: from one language it forked to too many dialects that were too incompatible to matter. Divide and conquer transformed in divide and destroy. Now I use C# whenever VB would be a choice, I am not Microsoft's puppet to put up with the VB mess.
- ptx 7y agoVBA is exactly the same language as VB 6. VBScript, which was used for ASP, was quite different though.
- Doubl 7y agoThe people still developing in vb6 are a pretty relaxed lot these days, no one worries any more that the apps won't run in windows, they will, forever. It's still possible to get new activex components for skinning or whatever and if all else fails there's always interops with .net. Meanwhile the vb6 ide is lightning quick, designed as it was back in win 95 days, and with a couple of add ons can be very up to date.
- lostmsu 7y agoIt is alive and kicking: deep learning with TensorFlow on VB.NET: https://github.com/losttech/Gradient-Samples/blob/master/VB/FashionMnistVB/FashionMnist.vb https://github.com/losttech/Gradient-Samples/blob/master/VB/...
- draw_down 7y agoI don’t get the appreciation for it. Back in those days every time I tried to do something in VB it felt like I was wearing oven mitts. Everything was so clumsy, “easy” in the wrong ways. Something went wrong? No worries, we have `on error resume next`.
- smitty1e 7y agoI keep my favorite VBA jokes in github library called NVBC, the "NecroVisualBasiCon". With the Regex and Scripting runtim COM objects, tools like a string interpolator are within reach.
- eeZah7Ux 7y agoA practical and popular corporate-driven language. Just like Go and Rust. Then the company decides to bend it out of shape or slow down the development. People cannot do anything about it because it's corporate-driven. And yet, people have not learnt the lesson.
- badsectoracula 7y agoWell, yeah, kinda, sort of... difference being that if Visual Basic was open source, it'd probably still be around, just not under Microsoft.
- raintrees 7y agoI still have two products in production that I am supporting, both written in Office Basic on Access - It's been over 10 years now. And my search through FOSS has been for a similar environment, preferably supporting Python 3, now that I reflect upon it. Kind of a hold-over from working in Borland's ObjectVision back in the day, or FoxPro before that (the jump to Visual FoxPro caused me to stumble), or Paradox before that (as well as Ashton-Tate's DB2-3 and variants). And yes, I am a hack who still manages to comment my code, at least at first. One of those "bad examples" I imagine c-corp professional programmers cite in TedX talks. But I do get paid :)
- oceanghost 7y agoMy first "real" job was fixing a VB6 app used in a manufacturing setting that consisted of one 3,000 line function, and one 2,000 line function. And this was a critical system. It certified the units we made were configured correctly-- which were then installed in semiconductor fabs. Also, VB6 is responsible for my favorite bug ever-- an if statement: no more than "if count=0 then" that opened a dialog box, somehow. It was reproducible as well.
- heelix 7y agoI was shocked how fast it actually was. In the VB6 days, it was only slightly slower than the lovingly crafted ATL C++ code for some of the COM component development. It was crazy - rough out a VB component in a few hours, then spend a better bit of the week making it 'real'.
- bastawhiz 7y agoI learned to "seriously" program in VB. First in 6, then every version up through 2018. It was easy to get into because the hard parts (gui programming) were not done with code—or at least, not done with code you ever needed to look at. The error messages helped young me worry about logic and control flow instead of memory management. I got to learn how to build software that was good to _use_, practice algorithms with the insanely good debugger, and build actual executables that I could share. This led me to JS and PHP (asp.net drove me away from .NET for web) which ultimately led to my current career. Granted, there was a lot to learn after I left VB, but for a self-directed ten year old, it was the perfect tool. Whenever I see someone trying to teach a youngster C or C++ instead of VB, JS, or Python (or Ruby) I cringe because there's so much there that they don't seriously need to learn, especially if they're just interested in dipping their toes in software.
- fopen64 7y agoIMHO VB was not respected because you could not write your own components/widgets in VB, you had to resort to C++. Delphi components were all written in Delphi. It was clear VB was a second-class citizen. Due to this factor, and others, VB had the typical Microsoft learning curve: extremely easy to do simple things, and then exponentially difficult to do big things. It was the same in MS-Access that many people thought it was the future of client/server apps, ERP apps, etc. This limitation was lifted in VB6 or so (dumped VB for Delphi when left win16 for win32 so I am not sure).
- maxxxxx 7y agothis started to get interesting with VB4. Suddenly you could create COM servers which especially back then was really difficult to do in C++. VB6 was a really well rounded tool.
- megaremote 7y agoYou couldn't compile it into an app. So you had to distribute the source code. This meant it was a dead-end for anything serious.
- jmkni 7y agoVB6? You could definitely compile VB6 code into an application and distribute it without the source code!
- gumby 7y ago> Instead, VB became famous for a legendary feature called edit-and-continue, which allowed developers to run their programs, find problems, fix them, and then keep going with the new code. This was a sharp difference from almost every other programming environment known to humanity, which force developers to recompile their work and start over after every change. Umm, cough Lisp environments from the 1960s, Lispms, Smalltalk etc...
- mruts 7y agoI wouldn’t expect a VB programmer to really know anything about the higher forms of computing. Maybe I’m being a little harsh though.
- ilaksh 7y agoI will go ahead and say that it still is a better tool in various contexts than what a lot of programmers use now. I'm saying that as someone who did quite a lot of VB6 programming many, many years ago but now generally creates UIs with some HTML or Vue or whatever inside of vim. I think a lot more of what we do is related to fashion as much as any technical reason. It's definitely not cool to program in VB6. People will assume you are not a programmer or just write awful code. But that happens with any tool that really significantly makes programming easier, if it touches on the core paradigm of colorful cryptic text.
- jboles 7y agoI got started with graphical programming with RapidQ, a sort-of cross between VB and Delphi (and the predecessor to RealBasic). I had a 486/Pentium I machine around that time, with not enough hard disk space to install VB (and too young to afford upgrades or VB itself). It was not as powerful as VB, but being able to display graphical widgets in as few lines of code as VB got me hooked. Funnily enough RapidQ also supported writing CGI apps, which was my gateway into server-side programming.
- bluedino 7y agoWe have probably 100,000 lines of VB code at work. Manufacturing environment of course. Some of the worst design patterns you will see. None of it is “modern” Visual Basic. It’s stuff people learned around 1995/96 and stopped there. Objects were never embraced. Libraries are shunned. The project started to encompass every part of the company. It’s truly a picture of “persistence over skill”. The worst part is that a couple years ago, the VB programmers started writing PHP code that is just as bad.
- xmprt 7y agoWelcome to the 2000s!
- bigger_cheese 7y agoAlso in manufacturing similar story. Most of the VB I've seen is front end code to MS Access '97 running underneath. We have been slowly chipping away at it and replacing various components but I wouldn't be surprised if at least some of it still around in another 10 years. All sorts of legacy stuff here Visual Fox Pro - which I think is VB precursor as well. Lots of old 90's Commercial Unix stuff (RS/6000 era - Old C++ code - pre STL etc). Older than that we have a heap of Fortran and mainframe era stuff written in PL/1 language. Code and software here has very long lifespan and not always easy to replace it.
- uchman 7y agoBtw, VB6 still kinda lives on in form of VBA macros on Microsoft Office products
- ocdtrekkie 7y agoI'm still using VB .NET for hobby projects today: My home automation system runs on it. Sometimes I have to convert sample code or examples when I'm having issues to and from C#, but I can write VB a lot faster than other languages, because as the first one I learned, it still comes second nature to me.
- ryanmarsh 7y agoAt great risk to my HN karma I’m gonna share from the heart. VB was the pinnacle of software development. Nothing about it was perfect, except it was easy for anyone to build anything. I saw everything from kids making shareware to phd’s building multi-hundred-million dollar ERP systems. A lot of nice-enough and useful software was built in VB that remained useful and editable over long lifetimes. I pine for something like that in the mobile or web worlds. Everything else I’ve tried is an absolute mess in comparison.
- brisance 7y agoHyperCard. And if you like VB, check out Xojo. https://xojo.com https://xojo.com
- Yhippa 7y ago> except it was easy for anyone to build anything I'm right with you. I taught so many people at places I've worked basic automation with VBA for Excel. People basically used Excel as a database so this was a massive timesaver for them. Being able to record yourself doing something and seeing the generated code was the modern-day software development equivalent of "teaching someone how to fish". > I pine for something like that in the mobile or web worlds Hypercard, but for the year 2019.
- crispinb 7y ago> I pine for something like that in the mobile or web worlds A recentish episode of a python podcast (https://www.pythonpodcast.com/anvil-web-application-development-episode-215/ https://www.pythonpodcast.com/anvil-web-application-developm...) had an interview with one of the founders of Anvil (https://anvil.works/ https://anvil.works/). He claimed VB & Delphi as significant inspirations for their web app platform (using python for front & back ends, with a drag/drop GUI builder). Might be worth a look, if only for curiosity's sake.
- kerng 7y agoOpen sourcing the original VB6 would be an incredible move by Microsoft. Something tells me that this could be a quite successful community project. Possibly for building cross platform apps for phones. I like how we are at least talking again about Visual Basic recently - maybe it inspires the industry to build a super easy to learn language/environment for UI and data apps again. VB had an extremely low barrier of entry, it was truly empowering for many non techies.
- rkeene2 7y agoOr at least VB 1.0 for DOS
- bitwize 7y agoThey should open-source Q(uick)Basic and with it GORILLAS.BAS, MONEY.BAS, NIBBLES.BAS, and DONKEY.BAS. State-of-the-art programming power for your XT, 286, or higher PC compatible, free and open source.
- anthk 7y agoCheck QB64. It runs even that Stephen King novel based text adventure.
- ijidak 7y agoYes, please! Would love to develop quick personal use apps using a modernized vb6. I'm a big .Net & C# programmer. But feel like no tool is as efficient for quick GUI apps as VB6 was.
- FigmentEngine 7y agoI programmed VB from the first version up to vb.net to me it had these big draws 1) REALLY good documentation, this was the peak of MSDN. 2) object orientation for ui component reuse just made so much more sense than message queues in c/c++ 3) out of the box ui that looked like a windows app. easy to make something that looked like users expectation of a windows app 4) speed of design and iteration. you could build new ui really quickly, and iterate with the edit/continue feature 5) it was cheap compared to other products, and continued to evolve with new versions on a regular basis. it had momentum
- lostgame 7y agoVB6 got me started on programming, in a really tangible way I could really understand - when I was only about ten years old. I was lucky enough to be playing Sonic 3 and Knuckles on my Sega Genesis enough that I eventually asked my youth pastor, whom I knew was in IT, 'how do I make a game like this?' He responded 'I dunno' and handed me a copy of Visual Studio 6 on a CD, and I grabbed a bunch of books from the library, and foolishly (but also correctly) tried to start with C/C++. The frustration of simply getting graphics to appear on the screen was enough to drive me away from it. While I understood the logic, what I really needed was a basic-level 2D graphics API like Cocos2D, likely. Visual Basic was a very nice balance between code and it's visual link - I get the same feeling in a great way with Xcode and Interface Builder today. I owe it my career. :)
- m_mueller 7y agoWasn't VB pretty much a clone of Xcode's granddaddy, the IDE that came with NeXT step? Even the idea behind ActiveX was copied from there AFAIK. No wonder Xcode reminds you of VB then.
- lostgame 7y agoThat's a really cool note! I actually own a NextCube...I hadn't made that link, especially when I was younger and actually had just gotten started.
- dopeboy 7y agoSame. I wasn't smart enough to make sense of what was going on but the ability to connect a GUI to actions and event was really neat. I still remember marveling at the fact I made a standalone exe---that I could share with the whole world---that closed when you clicked the only button on it. Web, particularly Dreamweaver and Frontpage served as the entry point for me.
- cm2187 7y agoVBA (also VB6) is what got me started. It is hard to underestimate the power of placing a scripting language at the fingertips of Office users, arguingly a massive user base of people who need to get stuff done immediately. I just wish Microsoft would have a more modern language integrated to Office. They were actually very close to doing it. They created VSTA, which was a mini Visual Studio integrated in Office, allowing to integrate any .net code in Office just in the same way as VBA. I think one of the components of Office 2007 even shipped with it. Then they killed it.
- projektfu 7y agoI’m just going to put my two cents into this outpouring of love for VB. Of all the languages that were available, this one was one of the worst. For some reason they paired it with a highly useful RAD environment. (Probably because of billg’s historical love for Basic). Error handling was dismal. It was painfully obvious very few VB developers understood it and most applications would crash on failed IO. I’m talking production applications sold to third parties with 10+ years in the field. Syntax was incredibly clumsy. String manipulation was painful. It had classes but no inheritance. Small programs required complicated installers because OLE was the basis of all libraries. Most components came from for profit ISVs, and community sharing was actually rare. Many components had confusing license terms enforced by software that was as buggy as VB code often was.
- cm2187 7y agoYou are describing the 90s, not VB specifically.
- jimmcslim 7y agoThis seems relevant; RAD Basic, a new IDE for Visual Basic 6. http://radbasic.dev http://radbasic.dev Personally, I’ve always thought there was a niche for a VB6 runtime implemented on .NET that could intercept method calls an enable a system to be slowly rewritten in C#; issues with COM interop esp. visual components might be a challenge.
- Renaud 7y agoA great idea that I hope they can make happen. Sounds like quite an undertaking though.
- holri 7y agoI am very thankful for MS to abandon VB Classic and suddenly destroy years of my work on the merit of an egoistical businesses decision. After that I valued the freedom of software as no 1 priority, rebooted and never looked back.
- lopmotr 7y agoThe tool to port to .Net wasn't as bad as the article claims. I ported a pretty big messy WinForms application which was somebody else's years of work and today it's even more successful than ever. It took maybe a week or two to work through the many 100s of errors, but none were that difficult. I had already learned not to rely on proprietary binary libraries that were popular back then because you knew they wouldn't be supported in the future when you'd need them. I'm very grateful for VB.Net. It's much cleaner and safer than VB6. My biggest wish now is for a way to port to C# piecemeal instead of doing the whole project in one shot.
- holri 7y agoI never tried to porting tool. Because porting to another proprietary platform did not make any sense to me after I experienced first hand what non-freedom means. I learned my lesson the hard way.
- cm2187 7y agoHonestly there were many ugly things in VB classic that the destruction of backward compatibility fixed. Like the useless and inconsistent "set" keyword. Parameters being byref instead of byval by default. Collections being inconsistently 0 based or 1 based. Parenthesis for methods called as function but not as sub.
- gautam1168 7y agostopped reading after the third time the author dissed javascript
- robomartin 7y agoVB was a money maker, flat out. You could deliver great solutions to problems while standing on your head. And the fact that it extended into Office S VBA made it even better. We wrote plenty of code in VC++, but I have to admit that VB had massively better ROI.
- wolfspider 7y agoIt's worth mentioning that VB6 became a very potent tool for script kiddies to wreak havoc all over the place. This was ~14 years ago and there was no good decompiler back then. VB6 compiled to machine code (.exe) so trying to trace exploits against software was within the ASM itself. Aside from that it was a solid workhorse language that was breezy compared to VS2005 and MFC programs. I still have nightmares to this day that start out with me writing an include to stdafx.h because something went wrong...
- tomc1985 7y agoDoEvents
- cm2187 7y agoStill in vb.net! Async/await before its time!
- rkagerer 7y agoAnybody think there's an opportunity to bring a VB-like experience to web programming? Could widespread availability of WebAssembly help in that regard?
- cm2187 7y agoThe article present the fact that VB is accessible to non professional programers as "a problem". I could not disagree more. The future isn't to coding being a specialized field, but to everyone having basic coding knowledges. VB in that respect was extremely powerful, and its integration with Office a genious idea. The problem rather is that VB6 is a 1990s language and that not only Microsoft has never made a more modern scripting language available in Office (and I mean pre-installed on everyone's machine, with an integrated IDE, etc. I know there are all sorts of hacks and addins) but if anything they seem to consider scripting nothing more than a security risk and are doing anything they can to lock office down and make it hard for people to script it.
- xpil 7y agoI wrote my first program in QBasic. I played Gorillas (like, a lot). If they decide to kill VB, I'm gonna cry.
- mpalfrey 7y agoI started off doing VB6, both at a personal level, then a few years later, commercially. It wasn't bad. If you wanted a quick app with a few forms and a backend DB, then this was a decent choice. I quite like it.