Simple Windows Development Tools?
fwc asks: "Over the past few years, I've been fortunate to be able to avoid writing a Windows GUI application, however this good luck is coming to an end. In the next few weeks, I need to write a fairly simple application which will need to display data received from a serial port in a decoded (and graphical) form via a Windows GUI. Unfortunately, my skills in this area are out of date, since I haven't written any GUI apps for close to 10 years. Because this program needs to be fairly small and easy to install, the use of Perl/tk isn't a valid option. What options do I have to build a small application on Windows, without a large learning curve?"
Ask yourself - how would you've done it on Unix? Well - Perl/tk may be not an option, but definitely you can write a no-GUI program to receive data from your serial port and store it somewhere. Then make a small web-server (plenty of options - no need to install apache or stuff) and serve your data in graphical form to a web-browser.
XUL (pronounced "zool") is Mozilla's XML-based User interface Language that lets you build feature-rich cross platform applications that can run connected or disconnected from the Internet.
How powerful is it? Well, Mozilla Firefox and Thunderbird are two examples.
http://www.mozilla.org/xpfe/
http://www.mozilla.org/projects/xul/
http://www.xulplanet.com/
If what you're interested in is just getting the job done, you can't beat VB... or RealBasic, which I'm partial to, since I do more of this kind of thing on the Mac, but it's not mainstream.
There are a lot of knocks on VB, but most of them are snobbery, pure and simple.
If you're interested in earning status with your developer peers, boosting your career, making your resume marketable... stay away from VB.
But if what you're interested in is just getting the job done, it's a good choice.
Postscript: do not let Microsoft's marketers fool you into thinking there's any similarity between Visual Basic and Visual C++. Visual C++ is not just Visual Basic with a different programming language component. I wish it were, or I wish they had a product like that.
VC++'s "visual" features are shallow, fragile, and paper-thin.
"How to Do Nothing," kids activities, back in print!
I have a bit of experience with both Tck/Tk and Visual Basic 5. Here's what I think:
Tcl/Tk is great for dashing off little graphical apps that do stuff. I once wrote a fully-functional GUI front end for "cdplayer" in 8 lines and ten minutes. It's the easiest tool I've ever used for hand-coding GUIs but you can also get GUI builders for it.
Good things:
Bad things:
If I were going to write a large or complex Windows app today, I'd probably write the interface in Tcl/Tk and the actual complex stuff in C.
As for Visual Basic, I didn't really use it enough to have an informed opinion. When I used it, I found that it was really easy to create a GUI but the IDE became irritating to use once I needed to write larger amounts of actual code. I also found the help reader annoying (but this was version 5--they may have improved since) and the documentation condescending.
It worked well as long as I didn't try anything too unusual. I don't think I could do Tcl/Tk trick of creating a new kind of widget by adding event handlers to a label widget in Visual Basic. But, I didn't need try it and it worked okay for what I needed to do.
Of course, given how MS radically changed the language with VB7.net and stopped supporting VB6, I don't think I'd ever use VB for any code I thought might be valuable.