Call for Proposals: IEEE Software Issue on "Multiparadigm Programming"

I am guest editing a special issue of IEEE Software on Multiparadigm Programming, along with Tony Clark and Michael Feathers. Here is the opening paragraph of the CfP:

For most of today’s applications, using one language and one paradigm—for instance, object-oriented programming—is inadequate. Today’s applications are often polyglot, involving multiple languages, and multiparadigm, involving a mixture of deployment directives as well as functional, relational, object-oriented, aspect-oriented, and other paradigms. IEEE Software is soliciting articles for a special issue on multiparadigm programming, or MPP. It will explore MPP technologies, advantages, disadvantages, and applications ranging from embedded and IT systems to the Internet.

You can find out more information about the kinds of articles we are looking for, guidelines for submitters, etc. on the CfP home page. Note that we also welcome people who would be willing to review submissions. Contact me directly if you have questions.

About Aspect Programming

Aspect Programming is an advocacy site for Aspect-Oriented Software Development, sometimes just called Aspect-Oriented Programming. We explore the role that AOSD plays in many facets of software development, especially design and implementation. We also explore the practical challenges of using existing AOSD tools and techniques. Lately, we have been developing Aquarium, an AOP toolkit for the Ruby language.

News:

October 22, 2009: Updated versions of (Son of) Better Ruby through Functional Programming Adobe PDF and Polyglot and Poly-Paradigm Programming for Better Agility Adobe PDF that I gave today at Strange Loop in St. Louis.

September 30, 2009: The videos of the Windy City Rails talks have been posted, including mine: (Son of) Better Ruby Through Functional Programming (Adobe PDF of slides here).

September 12, 2009: Today's Windy City Rails talk, (Son of) Better Ruby Through Functional Programming Adobe PDF. This version spends less time introducing the principles of Functional Programming and the mechanics of supporting them in Ruby. (See the earlier version Adobe PDF for more of those details.) Instead, I dive into ways that functional thinking improves the quality of our object-oriented (OO) code and when OO is not the best design choice. In particular, I argue how functional idioms are better for creating a successful software component model.

August 27, 2009: The notes for the Acceptance Testing Java Applications with Cucumber, RSpec, and JRuby Adobe PDF tutorial that Aslak Hellesøy and I did today at Agile 2009.

August 25, 2009: Refinements to The Seductions of Scala Adobe PDF for tomorrow's talk at Agile 2009.

June 11, 2009: Improved The Seductions of Scala Adobe PDF after presenting it today to a developer team. Added a little more content, clarified some slides, and made sure the "presenter notes" (which are included) actually match the content!

June 2, 2009: Here's the final version of my JavaOne talk Don't Do This! How Not to Write Java Software Adobe PDF. I discuss 10 mistakes I see Java teams make, why they are bad, and what to do instead.

May 30, 2009: Posted my talks at today's Chicago Code Camp. They are updates to previous talks.

March 12, 2009: Another update to my Better Ruby Through Functional Programming Adobe PDF presentation, given at SDWest 2009. I introduce the principles of Functional Programming and why applying these principles can improve the quality of Ruby applications, especially when concurrency is required. I also posted the code examples. Confreaks recorded the RubyConf version of the talk.

February 19, 2009: Tonight was the first meeting of the Chicago Area Scala Enthusiasts (CASE - a bit ironic, isn't it ;). I presented an abbreviated version of my introduction to Scala, The Seductions of Scala Adobe PDF.

January 12, 2009: An update to my Better Ruby Through Functional Programming Adobe PDF talk that I gave tonight at CHIRB. This is an expanded version of the talk I gave at RubyConf 2008 where I introduce the principles of Functional Programming and why applying these principles can improve the quality of Ruby applications, especially when concurrency is required. I also posted the code examples

December 16, 2008: I posted an update to my introduction to Scala, The Seductions of Scala (Zip), which I'm presenting tonight at the Chicago Java User's Group. To view the presentation, open html/all.html in a browser. The code used in the slides is in the code directory.

November 24, 2008: I posted my Better Ruby Through Functional Programming Adobe PDF notes. This is the talk I gave at RubyConf 2008 where I introduce the principles of Functional Programming and why applying these principles can improve the quality of Ruby applications, especially when concurrency is required.

November 20, 2008: I posted an extended version of the slides from my QCon San Francisco talk, Radical Simplification Through Polyglot and Poly-Paradigm Programming Adobe PDF. InfoQ.com may offer a video of this talk. Stay tuned.

November 13, 2008: I posted my introduction to Scala, The Seductions of Scala (Zip). I hacked-up a presentation tool that Dave Thomas created, which is based on S5. To view the presentation, open html/all.html in a browser. The code used in the slides is in the code directory.

August 6, 2008: I posted the latest version of my Agile2008 talk on Clean Systems: Clean Code at the Architecture Level Adobe PDF. This talk is based on the "Clean Systems" chapter I wrote for Bob Martin's new Clean Code book.

August 4, 2008: The Clean Code book is out! I wrote the "Clean Systems" chapter on what "clean code" means for architectures.

July 24, 2008: I posted an updated version of the talk I gave today at Dr. Dobb's Architecture and Design World, Principles of Ruby Application Design Adobe PDF. It discusses object-oriented and functional design principles that promote smaller, higher quality Ruby code.

June 28, 2008: Ivan A Krizsan graciously donated Getting Started with Contract4J Adobe PDF. It discusses how to build Contract4J from scratch, using Eclipse, and it provides an example of using Contract4J. Thanks Ivan!!

May 22, 2008: I posted a presentation called Polyglot and Poly-paradigm Programming Adobe PDF. It discusses the merits of using multiple languages and modularity paradigms to improve productivity and quality.

April 16, 2008: I Updated my longer introduction to Aquarium, called Aquarium: Aspect-Oriented Programming for Ruby Adobe PDF, to reflect API changes since the original version was made.

April 3, 2008: I Added a short presentation to the papers section on Aquarium, called Aquarium: AOP for Ruby Adobe PDF that I gave at the AOSD 2008 Conference today.

February 25, 2008: Announcing the V0.4.0 release of Aquarium, an Aspect-Oriented Programming Toolkit for Ruby:

  1. Aquarium website.
  2. Blog about Aquarium's goals.
  3. White papers about Aquarium.


Ruby on Rails Speaking at Windy City Rails 2009 Speaking at QCon San Francisco Speaking at Agile 2009