# Adding VB to benchmark comparison

**URL:** <https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074>\
**Category:** Meta Discussion\
**Created:** [November 11, 2017, 1:27am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074 "2017-11-11T01:27:21Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![anon67531922](https://avatars.discourse-cdn.com/v4/letter/a/48db29/32.png) [@anon67531922](https://discourse.julialang.org/u/anon67531922)\
**Post date:** [November 11, 2017, 1:27am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/1 "2017-11-11T01:27:21Z")

</div>

For Julian evangelists trapped in corporate environments (like I was), this list is actually not very helpful because my managers would not have heard of any of those languages.

I know it sounds silly, but I believe it would help with corporate adoption if you included VBA and even Excel in this list.

---

<div class="post-metadata">

**Author:** ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)\
**Post date:** [November 11, 2017, 2:58am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/2 "2017-11-11T02:58:09Z")

</div>

If anyone wants to contribute VBA and Excel implementations of these algorithms, they’d be welcomed. Of course, I’m not sure how we’re going to find a benchmark machine that can run all of these implementations, but maybe we can just normalize relative to C on different machines and combine the results.

---

<div class="post-metadata">

**Author:** ![ihnorton](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ihnorton/32/26_2.png) [@ihnorton](https://discourse.julialang.org/u/ihnorton)\
**Post date:** [November 13, 2017, 3:00pm UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/3 "2017-11-13T15:00:11Z")

</div>

We could run VB or C# (preferable, I think) under CoreCLR on Linux.

---

<div class="post-metadata">

**Author:** ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)\
**Post date:** [November 13, 2017, 9:03pm UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/4 "2017-11-13T21:03:03Z")

</div>

Or run everything on a Windows 10 machine using WSL 😁

Excel is the tough one – I have no idea how to script running something like this in Excel.

---

<div class="post-metadata">

**Author:** ![js135005](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/js135005/32/8219_2.png) [@js135005](https://discourse.julialang.org/u/js135005)\
**Post date:** [November 13, 2017, 9:49pm UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/5 "2017-11-13T21:49:59Z")

</div>

I think it would have to be a composite of Excel and VBA given that Excel uses a Visual Basic variant as its macro language.

---

<div class="post-metadata">

**Author:** ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)\
**Post date:** [November 13, 2017, 10:36pm UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/6 "2017-11-13T22:36:19Z")

</div>

Presumably just having a VB implementation and timing it would be sufficient then? I can’t imagine that the Excel VB variant is much faster than the standalone one.

---

<div class="post-metadata">

