A: Calc4Web is an Excel add-in which contains a patent-pending technology that converts Excel spreadsheets to C++, and then compiles them into binary code. This allows spreadsheets to be used inside other systems, and also makes them run up to 300 times faster. The result is spreadsheets that are cross-platform.
Q: What does "cross-platform" mean?
A: Calc4Web can create files that are readable by Windows, Unix or Linux systems. This means Excel spreadsheets for Windows can be run on Linux machines.
Q: What's meant by the phrase "Program in C using Excel"?
A: Essentially, Calc4Web is a programmer, converting spreadsheet formulas to C++ code. But the logic of the program is still written by the spreadsheet user. Instead of the traditional method of hiring a programmer to convert the spreadsheet logic to C++, Calc4Web does it at the push of a button, and far better because Calc4Web can code much faster, much cheaper, and with no errors or bugs. The implications of this are far-reaching: Calc4Web technology empowers spreadsheet users who have no programming knowledge to program in C++.
Q: Excel is a toy. I do all my real work in C++. How would Calc4Web help me?
A: In many ways, programming in Excel is easier than programming in C++. For one, you don't have to worry about getting all the statements in the right order like you do in C++ or any other high level language; Excel is more like a visual programming language in this way. Also, debugging in Excel is much easier: you can see the formulas as well as the values of those formulas right there in front of you, which is much simpler than a C++ debugger. Of course, C++ lets you do some things much more easily than Excel. But for many problems, Excel is a great environment for modeling, even for a C++ programmer.
Q: Don't I lose control over what's put into production?
A: The process is exactly the same as is currently followed: a new model is verified before it's put into production. Calc4Web only helps, as it removes the possibility for errors (and fraud) when the model is transferred from math to C.
Q: Do I need a C++ compiler to use Calc4Web?
A: Yes. While Calc4Web will write the C++ code, you'll still need a compiler. However, several are available for free. In fact, Calc4Web ships with one, and even Microsoft offers one.
Q: Do you really mean 300 times faster?
A: Yes, that's no typo. Overnight runs can go from 8 hours to a minute and a half. And F9's that put you on a coffee break can recalc in the blink of an eye. However, the actual speedup you experience does depend somewhat on the type of things being done inside the worksheet.
Q: Is Calc4Web another hardware accelerator?
A: No, Calc4Web is a pure software product.
Q: How does it make spreadsheets run 300 times faster?
A: Calc4Web completely takes advantage of the fact that programming code runs much faster than spreadsheet code. TurboExcel's patent-pending technology actually converts the Excel spreadsheet formulas into C++ programming code, and then compiles it into binary code (0's and 1's).
Excel needs to trade off between speed and flexibility. Every time the user hits F9 to recalculate in Excel, it needs to convert every cell in the spreadsheet into the binary 0's and 1's that the computer understands, as well as determine the right order to calculate the cells, and how to format them. Calc4Web isn't hampered by any of that. Calc4Web directly generates binary code, so when the calculations are performed there's no overhead. This makes Excel run up to 300 times faster.
Q: My spreadsheets are already pretty fast. Why would I need Calc4Web ?
A: Calc4Web offers two other major benefits, which for many people are actually more important than the incredible speed improvements:
- Immediate migration of Excel models to other systems
Calc4Web takes an Excel spreadsheet and outputs a DLL file which can be read and used by other systems (your original spreadsheet stays intact), including front, middle, and back office systems. This new file runs as fast as if a programmer had rewritten the spreadsheet model in C++, and it's just as portable and cross-platform. That's because the file is written in C++.
- Encapsulation of a model into a single function
A model consists of some inputs, a bunch of calculations based on those inputs, and an output. A model can consist of thousands of cells in a spreadsheet. Calc4Web turns all that into a single function, which takes the inputs, and returns the output.
A: One key benefit of encapsulation is that a model can be reused in other spreadsheets without copying over copious amounts of the original spreadsheet. Imagine a spreadsheet that takes a bond's maturity and coupon, which then generates cash flows for every coupon date in the future, which are then discounted back at some assume interest rate, and then summed up to get a theoretical price for the bond. This could take up hundreds of rows and several columns.
If the calculation were to be done on a portfolio of bonds, all those rows and columns would have to be copied across or down to have a separate section for each bond in the portfolio.
But with Calc4Web , once the model has been created for one bond, you simply push a button to create a function with the coupon, maturity, and interest rate as the inputs. Then, use the function for each bond in the portfolio. The number of cells in the spreadsheet is reduced from several thousand to just a handful.
Q: How does Calc4Web reduce my operational spreadsheet risk?
A: The binary code that is created by Calc4Web is a file that the computer knows how to read, but not people. This means that modelers can distribute the binary code, instead of the spreadsheet, to other users, without worrying about the recipients inadvertently breaking the spreadsheet by adding rows or columns without fully understanding the implications. With Calc4Web , this can't happen. In addition, proprietary algorithms can now be kept from prying eyes, allowing for safer and wider distribution of intellectual property.
Q: Does it only work on some spreadsheets?
Calc4Web works with any Excel spreadsheet. The amount of speed improvement you see depends on the spreadsheet itself, though.
Q: What about Excel's built-in functions?
We have emulated every Excel built-in function (except a few which are not relevant, such as the version of Excel, which is undefined if one is running the model without Excel), so any spreadsheet that calls into them will work fine.
Q: What about the Analysis Toolpak?
A: That has also been emulated.
Q: What about add-ins?
A: Add-in functions can be used, as well. However, in order to run the model on a different platform, you will need a library written for that platform that performs the same function as the Windows add-in.
Q: What about VBA?
A: Much, but not all, VBA code can be converted to C++ and compiled into the Calc4Web output file.
Q: Do I lose my spreadsheet?
A: No, TurboExcel's output does not overwrite your spreadsheet.
Q: Do I need to change my spreadsheets?
A: Almost never. There are a few special conditions which might require small changes, such as renaming certain sheets in a workbook. Some changes to VBA code may be required to allow them to work best with Calc4Web.
Q: How hard is it to use?
A: Not hard at all. Simply specify a few things, such as which cells are the model's inputs, which cell or cells hold the model results, what name to give the new model, and where to save the new files. Then, push a button and you're done.
Q: Does it only allow you to create functions that have a single output value?
A: No. The function can just as easily return a range, as an array formula. So Calc4Web is equally adept at generating functions to calculate a bond's price, or to generate all the dates and cash flows on the bond, as well.
Q: What about ranges for inputs?
A: That's not a problem, either. Every input can be either a single cell, or a range. And just as with Excel's built-in functions, it perfectly OK to mix them so that some inputs are single cells and the others are ranges.
Q: How long does it take to create new functions and faster spreadsheets?
A: It depends on the size of the workbook. A 4 megabyte workbook can be done in about 3 minutes. A workbook that's a few hundred kilobytes takes just a few seconds.
Q: I have programmers to convert my spreadsheets into C++ and give me all of TurboExcel's benefits. Why should I consider Calc4Web?
A:You can think of Calc4Web as being an automated programmer. Except that it's a lot faster, it doesn't make mistakes, it's cheaper, and it doesn't require the modeler's time to explain the algorithm.
Also, when you have a programmer convert the spreadsheet to C++, the auditors need to look at two things: the model, and the C++ implementation of it, since there can be errors introduced in either step. With Calc4Web, the code auditing is not necessary, which saves the auditor (and the auditee) a lot of time and aggravation. Better still, the auditor is more likely familiar with looking at spreadsheets than they are with C++ code, which ensures a more correct and timely audit, as well.
Q: What's the difference between the various editions of Calc4Web?
A: Calc4Web comes in four versions: Personal, Professional, Developer, and Server. The Personal Edition allows a developer to create a C++ DLL and Excel addin, and run the generated code on the same PC. The Professional Edition lets you view the generated code, and allows the generated DLL and Excel addin to be distributed and run on any other single user machine, with no runtime fees. The Developer Edition is like the Professional Edition, since the generated DLL and addin can be distributed and run on any other single user machine, with viewable source code, but it does not handle VBA, and only works on a single worksheet. The Server Edition is a runtime license to run the generated DLL and Excel addin on a single server machine (a server machine is defined as one which can be accessed by multiple users). The Professional, Developer, and Server Editions allow users to see the generated C++ code, while the Personal Edition does not.
Q: Why didn't anyone else think of this before?
A: You'll have to ask everyone else.
Q: OK, this sounds like the greatest thing, since, well, Excel itself. How do I get my hands on it?
A: Call us at +1 212 742-8677, or email firstname.lastname@example.org.