Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Quickly and easily design and make a GUI program with n real training?

VB6 got me into programming as a kid.

I mostly use python for stats stuff. I sorta understand how to run up a GUI using tkinter, but it seems like a huge pain in the ass.

I'm sure Visual Studio offers the ability to do whatever VB6 could with a GUI, but it isn't obvious how to get there.

VB6 was one nice thing - build 'a program' as you understand them in Windows. Why the fuck is it so hard nowadays? VS isn't intuitive - it's a firehouse of information and I feel like you need training to use it. That is a bummer.

I just want to Lego-assemble a cute GUI-based program that I can make into a binary and email my wife to use. But I need to dedicate 70GB and two weeks of study to get there, I guess.



>>VB6 was one nice thing - build 'a program' as you understand them in Windows. Why the fuck is it so hard nowadays? VS isn't intuitive - it's a firehouse of information and I feel like you need training to use it. That is a bummer.<<

Great question. And I agree with the sentiment.

My opinion for "why is it so hard today": it has to do with the way .NET evolved right after its birth. .NET was a response to Java by Microsoft. What Microsoft did in effect was attempt to smother the Java juggernaut by introducing their own Java with J++ (Anders' team) but only available on Windows (their attempt to prevent the allure of Java's platform independence).

By all accounts that attempt was an astounding achievement from Redmond. It boasted interactive tools to create GUI drag and drop features users were accustomed to in VB6 but glaringly missing in the Java world. This was with Visual Studio 97. Then the lawsuits with Sun came. The aftermath of the J++/Microsoft Java debacle was the beginning of .NET. A "Java" for Windows with attendant crazies of the Java world. This is the reason why it is hard. Java was "hard" compared to VB6, therefore .NET had to be hard in the same way.

All analogous complexities associated with the Java world: build tools, runtime versioning tools and intermediate code compilers etc were forever required, keeping this huge katamari ball of technical debt alive for over 20 years.

Now we have .NET Core. So we've just reset the clocks and in one swoop gone right back to 1998 with a new Microsoft Java but this time it is cross platform!

22 years of a meandering path that ends up right where we started!

I am, quite frankly, exhausted.


You write:

> ...astounding achievement from Redmond. It boasted interactive tools to create GUI drag and drop features users were accustomed to in VB6 but glaringly missing in the Java world. This was with Visual Studio 97

Thay were not "glaringly missing in the Java world" in 1997 when Visual Studio was released. By that time at least these 2 IDEs with "drag and drop" were released and used already: Symantec Visual Café (a good one!), and a beta of IBM VisualAge (second part of 96). VisualAge came with specific ibm's understanding of drag and drop, however the Visual Café's experience was really similar to VB and much easier than J++ from what I remember. I tried all of them at the time including JBuilder and Sybase. JBuilder was my best for quite time.


Correct. I myself used "eclipse's" parent (Visual Age) in the early days but the point I was making was not so much that "drag and drop" was missing - it was just too cumbersome and difficult even in that! In VB6, it was trivial to get a form to look the way you wanted it to look. Gridbag layout on Java Swing maimed many, and those that got off the VB6 boat soon realised that Java land was much much harder even with their GUI drag and drop tools.

BTW, I used JBuilder extensively. What a topnotch tool from Borland. Pity they didn't survive the virulent competition during those IDE wars period. I still remember settling an argument with a colleague about his insistence to use the newly arrived Netbeans, while I fired up my JBuilder IDE (Yellow Porsche splash screen IIRC), created a gui, added jdbc data controls, coded a few lines and hit compile - ALL while his Netbeans was still loading with that dastardly progress bar.

(These comments have been much needed catharsis for me.)


From memory JBuilder did have issues with its GUI builder.

Code emitted JBuilder's tools was not isolated from other code that was written for the application. It was easy to add a line of code that would make the included builder tool to not show the resultant GUI correctly.

This was from JBuilder 9 and JBuilder 2006, other than that issue it was a really nice IDE to use.


In 96 there was also Xelfi which later became Netbeans.

The original version was an attempt at Delphi for Java and I liked it far better than Netbeans later, but I came from Delphi to Java so that makes sense.


