Thoughts on sparkleformation

sfn provides a few nice features, but it is really hard to deal with all the other craziness that goes on …

method_missing (typos result in silently swallowed errors)

components being loaded multiple times

cli silently catching all kinds of template errors making debugging impossible for anyone not knowing how to open a gem …
Solution: use .sfn.rb

very little testing going on + no CI setup …

ruby code is written in a non-standard style

forcing a `Bundler.require` which makes everything slow when there are lots of gems in the Gemfile
Solution: add a :sfn group that only includes sfn gems

PR comments being ignored

It adds a lot of unnecessary work and bugs that it tries to re-invent libraries that already exist (thor/optparse/etc for cli interfaces) and fog for api abstraction.

I don’t mean to hate on chrisroberts … he fixed lots of bugs / is helpful / drives this project forward , I just feel like this project has basic flaws in it’s foundation that should be fixed instead of adding more and more features on top.

I want to like/use this project, but this makes it really hard … the more templates we add / the more members we introduce to sfn the worse I feel about this whole situation … and the more I want to replace it with something sane/verbose that ‘just works’ instead of being magically broken.

2 thoughts on “Thoughts on sparkleformation

  1. Is this really necessary? Almost every issue you’ve linked was resolved to your satisfaction, based on the Github comments. If that’s not the sign of a good open source project, I’m not sure what is.

    There are multiple style guides and CI solutions, and decisions about those are generally up to the maintainer’s preference. Differing opinions are par for the course when using/contributing to Open Source, and part of that means that it’s rare to have a project reflect your own opinions 100%.

    Your use of SparkleFormation and the issues you’ve opened have clearly improved the project. I hope you see those improvements as a positive community experience, rather than the negative one this post implies.

  2. First off, thanks for replying!

    As far as I know, none of the issues I listed are resolved yet, but the Bundler.require issue has a open PR now.
    Some of them are “maintainer preferences”, which I respect, just stating that I do not share these preferences.
    My issue / PR experience has mostly been positive and it’s one of the reasons I have not given up on sfn yet 🙂

    We have a lot of monkey-patches in our repo now that circumvent a few of these issues (method-missing + Bundler + silent error catching) … but if someone would ask me what to use to manage their templates I’d not blindly recommend sfn … I’d make sure that there is nothing else out there that provides similar features without having these issues.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s