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.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Amr Elssamadisy on Feb 13, 2009
In this presentation Robert C. Martin (Uncle Bob) asks the question "Do we have a job or a profession?" and answers that we have not had a profession until recently. A profession is defined and has a history and, until recently, programmers did things "their way". He makes the argument that Agile has helped us move towards a profession by by introducing discipline in the way we write software.
Some of the disciplines Uncle Bob discusses are:
Uncle Bob addresses the dilemma of speed vs. quality, and mess vs schedule. He provides a set of principles and simple Dos and Don'ts for teams who want to be counted as professional craftsmen.
18 agile and lean practices for effective software development governance
Agility at scale, become as agile as you can be
In today’s hyper-competitive world, later may be too late to adopt Agile development and this Roadmap for Success will help you get started. Download "Agile Development: A Manager's Roadmap for Success" now!
Some painful truths in there, very enjoyable - a lot has been covered before but it's nice to hear it all in one go.
I disagree with Uncle Bob's remark about JavaScript when discussing abstracting out volatility. I agree with his principle, but he used a poor example with JavaScript. Obviously he doesn't do heavy web development. There is nothing wrong with JavaScript doing business rules. JavaScript is a _real_ language. It is code. Just separate the JS code into a different file that adds behaviour on top of the model (HTML). That is a clean separation. The cosmetics is defined in the CSS, which is also separated out from the HTML.
Hi Joe,
I think what Uncle Bob was referring to was the problem of duplicate business logic in the presentation and the domain model, leading to increased maintenance, or worst still bleeding business logic from the domain model into the presentation. Both approaches sit uneasily with domain driven design, which says that your business logic should sit in a domain model which is separated from infrastructure concerns like I/O and the user interface.
I agree that Javascript code can be just as clean as with as any other language, but the current demand for Ajax like features in the browser do present a design dilemma.
Hi,
I have noticed that now and again, someone enquires how they can download the recording, and you always reply no.
So why don't you make it possible for us in the NOT SOOO ADVANCED WORLDS injoy some of these GEMS? WHY? like WHY?
Anyway -- it's never beenaa fair world... and you just accentuate that on this OTHERWISE excellent resource.
big-up Still!
I'm sorry you feel frustrated. Can you tell me more about your problem specifically? Can you not stream the video to watch? Is it blocked from your end, a bandwidth problem, or is there something we can do from our end?
OK..
Basically, i pay USD40 for about 128k (at least that is what the provider claims) in one them 4th world places with glorious weather and people but crap infrastructure. Now with this bandwidth am almost always unable to watch presentations because of soooo many stop start stop start... till i just get fed up and give up! So what will be ideal is to just download the presentation using my preferred download manager and watch this anywhere (PC, Laptop, PDA ....). Why can't i do that? why do you insist on this streaming tingie? I read many comments on your site about users being unable to watch stuff. Please find a way to make you knowledge GEMS downloadable ... and why not insert advertoria's to monetize your work ala www.dotnetrocks.com / www.dnrtv.com
Anyway.. BigUP still
"Our craft is defined" Ah, this is good to hear! I had to watch it twice and it made me feel more serene.
This gave me hope about our immature software development industry. Only at my previous customer I had the chance to work with experienced XP practitioners for over a year. This was fun and challenging about good design. Before meeting this team I was using these practices as much as I could on my own, just like I am still doing now.
Fortunately, my new team is willing to start by integrating TDD for our next iteration. They previously weren't but this time it comes from them. It was harsh to get back into the obscure side. I hope one day programmers and managers will get out of school with this kind of mind set.
I couldn't watch the video after 11 min (approximately). Suddenly the video starts from the beggining.
Hi,
I have the similar bandwidth problem. I have found a good workaround for that. I usually press 'start' and 'pause' immediately after the start. So it starts streaming. I just continue my other works and when good amount of streaming is done then I start it again.
It would be my pleasure if this start-pause pattern also works for you.
Hey administradors!!! Is there some way I could download this video to translate it to brazilian portugues and make it avaliable www.infoq.com/br?
Please help me.
John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.
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.
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.
Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).
Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.
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.
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.
InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.
10 comments
Watch Thread Reply