>>but I came from Delphi to Java so that makes sense.

Same. But I have remained with Delphi. I think we are now known as the lost generation. :-)


Doing .NET and Java nowadays, started using Borland products with Turbo Basic, jumped into Turbo Pascal 3.0, all the way up to Delphi 1.0 and C++ Builder, before caving in to the MFC world back then.

Accepting new members into the club? :)


Delphi club membership is only for those who possess a ruthless, deep and time-transcending sense of commitment to these two aspects of software development:

1."No bullshit" - stick to the fundamentals and don't waste time over-engineering, relying on complex builds, producing ambiguous compiles (ok, we're still fixing this), relying on bulky runtime architectures. Have straightforward source code. Native. Straight-talking. Quick-compiling. Hard-hitting. Because Shipping Matters(tm). Only thing that matters. Shipping. No bullshit.

2. "Fiercely independent mindset" - Members know that they must use the right tools for the right job, but members must also display a strong ability to not be swayed by what employers are hiring for. Latest shiny flavour of tech, framework, language, might look good on your CV but many times the conclusion for "What is the right tool for this job?" can still be answered: "Delphi". Stand your ground.

So, if you are a CV-oriented programmer, you will most likely not want to do Delphi. There is an indelible and horribly misinformed meme out there that there are no Delphi jobs or that Delphi is dead, is old, outdated and irrelevant in modern software architectures. I have seen this ageist misinformation come out as lame attempts to ridicule Delphi programmers (jealousy?), branding them luddites and dinosaurs. We never retaliate. Quiet stoicism is a prerequisite for club membership.

Finally, the Delphi club also has a new membership protocol: always buy them a beer. No matter whether they eventually get accepted in the hallowed halls of this quiet corner. :-)

Cheers! <clink>


Still delivering stuff on ASP.NET Framework 4.7.x, have delivered a couple of Forms/WPF projects during the last decade to lifetime science R&D labs, own all Delphi books from Packt, I guess it kind of qualifies for the membership pitch. :)


I doubt there any thing today that even come close to Delphi in terms of RAD. It is unfortunate that Software as an industry is even worst than fast fashion.


.NET does come close though, given its heritage, specially now that AOT compilation is finally having a proper story (less NGEN and more .NET Native).

Delphi is a victim of its stewards management post Borland.

Last great decision, remove reference counting and back to full manual memory management on the upcoming Delphi version.


Java GUIs were weird purple garbage in those days. Horribly slow, painful to deal with.


That is what happens when one stays with AWT, does everything on the main thread, and doesn't bother to read Java UI design books like Filthy Rich Clients, or integrate component libraries like JGoddies.

However I do agree Visual Basic and Delphi were much better, and if Java hadn't happened we wouldn't have lost 20 years playing around with VMs and dynamic languages, to finally start paying attention to AOT, value types on type safe languages.


I understand that nostalgia. You might enjoy playing with gambas: http://gambas.sourceforge.net/en/main.html

Or maybe Xojo: https://www.xojo.com/

I think Xojo was known as "RealBASIC" in the late 90s/early 00s and was really in the same spirit (but more cross platform) as VB6.

HyperCard occupies the same spot for me that VB6 seems to occupy for you. Today for stuff I'd have used that for in the 90s, I just stand up a quick little web app and text or email a link.

That's in no small part because nearly all of my wife's computing is done on an iThing and not on a computer that she could readily download and run something on. Unless I want to throw my cute GUI in an app store, it needs to be web-based now.


Xojo is amazing and there are tons of commercial plugins to do stuff Multiplatform. Yea its not free but I don't mind paying to make life easy.


Eh. VB6 was paid too. IIRC it used to be on the order of $600 to get the standalone version.

I downloaded Xojo and kicked the tires. It was absolutely cool to see that an environment like this lives on. It really does feel like a successor to VB6.


Yeah VB got me into programming as well, there was a book literally called "programming for kids", it came with a copy of Visual Studio 6 and it was a few simple things like making a calculator, making a simple pong clone etc....that was the best thing as a 10 year old. Now I'm a professional C++ programmer, so....yeah, thanks VB! We'll miss you.


I learned with turbo c++ compiler yellow on blue on dos. But quake c was my formative nostalgic experience.


