VBA Going Away, Macs Now, PCs Soon
Nom du Keyboard writes "As Microsoft drops support for older Office file formats, it looks like Visual Basic for Applications is also going soon. Mac Office 2008 has dropped VBA in favor of enhanced support for AppleScript, and Office 2009 is scheduled to lose it in favor of Mac incompatible Visual Studio Tools for Applications (VSTA) or Visual Studio Tools for Office (VSTO). This sounds like the Mother of All Backwards and Cross-Platform Incompatibilities — especially since there appears to be no transition period where both the old and new scripting languages will be simultaneously supported. And as past experience with Visual Studio .NET has shown, upgrade tools are far less than perfect."
So my only cross platform choice for scripting office applications is now OO.org? Sweet Jesus! MS, WTF?
W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
So yeah. VBA is going away. I wrote a bunch of VBA many years ago (hey, I was young and needed the money :P), now when the version of office it's running under isn't security patched anymore that code's either tossed or re-written from scratch.
And DTS, Data Transformation Services, is already gone. Doesn't work under 64-bit editions of SQL Server 2005. The upgrade tool is worthless. However I did learn something between VBA and when DTS shipped, and I didn't ever get on the DTS bandwagon. So all the bailing-wire-esque scripts I wrote using T-SQL, script files, and Perl to do file formatting that I wrote 8 years ago will keep running forever, while the DTS stuff that someone wrote last year won't work now.
Choose your tools carefully, and work as low as you can, but no lower.
I find it amazing how MS is eager to cut the branch it's sitting on these times.
I thought VBA was one of the major reasons for businesses to not switch to alternatives : because they developped in-house lots of VBA code to achieve some tasks, that would tie them to the MS-Office suite.
I have discovered a truly marvelous proof of killer sig, which this margin is too narrow to contain.
Once upon a time I wrote a bunch of stuff in VB 2 (iirc). Then they dropped support for that and I had to upgrade. It didn't go well. I pretty much had to rewrite everything or have code that I couldn't distribute.
Now, most of what I write is in Java, Javascript, Python, anything but VB. Microsoft sure knows how to win friends and influence people.
Only less than fully informed because I didn't qualify it.
The rewrite projects I've seen regarding VB to [insert your own language of choice here] seem to be wrapped around a common theme... unsupportable code. While I'm sure there are plenty of enterprise level applications out there written in VB and well-written, the majority of what I've seen takes form level code and spaghetti to a whole new level.
My only guess as to why this happens with such frequency is the environment in the late 90s where there were more jobs than programmers, too many "Sam's Teach Yourself Visual Basic in 21 Hours" books, and a lack of architecural knowledge leading VB teams down the path of no return.
What many companies are left with are legacy apps that nobody wants to support, much less enhance. And with webServices, AJAX and all that is Web 2.0, and a bevy of other technologies that people want to utilize, enhancing kludgy enterprise VB apps with no architecture tends to be more expensive than a proper rewrite.
A funny note: I'm currently contracted to a company that lost all of it's Java/Jade developers when part of the company was sold. In an effort to get the software on supported technology, phase 1 of this project is to reverse engineer the (completely undocumented) application and recreate it in C#. No changes allowed, regardless of best practices. Phase 2 is to completely rewrite it. By reading this could you guess this company is in the oil and gas industry?
Saying Android is a family of phones is akin to saying Linux is a family of PCs.
All the UNIX skills I developed over the last 20 years are still useful. So glad I haven't bothered to spend any time on the MS treadmill. Heck, all the software I wrote over the last 20 years can still be compiled and runs happily on a modern machine that is hundreds of times faster than the SPARCstation 1 I used to run on.
Do you think the PHBs will ever learn that using proprietary systems like Windows may seem cheaper in the short term but in the long run you open your wallet and let them take take take?
"I have the attention span of a strobe lit goldfish, please get to the point quickly!"
MS is not trying to improve their product by removing/upgrading VBA.. They just want to kill Mac. By providing different scripting languages for the two platforms, they are going to eliminate Macs from being used for business. Since most of your customers don't have Macs, you can't use a Mac to write a document with macros in it. So, you have to buy Windows.
echo 'cat sig | sh' > sig
How in the hell are businesses supposed to keep up with this shit? Ok, back in the day everybody was using midrange computers. End users were either sitting at terminals or were later at PC's with terminal emulation. Programs were written once and then maintained for decades. Whenever the midrange or mainframe was updated, all of the old stuff worked but now you could create new stuff to take advantage of greater speed, memory, features, etc. This is a proper and correct understanding of the past, yes?
So how in the fucking christ are companies supposed to operate today? Operating systems are only sold for several years and then the new one comes out. The what, five year stretch for XP, that's an anomaly, MS wants to churn it faster. So you have new operating systems and thus new bugs for the client app, and legacy apps for shit like Office will be completely horked. The old standby of "Well, we just won't upgrade for a bit, give us time to write something new," that becomes harder because you can't buy the old softare anymore. Even if you say fuck it, I'm going to pirate it, eventually the new hardware won't have driver support for the old OS.
From what I see, my perspective only being on the periphery of the programmers, it looks like anyone tightly wedded to Microsoft products will be doing the upgrade shuffle every few years and have to rewrite lots and lots of code.
I agree with the other posters, this sounds like a huge win for open source but a completely incomprehensible move for Microsoft. Where the hell is the bonus here for them? Normally I can see the evil, malicious genius in their actions but since Vista I'm at a loss, it just seems like stupid evil now.
Kwisatz Haderach
Sell the spice to CHOAM
This Mahdi took Shaddam's Throne
That 4MB was from an old dev article. my bad! It's surely not the factious 500MB behemoth the other poster mentioned...
You are 100% correct on the C code speed comment. However, my point is that with all that optimization you need to do work to move it from one platform to the next. While JITs have been getting faster, and CPUs keep getting faster, the value proposition to write uber-fast C code instead of spending more time on application features is shrinking.......
Regards,
Website Hosting
Access is heavily VBA dependent, much more than the rest of the suite. In fact, using VSTO, you can write code for all the other Office applications in .NET, but not Access. VBA is sortof a cornerstone for Access. I also wonder what this means for Windows Script Host. A lot of companies have a lot of .vbs scripts and the like out there doing important stuff. I know I end up writing WSH scripts in VBA to do routine things all the time. I really need to get into the habit of using Perl, I guess...
"That which does not kill us makes us stranger." -Trevor Goodchild