Skip to content

Archive

Tag: ruby

Recording Venue: MongoSF 2010
Guest(s): Dwight Merriman

Host(s): Robert
Dwight Merriman talks with Robert about the emerging NoSQL movement, the three types of non-relational data stores, Brewer’s CAP theorem, the weaker consistency guarantees that can be made in a distributed database, document-oriented data stores, the data storage needs of modern web applications, and the open source MongoDB.

Links:

Play

Recording Venue: QCon
Guest(s): Jay Kreps

Host(s): Robert
Jay Kreps talks about the open source data store Project Voldemort. Voldemort is a distributed key-value store used by LinkedIn and other high-traffic web sites to overcome the inherent scalability limitations of a relational database. The conversation delves into the workings of a Voldemort cluster, the type of consistency guarantees that can be made in a distributed database, and the tradeoff between client and the server.

Links:

Play

Recording Venue: QCon San Francisco 2009
Guest(s): Philip Zeyliger


Host(s): Robert
Philip Zeyliger of Cloudera discusses the Hadoop project with Robert Blumen. The conversation covers the emergence of large data problems, the Hadoop file system, map-reduce, and a look under the hood at how it all works. The listener will also learn where and how Hadoop is being used to process large data sets.

Links:

Play

Recording Venue:
Guest(s): Janos Sztipanovits

Host(s): Markus
This is a discussion with Janos Sztipanovits about Cyber Physical Systems and how DSLs are used to approach some of the challenges in that domain. Specifically, in the second part we talk about formalizing DSL semantics.

Links:

Play

Recording Venue: OOPSLA 2007
Guest(s): Dave Thomas

Host(s): Markus
This episode is an interview with Dave Thomas (OTI Dave or Smalltalk Dave, not PragDave). We started our discussion with a look at the (non-)success of objects and components. We then discussed some history behine Eclipse and Dave’s role in OTI. We then compared Smalltalk and Ruby and looked at the promises of small and powerful languages such as Lisp. We also discussed the role of (static) type systems and the role of tool support for languages.

We then switched gears and looked at what is necessary to scale agile development to the level of large organizations
and how techniques from lean production and manufacturing as well as product management can play an important role.

In the last part of the interview we looked at the state of research today, and especially the relationship between industry and academia in this area.

We concluded the interview with Dave’s opinion on what it takes to be a good developer.

Links:

Play

Recording Venue: JAOO 2006
Guest(s): Obie Fernandez
Host(s): Markus
In this episode, we’re talking to Obie Fernandez about agile DSL development in Ruby. We started our discussion by defining what a DSL is, the difference between internal and external DSLs as well as the importance of the flexibly syntax of the host language in order to make DSLs worthwhile. We then looked at a couple of real world examples for DSLs, specifically, at Business Natural Languages. We then progressed to the main part of the discussions, which centered around the features of Ruby that are important for building DSLs. These include the flexible handling of parentheses, symbols, blocks as well as literal arrays and hashes. We then discussed Ruby’s meta programming feautures and how they are important for building DSLs: instantiation, method_missing callback, class macros, top level
functions and sandboxing. Features like eval, class_eval, instance_eval and define_method are also important for DSLs in
Ruby, as well as using alias_method for simple AOP.

Links:

Play

Recording Venue: OOPSLA 2006
Guest(s): Niclas Nilsson
Host(s): Markus
In this Episode we talk about dynamic languages for statically-typed minds, or in other words: which are the interesting features people should learn when they go from a langauge such as Java or C# to a language like Python or Ruby. We used Ruby as the concrete example language.

We started the discussion about important features with the concept of dynamically changing an object’s type and the idea of message passing. We then looked at the concepts of blocks and closures. Next in line is a discussion about functions that create functions as well as currying. This lead into a quick discussion about continuations. Open classes, aliasing and the relationship to AOP was next on our agenda.

We then looked considered a somewhat more engineering-oriented view and looked at the importance of testing and what are the best steps of getting from static programming to dynamic programming. Finally, we discussed a bit about the current (as of October 2006) state of dynamic languages on mainstream platforms.

Links:

Play

Recording Venue:
Guest(s): Thomas Quas
Host(s): Alexander
Ruby has been getting more and more attention by the developer community over the last couple of years. Nevertheless Ruby as language and as a plattform is not too widespread. Most developers don’t know people who have actually done commercial Ruby projects. Therefore it is sometimes hard to judge if Ruby is just a hype topic or if Ruby can be used for serious projects today. In this episode Alexander speaks with Thomas Quas about a commercial Ruby project Thomas finished a while ago. Thomas shares his insights and practical experiences with Ruby doing a project under strong time pressure. As Thomas has many years experience doing Java projects we also do some high level comparisons between both platforms.

Links:

Play

Recording Venue:
Guest(s):
Host(s): Alexander Markus
Recording Venue:
Guest(s):
Host(s): Alexander Markus
In this Episode, Alexander and Markus talk about scripting languages. Topics include the definition of what a scripting language is, typical usage scenarios, performance issues, programming styles and IDE support. In later Episodes we will talk about more specific topics, such as dynamic typing, reflection, functional programming as well as specific languages such as Ruby.

Links:

Play