What a great thread.
Question 1 (is there a concern with using commercial programs?):
There's no problem with using a commercial program as long as you know precisely what the program is doing. Most reputable commercial programs perform the majority of calcs correctly but will either have some strange or completely wrong calculations buried in there somewhere. Should most people use commercial programs? Absolutely. Do most people dig in deep enough to be responsible in their use? Who knows.
Examples are:
RISA's version from last fall did Cb calcs completely wrong in some cases.
ETABS' composite beam design had lots of problems the last time I checked, which was a couple of years ago. It spat out lots of cool-looking output, but some of it was either wrong or just silly.
RISA's idea of column effective length calcs for rigid frames is not even in the ballpark of technically correct.
ETABS' automatically generated wind load combination factors were wrong the last time I checked and had to be manually fixed every time.
The RAM system used obscolete floor vibrations criteria until just recently, 10 years after AISC DG11 was published. I've seen this one actually cause a large problem on one structure.
The last time I checked (about 8 years ago) CFS did not determine the correct flat widths for the case of intermediate stiffeners along a large flat panel width.
With the use of a rigid diaphragm, braced frame beams get absolutely zero axial load in every single commercial program I've used. With both beam nodes attached to the diaphragm, there's no elongation, therefore no strain, therefore no stress, and therefore no force.
SAFE completely excludes the one-way shear check for slabs and footings.
I have about 18 more of these but think that's enough.
The bottom line is that you have to know in nauseating detail what your program is doing.
As far as in-house software:
I've seen Excel used extensively over the years and think that it is great for simple calculations or calculations that are simple and fit well into tabular format. For more complex calcs, forget it. Excel programming turns into unintelligible spaghetti code after it gets past some level of complexity.
I like Mathematica for academic-type stuff but find it to be cumbersome for design-type stuff. It also has the huge downside that practically no structural people outside academia use it, making it impossible to trade files with clients. I really like its stability and speed. It is an extremely robust program.
Mathcad is a fantastic program on which to base a structural engineering company's in-house software. It is not super-stable or fast like Mathematica, but the output is truly excellent. It is easy to read, flows from top-to-bottom (unlike spaghetti-coded Excel junk), and can be formatted to be very compact and attractive. This last one is why it's better than Mathematica for design-office usage. Mathematica flows line-to-line so very inefficiently uses the paper. At this point, I've tried out everything that I could find and think that Mathcad is the best by a long shot for typical structural engineers.
VB? C++? Mathcad has a monstrously-large advantage over actual programming languages in speed of development and ease of modification. I can write an entire design program by the time I set up the variables in a C++ program. These are suitable for rare occasions that are outside the scope of Mathcad.
I kinda wandered off your subject -- sorry.
DBD