Monday, April 13, 2009

Tizra gets faster

Non-technical summary: things are lots faster at Tizra sites and admin tools. There's certainly more to do, but we've got more tricks up our sleeves! Because the big current speed boost is related to one cause, and it took me a while to track down, the geek appendage to this post describes what we found and how we fixed it.

Geekly details

I spent a bunch of time last week looking at system performance. As we've been adding customers and usage, we were beginning to feel the pinch. Performance always varies, but the range of response times was getting wider as things slowed, leading me to think that there might be some systemic issues that would give us a quick improvement (and indeed there was some Linux tuning that helped a bit). But data access seemed to be the real issue, so I spent a bunch of time looking into hibernate, and our caching and querying, and then wound up spending a day or so basically watching all the queries go through Postgres. And you know what? most of them seemed much slower than they should be, even though they are pretty hairy.

Of course, the next step was to check for database indexes, and how the query plans were using them. But in hand testing the plans looked good, and the indexes were sensible. But when run by hand the queries were also significantly faster than when hibernate ran them! This was much easier to see now that we have a live load, which is inevitably different from a test setup. So why the difference? Postgres was ignoring our indexes only when Tizra publisher made the queries.

Turns out that there's an old bug in Postgres where it would ignore indexes on bigint fields in prepared statements unless there was an explicit data type cast. (That type confusion was an obscure result of skew between Postgresql and the SQL standard.) And that was the behavior I was seeing, even though we were using a much more recent vintage of all the software. This was terrible for us, because we have a multi-tenant publishing system for large document collections and we use bigints as primary object identifiers!

So, why the old problem if the bug is gone, and we are not using postgres 7? It turns out that we dynamically build those hairy queries, in HQL (hibernate query language), using the String trick. But nowadays instead of making your indexes work, it breaks them! The differences are invisible in the SQL. It turned out that we were in a version "donut hole." Our database was recent enough so the String trick worked the opposite way (preventing fast queries for our prepared statements), but the JDBC driver wasn't making the calls in the right way to make the old trick work. End result: we're now running the latest JDBC driver with compatibility options set while we update our hairy query generator. And now we can really start tuning our setup!

If the web had not provided the history of the old bug, I would have had a much worse time even knowing where to look to find our somewhat subtle configuration issue. So enjoy the speedup, I sure am!

Thursday, February 19, 2009

The New, 2009 1/7 Tizra

Right now, our favorite thing about being a Software as a Service company is we can upgrade Tizra Publisher whenever we think it's right, without regard to ship dates or marketing rollouts. Or as the old Beetle ad said: "When we find a way to improve the Volkswagen, we do it. Then and there."

It's been less than a month since we announced instant web signups for Tizra Publisher, but we've already found several ways to improve. So we upgraded our software. Then and there.

A few hightlights...

Downloadable Chapters & Subsections

Tizra Publisher has always let you break documents up into smaller chunks, such as chapters, which can be sold or distributed independently, or remixed into new online products or collections. Now this capability is even more useful because you can let your users download the chunks for offline reading or printing. Each download is watermarked with your site's address, so there's no forgetting where they got it!

Here's how it looks on the CISnet site MIT Press runs on Tizra Publisher.

Note that while in this case, MIT Press is using it to provide free samples, it works just as well for paid or access-controlled content.

More Control Over Who Sees What

If you're selling eBooks, you want the world to know what's in your catalog (while of course controlling full-text access), but if you're doing enterprise knowledgement management, or you're a consultant or other professional services firm distributing documents to clients, you have to be more picky. For these applications, we recently added the ability to selectively suppress display of documents in title listings and searches. For example, if you're a law firm sharing documents with a client, no one else will even know those documents exist.

To use the feature, you just tag users to put them into groups, then select which groups you want a given document to be visible to. Below you can see the controls set to limit visibility of a document to a group called "Investors."

To ToC or not to ToC?

