Posts Tagged ‘Google’

Innovation in Search

June 5th, 2009

Search is hot lately, with two new search engines being announced in recent weeks. As the world’s only easily-searchable database platform, we’re happy to see attention being paid to finding relevant data easily.

The first new search engine to come out is Wolfram Alpha, founded by physicist/inventor/crank Stephen Wolfram. I would describe Wolfram Alpha as a cross between Google and Wikipedia for technical topics: math, physics, chemistry, and so on. It’s neat that I can type in sin(x) and see a graph, or type in benzene and see everything from its molecular structure to a phase diagram. Then again, I’m a nerd. Outside of scientific fields, it does poorly. If I type in Brazil I see only a smattering of factoids about the country. Compare this to Google’s entry for Brazil, which gives me images, maps, recent news, and so on; or Wikipedia’s entry, which is simply awesome, and shows Wikipedia at its best.

The second recent search engine to be unveiled is Microsoft’s Bing. It copies recent Google innovations like chunking out search results into different areas (news, maps, facts, weather) and providing suggestions for refined or related searches. It also has some very useful new features, like a mouse-over preview of the content of each search result that a user can skim before deciding whether to follow the link.

All of this innovation shows that search is as important as ever. We couldn’t agree more. That’s why we built the world’s only searchable database. Type in what you’re looking for, like you would in an Internet search engine: phrases, people, dates, numbers, and so on. TrackVia translates your request into a search that’s appropriate to your data model, and presents a highlighted list of matching records from your database.

Search Results in TrackVia

You can then edit the data right in the results page. You can also search notes that colleagues have added to database records, and search the built-in change history that TrackVia keeps for every record. And you can use advanced tricks like phrase searches, exact matches, negative matches, field binding, and even searching for blank values. All of this with a single search box, and a button labeled “Go.” No queries or wizards required. Did I mention it’s really, really fast – even with a hundred thousand records in your database?

It’s sort of like TrackVia is the Google/Bing/WolframAlpha of your own data.

Google Shows Its Human Side

February 3rd, 2009

Were you one of the Googlers worried you were infecting your computer with viruses on Saturday morning?

For about an hour on Saturday, each and every Google search resulted in a warning that “this site may harm your computer.” What happened, according to a Google statement, is due to – human error. Google works with a nonprofit that tracks the sites that install malicious software on visiting computers. On Saturday, someone accidentally checked the input value that applied to ALL URLs – ouch!

The term “human error” in situations like these is kind of amusing. It’s framed almost as a good thing (”don’t worry – there’s nothing wrong with our software. Bob just pushed the wrong button!), but the reality is that human error can be just as harmful as systemic errors – especially because you can usually weed out the systemic errors by fixing the code (or, for you Office Space fans out there, “fixing the glitch”).

There’s often no such quick fix for human error. And the more times you have people manually enter and manipulate data, the more risk you’re running of human error.

Obviously we are all humans, and this event has proven that even Google can’t escape the occasional human error.

TrackVia’s online database solution has a few features to help us with our humanly ways. Features such as automatic change tracking notes, user permissions and relational databases help to eliminate human error or at a minimum easily identify the culprit making changes to the database.

How do you prevent human errors?

Google Said It Best – In 1999

July 8th, 2008

The first time I used Google was in 1999 or 2000. I had heard about the quirky new search engine whose home page contained not much more than a text box and a submit button. I was immediately struck by the contrast with Yahoo!, whose home page had (and still has) hundreds of links to choose from.

When my first search came back almost instantly, I thought, “Cool, they must be showing pre-generated results for the most common queries.” I began searching on increasingly obscure terms, trying to find out how deep those pre-generated results were. When I got to “purple kangaroo suitcase” I realized the results weren’t pre-generated at all – Google was just that fast.  I was agog.

I dug around on their website and found a short description of their principles. Two in particular explained what I’d witnessed: Google’s reverence for simplicity and speed. The principles are still there today, and are still a great articulation of two crucial principles of web-based software design. I’m posting them here, where I hope they’ll serve as a frequent reality check against what we do at TrackVia.

Every millisecond counts.

Nothing is more valuable than people’s time. Google pages load quickly, thanks to slim code and carefully selected image files. The most essential features and text are placed in the easiest-to-find locations. Unnecessary clicks, typing, steps, and other actions are eliminated. Google products ask for information only once and include smart defaults. Tasks are streamlined.

Speed is a boon to users. It is also a competitive advantage that Google doesn’t sacrifice without good reason.

Simplicity is powerful.

Simplicity fuels many elements of good design, including ease of use, speed, visual appeal, and accessibility. But simplicity starts with the design of a product’s fundamental functions. Google doesn’t set out to create feature-rich products; our best designs include only the features that people need to accomplish their goals. Ideally, even products that require large feature sets and complex visual designs appear to be simple as well as powerful.

Google teams think twice before sacrificing simplicity in pursuit of a less important feature. Our hope is to evolve products in new directions instead of just adding more features.

Outsourcing Outages?

June 20th, 2008

The twelve-hour stretch of outages suffered by Google’s App Engine this week set off a debate in the blogosphere about whether “cloud computing” is a smart choice for Internet companies. My take is that beyond what’s already been discussed, two overlooked factors argue against cloud-based computing: the specificity of needs for Internet companies, and the importance of transparency during problems.

By way of background, cloud-based computing and storage services provide servers (often shared or “virtual” servers) and storage capacity on top of which an Internet company can build their application. So, for example, if TrackVia used a cloud-based infrastructure [we don’t – we control our own dedicated server farm at a Tier IV datacenter], then a TrackVia user who downloaded a file from TrackVia would cause our website, behind the scenes, to fetch that file from the cloud-based storage service instead of from a local server. Similarly, if a complex TrackVia report were to be executed, our website would have that report run on and delivered by a could-based virtual server, instead of a local machine. Cloud-based infrastructure can make life simpler for young Internet companies, but it also makes them susceptible to the cloud’s outages. In the last few months, there have been significant cloud-service problems at Amazon, HP, and others.

The cloud/outage debate is usually couched in terms of whether a company like TrackVia thinks they know more about keeping servers up and running than Google, Amazon, or the other mega players. Our uptime record is extremely good, but I’m not going to claim we know more about server management than Google does.

What we do have that Google doesn’t, though, is knowledge of our own needs. When planning infrastructure growth over time, TrackVia and all other web-based software companies have to balance cost, performance, and reliability, with an improvement in one often coming at the expense of the others. The right balance depends on the nature of the application and the customers that use it – in other words, there is a specificity of needs. A cloud provider optimizes that three-sided triangle in light of the aggregate needs of all of its clients. We optimize it in light of the specific needs of our application and our customers. We control our own infrastructure because we want to make our own choices about where to invest in any given month – Faster storage devices? Redundant load balancers? More database servers? More human beings? – instead of having the cloud make those decisions for us.

The second overlooked factor is transparency during problems. If we see an ominous trend in a certain server’s load during the day, we have very granular visibility into the problem and control over the possible solutions. We can communicate to customers what to expect. We can analyze the likelihood that it will happen again. We never have to say to a customer, “TrackVia is performing slowly because Google’s App Engine is performing slowly; we don’t know why; we don’t know how long it will last; we don’t know if it will happen again tomorrow.” Owning our infrastructure allows us to understand and communicate the why, how long, and will-it-happen-again issues. Scoring very well on those dimensions is as important as the uptime record itself. If you don’t believe this, ask your customers.

As cloud computing matures, I expect it to become an increasingly responsible choice for younger companies. But I hope the above illuminates why TrackVia at least decided to go our own way.