Live data from Hacker News

Applying programming language research ideas to transform spreadsheets

microsoft.com

121–129 of 129 posts

Re: Applying programming language research ideas to transform spreadsheets

#121

I rarely use Excel nowadays, but if I could choose one thing to improve it would be to let me use the English names for functions. Excel is localized to my language, and that includes function names. That probably made sense when targeting non technical people 30 years ago, but it makes it harder to search online and is non intuitive when you're used to other programming languages.

Set your system locale to US/English, then.

It's not always my choice, but I also don't want American dates, decimal point, and so on.

Re: Applying programming language research ideas to transform spreadsheets

#122
post #77
post #64

Earlier quoted context omitted.

I'm a dev on XL at Microsoft and took a trip a few years back to meet some of our advanced users. I was blown away by their 'accidental' CS education through Excel. They built sheets (debuggers) to debug other sheets (programs) on their OS (excel), and did this not even using VBA. In my own time, I've visited manufacturing plants where I've seen customers send the factory a spreadsheet containing nothing but a VBA pr…

I used to work in the aerospace industry. The engineers had spreadsheets that consisted of three visual elements: Cells for the input and output filenames, and a "Run" button. It had once been company policy that engineers didn't have compilers or other programming tools on their computers (because "we have programmers for that"). But engineers are a resourceful lot, and they did have Excel with VBA.

>> because "we have programmers for that"

I hope it was long time ago. That's the most idiotic policy I've ever heard. :-)

Re: Applying programming language research ideas to transform spreadsheets

#123
post #62
post #37

Earlier quoted context omitted.

I've done some pretty mindbending things with VBA on Excel. They work but they are not pretty and not easy to maintain. VBA is technically a "complete" language (I want to say Turing-complete but that is not a meaningful trait), so it is possible to do a lot with it, but one ends up having to re-implement (sometimes badly) stuff found in other languages in order to write the main parts of the code. Part of what makes…

"but I've learned that when dealing with a Microsoft stack, there are advantages to using Microsoft-native languages like C#." curious. can you elaborate?

There are many little things that just aren't available in Python-Excel libraries, that are available in VSTO.

There are also odd little things that Python database libraries don't implement, like SqlClient.SqlBulkCopy. Native bulk inserting is generally unsupported on Python, so I either have to spit out a CSV and use bcp.exe to bulk insert, or I have to use TurbODBC, a Python library (which has certain limitations, like not supporting certain datatypes like VARCHAR(MAX) or GUIDs).

Re: Applying programming language research ideas to transform spreadsheets

#124
post #3

As a programmer, excel would be so much more useful if it allowed you to do things like filtering and selects using SQL or some other code so you didn't have to rely on the UI so much to do filtering.

QueryStorm does this - https://www.querystorm.com/

Re: Applying programming language research ideas to transform spreadsheets

#125

Earlier quoted context omitted.

It isn't the language for everything, but I've found you can do so much with a spreadsheet and a little VBA. Optimization, graphics, math...whatever. I also figure the company you refer to has some real benefit by focusing on one technology everyone knows. But how and the heck do they manage a gate in a spreadsheet?

I know about it because my friend (son of the ceo) provided the electronics for the gate and he showed me all the software in 1999 because we were pitching a rewrite in ‘web tech’ (my go to was Perl in those times). The gate software wrote to the parallel port via the win32 api to open and close the gate after the day/night watch entered the numberplate and name into the sheet.

That is indeed pretty cool. I wonder how the system works now.

Re: Applying programming language research ideas to transform spreadsheets

#126
post #88

Earlier quoted context omitted.

One possibility is this - the people who mess with Excel VBA are generally very smart folk who just never went too techy, but then got really good at Excel and just learned vba as the next logical step. That means the code might not be kosher but it will be thoughtfully written and encompassing all the practical use cases. Contrast that with a 20something can grad who while competent isn't as smart as that non tech g…

A good recent example of that. We were asking a dev team to build a dashboard (we are a bank) showing capital ratios. The team came back saying voila! We looked at it, and the headline number in bold at the centre of the dashboard was showing a cet1 ratio of 1300% (a cet1 ratio is typically in the 5%-20% range). I am sure they used modern programming techniques, but they left an error that would have shocked even the…

This is such a common pathology it does cast doubt on the entire field of software development but I would like to note it's been pretty commonly spread and now many years old best practice to have real users in constant communication and perhaps colocated with developers.

This is a very predictable outcome when a requirements doc is tossed over the wall followed by patient waiting for the output.

Again, it happens all the time so maybe this advice isn't enough or practical or something, but there is a well recognized solution and I would wonder whether it was done in this project.

Re: Applying programming language research ideas to transform spreadsheets

#127

Earlier quoted context omitted.

One possibility is this - the people who mess with Excel VBA are generally very smart folk who just never went too techy, but then got really good at Excel and just learned vba as the next logical step. That means the code might not be kosher but it will be thoughtfully written and encompassing all the practical use cases. Contrast that with a 20something can grad who while competent isn't as smart as that non tech g…

Still, when you have a team of very smart folk writing complicated bussiness critical software in Excell, it is a good indication that you should invest in training those people in more proper programming languages.

Agree. I am trying to get bankers to learn programming by offering them free courses.

Re: Applying programming language research ideas to transform spreadsheets

#128

Earlier quoted context omitted.

I know about it because my friend (son of the ceo) provided the electronics for the gate and he showed me all the software in 1999 because we were pitching a rewrite in ‘web tech’ (my go to was Perl in those times). The gate software wrote to the parallel port via the win32 api to open and close the gate after the day/night watch entered the numberplate and name into the sheet.

That is indeed pretty cool. I wonder how the system works now.

Last I heard (few years ago) nothing changed; just more was added in the same way. If it ain’t broke...

Re: Applying programming language research ideas to transform spreadsheets

#129

Earlier quoted context omitted.

I'm fascinated. What sort of software needs to run with ten years uptime? How do you avoid downtime for operating system updates on those cheap servers?

A lot of embedded hardware, financial transaction systems, factory critical ERP systems (I built one mid 90s in Clipper which is still running in that place; actually I built a few which are still mission critical at this point in time). But, less hardcore, also my own projects; picturepush.com and flexlists.com for instance have been running for > 10 years making me money. Flexlists was hacked / down once because of…

I've always read that proving correctness and using theorem provers was impractical for real projects. Could you elaborate on how you use those tools and for which situations? I'm actually really curious
Post reply on HN