Slashdot Log In
Jon Udell on the Nerd's Spreadsheet
Posted by
kdawson
on Fri Sep 28, 2007 10:23 AM
from the easy-way-to-generate-code dept.
from the easy-way-to-generate-code dept.
rcs1000 writes "Jon Udell has a interesting article on a new type of spreadsheet: one targeted specifically at techies. The skinny is that any spreadsheet is actually a computer program, only in Resolver One, the product profiled in Udell's piece, this is explicit rather than implicit. And the code is IronPython rather than VBA. There are some other cool things it does — allowing cells to contain objects, and allowing spreadsheets to back-end websites." Udell's screencast gives a good demo, though the presenters are a bit hard to hear due to the phone connection. Resolver's own screencast is an alternative.
Related Stories
This discussion has been archived.
No new comments can be posted.
Jon Udell on the Nerd's Spreadsheet
|
Log In/Create an Account
| Top
| 168 comments
| Search Discussion
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.

Can it... (Score:5, Funny)
Logical conclusion (Score:1)
(http://memechan.org/)
Re:Logical conclusion (Score:5, Funny)
(http://www.xs4all.nl/~dverbeek)
The old saying is true. (Score:4, Insightful)
(http://www.gemstate.net/friends | Last Journal: Tuesday September 11, @10:32AM)
Spreadsheets are so useful today that they can do many tasks that are better done with other tools... If you know the other tools.
Why should I use this rather than SQL? (Score:4, Insightful)
(Last Journal: Sunday December 04 2005, @12:42PM)
SQL databases have become much lighter and more efficient these days. Why should I use this store data over a lightweight SQL database?
Re:Why should I use this rather than SQL? (Score:4, Informative)
(http://www.pauly-pages.com/)
Re:Why should I use this rather than SQL? (Score:4, Insightful)
(http://www.lazylightning.org/)
Because you have to learn yet another cryptic set of functions to do what is easily accomplished in Excel (or any other spreadsheet)? Most people couldn't give a fuck less about using any package to its full potential and most people utilize Excel as a database rather than a spreadsheet (almost everyone in my wife's company for example).
A spreadsheet will do just fine for the majority of people and the rest would probably use something like Crystal Reports to do anything more advanced. Why? Because there is professional documentation and training available for those packages and R Project requires posts to mailing lists or forums to get answers outside of your own self research on the web. From what I can see in my own personal experience, people working in the real world don't want to spend the time searching around the Internet through mailing list posts and forums for their answers. They want to plunk down $350 and sit through a 6 hour seminar offering them 1 CEU.
YMMV.
Solution looking for a Problem (Score:3, Insightful)
(Last Journal: Thursday February 15 2007, @08:00PM)
That . . . sounds just like a normal spreadsheet to me.
Solution looking for a problem?
2D programming? (Score:3, Informative)
Allowing spreadsheets to what? (Score:5, Funny)
(http://www.networkmirror.com/ | Last Journal: Thursday July 05, @04:34PM)
munge them?
hack them?
copulate with them?
Misuse of spreadsheets (Score:5, Interesting)
(http://www.geocities.com/tablizer | Last Journal: Saturday March 15 2003, @01:22PM)
As far as spreadsheets for programming, I've experimented a lot with data dictionaries to simplify column management and column sub-sets for regular ol' edit-and-report screens. So far it is tricky because one often wants to tweak something for a particular context and one-size-fits-all hits a wall. The trick is finding a good, clean way to "override" specifics from the table when needed or just make alternative entries of a given column and select them via set notation when needed; but I've yet to find a clean, simple convention. It ends up fairly messy such that regular copy-and-paste is unfortunately the cleaner solution much of the time. Maybe if the toolset and the language was geared toward nimble data dictionaries, these approaches would be smoother. Forcing a non-data-oriented language to act data-oriented is like trying to keep a toddler in line.
Re:Misuse of spreadsheets (Score:4, Informative)
(http://www.voidspace...n/weblog/index.shtml)
Just found a new way to sleep at work (Score:4, Funny)
(http://nzruss.blogspot.com/)
nice. Now i'll go someway toward meeting the quota for those that sleep at work [slashdot.org].
Spreadsheet, Or... (Score:2)
Is this a spreadsheet, or a poor man's database?
Does it run on Linux? (Score:2)
(http://www.pembo13.com/)
Hex handling (Score:2)
(Last Journal: Wednesday August 20 2003, @10:39PM)
H.
Great Idea (Score:1)
I *think* it's gonna be cool (Score:2)
(http://slashdot.org/)
I said "WTF?" and stopped reading right there.
Real Interesting point (Score:1)
Seems kinda cool to me. (Score:1)
Lotus Improv / Quantrix please (Score:3)
(http://members.aol.com/willadams)
Give me an item dispenser, the program should name things sensibly as they're created and all formulas should read as plain text like: profits = sales - expenses.
Please.
William
Windows Only (Score:2)
(http://blog.macb.net/ | Last Journal: Monday March 05 2007, @04:38PM)
There may be some exceptions, but I haven't found any... Once a bloger, journalist, programmer, and I'm sure lawyer, goes to work for "the Borg" they lose all sense of objectivity.
Why in this day and age would someone want to lock themselves into yet another Windows-only application?
I would avoid this thing like the plague. Even if Linux hasn't taken over the desktop, there are certainly enough Apple users these days that OS portability should be BUILT-IN to the design process from day one.
The whole point of an OS is to isolate the application from the hardware. But what good does that do us when so many new applications are designed to work with only a single OS, and that single OS is designed to work with only one type of hardware? Has our industry gone mad?
A Better Headline (Score:1)
"Spreadsheets with First-Class Functions and Objects"
This is just a spreadsheet with the ability to put functions and other objects into cells. It's a good idea, but there is no need to dress this up in marketspeak. We understand techno-babel just fine here.
homebrew (Score:2)
(http://kisrael.com/)
The Analyst: the first Nerds spreadsheet (Score:1)
Here are some links to the old version and newer developments.
http://wiki.cs.uiuc.edu/VisualWorks/The+Analyst [uiuc.edu]
http://www.mojowire.com/TravelsWithSmalltalk/DaveThomas-TravelsWithSmalltalk.htm [mojowire.com]
http://www.sunless-sea.net/wiki/SmallTalk [sunless-sea.net]
http://www.google.ca/search?num=100&hl=en&newwindow=1&q=%22the+analyst%22+xerox+smalltalk&btnG=Search&meta= [google.ca]
Hockey stick curve? (Score:1)
(http://chrisshannon.is-a-geek.com/)
These people need a reality resolver instead of a spreadsheet replacement.
VBA already does this... (Score:4, Insightful)
(http://www.angelfire.com/il/macroman | Last Journal: Friday March 30 2007, @07:17PM)
And does it poorly. And insecurely.
You can already access spreadsheet content from Visual Basic, and include VB script in spreadsheets. The same scripting ability which allows the "wow" features in spreadsheets also creates the potential for abuse - remember macro viruses? Suddenly, documents which formerly contained only data now contained executable code, and it gave rise to a security nightmare.
Yes, today, with VBA, you can do what the article mentions. In fact, it's been possible for years. Problem is that:
- Very few people use it, and
- Those who do use it tend to use it poorly.
Yes, you can back end a website with your spreadsheet. But why would you? A spreadsheet is a horrible way to manage data; there's no referential integrity checks, no versioning, no security, and doesn't scale well. Furthermore, your crucial data is tied to a particular application, rather than a database.Just like VBA, it's a nice nerd's toy, but the wise system programmer recognizes that it has limitations.
And for Gantt charts... (Score:2)
http://faces.homeip.net/ [homeip.net]
they have their work cut out for them (Score:2)
I was a member of a "club" of techies who were investing in the stock market in the 1996 timeframe. We cycled the clubs officer positions through the club membership so everyone knew what others were doing and how. The 2nd year, I got the Treasurers position and my job was to collect "investments" at each meeting and provide a overall club report and reports for every member's position/investment in the club. I was handed a spreadsheet with tons of data entry cells sheets to fill in data. I could have cleaned this up but hey, this was the age of the internet right. So I build a SQL database to handle the accounting, wrote code to drive a CGI interface to a web server and wrote scripting to trigger updates on stock valuation and triggers to update the database on changes. It was all accessible from a web browser with a login. And very repeatable. It worked great after the 3rd months meeting and for the remainder of the year. Because it was cross platform, it would run on anybodies computer and did not need to be on the internet.
Here's the kicker( finally ). The next Treasurer was the guy who started the club, owned his own business, was a Windows software engineer who's product he built over close to 10 years and was a signal processing kit(PC and software appliance ). He knew what I was saying when I described the package I'd built to do the books but he wanted none of it. He wanted the latest report and then he write a spreadsheet to handle the task. And for every meeting from then on until the end of the club 2 years later, we were constantly correcting data in the spreadsheet and sometimes, corrections required pulling out paperwork from previous months meetings.
There is a fools familiarity with spreadsheets which people find comforting. They will go to great extremes to try and get the spreadsheet to work for what they are trying to do. Great extremes. And with the plethora of Neanderthal-ish computer users out there who think they are computer guru's because they can do "=(A2+B2)" in MS Excel, it is a long long road to get movement outside of the spreadsheet.
I just found out a buddy has taken on a 2nd job and is trying to build a business out of it. He's under charging to get experience in more aspects of the field and to construct a spreadsheet to "automate" the task(s). He's thinking that the business will grow around the "application"/spreadsheet.
So I think the title should be, "Jon Udell on the Geek's Spreadsheet" because the nerd is really not that 'into' the technology to really know or want to work outside of a standard spreadsheet. IMO.
LoB
Something like MS Access? (Score:3)
Unfortunately nobody else has ever tried to do it right. The pieces are all out there, but they're not integrated.
I may be a diehard Red Sox fan, but I still cheer when a Yankee makes a good play.
Not much new for Openoffice users ... (Score:1)
Spreadsheets Cause Brain Damage (Score:2)
(http://slashdot.org/)
Scheme on a Grid, anyone? (Score:3, Interesting)
(http://slashdot.org/)
2000-12-07, but I think I've played with it long before that. And yes, it had
database connectivity, could serve data over HTTP and, of course, the extension
(and half of implementation, I'd guess) language was Scheme.
http://siag.nu/siag/ [siag.nu]
Paul B.
InstaCalc (Score:1)
(http://instacalc.com/)
I'm a nerd as well, and built an online calculator/spreadsheet for myself. It's a new take to an old problem: instant answers, inline units (MB, GB), and shareable results. Yes, it handles 850 * 77.1 and more [tinyurl.com].
Thought you might find it useful.
"Nerds' Spreadsheet"? (Score:2)
(http://www.last.fm/user/uhlume/)
It isn't as useless as you think (Score:2, Interesting)
Resolver seems to take this idea a step further. It looks like you can write nice reporting tools with this. There is no need to bash Resolver because you don't like Access or Excel.
Distributed, Extensible Spreadsheet (Score:1)
(http://www.livenudejournal.com/)
from the web site (Score:2)
Oh yeah? How does Python express hot, naked babes and a sixpack?
Smart, but Don't Get Things Done (Score:2)
http://www.joelonsoftware.com/articles/GuerrillaInterviewing3.html [joelonsoftware.com]
I'd like to think my project inspired them... (Score:1)
(http://www.geocities.com/inline_four/ | Last Journal: Thursday February 05 2004, @07:39PM)
Re:Python (Score:1)
Re:What's the difference? (Score:2)
While I haven't used this program yet, I believe the major difference is that it allows you to declare new classes and use values of those classes as cells in the sheet. This sounds remarkably useful to me.
Imagine having a CurrencyAmount object. A1 contains =CurrencyAmount(50.00, "USD"). B1 is =A1.ConvertTo("GBP"). CurrencyAmount includes the code to look up the exchange rate on a web server, so whenever you click recalculate you get an up-to-date sheet.
Also consider other cell types you could use: complex numbers, vectors, matrices, value with unit: A1: =UnitValue(50,"meters") B1: =UnitValue(17,"seconds") C1: =(A1/B1).In("miles per hour")
Re:Python (Score:2)
Actually, I believe it is. There are substantial differences [codeplex.com] between IronPython and the reference Python implementation. C++/CLI is a language, IMO, and so is IronPython.
Re:What's the difference? (Score:1)
Certainly a nice console window and debug output window would improve, in our opinion, most existing spreadsheet applications. However, this will not fundamentally change the interaction patterns between the cells, user code, and application code, nor the architecture of the application. One of the reasons why we can deploy Resolver spreadsheets to the web so easily is that they are Python programs, one of the benefits of this architecture.
The nightmare of auto-generated code (Score:2)
Anyway, I wonder how well modifications you make to the generated code are treated by changes made to the spreadsheet itself...
Anyone who has tried to hack auto-generated code - e.g. from UI code generators (VC++?) knows how ugly this can get. Maybe with the closed loop (from generating code, back to displaying the spreadsheet) they have managed to deal with this, but the screencasts only show such trivial examples of editing so you have to wonder.
The thing that seems REALLY cool about this tool (and the real answer to your question I think), is that you can take this auto-generated code + your custom code, and drop it into a