Engineering Post: XBlock Field Data Complexity

June 20, 2019 | By

Dave Ormsbee, one of our most longest-lived engineers at edX, wrote up a highly opinionated post about XBlock Fields, the good and the bad (XBlocks are how you can implement custom content types in Open edX courses). In it, Dave argues that we over-engineered them in an attempt to hide complexity from the end user/developer, leaving XBlock creators to deal with the unintended consequences of our early abstraction choices. This quote is a good summary:

    “…it’s probably not surprising that I see XBlock Fields as a case where we have unnecessarily complicated the design with over-abstraction. Worse than that though, I think that it’s actually tainted our mental model of courseware over the years and pushed us further away from where we need to go as a platform. But let’s start at the beginning.”

If you want to learn more about design choices and consequences, especially as it pertains to LMSs or Open edX in particular, read the full article. If you want to help us navigate the rearchitecting of the platform and associated APIs, we’d like to hear from you!

More on XBlocks here and here.

Loading

Start the discussion at discuss.openedx.org

Time For More? Check out the articles below.

Solving Problems Together: Community-Driven Platform Development
Skill & Scale the Future at the Open edX Conference
Open edX Conference Developer’s Workshops
Reclaiming Our Digital Future: Why I’ve Joined the Open Renaissance Group
Join the Open edX Conference 2026!

The 2026 Open edX Conference will present innovative use cases for one of the world’s best open source online learning management systems, the Open edX platform, and discover the latest advancements in instructional design, course constellation, and methods for operating & extending the Open edX platform, including breakthrough technologies, such as generative AI.