InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

Goat Rodeo: A Unified Data Model for Web Applications

Posted by Gavin Terrill on Jun 22, 2009

Sections
Enterprise Architecture,
Operations & Infrastructure,
Process & Practices,
Architecture & Design,
Development
Topics
Data Access ,
Announcements ,
Java ,
Web Frameworks ,
Architecture
Tags
Actors ,
Scalability ,
Hadoop ,
Scala ,
lift

In a retrospective look at the Scala based web framework Lift, David Pollak has announced a new initiative for "the job of managing the piles of data that come into your application":

There needs to exist a unified model for building real-time interactive web applications from the persistence layer, through the messaging layer, through the business logic layer, out to the client. Lift is part of this equation. Goat Rodeo will become the other part of the equation.

"Goat Rodeo" will utilize a number of exotically named Apache projects and leading edge concepts:

The fundamental data structure in Goat Rodeo will be known as Q's - quanta of information, which will be compiler checked and available for consumption by any language capable of understanding JSON.

David's vision for the system is to provide fluid data movement between layers and across processes:

  • Scalable persistence
  • Distributed actors
  • Synchronization of data and data model from browser through long term storage (yes, I'll be working to make sure this works with Lee's jsync.)
  • Unified interprocess communications, even across heterogeneous processes
  • What I believe will be a very scalable system for social networks and other social, interactive web apps to build on top of

Goat Rodeo is still at an inception phase, but David hopes that it will be available for experimentation by the end of Summer.

Very good news by Sadek Drobi Posted
  1. Back to top

    Very good news

    by Sadek Drobi

    I really didn't like much the integration of lift with relational databases. Glad to learn about this!

    Sadek

Educational Content

Jesper Boeg on Priming Kanban

In this interview, Jesper Boeg, author of the new InfoQ book – Priming Kanban, discusses the keys to using Kanban effectively, and how to get started if you are currently using other approaches.

New-age Transactional Systems - Not Your Grandpa's OLTP

John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.

Cool Code

Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.

Collaboration: At the Extremities of Extreme

Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.

Yesod Web Framework

Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).

Transactions without Transactions

Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.

Attila Szegedi on JVM and GC Performance Tuning at Twitter

Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.