For long documents, like the 910-pager from the New York Botanical Garden Press shown below, Tizra's ability to automatically create web Tables of Contents is a boon...just upload a bookmarked PDF, and bam, you've created an easy browsing experience for your users. But if your document's just a few pages, who needs a ToC? Now you have the choice. Just say No to the Display Table of Contents option, and your users will go straight to page 1 with no unnecessary stops.

REST API & Other Power Tools

Many of the organizations we work with already have ecommerce, access-control, or related web capabilities in place, so we've added a straightforward, standards-based REST API, which enables those systems to exchange information with Tizra Publisher to create seamless end user experiences. For example, if you already have a database of users, your developers can set things up so those users can access content you host on Tizra Publisher without a separate sign-on. Same holds true if you want to sell Tizra-hosted products via your own shopping cart software.

Other new features for power users, include macros that let you selectively display information to users based on their login status, membership in user groups...even what browser software they're using.

It boils down to a package of capabilities that's not only very easy to get started with, but like the old Beetle, can take you a long way very economically.

Wednesday, January 28, 2009

Online Publishing for Tough Times

"I didn't invent the rainy day, man. I just own the best umbrella"
Almost Famous

In an economic climate that led Publishers Weekly to predict 2009 would be "the worst year for publishing in decades," eBook sales are growing at more than 100% a year, according to the International Digital Publishing Forum (IDPF).

We think it's time more content owners—both inside and outside the traditional publishing industry—had access to serious online publishing tools that will open up this kind of opportunity. That's why we're rolling out free, self-service signups to Tizra Publisher. This is the same software that MIT Press is using to sell a collection of more than 170 computer science books on its CISnet site, and you can get your hands on it right now…

If you'd like to learn a bit more, here's quick overview of what Tizra Publisher can do (click the little TV icon at the bottom to see it big!).

Monday, December 15, 2008

This Weds: Come see us at Providence Geeks!

Later this week, Tizra's presenting at the Providence Geek Dinner:

Wed., Dec 17
5:30-9pm
AS220, 115 Empire St., Providence, RI

We'll be demoing new features of Tizra Publisher, and discussing some of the mindblowing work our CTO Francisco Rosa has been doing behind the scenes. We've been big fans of the Geek Dinner since its early days (we gave a sneak preview of our software at one of the very first ones) and hope we'll see you there.

PS: We also hope you'll bring something for the Geeks for Good canned food drive!

Tuesday, December 09, 2008

AppGap: Tizra more than just a "great tool for content sellers"

Bill Ives has been writing about knowledge management since the days when for most people that meant color coding your files, so we were really pleased when he agreed to evaluate Tizra Publisher in The AppGap, a blog on the future of work. We were even more pleased when he said "I see this service as a great tool for content sellers."

But we thought his keenest insight was into applications beyond traditional publishing...

[Tizra Publisher] can also be a useful content distribution system for enterprises that need to manage the presentation of their information. This will be especially useful for verticals with a lot of internal content such as legal firms, pharma, and other research oriented enterprises.
Ives saw Tizra's combination of easy and yet precisely controlled content distribution as key for these users, and others needing to share marketing and technical information.

Read the full review.

Monday, December 08, 2008

"How to deliver content digitally without going out of business"

That's how The Chronicle of Higher Education described the quandary many publishers face. We think it's apt, particularly since they also said Tizra Publisher offers "a cost effective new model to try out."

A key reason? We start with the "dreaded PDF" files publishers already have, which means…

Tizra doesn't require an investment in high-priced technology or legions of IT helpers. Presses don't have to convert files to a more flexible XML format or invest scarce resources in custom-designed software.
Read the full article here.

Monday, September 29, 2008

Slater Reinvests in Tizra

In business there's only one thing more meaningful than having someone trust you to make good use of their money, and that's having them do it again! That's exactly what Rhode Island's Slater Technology Fund has done by announcing they'll increase their investment in Tizra.

Slater's been involved in Tizra from the days when we were just a few guys with an idea--initially with advice, and then with investment. They've been a great partner, always pushing us to dig deeper, think harder, do better and ultimately to believe in the potential of what we're doing. Now that that potential is bearing fruit, we're thrilled to see them increasing their involvement.