SimplePie is back in development!

Ryan Parman ∞
simplepie-ng
Published in
2 min readDec 17, 2017
What the wut?

After retiring from SimplePie development in 2009, the project more or less went into maintenance mode. While I am thankful to the folks who have contributed to its development over the last 8 years, it’s time for a reboot.

SimplePie NG is a modern, next-generation PHP package for working with syndication feeds. It is being re-written from the ground-up to take advantage of the changes that have happened in the PHP community since the SimplePie project was started back in 2004.

The Plan

I’ve spent several years thinking about how I would do things differently if I were to start the project over from scratch — including thinking about all the things we did that turned out to be a terrible idea in retrospect.

The things to avoid next time

  • Odeo integration.
  • Integration with the various social bookmarking services du jour.
  • Trying to do everything and build everything from scratch.

The things to do better this time around

  • Embrace the PSRs (logging, caching, HTTP messaging).
  • Leverage a middleware-based system for adding support for new formats. This will allow people to write custom middleware that is Composer-installable.
  • Take advantage of the modern features of PHP. Notably, we are focusing on targeting professional-grade software engineers, and building great software.
  • Focusing on performance, memory usage, specification compliance, feed compatibility, and testing from the very beginning.
  • Supporting RSS, Atom, and the new JSON Feed out of the box.

Where can I get it?

I’m still in the “big bang” (e.g., iteration zero, proof-of-concept) phase. I’m implementing support for Atom 1.0 first (since it is the best-specified) and leveraging XPath expressions to radically improve parsing performance. As such, I must say…

Highly experimental. Don’t use this.

I’m working on this project outside of work hours, so it will probably be a few months before I tag an alpha release. I want to add the core Atom, RSS, and JSON Feed support before I tag an alpha release.

However, if there are features you want to see, or want to dabble with the code a bit, I encourage you to come check things out in GitHub.

--

--

Ryan Parman ∞
simplepie-ng

Experienced Software/DevOps/Security engineer. Created SimplePie, AWS SDK for PHP, MFA-aaS. Godfather of Serverless. Ambivert. Curious. Not a coffee drinker.