Showing posts with label testimonial. Show all posts
Showing posts with label testimonial. Show all posts

Saturday, February 22, 2014

Languages Used, Most Exciting

JavaScript and SQL are in first and second place by a wide margin over Java and the rest in the "Languages Used In The Last Year" category of the 2013 Stack Overflow User Survey Results.

Perhaps it should come as no surprise then, that two of the three "Most Exciting New Technologies" have "JS" in their names :)...




Monday, July 8, 2013

ER Diagrams in SQL Anywhere 16

Tip: The "ER Diagram" feature of Sybase Central is all growed up and well behaved in SQL Anywhere 16.

I'm guilty of not trying it out for a long time, but today it seems to be actually useful:

  • The right-mouse Choose ER Diagram Tables... context menu item makes it easy to pick the tables you want to display.

  • It's easy to click and drag the tables to move them around,

  • and the lines too, but with the lines you first have to click on a line to display the teeny tiny endpoint boxes, then click and drag those endpoints to move the line:
  • You can resize the table images to show more columns by first clicking on the title bar to display the resizing icons.

  • The View - Refresh Folder menu item lets you clear highlighting after clicking on columns.

  • Best of all... your careful work moving tables and lines around isn't wiped out when you refresh the display.

  • Better yet (better than best?) Sybase Central remembers the layout when you disconnect, connect, and redisplay the ER Diagram tab.

  • Better still: right-mouse Export Layout... (new with SQL Anywhere 16) lets you save the layout in a funky XML text file (just the layout, not the columns and and what-not),

  • and then you can revert to that layout with right-mouse Import Layout... after, for example, you completely [cough] muck it up :)

  • The right-mouse Go To Table and Go To Foreign Key menu items take you to the relevant tabs in Sybase Central, and from there the Back button brings you back to the diagram.
Here's a before-and-after example of an ER diagram
  • as originally displayed for the SQL Anywhere 16 Demo database (the first image) and

  • after some fiddling about (the second image):


Is it an alternative to PowerDesigner?


Yes, it is, for 99% of what people actually need: Pretty pictures for management (90%), and diagrams for documentation (9%).

The remaining 1% of what folks need, which accounts for 99.999% of PowerDesigner's feature set (and complexity, and cost) is beyond the scope of the Sybase Central ER Diagram feature.

Dilbert.com 2000-12-16

Wednesday, May 8, 2013

Save IvanAnywhere!

IvanAnywhere is in danger of being "challenged and removed" or possibly "merged, redirected or deleted"!



Please, someone with Wikipedia creds, save IvanAnywhere before it's too late!

Dilbert.com 2009-02-22


Friday, April 26, 2013

Yet Another (sigh) SQL Anywhere Q&A Forum

Did you know that for a brief period of time, there were not one, not two, but three official question-and-answer forums devoted exclusively to SQL Anywhere?

  1. the now-defunct NNTP newsgroups,

  2. the excellent SQLAnywhere-Forum.sybase.com website, and

  3. the brand-new "SAP Sybase SQL Anywhere Discussions (Forum)".
The good news is, the NNTP newsgroups are finally gone... after several years of inaction by Sybase it took a takeover by SAP to make it happen.

The bad news is, once again there are two different forums to choose from when deciding where to ask a question about SQL Anywhere (2 and 3 above).

