Starting April 5, 2006
New wikiCalc Beta 0.95, IBM PC 25th anniversary, Update on what I've been up to with wikiCalc and more, Images as tags in Stylefeeder, Microsoft changes, Podcast with Microsoft's Alan Yates, MTLC OSS SIG podcast with IBM and Sun and Oracle, wikiCalc screencast, wikiCalc is now in Beta, wikiCalc Partnership with SocialText, Google spreadsheet, SymTrend: A way to track medical symptoms using a PDA or a web browser, Standards specifications and wikiCalc, John Sviokla's blog
Wednesday, September 6, 2006 
New wikiCalc Beta 0.95 [link]
After attending Wikimania 2006 and talking to people who had tried using wikiCalc I had a list of some new "must have for 1.0" features. I also saw how important localization is. I've added more to the numeric formatting so it's pretty easy to add new currencies, etc., by just editing one text file (not a program file). At this point I'm pretty happy with the number formatting code. It's not Excel or Open Office in terms of complete functionality, but it's pretty close and is probably better than most of the other server-based spreadsheets at this point.

In response to request (very reasonable requests) I've added two other features: Embeddable output and "Live View". Embeddable output means that you can have wikiCalc publish a ".js" file in addition to (or instead of) the .html file. If you add a simple "<script ... src=...></script>" line to any web page, you can have the spreadsheet table produced by wikiCalc be inserted at display time at any point in the page. This lets you put wikiCalc output inside of pages maintained by other programs, such as blogging tools, etc.

Live View is the term I'm using for recalculating and rendering the spreadsheet on demand. This is similar to a basic wiki page that is created on the fly by CGI each time it is viewed. There was such a feature before, but now it's much easier to set up and it has simple access control. This means that you can publish pages that can be viewed on demand (recalculating and importing data from other sheets) and let them be read-only to particular individuals or everybody. No need to use .htaccess -- just use the wikiCalc User Administration page. There are optional "Edit This Page" buttons on output (also using the simple access control). It makes it very wiki-like, which it should be since it's called "wikiCalc". The on-demand URL can include temporary new values for unlocked cells. It can also request the output as a web page (the default), just the HTML of the table, Javascript for embedding the table in a page, and as CDATA in XML for Ajax. This will hopefully make wikiCalc even better for mashups. Since it's Open Source and doesn't try to get you to see ads on someone's server, there's lots of flexibility in producing whatever output people want.

With all of these major internal changes (new numeric formatting, new rendering and referencing code, lots of new functions) I felt it was time for another beta which I just released tonight. See the wikiCalc Beta Test page for version 0.95. I haven't had time to do a screencast of the new features. I just got back from a speaking job/vacation in South America and still have some consulting to finish up with. Maybe I'll get one out after that.

This version, 0.95, will probably be used as the initial code when we set up the Open Source project through Socialtext sometime soon. Once I have Software Garden's 1.0 release, we'll add it to the project as an update and then start looking for contributions. I'd appreciate any testing of this version. I'm looking for bugs, not feature changes. I know the UI could be more like Excel, Open Office, etc. That wasn't the goal of version 1.0. The goal was to get a powerful, Open Source product that can be used by people to do useful things. Later we'll make it even easier to use, more compatible with other formats, etc. You should find that its usefulness as a server-based spreadsheet (running off of a remote server) has improved quite a bit from the earlier versions.

Tuesday, August 8, 2006 
IBM PC 25th anniversary [link]
I've been getting a variety of inquiries from the press with regards to the 25th anniversary of the announcement of the IBM PC, which is coming up on August 12th. To help anybody else interested in the event, here are some links to material I posted five years ago:

My company held a staff meeting the morning of the day the IBM PC was announced to go over the details. That meeting was videotaped (a little bit showed up in PBS's Triumph of the Nerds). I posted a transcript online with detailed comments so you can get a feel for those days -- see "IBM PC Announcement 1981." For example: "Dan: I'll read just a little bit of the press release. You can read it in detail when we get them. It's datelined New York, August 12th. 'IBM Corporation today announced its smallest lowest priced computer system, the IBM Personal Computer. Designed for business, school, and home, the easy to use system sells for as little as $1,565.' Audience: Whoa! [some clapping] Dan: Dah, dah, dah, dih, dahtah, dah. 'Sold through participating Computerland dealers and Sears Roebuck and Company's new Business Machines stores, beginning this fall.'"

I wrote an essay: "Thoughts on the 20th Anniversary of the IBM PC." This includes memories (and photos of my notes) from the secret days before the announcement when we learned about the machine so we could develop VisiCalc for it.

I posted a photo album of an event hosted by Bill Gates of Microsoft and Andy Grove of Intel: "Celebration of the 20th Anniversary of the IBM PC Announcement."

I wrote some comments here on this blog about the BIOS listing and the Technical Reference Manual.

For me, this past week was spent going to Wikimania 2006, including the "Hacking Days" pre-conference and Dan Gillmor's Citizen Journalism post-conference. Now back to wikiCalc coding.

Monday, July 24, 2006 
Update on what I've been up to with wikiCalc and more [link]
It's been almost a month since I lasted posted to this blog. That's about as long as I've gone in the 7 years I've been posting on this web site. It's time for a short update of what I've been doing:

I've been spending a lot of time working on wikiCalc, trying to get it up to what I feel is a complete 1.0 release. I've enhanced the function framework and implemented over 60 functions and am on target to ship with around 100. ISERROR, FIND, LEFT, STDEV, CHOOSE, SUMIF, and lots of others are already in. DSUM, etc., are still waiting for me to get to them before shipping. Sheet references can now refer to sheets on other web sites, e.g. "http://www.abc.com/sheet5.txt"!B20. UTF-8 Unicode characters are better supported, including in custom help text. Many more strings have been moved to the single customizable module, and changes can be made by editing a single text file. All this should make localization much easier. I'm almost done coding a pretty complete custom format routine so that most popular number formats can be handled. This means that formats like "#,##0.00;[RED]#,##0.00" (which you'll choose from the normal drop down list) will work for displaying negative values in color, etc. The decimal symbol, thousands separator, and currency mark may all be customized. This will also help with localization as well as continue with my goal of making wikiCalc "industrial strength" in its support of good looking final output. There are still a few more weeks of work.

Socialtext just announced their "Socialtext Open" commercially supported, Open Source wiki. It's their "enterprise-grade" code with an Open Source license that is mainly Mozilla Publish License 1.1. This shows you where they may go with wikiCalc and why they should be a good home for its ongoing development as an Open Source project. For many businesses this license is even more "business friendly" than the GPL 2.0 license under which wikiCalc is currently released. It is an interesting business model for a wiki company (they charge for support, hosted versions, etc., but the main code is available to all for no charge if you want). Prior to this they didn't have most of their enterprise-level code available with an Open Source license.

Other things have taken up my time, too. I continue doing a reasonable amount of consulting. I also decided that it was time to upgrade my laptop (it's already on it's second hard disk and has started making funny noises, hanging periodically, etc.). I bought another Tablet PC. This time it's a Toshiba Portege M400 with all the trimmings (high resolution screen, built-in DVD burner, etc., but still pretty small and light). The high resolution screen (1400x1050 on a 12.1" display) is a little hard on my 55-year old eyes, but I plan to run it with an external monitor when it's on my desk (I got a docking station) and it's making me more sensitive to dynamic font sizes, etc. This machine should be better for doing future wikiCalc coding while traveling. Getting the new computer, though, took up a lot of time as I configured it, decided what to move or copy to it (I'm still running stuff on the old Portege 3505), installed a new copy of Microsoft Office, tried blogging with it (this post using Trellix Web), etc.

That's it for now. Back to wikiCalc development...

Wednesday, June 28, 2006 
Images as tags in Stylefeeder [link]
As I've mentioned here before, one of my consulting clients is Top10Sources. Today they announced that they acquired StyleFeeder.com. A couple of weeks ago I got to spend a lot of time with the creator of that site, Philip Jacob, and play with it. There is one aspect of the system that really struck me (and apparently others -- TechCrunch points it out, too) and which I believe may have wide applicability: Images on pages as tags. Let me explain.

StyleFeeder was born as a way to let other people know what products you are thinking about buying. It lets you tag a web page that describes a particular product and have that page added to lists associated with your name as well as category tags. It sounds kind of like the normal page-tagging systems people use to save and share bookmarks, but because it is tuned to shopping it was tuned a certain way which makes it special.

When you want to see a list of what someone has chosen, there aren't always words that adequately differentiate between different products. "That cute little blue shirt with the embroidery on the collar" takes a lot of typing and still may not be enough (how about "crimping tool with extra doohickey for holding the wire"?). Scanning through a list of lots of shirts that are tagged as potential purchases is even tougher. The best thing is the way you would let someone you are shopping with in the mall see what you are talking about -- you'd hold it up and say "what about this one." Phil decided that a picture of the product is an important attribute, maybe more important than any other "tag". What's really neat is that most products being sold online have an image on the page and for many personal items a thumbnail that shows the shape and color may be enough to convey a lot of useful information.

What Phil did was make a variation of the "Tag This" bookmarklet. When you invoke this bookmark/shortcut, it pops up some instructions and takes over the mouse pointer. It has a cross-hair pointer and the words "Click a picture of the item you want to post." Here's what it looks like popped up over the page selling my training video:

When you click the image, it picks up that image (an interesting use of Javascript/AJAX), takes a reasonable part of it and makes a thumbnail, and presents that information along with the URL of the page you tagged and a product name derived from the page title. You can then add a bit of tagging text and save it. Here's the "Add an item" page that shows up:

What I really like about this is the power of choosing a photograph as a visible tag for describing (and remembering) an item. I love how easy it is. It reminded me of a facility I helped design years ago for a pen computer product from Slate Corporation where we did indexing by circling something written on the page. The image of what you circled became the "tag" visible on the indexing screen.

What's also nice is that a list of many items you are currently considering can be easily displayed on a website as a grid of just tiny images (as you can see on Top10 CEO Halley Suitt's blog on the left).

This is different than tagging a photograph they've uploaded. Here the user is choosing a photograph already carefully produced by the page author. The actual amount of work you need to do to provide a lot of information about an item is minimal. This is really perfect for a system that involves sharing information about things that may be very hard to describe, such as different watches, clothes to wear, tools, cars, appliances, etc.

This is another great example of what a little bit of Javascript (and some ingenuity) can do for you with today's browsers.

Thursday, June 15, 2006 
Microsoft changes [link]
As I guess all my readers know, Microsoft had a major press conference today announcing Bill Gates' transition out of a full-time role at the company. I just finished watching the video of the meeting. Here are some of my thoughts:

First and foremost, ignoring the effect on Microsoft and the computer industry, this is a good thing for the world. Here we have the richest person in the world, one of the most successful people of all time in executing on his business vision, still in the prime of his life leaving his job in industry to work full time at a hugely well-endowed organization helping rid the world of hunger, disease, and lack of education. What results will we see? What model does this set for generations of young people for how to play out your life? What signal does that send about the desirability of doing such "do good" work? Bill isn't leaving to sit on a beach (after buying it) or other "traditional" rewards for success. His chosen reward is to be able to help the world. His foundation's stated values: "All lives -- no matter where they are being led -- have equal value" and "To whom much has been given, much is expected." This is great. It's what I think he always said he would do and he's putting his money and time where his mouth is.

There have been a variety of hi-tech rich people who have made great examples through their philanthropy while working, and others like Steve Wozniak who went on to spend a major part of their own time helping others hands-on in various ways. This is something that needs to be highlighted to young people and lauded. This should be a model to follow, not just the model of trying again to make a lot of money in a new business or doing conspicuous consumption and partying. This is a real reality show.

Back to Microsoft: I am thrilled that Ray Ozzie has been tapped as the heir to the technical and architectural throne. As I wrote when Ray joined Microsoft, he is a great, thoughtful, principled, and caring person. He is very bright. He has been immersed in decentralized computing, cooperating devices, sharing systems, security, and privacy. Bill Gates had been immersed in every part of the development of products in the earlier days of desktop computing. Lately he's been immersed in legal issues, security patches, and the issues of upgrading huge products with huge legacies. Ray brings another seasoned developer to the technical helm, but one maybe more viscerally connected to the latest stuff. Ray has been making very visible gestures to the entire development community with his release of open specifications for Really Simple Sharing and Live Clipboard. (He even announced Live Clipboard at an O'Reilly conference.) He has personally experimented with personal blogging and simple standards. This is different than the traditional image of Microsoft and its leaders. It bodes well for Microsoft fitting in to a more open community.

I feel bad that Ray will probably spend even less time here in the Boston area, but maybe it will send more attention to the land of the Red Sox from Redmond. I understand the huge responsibility he's taken on for himself and I wish him all the best. He's an outsider in a very large, established organization. His bosses know and trust him and have for years even when he wasn't an employee and even when he was a competitor. We'll see how well he can work with the rest of Microsoft in such an ultimate leadership role.

It will be interesting to see the results of the interactions between Ray and Craig Mundie, the other person taking over some of Bill's responsibilities. Craig is also very thoughtful, but has been a major person on the "other side" of discussions about Open Source and related topics. He has been involved in different types of development than Ray and different approaches to computing. I haven't followed his career as closely and I'm not sure exactly what parts of development he is most experienced with. I wonder what signal is being sent by making Craig the chief research and strategy officer as well as him working with intellectual property and technology policy. I see a mixed message. I await comments from Craig and the others.

Best of luck to each of them in their new positions, and good luck to Steve Ballmer in leading it all. For Bill, may you go from strength to strength.

Monday, June 12, 2006 
Podcast with Microsoft's Alan Yates [link]
I ran into Alan Yates tonight at a Microsoft reception at the University of Massachusetts Club overlooking the Boston Harbor. Alan is the general manager of business strategy for the Office team. I asked him a few questions about Google Spreadsheet and web stuff related to Office and recorded them in a podcast.

You'll find a link to the 6 minute podcast as "Alan Yates" on my Podcast page. It's also in the podcast feed.

Alan Yates of Microsoft

Sunday, June 11, 2006 
MTLC OSS SIG podcast with IBM and Sun and Oracle [link]
The Mass Technology Leadership Council Open Source Software Special Interest Group had another meeting. The title was "Proprietary Software Company Views On Open Source ". There were three panelists: Bob Sutor, Vice President of Open Source & Standards, IBM; Karen Tegan Padir, Vice President, Enterprise Java Platforms, Sun Microsystems, Inc.; and Omar Tazi, Chief Open Source Evangelist, Middleware and Tools, Oracle Corporation. Bob Zurek and I moderated. A summary at the end was made by Karen Copenhaver of Black Duck and law firm Choate Hall & Stewart.

I had the "fun" of moderating while doing all the audio work for a podcast. It was tough, since I had to use my own equipment (one wired and one wireless mike, a mixer and my recorder) and monitor the sound levels while trying to listen carefully to moderate and ask questions. On the flip side, the trouble was worth it because the sound quality isn't too bad and is much better than a just leaving a mike near the front of the audience.

It's interesting to hear traditional companies' software groups talk about Open Source. If you haven't heard IBM's Bob Sutor speak on the subject, I think it's worthwhile, and the viewpoints from the others are good, too. We did ask questions such as "what do the sales people do when they get the option to sell your expensive product or the Open Source one you also have?" Interesting to hear Oracle talk about Open Source, too.

See the "Proprietary Software Company Views meeting page" for a link to the 2 hour audio. This is not in my normal podcast feed.

Friday, June 9, 2006 
wikiCalc screencast [link]
I've created a 10 minute screencast demo of wikiCalc. It shows off lots of features, including some of the new ones. (It was great to be able to repurpose my podcasting equipment to get decent audio.) The entire demo was "filmed" in realtime with wikiCalc running as a normal CGI-script on a shared hosting account. This is the worse-case situation for performance (mod_perl would have been better) but I think it shows wikiCalc's pretty useful even in that situation.

To get to the demo, go to "Screencast: wikiCalc" on the SocialText website.
wikiCalc is now in Beta [link]
I finally got the Beta 0.91 version of wikiCalc posted late last night. I finished the main coding last week, but there were lots of details finishing the help files, last minute bug fixes, website updates, etc. You will find links to it on the wikiCalc Beta home page.

There are lots of new features in this release: sort, optional "edit this page" links on the final HTML pages, revert to old version and audit-trail of sheet changes, RSS feed creation, logical operations and the IF function, pagename!A5 inter-sheet references, date/time values, and more. It is pretty much feature-complete for a 1.0 version. It needs lots of testing, bug fixes and other work for internationalization, more value display formats, and lots more functions. The end of this first phase in the project is almost in sight.

