5 ms·
VBA wasn’t bad enough, now millions of analysts will have to contend with spreadsheet spaghetti and JavaScript.
by riskneutral 8y ago
VBA wasn’t bad enough, now millions of analysts will have to contend with spreadsheet spaghetti and JavaScript.
- sevensor 8y agoI'm thinking of all the places where I've seen Excel used in operations. Often it's the only software the company uses. Now we're going to get people who've done a little javascript in college using it to elaborate the Spreadsheet That Runs Our Business. In all likelihood, the resulting chimera will make an impenetrable tangle of VBA and Javascript.
- blowski 8y agoAnd if that works for the business... then where's the problem?
- sevensor 8y agoWell, on the one hand, it's not a problem. It's pure elitism to insist that laypeople learn Real Programming and make their spreadsheets the Right Way. Excel + JS is going to be an empowering tool. But on the other hand, it's going to be a nightmare to maintain when you layer it on top of VBA macros, and some poor soul is going to end up responsible for making it continue to limp along. Nobody will understand how it works, it will take hours to calculate, and it will become a drag on the business. I mean, we're there already with macros alone. Imagine if Javascript and VBA macros are allowed to coexist in the same system. It's going to happen, it's going to be somebody's problem, and I feel sorry for them.
- minton 8y agoI thought this was part of the business model. Microsoft makes bank by rolling out an "empowering" tool (think Excel Macros, Access VBA, and LightSwitch) that allows the business folks to create their own solutions. Eventually they outgrow or simply can't maintain those solutions and hire developers, whom Microsoft made bank selling them "real" dev tools, to convert them into proper applications. Rinse and repeat.
- andyjpb 8y agoIt's not as cynical as that. Microsoft provide the right tools at the right point in the business lifecycle. Have you ever been in a company where That Spreadsheet is rebuilt "properly" at great expense by "people who know what they are doing" and then, the first time the business wants a change it takes more than an afternoon and everyone goes back to the spreadsheet again? Some (most?) people aren't programmers and have no choice. Microsoft lets them be the masters of their own destiny.
- TeMPOraL 8y agoI don't think this worry comes out of elitism. On the contrary, I think it comes from trying to protect the business users - as messy as their tooling already is - from the JavaScript culture.
- Can_Not 8y ago> My language has good culture, JavaScript has bad culture I think you failed to move the goalpost away from elitism.
- TeMPOraL 8y agoWell, if you want particulars - my favourite language has plenty of cultural problems, like huge NIH syndrome, or complete inability to actually finish a library (and don't get me started on documentation...). But JavaScript seems to have an unique cultural combination of "move fast and break things" coupled with complete disregard for any kind of efficiency considerations. I don't want to see the web bloat ported over to spreadsheets too.
- Can_Not 8y agoYou're making hasty generalization. JavaScript isn't one big homogeneous culture. I've never worked on a team where unnecessary library bloat and disregarding efficiency was acceptable. I've been to plenty of websites that reject that attitude. Usually businesses don't want to pay the extra dev hours (or quality dev rates) to get code optimized to my preferences.
- toyg 8y agoYour technical debt is someone else's business opportunity. This is how the IT world keeps expanding, despite increasing the degree of automation available to every process.
- adjkant 8y agoJavascript's concatenation and equality rules alone likely will lead to your first premise being incredibly false.
- walshemj 8y agoIt works until it doesn't then your are in trouble - oh sorry Mr tax man our excel made a mistake and you say we own you HOW MUCH due by the end of the month.
- TeMPOraL 8y agoGod forbid someone will figure out how to plug NPM into Excel-JS, and the bloat from the web will get ported into business spreadsheets as well. (I guess that's one way to drive new hardware sales, though.)
- sevensor 8y agoIt's too late. We're all doomed. https://docs.microsoft.com/en-us/office/dev/add-ins/tutorials/excel-tutorial?tutorial-step=1 https://docs.microsoft.com/en-us/office/dev/add-ins/tutorial... Step 1 in the official Excel Add-Ins tutorial includes installing Node and npm.
- TuringTest 8y agoSo, when are you developers going to build an End-User Development platform with decent engineering practices, to replace Excel for business users?
- cm2187 8y agoAgree. The choice isn't between spaghetti VBA and clean code, it is between spaghetti VBA and business users doing more copy-paste and manual work. It's not economical to have a professional development team looking at every single task that needs to be automated in a business.
- strictnein 8y agoMight as well ask the people running a mom and pop store in Podunk when they're going to unseat Amazon.
- sevensor 8y ago> replace Excel for business users Not likely. Given the depth and breadth of its penetration, all the man-millenia that have been spent encoding business rules in Excel, I suspect that in the end Excel will outlive Windows itself, just as COBOL has outlived the mainframe era. I'd love to see a principled approach to extending Excel, and maybe MS have already done it. There are a lot of ways to extend Excel, and given the MS practice of keeping backwards compatibility alive for decades, none of them is going away any time soon. Could be one of them is actually good. I just today learned about Power Query M, which looks promising.
- zimablue 8y agoIt's called Jupyter
- TuringTest 8y agoJupyter has too much syntax for end users, and its execution model (having to run cells in order to prepare the state for executing other dependent cells) is not intuitive. Also, installing it is not exactly user friendly. Heck, you have to open a terminal to launch it!
- deleted 8y ago[deleted]
- gargravarr 8y agoHaving seen a VBA-powered spaghetti-monster of a spreadsheet in use, the title made me shudder in fear. I feel bad for whoever gets allocated one of these 'business-critical applications' to maintain.
- rk06 8y agoVBA is good and simple enough to easily learn. however, VBA code is also spaghetti code with global vars and <what not> mixed into it. Source: I have debugged vba macros in excel before.