**Author:** ![js135005](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/js135005/32/8219_2.png) [@js135005](https://discourse.julialang.org/u/js135005)\
**Post date:** [November 13, 2017, 10:58pm UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/7 "2017-11-13T22:58:15Z")

</div>

More likely slightly slower. I agree that VB alone should be sufficient although Excel does have some array functions that most people don’t use.

---

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [November 14, 2017, 7:06am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/8 "2017-11-14T07:06:06Z")

</div>

I find it strange that one should invest time and effort in “proving” that excel and VB are slower than say any of the languages that are already included in that benchmark. Is it really not common knowledge? Not to mention the comparison in itself: excel is a spreadsheet program that isn’t meant for the same tasks that the languages in the benchmark are. Apples and oranges…?

---

<div class="post-metadata">

**Author:** ![DNF](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dnf/32/10191_2.png) [@DNF](https://discourse.julialang.org/u/DNF)\
**Post date:** [November 14, 2017, 7:31am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/9 "2017-11-14T07:31:01Z")

</div>

VB/Excel benchmarks relate to @anon67531922’s comment a bit further up:

> [@Fantastic progress in master branch!](https://discourse.julialang.org/t/fantastic-progress-in-master-branch/6868/28):
>
> I know it sounds silly, but I believe it would help with corporate adoption if you included VBA and even Excel in this list.

Apparently, it’s not common knowledge, furthermore it probably isn’t common knowledge how _big_ the difference is. Just hope VB doesn’t blow everything else out of the water…

---

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [November 14, 2017, 8:22am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/10 "2017-11-14T08:22:56Z")

</div>

I understand why it would be useful to know that Excel/VB is slower and by how much. ~~I guess I’m questioning if it is “our” (i.e. @John_Gibson) responsibility to provide _that_ specific comparison.~~

After googling some about python/VB comparisons, it seems like this is not as clear as I initially thought. So maybe a comparison like that would be useful – for us and for others as well.

(My initial reproach was rooted in my own experience in coding something in Excel’s VB, it took 6 minutes to run, then learning and writing it in Matlab, that took less than 5 seconds.)

---

<div class="post-metadata">

**Author:** ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)\
**Post date:** [November 14, 2017, 9:05am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/11 "2017-11-14T09:05:37Z")

</div>

The problem with VB/Excel is not only speed, it is also numerical accuracy. You can find a lot of “case studies” online, and some [articles](https://www.jstatsoft.org/article/view/v034i04/v34i04.pdf) documenting it. It is not a language designed for numerical work; no spreadsheets are. Benchmarks aside, I am not sure the comparison of spreadsheets vs programming languages can be meaningful. Julia may be much faster than Excel, but that is not really the point, it is comparing apples and oranges.

---

<div class="post-metadata">

**Author:** ![pablosanjose](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pablosanjose/32/7006_2.png) [@pablosanjose](https://discourse.julialang.org/u/pablosanjose)\
**Post date:** [November 14, 2017, 9:08am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/12 "2017-11-14T09:08:39Z")

</div>

I would tend to agree. It would be weird to have Excel up there in the julialang benchmarks front page. Nobody would use Excel to compute the Mandelbrot set (right??)

---

<div class="post-metadata">

**Author:** ![mauro3](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mauro3/32/292_2.png) [@mauro3](https://discourse.julialang.org/u/mauro3)\
**Post date:** [November 14, 2017, 9:10am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/13 "2017-11-14T09:10:48Z")

</div>

> [@Fantastic progress in master branch!](https://discourse.julialang.org/t/fantastic-progress-in-master-branch/6868/39):
>
> Nobody would use Excel to compute the Mandelbrot set (right??)

Never say never:

> **[Mandelbrot Set in Excel](http://www.fundamentalfinance.com/excel/projects/mandelbrot-set-in-excel.php)**
>
> Personal finance and economics

---

<div class="post-metadata">

**Author:** ![anon67531922](https://avatars.discourse-cdn.com/v4/letter/a/48db29/32.png) [@anon67531922](https://discourse.julialang.org/u/anon67531922)\
**Post date:** [November 14, 2017, 9:11am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/14 "2017-11-14T09:11:55Z")

</div>

Hi @yakir12,

As I mentioned, most “managers” in a corporate environment have never heard of most (or any) of those languages. Particularly in the insurance industry where I think Julia could have a massively positive impact. Everyone is still stuck in Excel hell. I am the former Head of Risk Management for AIA Hong Kong & Macau. We simply converted a bunch of Excel spreadsheets into Matlab and the results almost seemed like magic. We were heroes. Of course, licensing issues with Matlab were a headache especially when running a server so there is a real opportunity for Julia evangelism within the insurance industry (which is a massive industry) and, like I said, as silly as it sounds, having a Julia comparison to Excel could conceivably carry a lot of weight.

Fortunately, I am no longer a corporate slave and am building my own digital insurance company from scratch and you can guess what language we are using 🙂

Best regards,  
Eric

---

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [November 14, 2017, 9:24am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/15 "2017-11-14T09:24:12Z")

</div>

Great. 🙂  
I too started my own business. I also use Julia in my book keeping and especially when invoicing clients.

---

<div class="post-metadata">

**Author:** ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)\
**Post date:** [November 14, 2017, 9:41am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/16 "2017-11-14T09:41:33Z")

</div>

> [@Fantastic progress in master branch!](https://discourse.julialang.org/t/fantastic-progress-in-master-branch/6868/42):
>
> I also use Julia […] especially when invoicing clients.

This puts all those discussions about large integers in a new light 😃

---

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [November 14, 2017, 9:44am UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/17 "2017-11-14T09:44:17Z")

</div>

Ha!! I wish. Alas. All I need is a bit more than `UInt8` 😑

---

<div class="post-metadata">

**Author:** ![lobingera](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lobingera/32/211_2.png) [@lobingera](https://discourse.julialang.org/u/lobingera)\
**Post date:** [November 14, 2017, 12:18pm UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/19 "2017-11-14T12:18:26Z")

</div>

> [@Fantastic progress in master branch!](https://discourse.julialang.org/t/fantastic-progress-in-master-branch/6868/41):
>
> licensing issues with Matlab were a headache especially when running a server

Could you give some background?

---

<div class="post-metadata">

**Author:** ![anon67531922](https://avatars.discourse-cdn.com/v4/letter/a/48db29/32.png) [@anon67531922](https://discourse.julialang.org/u/anon67531922)\
**Post date:** [November 14, 2017, 12:32pm UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/20 "2017-11-14T12:32:38Z")

</div>

I think Matlab licenses may have become more flexible since we were doing this several years ago, but we were using embedded Java in an m-file to run a server that ran Matlab code. Technically this was a license violation and getting that sorted property was a headache.

---

<div class="post-metadata">

**Author:** ![Paul\_Soderlind](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/paul_soderlind/32/1753_2.png) [@Paul\_Soderlind](https://discourse.julialang.org/u/Paul_Soderlind)\
**Post date:** [November 14, 2017, 9:29pm UTC](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074/21 "2017-11-14T21:29:18Z")

</div>

I also doubt the importance of providing a VB benchmark comparison. In short, the VB crowd is probably not Julia’s natural target group.

Some 15 years ago, we taught business school students to use VBA to do (reasonably complicated) financial calculations. Since then, the same type of students have preferred ML or R (and more recently, Python).

It’s my guess that those still using VB(A) are (a) not very concerned with the speed-up and/or (b) don’t have the time to invest in learning a new language.

Paul S

[Next page](https://discourse.julialang.org/t/adding-vb-to-benchmark-comparison/7074.md?page=2)
