Tue, 13 November 2007 Please go to se-radio.net for the new website and the new feed. | |
Sat, 3 November 2007
Guest: Wolfgang Keller
Host: Alex
Enterprise Architecture is already common practice in most Fortune 100
companies. As the topic is comparably young, knowledge about it is not so
widespread in the Software Architects Community, who deals mostly with
project architectures.
In this episode Alex speaks with Wolfgang Keller who has practical
experience as an enterprise architect and has written a book on the topic.
He is a Partner with BusinessGlue Consulting. They are specializing in the
relationship between EAM and SOA. This episode gives a rough overview what
Enterprise Architecture actually is touches the standards in the field and
also gives hints on the practical work of Enterprise Architects.
Publicize:
Digg this
Post to del.icio.us
Post to Slashdot
| |
Fri, 14 September 2007 
Guests: Dan Grossman
Host: Markus
This episode features a discussion with Dan Grossman about
an essay paper he wrote for this year's OOPSLA conference. The paper
is about an analogy between garbage collection and transactional memory. In addition to seeing the beauty of the
analogy, the discussion also serves as a good introduction to transactional memory (which was mentioned in the
Goetz/Holmes episode) and - to some extent - to garbage collection.
Publicize:
Digg this
Post to del.icio.us
Post to Slashdot
| |
Thu, 26 July 2007 
Guest: Kevlin Henney and Frank Buschmann
Host: Markus
recorded at: OOP 2007
In this Episode we talked about the new POSA 4 book which has recently
been published. We talk to two of the authors, Kevlin Henney
and Frank Buschmann (the third author, Doug Schmidt
was not available - and he had also been on the podcast a couple of times :-)). The book contains
a pattern language for distributed systems. It contains 114 patterns that had been published before
by many different other authors. The patterns have been rewritten to form a consistent language.
We basically talked through the different sections of the book, which gives a really good
overview over the challenges and the solutions of building distributed systems. These sections
include From Mud to Structure, Distribution Infrastructure, Event Demultiplexing and Dispatching,
Interface Partitioning, Component Patitioning, Application Contrl, Concurrency, Synchronization,
Object Interaction, Adaptazion and Extension, Modal Behaviour, Resource Management and finally,
Database Access.
The book references several other previous works (as listed below). Interestingly,
many of these referenced works and authors have also been discussed previously on
the podcast. Here are the back references:
Here are some of the books and publications mentioned in the discussion:
Publicize:
Digg this
Post to del.icio.us
Post to Slashdot
| |
Fri, 6 July 2007
Guest: Morgan Deters
Host: Arno
This show takes a behind-the-scenes look at compilers and their inner workings, using the Gnu compiler collection (GCC) as an example. Arno interview Morgan Deters, covering all steps from the parsing of different programming languages to machine independenet optimizations and generating processor specific binary code.
Publicize:
Digg this
Post to del.icio.us
Post to Slashdot
| |
Tue, 26 June 2007 
Guest: Roman Pichler
Host: Alex
This episode features Scrum, a very popular Agile software development framework. We interview Roman Pichler, a Certified ScrumMaster Trainer and independent consultant. Roman explains the principles behind Scrum, its roles and its key practices. He also answers FAQs. This episode continues our track on software development processes discussing an additional Agile method.
You can find out more about Scrum here:
Roman is currently writing a book on Scrum in German that provides more in-depth information of the topics discussed in the podcast. The book will be available in autumn 2007 published by d.punkt (Heidelberg, Germany).
Publicize:
Digg
this
Post
to del.icio.us
Post
to Slashdot
| |
Sat, 16 June 2007
Guest: Jonathan Aldrich
Host: Markus
This episode is a discussion with Jonathan Aldrich (Assistant Professor at CMU) about static analysis. The discussion
covered theory as well as practice and tools. We started with an explanation of what static analysis actually is, which
kinds of errors it can find and how it is different from testing and reviews. The core challenge of such an analysis tool is
to understand the semantics of the program and reduce its possible state space to make it analysable - in effect
reconstructing the programmer's intent from the code. The user can "help" the tool with this challenge by using suitable
annotations; also, languages could do a better job of being analysable. The conceptual discussion was concluded by looking
at the principles of static analysis (termination, soundness. precision) and how this approach relates to model analysis.
The second more practical part started out with a discussion of how Microsoft successfully uses static analysis in their
Windows development. We then discussed some of the tools available; these include Findbugs, Coverity, Codesonar, Clockwork,
Fortify, Polyspace and Codesurfer. To conclude the discussion of tools, we discussed the commonalities and differences with
architecture visualization tools as well as metrics and heuristics.
Part three of the discussion briefly looked at how to introduce static analysis tools into an organization's development
process and tool chain. We concluded the discussion by looking at situations where static analysis does not work, as well as
at the FLUID research project at CMU.
Publicize:
Digg this
Post to del.icio.us
Post to Slashdot
| |
Sun, 27 May 2007
Guest: Laurence Tratt
Host: Markus
Recorded at: JAOO 2006
This episode is about compile-time metaprogramming, and specifically, about implementing DSLs via compile-time
metaprogramming. Our guest, Laurence Tratt, illustrates the idea with his (research)
programming language called Converge.
We started by talking about the importance of a custom syntax for DSL and took a brief look at the definition of DSLs by a
chap called Paul Hudak. We then briefly covered the disctinction between internal and external DSLs.
More to the point of this episode, we discussed the concept of compile-time metaprogramming, and the language features
necessary to achieve it: in converge, these concepts are called splice, quasi-quote and insertion. We then looked at how the
Converge compiler works, and at the additional features that are required to implement DSLs based on the metaprogramming
features mentioned above. Using an example, we then walked through how to implement a simple DSL.
Looking at some of the more technical details, we discussed the difference between the parse tree and the abstract syntax
tree and at different kinds of parsers - specifically, the Earley parser used by Converge. In multi-stage languages (i.e.
languages that execute programs and meta programs) error reporting is important, but non trivial. We discussed how this is
done in Converge. We finally looked at how to integrate Converge's expression language into your DSL and how to package DSL
definition for later use.
The last segment look at the process of implementing a DSL in converge and about some of the history and practical
experience with Converge. Lessons learned from building Converge wrap up the episode.
Publicize:
Digg this
Post to del.icio.us
Post to Slashdot
| |
Thu, 17 May 2007
Guest: Steffen Schaefer, IBM
Host: Markus
Recorded at: OOPSLA 2006
In this episode we discuss sensor networks with our guest Steffen Schaefer, who is the Technical Thought Leader for Sensors & Actuator
Solutions at IBM. The discussion resolves around the TREC device, which can be mounted on containers to track them on their journey over seas, railway tracks and roads. The TREC is a small embedded device developed by Steffen's employer, IBM, that has various sensors and communications channels.
In the episode we first talked about container transport in general, and then looked at how the TREC device works - specifically, it's hardware, software and power management. We then looked at the necessary backend infrastructure. The main part of the discussion covered the communication between the device and the backend, using technologies such as Zigby, GSM and satellite communications. We also looked at the middleware infrastructures used, such as the MQtt messaging tool.
We closed the episode with a little discussion of the "Internet of Things" and some discussion about embedded software devleopment in general. Note that SE Radio will feature more embedded topics in the future - an introduction to embedded development will be put online soon.
Publicize:
Digg this
Post to del.icio.us
Post to Slashdot
| |
Sat, 7 April 2007
Guest: Obie Fernandez
Host: Markus
Recorded at: JAOO 2006
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.
Publicize:
Digg this
Post to del.icio.us
Post to Slashdot
Direct download: seradio-episode52-DSLsInRuby.mp3 Category: guest/technology -- posted at: 12:01 AM | |
Sun, 18 March 2007
Guest: Niclas Nilsson
Host: Markus
Recorded at: OOPSLA 2006
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.
Publicize:
Digg this
Post to del.icio.us
Post to Slashdot
| |
Thu, 2 November 2006
Guest: Andy Longshaw
Host: Markus
In this episode Markus and our Guest Andy Longshaw talk about enterprise architecture. More specifically, we talk about some of the patterns in Andy Longshaw's and Paul Dyson's book Architecting Enterprise Solutions: Patterns for High-Capability Internet-based Systems. These includes things like replication, load balancing, monitoring and application management.
| |
Tue, 3 October 2006
Guest: Andreas Rueping
Host: Markus
In this episode, our guest Andreas Rueping and Markus talk about documenting software. While this is a topic that many people don't like or consider fun, it is nonetheless very important. Based on his book, Agile Documentation, we talk about various aspects documenting software such as what to document, when to document, which media to use as well as specifically a number of layouting tips for nice documents.
| |
Mon, 5 June 2006
Guest: Prashant Jain
Host: Michael
In this episode Michael and our guest Prashant Jain talk about patterns for resource management. Efficient management of resources is critical in the execution of any kind of software. Ranging from embedded software in a mobile device to software in a large enterprise server, it is important that the resources, such as memory, threads, file handles, or network connections, are managed efficiently to allow the systems to function properly and effectively.
Michael and Prashant discuss various patterns, such as Lazy Acquisition, Caching, Leasing and Evictor and explain when, why, and how to apply them for effective resource management.
- POSA3, Patterns for Resource Management, the book on which this episode is based
- Small Memory Software - Patterns for Systems with Limited Memory documents some resouce management patterns
especially for memory as resource.
- Use the Patterns Almanac for finding concrete instances of Caching, Lazy* patterns etc.
| |
Thu, 27 April 2006
Guest: Thomas Quas
Host: Alex
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.
| |
|
|
Note that the this page shows only the 50 most recent episodes. If you want to see older episodes, you
need to select the appropriate months from the archives.
|
|
Donate
|
Donate some money so we can buy additional audio equipment and
improve our sound quality.
|
|
Syndication
Spread the Word
Help us advertise for SE Radio by putting
logos on your website or posters into your
office.
Get materials here!
License
Please Vote for us!
Go To ...
Categories
Archives
About the Team
Donate
Search Audio/Notes
Thanks
Other Podcasts
Related Links
SE
Radio is (and will continue to be) an
independent and non-commercial endeavor.
Nonetheless, we want to say 'thank you'
to the following organizations who help
us to publicize the SE Radio podcast.







Categories
- all -
about/news/feedback code/technology guest/technology interview interview/roundtable notifications podcasts regular/technology
Archives
January February
January February March April May June July August September October November December
January February March April May June July August September October November December
Team
This podcast is brought
to you by a team of experienced software
developers and architects. You can reach
the team through
Search
Search in Show Notes:
|
Search in Audio Content:
|
|
|
|
| Search Google: |
 |
|
|
Thanks...
Other Podcasts
Some interesting podcasts you might want
to subscribe to:
Security Now!
Java
Posse
This Week in Tech (TWiT)
Futures in Biotech
IT Conversations
TED Talks
HPI Podcast
Tonabnehmer (German)
Manager Tools
Software
|