Live data from Hacker News

Will VBA Die? (2019)

thespreadsheetguru.com

161–170 of 170 posts

Re: Will VBA Die? (2019)

#161
post #102

Earlier quoted context omitted.

They keep compatibility but abandon a lot of stuff. If they switch to JavaScript VBA development will slow to almost nothing and it will take years for the JavaScript stuff to catch up, if ever. Something similar happened with visual studio. 2008 was really nice, very customizable and fast. Then they redid everything in 2010 and the result was slower with way less capability. And even now there are still a lot of fea…

I also love vs2008 over vs2010 and still use it for some projects just because it feels so nice and snappy. But which features exactly are missing in vs2010 that were in vs2008 (except the snappy feeling)? I have not actually noticed anything missing and would like to know more

2008 had an excellent macro recorder which was gone on 2010. 2008 had an easy way to customize toolbars and menus by drag and drop. With 2010 setting up a toolbar is much harder. There were a few other things but I don’t remember right now.

Re: Will VBA Die? (2019)

#162

Earlier quoted context omitted.

Your Excel+vba application’s features remind me of when I joined an investment bank in 2000. I had come from an insurance company where I was considered the Excel\vba wizard, and I was impressed, in the extreme, by my new colleagues’ approach to Excel development. Even during the interview process I had realized that, when it came to vba, I was but a babe in the woods. They had auto-updating code (when you “published…

What would the role names be for positions like this at an IB? Been interested in this type of work.

The desk-aligned dev spot is a tough one to land. If you’re not hailing from CalTech, MIT, et al, I suggest the highest-probability strategy is an indirect one: get a client-facing job at hedge fund administrator, get great at Excel+vba; over-deliver for the fund’s CFO and/or traders in all their post-trade questions (that’s why Excel+vba expertise is important: it’s easy to deploy to them as just an Excel file); get recruited. The right spot at a fund administrator is much less competitive, and you get an opportunity to impress the same people you would if you were hired directly onto a desk.

Excel+vba is an odd beast because, nowadays, it's rarely seen as a differentiating skill -- it's not taken seriously -- and yet on almost any trading desk there is an infinite series of todo's where Excel+vba is just the right tool for the job.

Re: Will VBA Die? (2019)

#163

Earlier quoted context omitted.

Sure, but it's not as big as an ecosystem. Knowing JavaScript at this point is way more valuable than learning VBA. I'm not saying VBA is bad, I think visual basic is great, I have fond memories of it, but reality is JavaScript is going to be what companies are going to want their employees to know.

Can JavaScript use COM libraries and windows APIs? The JavaScript ecosystem is big but I doubt it covers much of what a typical VBA application needs. I think C# or another .Net language would be more suitable.

If there isn't now, I imagine it will come. There's:

https://docs.microsoft.com/en-us/microsoft-edge/windows-runt...

I'm sure Microsoft is probably at least considering making JavaScript work well with existing Windows APIs.

Re: Will VBA Die? (2019)

#164
post #159
post #127

Earlier quoted context omitted.

Did you build some kind of component tree diffing for the reactive UI, like React? Or data binding? And how did you design the async parts, given that VBA doesn't have first-class functions? Classes and interfaces? Or nested event loops?

Vba has classes, enumerated, interfaces, events, collections, stacks, queues, array lists, dictionary, and more.

I didn't mean to imply that it doesn't, and I know that it does - but I was just curious about how you built the reactive UI and the async features.

I did some async stuff in VBA recently (with events) and it was a bit of a mess, which I'd like to clean up if possible. VBA has classes but not anonymous classes, and not anonymous functions either, so you can't easily do callbacks. And the error handling mechanism is not great.

Re: Will VBA Die? (2019)

#165
post #160
post #130

Earlier quoted context omitted.

C is a pretty low bar. And yeah, not being able to do version control, diffs, releases, dependency management... it all adds up.

I had version control and everything

What did your build/release pipeline look like? I'm imagining a lot of that would have had to be custom, just because I've never heard of this being done with VBA.

Re: Will VBA Die? (2019)

#166
post #65
post #27

I'm working on an excell addin right now. It doesn't use VBA (it uses microsoft interop libs for .NET) And I have zero interest in using VBA, but I will admit, it would have been much easier to do this project in VBA instead of C#. Debugging would have been easier. I could debug inside the VBA code-behind instead of Attaching to the excel process in Visual Studio. Deployment would have been easier. I could make an .x…

I’m the other way. Started a large project in VBA once, jumped over to C# interop and never looked back. I found the libraries to map fairly well to the same named functions in VBA when it came to worksheet manipulation. My biggest issue was that the interop has quite a bit of latency. You really want to accomplish as much in one call as you can (i.e. read whole ranges into an array instead of looping through cell by…

The key to using C# for manipulating Excel for me was ExcelDNA. The development workflow and binary packing was pretty good, I thought.

Before ending up on ExcelDNA, I had started with a VSTO template from Visual Studio, and the development workflow was hell because of how buggy the interactions with Excel were. And I thought the ClickOnce deployment was annoying, if you can instead merely copy an excel file as well as its add-in file(s).

You don't really need to sign your add-in, though I guess that's not good.

Re: Will VBA Die? (2019)

#167

Earlier quoted context omitted.

Can JavaScript use COM libraries and windows APIs? The JavaScript ecosystem is big but I doubt it covers much of what a typical VBA application needs. I think C# or another .Net language would be more suitable.

If there isn't now, I imagine it will come. There's: https://docs.microsoft.com/en-us/microsoft-edge/windows-runt... I'm sure Microsoft is probably at least considering making JavaScript work well with existing Windows APIs.

I think that's deprecated. They dropped support for UWP apps with JavaScript in Visual Studio 2019:

https://social.msdn.microsoft.com/Forums/en-US/ebb5e04b-d00a...

Re: Will VBA Die? (2019)

#168
post #85
post #55

Earlier quoted context omitted.

VSTO to the best of my knowledge is still a thing. And you could indeed do some pretty cool stuff with it! But it's not as easy to use as VBA, nor was it incredibly easy to work with from a development standpoint when I last tried to use it (Maybe I was doing it wrong, but I had to do a full VS install with the add-in module.)

VSTA, not VSTO. It was a .net IDE embedded in an application the same way VBA works.

Ahh. I always assmued that VSTA worked the same way as VSTO...

That makes me ask why VSTO -didn't- work more like VSTA, then. It may have improved adoption substantially...

Re: Will VBA Die? (2019)

#169

Earlier quoted context omitted.

At some point, I hope we can get past this argument. Learning a new language for rudimentary tasks is not particularly hard. I'm not sure why people decided that JavaScript of all things was what we had to all latch onto.

Because it’s the new Franca lingua of programming. Everyone knows it whether they like it or not. There’s value in not have to switch context while programming. Also there’s typescript which makes JavaScript usable. I don’t like JavaScript either but typescript isn’t terrible and the ecosystem is much bigger than any Microsoft programming ecosystem which results in less reinventions of the wheel. MS has also been tre…

> MS has also been treating JavaScript as a 1st class citizen on Windows

Eh what now?

The ActiveSctipt host for JScript (for shell and Classic ASP scripting) hasn’t been updated since Windows 2000, and for shell scripting in-general Microsoft has been (“was” at this point?) pushing PowerShell since its demo at PDC 2003.

WinJS for Windows 8 was a huge waste of money for the company that people always seem to forget.

And their Chakra JS engine is effectively now retired given Chromium+V8 replaced EdgeHTML earlier this year.

The only places Microsoft has been using JS are for their current set of Electron-based applications (VS Code, Skype, MS Teams, Azure Storage Explorer, etc). TypeScript is nice and all (and I really love it and I hope it brings algebraic typing and structural typing to more languages) but it’s only popular because Google, of all people, adopted it for Angular.

Re: Will VBA Die? (2019)

#170

Earlier quoted context omitted.

What would the role names be for positions like this at an IB? Been interested in this type of work.

Something called "Desk Developer", "Deskdev", "Rapid Application Development" or "RAD". I was in the Deskdev team in an investment bank for 4 years, great fun and I learned a lot about Excel.

Ok cool. Thank you!
Post reply on HN