Most people who do windows forms in powershell design them in XML.

If you're interested in a GUI editor, this is the tool people are using these days:

https://www.sapien.com/software/powershell_studio

It's a paid product, but comparatively cheaper than VB6 was.


Oof. I hate powershell studio. It weirdly splits up the files and none of them are .ps1 and they obliterate all good standards and practices forcing you to leave arbitrary code in the project so that theres no way to know what pieces fit with what. Youd sh*t yourself if you saw how the Sapien community handles not blocking the rendering thread that their GUI forms run on (so it doesnt literally freeze up and crash).


A whole lot of us got into programming as kids because of VB. What do young people have today like it?


Scratch is the easiest way to teach programming to kids in a visual way. Much easier than VB, you can start at a younger age, but you can’t make real apps. You can however make games and control devices like the microbit.

The progression from there is python for those who want to control devices, or web dev for those more drawn to the visual design part. A missing piece is something for making games that sits in the middle of scratch and C++/unity. I don’t know how kids make that transition.


No wonder so many programmers stick to boring business apps! ;-)

I got into coding qbasic (meh) & amiga (yeaaah) game engines in the 80s.

Currently teaching kids with Computercraft, to manipulate virtual worlds rather than boring spreadsheets.

IMO that sort of computer work will be obsolete by the time today’s kid are grown.

I’d probably avoid more than basic coding in general anymore and focus on math-y stuff. Just my take on where need will be, and discussing this with education researchers, and other thinkers.

I have a hard time believing we’ll carry as much code from the last couple decades as we had to from the previous few.

So much of it these days is web ui’s with a short shelf life relative to foundational code we shlepped forward in kernels, banking, and complex industry systems.


I got into coding via Timex 2068 Basic, Z80/8086/68000 Assembly, Turbo Basic/Turbo Pascal Demoscene meetups.

Maybe coding the Arduino/ESP32 game boy clones is appealing to today's kids.


From my friend's kids, apparently python is the most common to start coding.


HTML/JavaScript. That has the shortest start-making-a-GUI story (plain JavaScript; React/Webpack/etc. absolutely do not have this level of accessibility).


I'd say Vue is a good stepping stone to other frameworks as well. I feel more productive using Vue than pure Javascript.


It is a good stepping-stone, but it still isn't on Visual Basic's level of accessibility


Winforms with C#?


Moding games


> VB6 was one nice thing - build 'a program' as you understand them in Windows. Why the fuck is it so hard nowadays?

My takes is because it's not modular enough. Sure it's easy to plop this and that components here and there, add events, etc. However as requirement changing each pages / sections need to be changed as well. Not to mention portability to linux or mac. That and we're talking about db access, drivers, and security (in memory data sniffing / tepering).

Of course it doesn't applied to all kind of apps, but those who need constant changing are the one who pays Microsoft bills.


Same. My brother brought home an illegal copy of visual studio and I was hooked pretty much immediately. We had no internet at the time so I found myself using the MSDN knowledge base articles for potential explanations.

It really annoyed me that I couldn't get nice bitmaps in menus so I eventually learned about Ownerdraw. That changed my life. Having to hook into the wndproc and all the other windows api calls introduced me to C, and so I naturally started experimenting with C++. All without internet, stackoverflow or groups.

I'm now write C++ for a living.


Books! I read one that was all about custom controls, must have been about 300 pages and at the end presented code that provided subclassed versions of all the MS Windows 3.1 controls with 3D effects.


> Quickly and easily design and make a GUI program with n real training

If you're starting from scratch, VB.NET is not really any harder to use for this purpose than VB6.


Curiosity got the best of me so I have to ask...why Trent Lott? Without an explanation I find the seemingly pure randomness amusing.

edit - I'm guessing whoever downvoted doesn't know who Trent Lott is.


It wasn't exactly sure randomness. I was registering for some band forum as an edgy teen and he was on CNN stroking Strom Thurmond's ego

It's wierd enough that any old niche forum friends I've lost touch with would recognize it...and I can't imagine anybody else would use it coincidentally. He's been a non-figure for years and years

Your curiosity demands more upvotes than I've got!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: