Open Sourcing my Steem Apps, Columns for Steem & Steem Observatory

in #steem6 years ago (edited)

Columns for Steem, my multi column web app for Steem (like Tweetdeck or Mastodon, with live updating columns that scroll in new posts from the top) hasn't gained as much interest as I had hoped, so I didn't have much time to work on it in the past few months since I had to prioritize other projects, but I still believe it's a great way to experience Steem, so I don't want to completely give up on it.

1512830604185_1280x720.png

Big picture mode

Screenshot2

Small picture mode

I wanted to put a bit more code on my Github repository anyhow, so among other projects I plan to open source Columns for Steem and my earlier Steem app Steem Observatory (a little stats app for Steem, like a dashboard that quickly shows you with live updates the votes, comments and money your posts receive) and hope to receive some code contributions and generate renewed interest to bring life back into the projects.

Screenshot_2018-11-07 Steem Observatory.png

Both Columns for Steem and Steem Observatory are written in ClojureScript (a Lisp dialect) and use the Reagent framework, a thin wrapper on top of React. Due to its immutable data structures, ClojureScript has outstanding support for live programming (also known as hot code reloading), you can see changes you make to the source code live on the website without losing any application state, so it's really easy to add new features, fix bugs, and try things out. I wrote a small ClojureScript & Reagent tutorial a while ago here, it's super easy to get into.

I haven't decided on an Open Source license yet, I usually go with MIT because it's the easiest, but I'd be happy to hear other suggestions since that license might not be the best for web apps, maybe AGPL would be better there.

I'm writing this post to see how much interest there is in me Open Sourcing the apps, so if you think it's a good idea, if you like Columns for Steem and would like to see development continue, or even better if you would like to contribute code in the future, now's your chance to say so ;)

If there is a lot of interest, I'll try to be quick and have the source code ready and on Github next week. I just need to add build instructions, write a Readme, add the license and things like that, possibly add a few more code comments to make it easier for new contributors to work on the project. Although I think the code is already very easy to understand and work on, Columns for Steem is only about 1200 lines of ClojureScript code (not including tests and other project files), it's a very concise language.

Sort:  

MIT is good, I would prefer that to GPL and variants. However what I recommend is CC0! Why hold on to intellectual property rights at all?

CC0 doesn't work in Germany, we have no concept of public domain here, you are automatically granted an "Urheberrecht" (which roughly translates to right of the creator) when you create something and you cannot transfer that right or give it up, it's very different to the concept of copyright.

But licenses like MIT and Apache 2.0 are as close as you can get to that, and that way you also at least get a minimal form of attribution. Apache works better under German law I believe so I might choose that, it's very close to the MIT license but better worded and more detailed. The MIT license has language which disclaims any liability which isn't allowed in Germany because of strong consumer protections, so the license should say something like "disclaim any liability to the extent possible by applicable law" instead, which Apache does if I remember correctly, I only used it once many years ago. But I would assume that the MIT license still works for the most part, it's such a popular license after all, but that depends on the judge, Open Source licenses haven't been tried in courts that often I think :)

That's interesting, I'll have to research that.

[...] you also at least get a minimal form of attribution.

This is the point though, not requiring that.

It's probably required so that people know who to hold liable. Germany is sadly an extremely bureaucratic country :) But requiring attribution is a good thing anyhow I think, if someone ends up forking your project instead of contributing to it and then takes all your hard work for free and potentially even ends up making tons of money with it, the least they can do is give credit to you.

Although I'd happily take donations as a thank you as well, I don't work for a big software company with a huge salary so I can use every cent :) Really could use a faster computer one of these days, compiling Columns for Steem takes 80 seconds on here for the first compile and then 8 seconds for consecutive compiles, would be a second or less on a modern computer which makes the live programming a lot more fun, but I had to move back to an old Chromebook after my desktop computer stopped working recently (CPU fan broke off, only noticed it a week or two later when it kept overheating with random reboots and then finally stopped booting completely). Ah well, it works for now :)

Coin Marketplace

STEEM 0.18
TRX 0.13
JST 0.029
BTC 57912.75
ETH 3070.69
USDT 1.00
SBD 2.33