Hacker News new | ask | show | jobs
by willhslade 2402 days ago
Take all of this with a grain of salt: I'm an Excel and VBA developer. I'm a bit of a dinosaur and I'm looking to pivot to Java + JavaScript as I'm just a smidge underpaid.

However, I have this to say about Excel. MicroSoft is making a push to kill VBA with two prong. One, replace VBA with JavaScript through OfficeJS. Two, beef up Power Query and Power Pivot so that you can do enough ETL in Excel through a point and click interface.

But the nasty truth is that on the ground in offices worldwide, there are ETL flows that shouldn't exist, but middle managers do not possess the political capital, incentives, or technical skill to remove. And while Power Query, M, DAX and Power Pivot are excellent, in, let's say, 5% of workflows, you need some business logic in some language that is more flexible. And this is the real problem with VBA; it papers over dirty workflows, even if the data structures you are provided are not good.

1 comments

What kind of software do you develop in VBA? I've used it a fair bit over the past few years to build spreadsheets and Access databases for people in locked-down enterprise environments who can't run arbitrary .exes. I wish I had just built web apps, despite the huge downsides of needing to trust a system administrator to secure user data, and being sandboxed into a browser.

Using VBA was much worse. I could manage with the VBA language alone, but the number of security controls and macro-related warnings I had to click through, the poor quality of free online documentation, the lack of version control support and the hacks I had to use to get things into Git, and the lack of decent libraries made the experience an overall nightmare. Have you found solutions to these problems? Or do you work in an environment where you control the users' computers?