The good news is, the new SAP forum appears to be indexed by Google (whew! it didn't have to be the case).

The bad news is, the whole SAP Community Network website has an awkward, cluttered and confusing design... and in particular the SAP SQL Anywhere forum is clunky and hard to use when compared with SQLAnywhere-Forum.sybase.com.

Enough windmills!


The SAP Community Network website can't help the way it is: it's a all-encompassing corporate creation with no place for best-of-breed solutions like the software running SQLAnywhere-Forum.sybase.com. Sybase almost created one of those (the Sybase Developer Network) but decided not to waste spend the money.

To put it another way, if SQLAnywhere-Forum.sybase.com is replaced by the SAP forum, it's not the end of the world... having one place to ask questions might be a good thing.

On the other hand, if SQL Anywhere is put through some kind of committee meat-grinder, THAT'S the end of the world.

Dilbert 2009-10-09


Wednesday, April 17, 2013

Product Suggestion: Google-Searchable Docs

Some SQL Anywhere technical documents posted on the sap.com website aren't showing up in Google searches, and they should.

The likely reason is that these documents are located in separate PDF blobs deep down in sap.com documentation database, so deep the Google indexing process doesn't find them.

Example 1

Mobilizing an Oracle 11g Database
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/80c79a94-1b24-3010-f7a0-f299dc3b47e1?QuickLink=index&overridelayout=true&57844619551223
This document dates back to May 2011, and it originally appeared on sybase.com. When you do the following Google search
"must have permission for the GV_$TRANSACTION"
the original sybase.com copy shows up
Mobilizing an Oracle 11g Database
http://www.sybase.com/files/Technical_Documents/ias_wp_MobilizeOracle11g.pdf
but not the one on sap.com.

As time goes on, it is very likely that all technical documentation on sybase.com will be copied to sap.com and deleted from sybase.com... but for now, Google can still find this one.

Example 2

Top 10 Cool New Features In SAP Sybase SQL Anywhere 16
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/90b97407-9281-3010-92bf-edb97ae0bb72?QuickLink=index&overridelayout=true&58321360934470
This exists only on sap.com, and as such it is invisible to a Google search like this:
"skipping over one version number per year for three years"

Suggestion

Instead of burying these documents down inside a documentation database that is inaccessible to Google search, they should be stored in a location Google can find... either a simple web page, or a database that Google can index.

For example, the following document is stored as an ordinary "DOC-xxxxx" web page that Google can find:
SAP Sybase SQL Anywhere Supported Platforms and Engineering Support Status
http://scn.sap.com/docs/DOC-35654
In this case, a Google search works just fine:
"The tables below summarize the platforms supported by SAP Sybase SQL Anywhere"
In fact, the hidden documents ARE represented as simple "DOC-xxxxx" web pages but those pages are stubs; the actual content is buried one level further down (or eight levels further down if you count all the "/" slashes in the urls).

For example, here's the DOC-xxxxx page for the Top 10 article:
Top 10 Cool New Features in SAP Sybase SQL Anywhere 16
http://scn.sap.com/docs/DOC-40056
As you can see, the DOC-xxxxx page is just a stub, and the actual content is down inside the hidden page:

What's the point?

It may not be important to have this particular page searchable by Google, but that's not the point.

The point is, it IS important for MOST SQL Anywhere technical documents to be Google-searchable, and the trend favoring stealth over visibility should be reversed.


Friday, July 13, 2012

Google Groups Q&A

Back in 2009, Version 1.0 of the web-based SQL Anywhere question-and-answer forum was created using the Stack Exchange service as it existed then.

That was then, this is now: If I had to do it again, knowing what Stack Exchange has become, I might use the new Google Groups Q&A instead:


That won't happen, of course,

...because that was then, and this is now, and Version 2.0 of the SQL Anywhere forum exists, and it's just fine, no need to switch platforms.

But...

If I, or you, wanted to create a whole new Q&A website today, here's why the new-and-improved Google Groups might be the way to go:
  • It gives you all the basic goodies you want when building a modern Q&A website,

  • for free,

  • plus it gives you a Google-style interface, with Google search built right in,

  • plus your website automatically runs on the Google cloud, you don't even have to ask:


Plus... no tyrants!

Unlike Google Groups, which is open to everyone, the current Stack Exchange service is built upon two Big Lies (a Big Lie is a falsehood so bold, so ridiculous, so easily disproved, that folks think it must be true because nobody would tell such a whopper, would they?):

Big Lie Number One: "A good Q&A site needs a lot of people to support it."
The truth: What a good Q&A site needs is at least one person to support it. More are better, but most successful online communities depend on a very small number of extremely active users.
Big Lie Number Two: "Stack Exchange is a product for the Internet community at large, not for corporations or individuals."
The truth: The internet community consists entirely of corporations and individuals... what else is there?

Robots? Aliens?

Soldiers?

From these lies springs the rule that you can't have a Stack Exchange Q&A site if you don't agree with the tyrant "We":

"We'll let you know whenever the site reaches the next milestone. A site moves to the "Commitment" phase when its definition is complete and it has a show of support from enough potential users. If a proposal doesn't have followers, the site will not get created."
By the tyrant We's standards, the original sqla.stackexchange.com would not have existed in the first place, nor would SQLAnywhere-forum.sybase.com exist today, simply because because they didn't (and don't) have enough traffic to qualify.

Not to mention that the former was created and operated by an individual, and the latter by a corporation made up entirely of individuals, as opposed to...

...what?

The "community"?

Will Google Groups Q&A crush Stack Exchange?


It's hard to say, Google hasn't been successful [cough] [Google+] at every single thing it tries.

But maybe it doesn't matter... Stack Exchange seems to be morphing into yet another job hunting website:




Friday, May 25, 2012

What's YOUR Klout score?



How did my Klout score get to be so high?

In case you were wondering,

Here's how I really feel about it...

Klout


Wednesday, January 18, 2012

Develop, Test, Release, ...

No amount of slick propaganda can rearrange the basic software development life cycle:


Develop, Test, Release, Repeat
No one can put Release before Develop, not unless they have a time machine. It is possible to put Release before Test but that is usually so unsuccessful that an impartial observer might say the Release never happened.

If the same staff are involved in both Develop and Test (as they often are, and perhaps should be) then a big problem can arise when the cycle reaches Repeat:

It's hard to go back to development when you've been testing for release.
During final testing the code is usually frozen and everyone is risk-averse. The only changes allowed are those required to fix problems, and not all problems are fixed... no one wants to make any changes that might break something else.

After the Big Release Day, it's time to Repeat which means go back to Development. For management, that's easy: it's all just one long schedule to them, just one day later, and there's probably been some slippage which means everyone's already late for the next Release.

For developers, it's not so easy... especially if they just came off the death march called Test. They're still risk-averse, and Development requires risks to be embraced: Concentrate on the enhancements without obsessing about the effect they might have on the rest of the program. They're also tired, and Development requires enthusiasm.

What the developers need, and often do not get, is an extra step to decompress and rejuvenate:

Develop, Test, Release, Relax, Repeat
A word to the wise for management: If developers don't get time to Relax, they'll take it anyway... perhaps not consciously, but through bad morale, lost productivity and extra sick time. And it might cost more in the long run.

Or... you could try rewards, see if that works...
Dilbert.com


Monday, October 31, 2011

A New Appreciation

Updating the Foxhound FAQ has given me a new appreciation for the folks who labor on the SQL Anywhere docs... and why, just maybe why, they don't ship new docs with every steenking EBF!

Because it's hard, that's why!


It's hard keeping up with the changes.

The new stuff, fine, that's hard too, but it's interesting, and the docs for that have got a guaranteed audience.

But all those changes? Something minor affecting how the product looks or behaves, and suddenly the docs need changing... who knows where? ...maybe everywhere!

Or worse, some name gets changed, not affecting the product at all, just the documentation!

Worse still, some internal name gets changed, internal to the documentation itself, not visible to anyone except the doc writer who has to fix the resulting errors.

Ah, it could be worse...


...the developers could be in charge of the docs.

Dilbert.com


Friday, August 19, 2011

From Idea to iPhone in Seven Days

Maybe there is something to this UltraLite thing after all...

From UK hospitals find cure for test data delivery via mobile BI by Brian McKenna, 8 Aug 2011:


Ecommnet developed the iPhone-based application in seven days, in time for a health care trade conference earlier this year.

“We take a complex understanding of a back-end database [in this case Oracle]. We can see what the core bits of data really are and translate that to something that will work on a mobile device, with a small screen,” he said. In this case one goal was “to present the information sensibly to clinicians. It had to work simply for the consultants, so we had to think like them.”

Campbell knew users wouldn't have constant connectivity as the data was moved between the PAS back-end Oracle database and the iPhones. That meant the system needed a reliable store and forward capability.

Sybase's SQL Anywhere’s provided a rapid store and forward database and data synchronization platform.

"By using SQL Anywhere, we were able to delegate the issue of data transmission between the mobile device and the back-end database to Sybase technology, instead of having to spend a lot of time that we really didn’t have to get that communication working," Campbell said, in a Sybase case study article.

 

Monday, August 1, 2011

Congratulations, Peter Bumbulis!

United States Patent 7,962,693
Bumbulis June 14, 2011
Cache management system providing improved page latching methodology



Abstract
A cache management system providing improved page latching methodology. A method providing access to data in a multi-threaded computing system comprises: providing a cache containing data pages and a mapping to pages in memory of the multi-threaded computing system; associating a latch with each page in cache to regulate access, the latch allowing multiple threads to share access to the page for reads and a single thread to obtain exclusive access to the page for writes; in response to a request from a first thread to read a particular page, determining whether the particular page is in cache without acquiring any synchronization object regulating access and without blocking access by other threads; if the particular page is in cache, reading the particular page unless another thread has exclusively latched the particular page; and otherwise, if the particular page is not in cache, bringing the page into cache.

Inventors: Bumbulis; Peter (Cambridge, CA)
Assignee: Ianywhere Solutions, Inc. (Dublin, CA)
Appl. No.: 12/122,688
Filed: May 17, 2008

Patents are a BIG deal!


If patents weren't important, would Scott Adams have mentioned them 32 times?

I rest my case!




Monday, May 9, 2011

Is Techwave Worth It?

Here's a spreadsheet, you decide...

Monday, March 28, 2011

Chrome Rocks!

There are a number of disadvantages to being an early adopter. One of those is becoming so discouraged with all the bugs and glitches in the new product that you stop using it, even when everything's fixed and the new product becomes Best of Breed.

Even when the new product becomes much better than the siht you're using now.

That was me two years ago, with the Google Chrome browser... I tried it... Crash! Kaboom!... and immediately ran back into the arms of Firefox and IE.

Now, Firefox and IE have driven me in the other direction; here's the story, step-by-step...

  • The other day Firefox 3.6 insisted on downloading some new patches, but

  • Norton Internet Security quarantined a critical component in that download, then

  • Firefox (not unexpectedly) refused to start without that component, making it clear that

  • (who am I to argue?) this is Mozilla's way of telling me to upgrade, and when

  • I downloaded Firefox 4 it seemed to work OK, until

  • Firefox 4 started going Crash! Kaboom! every time I touched Gmail, plus

  • the rest of it was cluttered and confusing and just plain ugly, so for some (hitherto unexplained and clearly irrational) reason

  • I decided to try Internet Explorer 9 and that seemed to go OK, except for the fact

  • the new GUI is so completely hosed up that it can't even display the Minimize / Maximize / Close icons properly, plus

  • the rest of it was cluttered and confusing and just plain ugly, leaving me...
...discouraged.

"What have I got to lose? Let's try Chrome again!"


Wow! What a difference two years makes! Not only is Chrome fast, Fast, FAST!
  • it works with Gmail (surprise, surprise),

  • it doesn't mess up the display, and

  • the GUI is clean, Clean, CLEAN!
Plus, it got Today's Cool New Features like
  • dragging a tab to create a separate window,

  • dragging tabs between windows,

  • an "Inspect element" feature that includes an execution profiler...

  • and a convenient Console for in-your-face displays of JavaScript errors...

My experience with Chrome has been so much better than Firefox and IE that I've already made it my default browser, and I'm going to include "Start Foxhound via Chrome" shortcuts in the next release of Foxhound.

What's wrong with Chrome?


Here are the problems I've had so far, with workarounds:
  • There's no window <TITLE> bar: if the page titles don't all fit on the tab bar, you can use a hover-over text box to see each one in turn.

  • It's hard to find where to set options: click on the wrench icon to see a menu; if the option you want isn't in "Options", you might find it in "Tools".

  • It's easy to get the bookmark bar confused with the tab bar: you could turn off the bookmark bar, but it's really handy so just get used to it.

  • Chrome isn't anywhere near as popular as Firefox or IE: that I don't understand, especially for geeks and nerds; here are the browser stats for this blog:

Friday, January 7, 2011

STFW

Here's a wall-mounted electrical timer that controls some outdoor lights. When it's working those lights turn on at dusk and off at dawn:



When it's not working (which is right after anyone messes with it) the lights turn on and off at the wrong times.

The definition of "anyone" includes "me"... after hours of messing with it, I realized that I had to RTFM.

Trouble was, no manual. No visible model number either, not even a manufacturer's name. A friend suggested "take the photo to Home Depot and buy another timer... that way you'll get a manual."

But that was then...


...and this is 2011.

It ain't RTFM any more, the new rule is STFW.

So I took the word "timer" plus the only words visible on the timer itself (off clear on) and did a Google search.

I did this even though I was sure that "off" and "on" would be useless noise as far as Google was concerned...
timer off clear on

GADZOOKS!




The first result was exactly what I was looking for!

STFW Rules!




What does this have to do with SQL Anywhere?

Nothing, except that not all answers to SQL Anywhere questions are found in the SQL Anywhere manuals. Sometimes they are found elsewhere.

That's what STFW means: Look elsewhere. Look everywhere.

For example: How do I stop dbmlsync from a command line?



That search didn't work so well a few days ago, but this generalized version did: How do I kill a Windows task from a command line?



That answer ("it's called taskkill, and it's from Microsoft") led to this search: taskkill site:microsoft.com



Question: When Google becomes self-aware, will anyone notice?

Wednesday, December 8, 2010

Carbonite

"As a computer software developer for almost forty years, please let me say that the creators of Carbonite should be very proud of what they have produced.

The older I get, the more critical and jaded I get at all the crap that's out there (don't get me started on open source) which means it's doubly refreshing to see a product that does what it says it will do with no mess and no fuss, like Google Search, Google Mail... and Carbonite."




It's been exactly one year since I wrote those words and captured that screenshot, and I feel exactly the same way today. Carbonite doesn't answer all my backup requirements, not by a long shot, but it certainly does answer this one: a regular offsite backup of critical data files.

All I have to do is make sure to put the files I want copied in a folder under My Documents and Bam! ...they're copied into the cloud within minutes, sometimes seconds.

The Carbonite agent sits in the system tray and doesn't seem to consume resources, certainly not like some of the other [cough] stuff I put up with like Norton 360.
(yeah, yeah, I know using Norton Anything is stupid, I should use one of those low-overhead antivirus utilities written by some guy in his underwear in his mother's basement)

What are "Critical Data Files"?


Currently, Carbonite copies the SQLA website extracts... oops, that reminds me, gotta backup SQLA again, be right back...
Database export in progress. An email will be sent to breck.carter@gmail.com when it is ready for download.
...back again. Carbonite also copies everything required to do the daily Foxhound build, and some personal stuff.

I really should give more work to Carbonite, and it's on my to do list. But it's already taking care of a big chunk of my "critical data files", the ones I want back even if every single piece of computer hardware I own is destroyed.

Carbonite encrypts, but that encryption is not secure from Carbonite itself (or, by extension, the Men In Black) so I encrypt some files myself before putting them in the hopper for Carbonite to pick up.

What about full backups?


That's what Norton Ghost 14 and 15 are for, plus a pair of 2 TB USB 3.0 external drives, and a 1 TB USB 2.0 portable drive.
(amazingly affordable these days, all brand names, less than $500 for everything including the software)
That, plus this every-day-ritual: Fire up a full-drive-backup-with-verification process just before the whistle sounds "Miller Time" at the code mines.

Wednesday, November 17, 2010

Isn't it just possible?

Here's a line that rang a bell with me:

Isn't it just possible that my inability to profit from OOP reflects a problem with OOP itself and not my own incompetence? - "Objects Never? Well, Hardly Ever!" by Mordechai Ben-Ari, Communications of the ACM, September 2010

I am not alone!

Here's another excerpt...
I am not the only one whose intuition fails when it comes to OOP. ... Again, isn't it just possible that the intuition of experienced software engineers is perfectly OK, and that it is OOP that is not intuitive and frequently even artificial?
To put those quotes in context, here are first two paragraphs from the article:
At the 2005 SIGCSE (Special Interest Group in Computer Science Education) Symposium in St. Louis, MO, a packed audience listened to the Great Objects Debate: Should we teach "objects first" or "objects later"?1 In the objects-first approach, novices are taught object-oriented programming (OOP) in their initial introduction to programming, as opposed to an objects-later approach, where novices are first introduced to procedural programming, leaving OOP to the end of the first semester or the end of the first year. Kim Bruce and Michael Kölling spoke in favor of the objects-first approach, while their opponents Stuart Reges and Eliot Koffman argued for teaching procedural programming first. One of Bruce's arguments was: since OOP is dominant in the world of software development, it should be taught early. I later contacted Bruce to ask for a warrant for the dominance of OOP, but he could not give me one, nor could any of several other experts to whom I posed the same question.

I claim that the use of OOP is not as prevalent as most people believe, that it is not as successful as its proponents claim, and, therefore, that its central place in the CS curriculum is not justified.
The full text of the article is behind a "Pay Wall" so you have join the Association for Computing Machinery or cough up some $$ to read it.

Speaking of which, I've been a member since Before Time Began (1973) and it is only recently (the past few years) when the ACM's flagship magazine "Communications" has been worth reading for practitioners of The Dark Arts (you know, programmers).

Now, it's well worth the expense. Not a single issue goes by that doesn't provoke at least one "Aha!" moment.

Aha! The Programmer's New Paradigm!

This is not an excerpt from the article, this is what the article provoked in me:
A Programmer who cares for nothing but the elegance of his code hires two consultants who promise him the finest programming paradigm whose benefits are invisible to anyone who is unfit for his position or "just hopelessly stupid". The Programmer cannot see the benefits himself, but pretends that he can for fear of appearing unfit for his position or stupid; his colleagues do the same. When the consultants report that the paradigm is ready, they show him how it works and the Programmer starts developing applications with it. A young intern on the team calls out that the paradigm has no benefits at all and the cry is taken up by others. The Programmer cringes, suspecting the assertion is true, but holds himself up proudly and continues along the same path. - with apologies to Hans Christian Andersen



One more excerpt, not from me, not from the article, but from a comment on the article...
"... in a design oriented field such as ours, fads are all to easy to hatch. It takes considerable will to resist fads and stay focused on the real issues." — Alan Kay, September 11, 2010

Who's Alan Kay, you ask?

Oh, nobody important, just some random guy on the internet :)

Wednesday, November 10, 2010

Everyone hates Ticketmaster, except...

The November issue of Wired magazine contains this article about startup companies trying to compete with TicketMaster:

Everyone Hates Ticketmaster — But No One Can Take It Down


Spoiler Alert!


Here's the last line, the bottom line:
"... ticketing is not about the fans or the bands. It’s about the venues. And for them, Ticketmaster works."
Why does Ticketmaster work? Because
"... the company’s system is almost supernaturally reliable."
What does that have to do with SQL Anywhere? Well, SQL Anywhere is one of the reasons no one can take down TicketMaster...
"Because the ARCHTICS® ticketing systems are deployed into client sites with small or non-existant IT staffs, Ticketmaster requires a database to power its solution that could be deployed and managed with minimal administration. However, the high demands of the application meant it was not acceptable that this would come at the expense of performance or features." - Ticketmaster SQL Anywhere success story
So, everyone hates TicketMaster, except me :)