Now that Google has released an early version of their browser-based spreadsheet and wikiCalc is in beta, it is easier to understand this genre and see where wikiCalc fits in. The most obvious one is that it is released under an Open Source license and written in a well-known scripting language (Perl). You can run it yourself on your own computers. Another related one is that it can optionally be run locally on your PC, just connecting to a server by FTP when you open a file or publish. In all cases multiple users can take turns editing each page, each on their own PC. Also, the product is available for Windows, Linux, and Mac. It has Safari support.

On a more philosophical level, wikiCalc appears to be aimed at a different use than many of the other browser-based spreadsheets (BBSS's). wikiCalc assumes that the result should be a normal-looking web page that is perhaps part of a larger website. The reader shouldn't know the page was created with a spreadsheet tool. wikiCalc is more in the class of a blogging tool or a wiki. Many of the other BBSS's assume you want an experience akin to sitting in Excel -- that you want to see the A-B-C 1-2-3 headings and a grid, and readers want to do "what if". With them, HTML output looks like an afterthought. Wrapping output in a template (and having a template gallery, etc.) or having control over individual cell borders seem not to be priorities with them, but it was with wikiCalc. When designing wikiCalc I assumed that many users, and especially some corporate users, will want fine control over the look of the final output. Not only does the color chooser let you set any RGB value (as well as choose from color swatches), but there is even a way to easily set explicit CSS classes or styles on cells. HTML is a native data-type in wikiCalc. You can get data from a web service using a simple spreadsheet function and even grab data from regular web pages on other sites.

I assumed that the common use for wikiCalc would be one to ten authors for each page, with one to millions of readers. This is similar to most wikis and blogs. It is thinking of Excel together with "print" and a copier or PDF, not sitting doing "what if" all day. The idea was that we needed to maintain web pages that had more than just paragraphs of text in a manner similar to a wiki. Pages go through changes, so there needs to be revision tracking, and a log of individual changes to the sheet would be very helpful. RSS should be supported (both at the site and page level) because that is important in the real world. While it might be nice for me to watch your changes "live" while you make them, more likely I am doing something else more important and will only know of your changes when you tell me, which RSS does automatically in a standard, nonintrusive way.

wikiCalc is not for heavy calculation or large data spreadsheeting. It is not a data processing system like Excel and other high-end spreadsheets. It is not a database management system. It is a sophisticated web page authoring tool that helps you easily handle data that involves numbers and text in a semi-regular way that many people find very comfortable. Thinking of layout and calculation in a "spreadsheet way" is something many people have already learned and we know it works well. What traditional wikis are to word processing wikiCalc is to spreadsheets. Wikis are not Microsoft Word, but they have proven to be very valuable in a different way because they are tuned to the web and to a part of Internet culture. Likewise, wikiCalc is not Microsoft Excel but something tuned to the web.

I hope you like this new release. Please give it the testing it deserves. I am most interested in bugs. I know it doesn't feel like Excel. It's not supposed to.

Next on my plate: Working on a screen captured movie of a demo of wikiCalc. Hopefully I'll get that done later today.
wikiCalc Partnership with SocialText [link]
Three of the tasks I had to accomplish as part of developing wikiCalc were to arrange for someone to provide it as a commercial hosted service, to find someone to provide paid support, and to figure out how to start a real Open Source project around it so it can reach its potential.

At the suggestion of others, back in January I started talking to Ross Mayfield and some of the other founders of SocialText to see if there was a fit with my needs. SocialText is a natural choice because they have been in the wiki/Social Software space for years and are quite committed to Open Source in various ways. Though many of friends knew or had worked with the founders and liked them, I have had little interaction with them before this. Taking to Ross, I found out that their products, like wikiCalc, are written mainly in Perl and that we shared some of the same philosophies about where the product should go. They liked wikiCalc and the idea of working together.

There was no rush for a deal because I had months of work before releasing a beta and it didn't make sense to announce anything before that. I was too busy coding and doing my consulting to spend time in the legal aspects of contract drafting. Ross and I met in person when I was in California in early March. By the end of March we had the outlines of a relationship sketched out. Over the next two months we did a couple of back and forths with our lawyers and early this week we finally signed it.

Under the terms of the deal SocialText gets a pretty broad license to distribute wikiCalc and to develop other products based upon it. They will be making commercial versions of it and selling those versions as a service on their servers or on servers you run yourself (see them for details). They are also going to run an Open Source project based upon the code. I'll be working closely with them as a consultant and will start out as the leader of the project. I'll also be helping them integrate wikiCalc into their other wiki offerings. I see lots of continued design and coding in my future.

For more about what they are doing, check out the SocialText website and Ross Mayfield's blog.

For me this is very exciting. As we were getting set to pass around signature pages on the deal Google announced their spreadsheet and suddenly people everywhere were interested in Spreadsheets-as-a-Service. Suddenly the press is really interested in all this. wikiCalc continues to be a fun ride.

Monday, June 5, 2006 
Google spreadsheet [link]
I've read some of the reports that Google is announcing a spreadsheet tomorrow. Cool! It will be interesting to see another take on this genre though scary to be compared to the product of a huge company with billions of dollars. I wonder if they'll make it Open Source like wikiCalc and let you run it on your own servers.

I finished the coding of the Beta 0.9 version of wikiCalc and should have it ready for release in a few days after some testing and documentation, probably by the weekend. It's "beta" now, not "alpha", because I have pretty much the full feature set I plan for version 1.0. The version up on the Software Garden web site is still the Alpha 0.3 release from last February. If you are looking to find out what wikiCalc is like, wait for the beta next week. If you want to understand the architecture, the information there is still correct.

Sunday, April 30, 2006 
SymTrend: A way to track medical symptoms using a PDA or a web browser [link]
Back in 1998, my family was still dealing with the effects of the severe brain injury my father sustained in a car accident a few years before. At the time, a major issue was monitoring the impact of medications -- his memory and self-awareness were quite impaired, so asking him if he was feeling better this week than last was not a reasonable possibility. I was fortunate that we could use a friend's prototype of a PDA-based health management system. Through that experience I saw firsthand the value of actually collecting data and processing it to look for statistical trends that may not be apparent to someone living day-to-day with those symptoms. As one who sees the value in using computers as tools to help us, I can't imagine doing without the information and guidance such as system provides.

In the years since I have been advising my friends who developed the system. The system is now available for general use so I decided that it was time to let others know about it more publicly than I have in the past. (Disclaimer: These people are my friends and I have a small financial stake in their company. I am not a medical professional and this is not medical advice.)

The company is called SymTrend, Inc., as in "Symptom Trends". The SymTrend system helps patients track multiple symptoms and events related to ongoing conditions, illnesses, and effects of medical treatments. It does this by having the patient or caregiver record responses to questions in an ongoing manner. These responses may be collected on an hourly or daily basis, or whatever is appropriate. The responses are captured as computer data using a web browser or an inexpensive standalone PDA. The data can be presented in a variety of useful charts and reports which patients and their healthcare professionals can then examine.

SymTrend is especially useful for tracking symptoms that vary throughout the day and special events that wouldn't be easy for a healthcare provider to observe as fully through normal office visits. These include symptoms like mood, feelings, and behaviors and events such as changes in drug dosing, family situations, and diet. It also lets you follow long-term trends and correlate those trends with treatment changes.  You can use its graphical tools to investigate the impact of unsuspected influences and to identify triggers and risk factors.

In addition to its health monitoring and exploratory capabilities it has reminder/guidance functionality. The application can guide someone with cognitive limitations to function better independently, with activities of daily living, medication compliance, or depression/anxiety management. The repeated questioning seems to make a user more mindful of what should be done and additional instructions can keep the user on track.

If you or someone you know has a condition that could be helped by tracking symptoms in this manner, you should let them know about SymTrend so they can see if it is an appropriate addition to their treatment. SymTrend has just become generally available recently so it is unlikely that they have already evaluated it. As of this writing, SymTrend has already been customized for ADHD, anxiety, Asperger's syndrome, autism, cancer treatment, depression and bipolar disorder, postpartum or menopausal issues, stress, headache, and neurological conditions such as epilepsy, brain injury, and Parkinson's disease.

I've written up a more detailed write up about SymTrend, including some illustrations. See "My take on SymTrend: A way to track medical symptoms using a PDA or a web browser".

Much of what I write about here on my blog is about computer-based tools for expression, computation, and information display as well as hand-held and other mobile computing tools. As a person in his mid-50's with many friends and relatives going through health problems, and the ever present prospect of health problems in the future myself, it's nice to talk about a combination of such tools that I've been peripherally involved in that addresses health.

Wednesday, April 5, 2006 
Standards specifications and wikiCalc [link]
I'm still hard at work coding wikiCalc, moving slowly but surely to a beta release. Here's what's been happening:

After getting all that revert and RSS stuff in that I mentioned a week or two ago, I started working on the calculation engine. I've decided that it would be best to have version 1.0 have a data model that will handle a wide range of functions and common spreadsheet functionality. Much to my surprise, I'm getting a lot of interest in wikiCalc on the corporate front, not just the "PTA and clubs" home front. People are expecting to do real, heavy-duty work with it and want it to meet those needs. Also, as part of my minor role in the Open Document Format Spreadsheet Formula subcommittee I feel it would be embarrassing to ignore those developing standards even as I advocate for parts in them.

The functionality I'm talking about includes data types, syntax capabilities, and stuff that has evolved from VisiCalc through 1-2-3 to Excel and others. For example, wikiCalc hasn't been handling date or time values, but I know lots of users will expect at least some help here (not just using text strings that look like dates). There could be errors and bad surprises if too many formulas or input formats work differently than Excel and most other spreadsheets. Those features evolved over the years for a reason -- many of them make for a better spreadsheet or solve an esoteric problem you wouldn't realize without a lot of thought or user feedback. Also, some of the excitement about wikiCalc is based on an assumption that "of course" it will have certain features if it's a spreadsheet -- features I hadn't originally planned in V1.0. The "80%" level good enough for each person, as we all know, is really "95%" to get in enough people's 80%'s.

What this means is that wikiCalc is taking so long not because of feature creep as I come up with new ideas (these are all features I knew eventually had to be in the product -- they are in almost all current traditional spreadsheets or wikis) but because of a raising of the bar for the minimum initial level of V1.0.

Implementing a large part of a standard helps flesh out all of the architecture for a "complete" product. As an Open Source product, I don't want people working hard to add their own functions only to find that I intended to completely rework the data structures those functions work with. I don't want to plan for them to be required to redo their code for even simple cases or find that they can't implement common spreadsheet functions without upgrading the entire calculation engine themselves (and then have me implement it differently to handle a wider range of cases). There is also the benefit that V1.0 will feel more like a "real" spreadsheet than I had originally planned and be easier to use.

I'm learning the immense value to an implementor of carefully written standards documentation. User guides are for users but good standards documentation are written with the needs of product creators in mind. I've been using the preliminary OpenFormula.org documentation as well as paying attention to some discussion on the ODF Formula committee. It really helps. Details about how to handle the strange cases are usually left out of user documentation but are an important part of a standards document. Having that documentation makes it much more likely that my product will meet the needs of a wide range of users. It also made it more likely that I would do what I did -- implement a more complete product because I know how far to go in many different areas and even the supposedly easy "6 of one, half a dozen of the other" decisions have already been made for me and documented. The ODF project is helping me even if I don't end up with a completely ODF-supporting product at first.
John Sviokla's blog [link]
As part of my work as a DiamondCluster Fellow I've spent a lot of time talking with their vice-chairman and Global Managing Director of Innovation and Research John Sviokla and listening to his presentations. We've also produced a few episodes of a podcast together. Prior to DiamondCluster (a consulting firm that merges technology and strategy consulting) John was a professor at Harvard Business School (not when I was there as I recall). He's quite bright and helps me understand big businesses and organizations.

John has recently started blogging at a somewhat regular pace (a new long post every day or so). Given the disclaimer that I have a financial interest in DiamondCluster, that I do consulting for them, that I talked with John about his blog a few weeks ago as this was starting, and that he pointed to me today when writing about Motorola wikis, etc., etc., I have to tell you this because I think I'd be doing my readers a disservice if I didn't: John Sviokla's new blog is really worth reading. He covers technology and business in a way that will help people in both worlds. He brings interesting perspectives that remind you of those moments in business school when after 60 minutes of discussing a case in class it all starts making sense -- there's a way of looking at things I hadn't considered.

His blog is "Sviokla's Context" and it has an RSS feed.

John is trying to add his voice to the blogosphere. I think it's a welcome addition. A nice sign of the times as a blog may be pushing aside the white paper at a major consulting firm.

Archive   Home   Newer   Older
© Copyright 1999-2018 by Daniel Bricklin
All Rights Reserved.

See disclaimer on home page.