TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

The Rise and Fall of Visual Basic

171 点作者 chwolfe将近 6 年前

45 条评论

gus_massa将近 6 年前
I&#x27;ll copy one of my recent comments with some minor changes:<p>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.<p>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.<p>My last big problem was that it doesn&#x27;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.<p>--<p>About the article: I agree with most of it.<p>&gt; <i>Also on the big side: There was no more edit-and-continue feature.</i><p>I still miss that when I program in other languages. It kills so many (all!) optimizations possibilities, but it&#x27;s extremely handy.<p>&gt; <i>VB.Fred and the .NET Solution</i><p>I call it VB# or VB#.Net instead of VB.Fred.
评论 #20255497 未加载
评论 #20260336 未加载
评论 #20272523 未加载
评论 #20260011 未加载
评论 #20259157 未加载
评论 #20261972 未加载
评论 #20260733 未加载
jasode将近 6 年前
<i>&gt;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><p>I agree that Edit-&amp;-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 <i>graphical widgets</i> which was exposed to the programmer via an abstraction called &quot;windows forms&quot;.<p>If one takes a look at a 1990s era Win32 &quot;hello world&quot; 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&#x27;t even handle a click event. One would have to add a switch case statement for the &quot;WM_LBUTTONDOWN&quot; message.<p>The VB &quot;winforms&quot; IDE eliminated all that and let a programmer &quot;drag &amp; drop&quot; UI elements onto a &quot;form&quot; and put code on a &quot;click&quot; 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&#x2F;C++ and the raw Win32 API.<p>A lot of VB programmers I knew were not even aware of Edit&amp;Continue but they nevertheless were able to drag a command button from the UI toolbox and add code to the button_click() event.<p>Another VB feature that I believe was more utilized than Edit&amp;Continue was the <i>VBX components ecosystem</i>. Lots of programmers would buy add-on VBX widgets from various companies to enhance the UI such as calendar date picker, datagrids, charts &amp; graphs, etc.<p>[0] <a href="http:&#x2F;&#x2F;www.prowaretech.com&#x2F;Computer&#x2F;Windows&#x2F;WinApiHello" rel="nofollow">http:&#x2F;&#x2F;www.prowaretech.com&#x2F;Computer&#x2F;Windows&#x2F;WinApiHello</a>
评论 #20255932 未加载
评论 #20257690 未加载
评论 #20258937 未加载
评论 #20263244 未加载
评论 #20260058 未加载
评论 #20258409 未加载
评论 #20256081 未加载
EdgarVerona将近 6 年前
Yet another interesting benefit of&#x2F;interesting feature of VB is that it was the Python of its day in terms of the &quot;there&#x27;s a library to do that&quot; 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.<p>That <i>combined</i> 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 &quot;Rapid Application Development&quot; language.<p>I also saw some nightmares in my days, though I don&#x27;t blame VB as much as the people who created the app. The most notable one was a document management system that I&#x27;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 &quot;forms&quot; 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 <i>thousands</i> 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 &quot;untangle the global variable mess.&quot;
pjmlp将近 6 年前
I have done a couple of projects during the last years at a few life sciences companies part of Fortune 500.<p>Their researchers aren&#x27;t using R, Python or even eyeing on Julia.<p>They use Excel with VB macros and those skillful enough, get IT to install them Visual Studio Professional and carry on using VB.NET.<p>Also remember that VB.NET, contrary to F#, enjoys equal footing with C# across all .NET deployment scenarios and Visual Studio graphical tooling.
评论 #20256582 未加载
评论 #20261270 未加载
评论 #20257644 未加载
gumby将近 6 年前
&gt; 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.<p>Umm, <i>cough</i> Lisp environments from the 1960s, Lispms, Smalltalk etc...
评论 #20262048 未加载
ryanmarsh将近 6 年前
At great risk to my HN karma I’m gonna share from the heart.<p>VB was the pinnacle of software development.<p>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.<p>A lot of nice-enough and useful software was built in VB that remained useful and editable over long lifetimes.<p>I pine for something like that in the mobile or web worlds. Everything else I’ve tried is an absolute mess in comparison.
评论 #20260721 未加载
评论 #20260054 未加载
评论 #20260052 未加载
ravenstine将近 6 年前
Anyone wanting to relive the glory of VB but on a modern system can use Gambas:<p><a href="http:&#x2F;&#x2F;gambas.sourceforge.net&#x2F;en&#x2F;main.html" rel="nofollow">http:&#x2F;&#x2F;gambas.sourceforge.net&#x2F;en&#x2F;main.html</a>
评论 #20256010 未加载
kerng将近 6 年前
Open sourcing the original VB6 would be an incredible move by Microsoft.<p>Something tells me that this could be a quite successful community project. Possibly for building cross platform apps for phones.<p>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&#x2F;environment for UI and data apps again.<p>VB had an extremely low barrier of entry, it was truly empowering for many non techies.
评论 #20260781 未加载
评论 #20261238 未加载
评论 #20260587 未加载
FigmentEngine将近 6 年前
I programmed VB from the first version up to vb.net<p>to me it had these big draws 1) REALLY good documentation, this was the peak of MSDN.<p>2) object orientation for ui component reuse just made so much more sense than message queues in c&#x2F;c++<p>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<p>4) speed of design and iteration. you could build new ui really quickly, and iterate with the edit&#x2F;continue feature<p>5) it was cheap compared to other products, and continued to evolve with new versions on a regular basis. it had momentum
jimmcslim将近 6 年前
This seems relevant;<p>RAD Basic, a new IDE for Visual Basic 6.<p><a href="http:&#x2F;&#x2F;radbasic.dev" rel="nofollow">http:&#x2F;&#x2F;radbasic.dev</a><p>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.
评论 #20271602 未加载
Doubl将近 6 年前
The people still developing in vb6 are a pretty relaxed lot these days, no one worries any more that the apps won&#x27;t run in windows, they will, forever. It&#x27;s still possible to get new activex components for skinning or whatever and if all else fails there&#x27;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.
JeanMarcS将近 6 年前
The 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.<p>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.<p>And thanks to the simplicity of Visual Basic it was possible to do so !<p>And then the demos lead to sales and we are still here 22 years later
评论 #20262194 未加载
jboles将近 6 年前
I got started with graphical programming with RapidQ, a sort-of cross between VB and Delphi (and the predecessor to RealBasic). I had a 486&#x2F;Pentium I machine around that time, with not enough hard disk space to install VB (and too young to afford upgrades or VB itself).<p>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.
projektfu将近 6 年前
I’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).<p>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.
评论 #20261399 未加载
raintrees将近 6 年前
I still have two products in production that I am supporting, both written in Office Basic on Access - It&#x27;s been over 10 years now.<p>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&#x27;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&#x27;s DB2-3 and variants).<p>And yes, I am a hack who still manages to comment my code, at least at first. One of those &quot;bad examples&quot; I imagine c-corp professional programmers cite in TedX talks. But I do get paid :)
holri将近 6 年前
I 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.
评论 #20261286 未加载
评论 #20260959 未加载
karmakaze将近 6 年前
VB was the greatest thing I&#x27;d seen (before I saw SmallTalk or NeXTSTEP). I preferred the 1.0 &#x27;edit on your desktop&#x27; over the later nested window UX.<p>I had recently taken OS&#x2F;2 Presentation Manager courses at Microsoft and started to tinker with making an OS&#x2F;2 version. The toy turned into a client&#x2F;server product for the company that produced code generator and analysis tools for enterprise. It eventually because a cross-platform tool running on OS&#x2F;2 or Win NT and targeting OS&#x2F;2 and Win32&#x2F;Win16. A separate X11 editor targeted several Unixes using the same document format and generator templates.<p>Good times.
评论 #20258468 未加载
ilaksh将近 6 年前
I will go ahead and say that it still is a better tool in various contexts than what a lot of programmers use now.<p>I&#x27;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.<p>I think a lot more of what we do is related to fashion as much as any technical reason.<p>It&#x27;s definitely not cool to program in VB6. People will assume you are not a programmer or just write awful code.<p>But that happens with any tool that really significantly makes programming easier, if it touches on the core paradigm of colorful cryptic text.
fopen64将近 6 年前
IMHO VB was not respected because you could not write your own components&#x2F;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.<p>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&#x2F;server apps, ERP apps, etc.<p>This limitation was lifted in VB6 or so (dumped VB for Delphi when left win16 for win32 so I am not sure).
评论 #20259035 未加载
评论 #20260146 未加载
wolfspider将近 6 年前
It&#x27;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...
AdrianB1将近 6 年前
I 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&#x2F;Access&#x2F;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&#x27;s puppet to put up with the VB mess.
评论 #20257550 未加载
bastawhiz将近 6 年前
I learned to &quot;seriously&quot; 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.<p>This led me to JS and PHP (asp.net drove me away from .NET for web) which ultimately led to my current career.<p>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&#x27;s so much there that they don&#x27;t seriously need to learn, especially if they&#x27;re just interested in dipping their toes in software.
lostmsu将近 6 年前
It is alive and kicking: deep learning with TensorFlow on VB.NET: <a href="https:&#x2F;&#x2F;github.com&#x2F;losttech&#x2F;Gradient-Samples&#x2F;blob&#x2F;master&#x2F;VB&#x2F;FashionMnistVB&#x2F;FashionMnist.vb" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;losttech&#x2F;Gradient-Samples&#x2F;blob&#x2F;master&#x2F;VB&#x2F;...</a>
lostgame将近 6 年前
VB6 got me started on programming, in a really tangible way I could really understand - when I was only about ten years old.<p>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, &#x27;how do I make a game like this?&#x27;<p>He responded &#x27;I dunno&#x27; 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&#x2F;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.<p>Visual Basic was a very nice balance between code and it&#x27;s visual link - I get the same feeling in a great way with Xcode and Interface Builder today. I owe it my career. :)
评论 #20261014 未加载
评论 #20261416 未加载
评论 #20260885 未加载
jacquesm将近 6 年前
VB and Delphi as well as other &#x27;RAD&#x27; software from the 90&#x27;s still has its fans, and some of these systems power very large installations even today. You wouldn&#x27;t know about it because all you see is the outside but behind the scenes you&#x27;d be surprised what is running.
评论 #20257804 未加载
cm2187将近 6 年前
The article present the fact that VB is accessible to non professional programers as &quot;a problem&quot;. I could not disagree more. The future isn&#x27;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.<p>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&#x27;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.
zubairq将近 6 年前
I 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<p>(Full disclosure: I work at Red Hat but my views do not necessarily reflect my employers views)
评论 #20256738 未加载
uchman将近 6 年前
Am 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
评论 #20259774 未加载
bluedino将近 6 年前
We 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&#x2F;96 and stopped there.<p>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”.<p>The worst part is that a couple years ago, the VB programmers started writing PHP code that is just as bad.
评论 #20259968 未加载
评论 #20259475 未加载
pier25将近 6 年前
As 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&#x27;t fail me. It was a catalog of Starcraft units.
oceanghost将近 6 年前
My first &quot;real&quot; 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.<p>And this was a critical system. It certified the units we made were configured correctly-- which were then installed in semiconductor fabs.<p>Also, VB6 is responsible for my favorite bug ever-- an if statement: no more than &quot;if count=0 then&quot; that opened a dialog box, somehow. It was reproducible as well.
rkagerer将近 6 年前
Anybody think there&#x27;s an opportunity to bring a VB-like experience to web programming? Could widespread availability of WebAssembly help in that regard?
ocdtrekkie将近 6 年前
I&#x27;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&#x27;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.
heelix将近 6 年前
I 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 &#x27;real&#x27;.
robomartin将近 6 年前
VB 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.<p>We wrote plenty of code in VC++, but I have to admit that VB had massively better ROI.
soup10将近 6 年前
Started 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 &quot;concept clutter&quot; is beginner friendly.
uchman将近 6 年前
Btw, VB6 still kinda lives on in form of VBA macros on Microsoft Office products
mpalfrey将近 6 年前
I started off doing VB6, both at a personal level, then a few years later, commercially.<p>It wasn&#x27;t bad. If you wanted a quick app with a few forms and a backend DB, then this was a decent choice.<p>I quite like it.
smitty1e将近 6 年前
I keep my favorite VBA jokes in github library called NVBC, the &quot;NecroVisualBasiCon&quot;.<p>With the Regex and Scripting runtim COM objects, tools like a string interpolator are within reach.
xpil将近 6 年前
I wrote my first program in QBasic. I played Gorillas (like, a lot). If they decide to kill VB, I&#x27;m gonna cry.
tomc1985将近 6 年前
DoEvents
评论 #20261292 未加载
dvdhsu将近 6 年前
I’m so glad people are finally talking about VB! For a certain subset of programming, VB is very effective.<p>I’ve been working on “VB, but hosted in the cloud, and built specifically for developers”: <a href="https:&#x2F;&#x2F;tryretool.com" rel="nofollow">https:&#x2F;&#x2F;tryretool.com</a>. We’re still early, so I&#x27;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 &#x2F; GraphQL APIs.<p>(Our docs are at <a href="https:&#x2F;&#x2F;docs.tryretool.com." rel="nofollow">https:&#x2F;&#x2F;docs.tryretool.com.</a>)<p>Edit: removed a part I didn’t fully agree with, but paraphrased.
评论 #20255683 未加载
评论 #20256007 未加载
评论 #20257536 未加载
chunsj将近 6 年前
The story is behind the paywall but I think from my experience that the VB had been an inferior version of smalltalk.
评论 #20255461 未加载
gautam1168将近 6 年前
stopped reading after the third time the author dissed javascript
eeZah7Ux将近 6 年前
A practical and popular corporate-driven language. Just like Go and Rust.<p>Then the company decides to bend it out of shape or slow down the development. People cannot do anything about it because it&#x27;s corporate-driven.<p>And yet, people have not learnt the lesson.
评论 #20257143 未加载