Friday, October 29, 2010

The Seven Deadly Habits of an Oracle DBA

Seriously, it doesn't say "Oracle" in the title of this article, and the points it makes apply to a lot of non-Oracle shops including some using SQL Anywhere:

The Seven Deadly Habits of a DBA
But... the writer IS talking about Oracle, and Habit #5 does apply to every single large Oracle (and IBM) shop I've ever dealt with.


Habit #5. THE BLAME GAME: "Don't look at me, it's the developer's fault that SQL is in production"

Some DBAs have a real "us versus them" mentality when it comes to developers in their organization. They see themselves not as facilitators helping the developers develop quality code from a database standpoint, but rather as guardians who prevent poor-quality code from making it into production. This might seem like semantics, but a confrontational relationship between developers and DBAs results in a lack of developer initiative and significant slowdowns in release cycles.

Cures:
  • Select DBAs who understand it's their responsibility to work as an integrated team with the developers they support.

  • Cultivate a team attitude by structuring continuous DBA involvement in every project rather than at review milestones.

  • Consider assigning an individual DBA in a developer support role. If it's clearly in the job description, there's more motivation to do it well.


The "Blame Game" title is lame, the important point is the us-versus-them mentality that destroys creativity and productivity.

Friday, September 25, 2009

Quassnoi's Explain Extended

I've added a new blog to the "WIDER VIEWS..." list on the right: Quassnoi's Explain Extended.

Lot's of solid SQL content there, in particular this excellent discussion about "thinking in sets": Double-thinking in SQL.

Friday, July 17, 2009

Wall-E, meet RIVA



RIVA the robot may not match Wall-E's sparkling personality, or even IvanAnywhere's, but you can't fault her mission: To reduce medication errors at the Children's Hospital of Orange County in Southern California.

Plus, like IvanAnywhere, RIVA runs on SQL Anywhere:

"To make the code lean, RIVA relies heavily on scripts stored inside a Sybase Inc. embedded database, SQL Anywhere."
- Thom Doherty, CTO at Intelligent Hospital Systems
Read more about RIVA here, and watch the video here.