Direct download: seradio-episode84-dickGabrielOnLisp.mp3
Category: regular/technology -- posted at: 5:05 AM
Comments[0]


Hosts: Michael and Markus

This episode is an introduction to embedded system. It is an introduction in the sense that we cover many topics very briefly: upcoming episodes will provides details for many of these topics.
We start by discussing what an embedded system is an what the important characteristics are. Among them is limited resources, concurrency, real time and hardware integration. We also discuss the range of embedded systems from small mirocontrollers to mobile phones to distributed real time embedded systems. We also cover the different business case for embedded systems (per unit cost) and some non-trivial developmental aspects (cross compilation debugging, heisenbugs).
We close the episode by discussing some important architectural styles (time triggered, event-based, microkernels, state machines) as well as tools of the trade: languages, operating systems and middleware.
Publicize:      Digg this      Post to del.icio.us      Post to Slashdot

Direct download: seradio-episode65-introToEmbeddedSystems.mp3
Category: regular/technology -- posted at: 2:20 PM
Comments[5]


Hosts: Michael and Markus

Variability is one of the key concerns in software product line engineering. The episode introduces the concepts of structural and non-structural (or configurative) variability. It also discusses how to find and model variability, and especially how to implement variability in the solution artifacts. Michael and Markus discuss a series of variability mechanisms that can be used with today's programming languages and technologies.
Publicize:      Digg this      Post to del.icio.us      Post to Slashdot

Direct download: seradio-episode58-ProductLineEngineering_Pt2.mp3
Category: regular/technology -- posted at: 8:01 AM
Comments[3]


Hosts: Martin and Eberhard

In the first episode on Refactoring we talked about the basic ideas behind refactoring and some base principles why refactoring is a key part of software engineering. Now we move on to more complicated refactorings and discuss three major situations, their problems and possible solutions: advanced refactorings in large projects that can hardly be finished in a few minutes or hours and refactoring in larger teams. Also covered are the refactoring of published APIs and how merciless refactoring could be aligned with backward compatibility of published APIs, and refactorings that affect more than just code like for example database schemas.
Publicize:      Digg this      Post to del.icio.us      Post to Slashdot

Direct download: seradio-episode55-refactoring_pt2.mp3
Category: regular/technology -- posted at: 9:04 AM
Comments[12]


Hosts: Michael and Markus

Michael Kircher and Markus Voelter introduce the topic of software product line engineering. They motivate when and why product lines are important to consider and what makes them so special. Further, they introduce some key terminology, such as platform, core asset, feature model, commonality, and variability.
Publicize:      Digg this      Post to del.icio.us      Post to Slashdot

Direct download: seradio-episode53-ProductLineEngineering_Pt1.mp3
Category: regular/technology -- posted at: 2:06 AM
Comments[3]


Hosts: Arno and Michael

In this episode, Arno and Michael take a look at Design by Contract, a programming technique formalized by Bertrand Meyer. The idea is that an interface is more than method signatures - it is also about specifying the expected behavior that implementations must provide. While some languages include direct support for this style of programming, it is a useful mindset when desiging interfaces even without such language features.
Publicize:      Digg this      Post to del.icio.us      Post to Slashdot

Direct download: seradio-episode51-designByContract.mp3
Category: regular/technology -- posted at: 12:01 AM
Comments[10]


Hosts: Martin and Eberhard

Changeable software has been a goal of several technique in software engineering. Probably the most important is Refactoring, changing the code without changing the behaviour (or at least without breaking the tests). In this episode Eberhard talks with Martin Lippert about this technique. The episode covers a history of refactoring, a definition of code smells and how to actually do refactorings in your everyday work. Also some advanced topics - like the ROI of Refactoring or Refactoring in dynamic languages - are covered.
Publicize:      Digg this      Post to del.icio.us      Post to Slashdot

Direct download: seradio-episode46-refactoring_pt1.mp3
Category: regular/technology -- posted at: 5:28 AM
Comments[7]


Hosts: Arno and Alex

This is the second part of our two part discussion of the eXtreme Programming development methodology. While the first part introduced the values, principles and basic practices, this time Arno and Alex speak about the practices that set the context for an XP project and how to get started, and they discuss some FAQs they often get when introducing XP.
Publicize:      Digg this      Post to del.icio.us      Post to Slashdot

Direct download: seradio-episode43-eXtremeProgramming_pt2.mp3
Category: regular/technology -- posted at: 1:40 AM
Comments[8]


Hosts: Michael and Markus

This is the fourth and final episode on the fundamentals of Software Architecture. We talk mainly about architectural styles and patterns, as introduced in the POSA 1 Book. We also discuss a little bit the process of actually using those patterns for architecting systems.

Publicize:      Digg this      Post to del.icio.us      Post to Slashdot

Direct download: seradio-episode41-architecture_pt4.mp3
Category: regular/technology -- posted at: 1:28 AM
Comments[7]


Hosts: Arno and Alex

This is the first of two episodes where Arno and Alex discuss eXtreme Programming in se-radio's development process track. eXtreme Programming (XP) revolutionized the way of thinking about software development methodologies and helped to make the agile movement popular. In this episode they discuss the very basics of XP, its value system, principles and the basic practices used in an XP project. The second episode will continue the introduction adding the missing practices and how to introduce XP into projects.
Publicize:      Digg this      Post to del.icio.us      Post to Slashdot

Direct download: seradio-episode37-extremeProgramming_pt1.mp3
Category: regular/technology -- posted at: 8:48 AM
Comments[10]


Hosts: Markus and Eberhard

This is the second snippet of the SOA 2 double-episode. Eberhard and Markus continue the discussion with the issue of service reuse and a couple of development process issues. We also look at the duality between infrastructure development and application development in the context of an SOA. We then discuss the great spaghetti misunderstanding :-). We conclude this episode with a look at how to integrate BPM into the conceptual SOA framework we've built up to now, and we'll also briefly skim over a number of technologies related to SOA.

Note that this episode, as well as the last one, is based on a set of slides; these can be downloaded from here. This episode covers slides 39 through 74.
Direct download: seradio-episode33-soa_pt2b.mp3
Category: regular/technology -- posted at: 7:14 AM
Comments[13]


Hosts: Markus and Eberhard

In this, as well as in the next episode Eberhard and Markus continue their discussion about SOA (the episode got too long, so we had to split it into two ... SOA 2a and SOA 2b). In this episode, we talk about the various perspectives on SOA (CBD, EAI, BPM), about fundamental requirements towards an SOA, and we discuss the role of models in defining sustainable architectures. We also discuss how a programming model based on the described approach typically looks like. We then discuss a number of issues any large-scale SOA faces (and for which the SOA paradigm does not really provide an out-of-the-box solution: In this episode we discuss data type ownership and (weak) typing of data types.

Note that this episode, as well as the next one, is based on a set of slides; these can be downloaded from here. This episode covers slides 1 through 38.

Direct download: seradio-episode32-soa_pt2a.mp3
Category: regular/technology -- posted at: 12:13 AM
Comments[0]


Hosts: Michael and Markus

In this third Episode on software architecture, Michael and Markus talk about the basic tools that an architect uses when architecting systems. These tools include things like separation, abstraction, compression and sharing. We also relate these tools to the quality attributes we introduced in previous archtecture episodes.
Direct download: seradio-episode30-architecture_pt3.mp3
Category: regular/technology -- posted at: 5:09 AM
Comments[0]


Hosts: Michael and Alex

The third part of our concurrency series by Michael and Alexander discusses how to build highly scalable servers. The discussion focusses especially on event-driven servers. As possible solution patterns a reactor-based design is suggested along-side several patterns for multi-threading issues: Reader/Writers Locks, Thread Pools, and Leader/Followers. For more information, see the references for part one, as well as the following links:
Direct download: seradio-episode29-concurrency_pt3.mp3
Category: regular/technology -- posted at: 6:13 PM
Comments[2]


Hosts: Eberhard and Arno

In recent episodes we have discusses statically and dynamically typed languages and domain specific languages - topics that are much talked about in the community at the moment. In this episode we look at the foundation of programming languages : types. We explain what a type actually is, how type systems work and what polymorphism works.
Direct download: seradio-episode28-typeSystems.mp3
Category: regular/technology -- posted at: 4:14 AM
Comments[7]


Hosts: Markus and Eberhard

SOA (Service Oriented Architecture) appears to be just another hype - after all we have been building distributed systems for quite a while now. But the real value of SOA is non-technical. In this episode Eberhard and Markus discuss the advantages and disadvantages, what SOA actually is and how it compares to other approaches that have been tried out before.
Direct download: seradio-episode27-soa_pt1.mp3
Category: regular/technology -- posted at: 12:24 PM
Comments[7]


Hosts: Markus and Michael

In this Episode, Michael and Markus continue the discussion about the fundamentals of software architecture (we're doing it without Alex, because it is really hard to find a suitable time for all of us on the phone :-)). We talk about the various quality attributes (such as performance, scalability, maintainability and many more) and how they relate to each other.
Direct download: seradio-episode25-architecture_pt2.mp3
Category: regular/technology -- posted at: 2:36 PM
Comments[2]


Hosts: Arno and Alex

In this episode Arno and Alex talk about the basics of software development processes. They discuss why and when software development processes are needed and also why some developers don't like them. They discuss the theories behind different processes and talk about defined vs empiric processes in general. This episode is the first in a row that will later on describe specific processes like eXtreme programming or the unified process.
Direct download: seradio-episode24-developmentProcesses_pt1.mp3
Category: regular/technology -- posted at: 7:40 AM
Comments[6]


Hosts: Alex, Michael and Markus

This is the first of a series of Episodes on Software Architecture. Alex, Michael and Markus talk about rather fundamental topics in this episode, we'll go into much more detail in subsequent episodes in that series. Topics in this episode include:
  • What is architecture, how is it different from design
  • what different kinds of architecture are there in addition to software architecture
  • the role of the architect, do we have one or more?
  • architecture in agile software development
  • tasks of the architect
  • architect vs. the technical project lead
  • architecture and project politics
  • architecture requirements, estimating, team assembling
There aren't too many good references for this general architecture discussion. You might want to take a look at Software Architecture in Practice by Len Bass, or, if you speak German, at the book Software-Architektur by Vogel, Arnold, Chugtai, Ihler, Mehlig, Neumann, Völter and Zdun.
Direct download: seradio-episode23-architecture_pt1.mp3
Category: regular/technology -- posted at: 1:12 PM
Comments[6]


Hosts: Michael and Arno

In this Episode, Arno and Michael take a closer look at Exceptions and Error conditions, how to categorize them and how to deal with them. We look at the different levels of guarantee that a piece of code can provide with regard to exceptional condition and finish with a discussion of a number of best practices and their respective trade-offs.
Direct download: seradio-episode21-errorHandling_pt2.mp3
Category: regular/technology -- posted at: 5:27 PM
Comments[8]


Hosts: Michael and Alex

In this second part of our concurrency series Michael and Alexander talk about basic patterns for concurrent programming, such as Active and Monitor Object, Scoped Locking and Futures. Further, they discuss some architectural considerations regarding the number of threads and resource usage in general. For more information, see the references for part one as well as the following links:
Direct download: seradio-episode19-concurrency_pt2.mp3
Category: regular/technology -- posted at: 9:42 AM
Comments[7]


Hosts: Eberhard and Markus

A very important area for Java are Enterprise Systems. With the advent of new technologies like Ruby on Rails, Java EE 5 or EJB 3 the landscape for Enterprise Systems appears to be changing a lot at the moment. In this episode Markus talks with Eberhard about what Enterprise Java actually is, why and where it is used. Based on that they discuss what the future might look like and how to make Enterprise Java shine in the future.
Direct download: seradio-episode15-enterpriseJava.mp3
Category: regular/technology -- posted at: 5:01 AM
Comments[6]


Hosts: Alex and Michael

This is the first part of a series of Concurrency episodes. In this part Alex and Michael motivate and introduce the topic. We explain fundamental terms, such as thread, process, or mutex and dicuss typical challenges, such as deadlocks and race conditions. Here are some related links:
Direct download: seradio-episode12-concurrency_pt1.mp3
Category: regular/technology -- posted at: 1:15 PM
Comments[1]


Hosts: Michael and Markus

This is the second part of the remoting infrastructures discussion started in Episode 9. We take a look at how remoting infrastructures such as CORBA, .NET Remoting or Web Services work internally. This includes the low level details of the transport layer, marshalling, client proxies as well as interceptors and asynchronous communication. At the end, Michael will explain how all this relates to CORBA and Markus will map the concepts to .NET remoting. We don't have additional links in these show notes since all the relevant links had been posted for Episode 9 already.
Direct download: seradio-episode10-remoting_pt2.mp3
Category: regular/technology -- posted at: 4:11 AM
Comments[2]


Hosts: Michael and Markus

This Episode as well as the next one take a look at remoting infrastructures such as CORBA, .NET Remoting or Webservices. In this first part we will take a look at why remote communication is necessary in the first place, what remoting middleware can do for you as well as which other middleware technologies exist in addition to OO-RPC systems, such as messaging middleware. Finally, we conclude with a brief overview of what the broker pattern can do for us in the context of remoting middleware. Here are some links you might find useful: Note that this episode also contains listener feedback in the second part. You should listen to till the end, since we have a free book to give away - details in the show. In the next episode we will take a deeper look at remoting middleware based on our patterns.
Direct download: seradio-episode9-remoting_pt1.mp3
Category: regular/technology -- posted at: 5:02 PM
Comments[1]


Hosts: Arno and Markus

This week, Arno and Markus take a look at error handling at the architectural level. They discuss the different kinds of errors, the groups of people who need to know about them and proven high-level approaches. Later episodes will investigate more technical aspects of error handling, such as idioms for using exceptions or a discussion of checked vs. unchecked exceptions.
Direct download: seradio-episode7-errorhandling.mp3
Category: regular/technology -- posted at: 7:53 PM
Comments[6]


Hosts: Markus and Eberhard

After discussing some of the more technical aspects of MDSD in the last episode, we take a look at other important topics in this one. This includes some tips on how to introduce MDSD into projects and how the development process has to be adapted for this to work, as well as a look at the return on investment for MDSD. The relationship of MDSD and Agile software development is also discussed. Finally, we take a look at offshoring in the context of MDSD.
Direct download: seradio-episode6-mdsd_pt2.mp3
Category: regular/technology -- posted at: 12:02 PM
Comments[5]


Hosts: Markus and Eberhard

In this Episode, Eberhard and Markus provide an introduction to Model-Driven Software Development. Since the discussion turned out to be too long, we separated things into two episodes, thus Episode 6 will be the second part of this discussion. In this first part we disucsss core concepts of MDSD, the relationship to MDA, and hint at a couple of tools.
Direct download: seradio-episode5-mdsd_pt1.mp3
Category: regular/technology -- posted at: 3:28 AM
Comments[1]


Hosts: Alexander and 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. Here are a couple of links you might find interesting:
Direct download: seradio-episode4-scriptingLanguages.mp3
Category: regular/technology -- posted at: 1:00 AM
Comments[11]


Hosts: Eberhard and Markus

Eberhard and Markus discuss the important topic of associations and dependencies in this show. While OO languages provide direct support for subtyping, most don't provide a first-class construct for other relationships between objects. The discussion elaborates on the problem and looks at various remedies, most importantly, dependency injection. Here are a couple of links to topics that have been mentioned in the show:
Direct download: seradio-episode2-dependencies.mp3
Category: regular/technology -- posted at: 3:29 AM
Comments[4]


Hosts: Michael and Markus

In this episode Michael and Markus talk about patterns. Starting with some of their "most used" patterns, they go into some detail about the history of patterns. They then discuss the various pattern forms as well as some misconceptions about patterns. Other topics include the domains that are covered by patterns as well as pattern languages. Here are some links that you might find useful:
Direct download: seradio-episode1-patterns.mp3
Category: regular/technology -- posted at: 12:00 PM
Comments[2]

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

Creative Commons License
This work is licensed under a Creative Commons License.

Please Vote for us!

... at Podcast Alley
... at digg

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


Alexander
Schmid


Arno
Haase


Bernd
Kolb


Eberhard
Wolff


Martin
Lippert


Markus
Voelter
 
Michael
Kircher
 

Search

Search in Show Notes:

Search in Audio Content:
Search Google: Google
Web www.se-radio.net

Thanks...

... to Henning Pauly for poviding the music.
... to LibSyn for hosting and bandwidth.

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