Skip to content
This repository has been archived by the owner on Feb 1, 2018. It is now read-only.

Wrote a README #44

Open
sprusr opened this issue Apr 30, 2017 · 10 comments
Open

Wrote a README #44

sprusr opened this issue Apr 30, 2017 · 10 comments

Comments

@sprusr
Copy link
Contributor

sprusr commented Apr 30, 2017

I finally got around to writing a readme! For my recent project Spotifly. It has getting started instructions, contributing tips, and even emojis. 👾

Also you should try out the project if you want! It changes which device Spotify is playing from based on which beacon is closest. Uses the super cool new Spotify connect API! ✨

@PandelisZ
Copy link
Contributor

Looks good, covers the points discussed. Is brief, introduces the concept and has enough info to quickly get started

@alyssais
Copy link
Contributor

alyssais commented May 1, 2017

I see from your package.json that the project is licensed under ISC, but you don't mention this in the README, nor do you have a LICENSE file — the two places someone wondering whether they can use your code is most likely to look.

I suggest mentioning the license of your project in the README, with a link where someone can read about what the license does and doesn't allow.

@sprusr
Copy link
Contributor Author

sprusr commented May 2, 2017

@alyssais yes! Thank you! I always forget about licensing, but realise it can be pretty important. The license in package.json is actually just the default one that npm selects for you.

Do you/anybody have suggestions for a license which says something along the lines of "do literally whatever you want as long as it's not illegal"? Because that's my default stance 😁

@alyssais
Copy link
Contributor

alyssais commented May 2, 2017

You could use CC0 to put your software into the public domain — that doesn't stop people from doing illegal things though, you'll have to rely on the law for that. It does mean you're not responsible, though.

@sprusr
Copy link
Contributor Author

sprusr commented May 2, 2017

Went with CC-BY 4.0 in the end, because I guess attribution is nice. Thanks for the help 👍

@PandelisZ
Copy link
Contributor

Do CC licences apply nicely to code?

@alyssais
Copy link
Contributor

alyssais commented May 2, 2017

Apart from CC0, Creative Commons recommend avoiding their licenses for source code because they aren't compatible with lots of other free software licences.

@sprusr
Copy link
Contributor Author

sprusr commented May 3, 2017

Damn licensing is hard. So I'm looking at Choose a License, and MIT and Apache look good. GPL seems too restrictive in that it requires derivatives to be under the same terms. I didn't go for CC0 in the end because when I read it, it sounded scary.

What's the difference between MIT and Apache licenses? One grants patent rights, and one trademark rights? How does this actually affect me and people who want to use the thing?

😵

@BlueHatbRit
Copy link
Contributor

BlueHatbRit commented May 3, 2017

I'm not a lawyer but have spent time looking into some licenses before and this is what I've taken from reading through the apache license. Personally I tend to default to MIT when it's something like a small npm module, but if it was something more akin to a full product which might contain some branding and have many different features then Apache 2.0 could be quite useful.

Apache 2.0 Patent Rights

3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.

This means that should a contributor come along and use something which they own the patent for (some algorithm or something perhaps) then everyone can use the software without paying any form of royalty forever.

Apache 2.0 Trademark clause

6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.

This ensures the user of your software cannot use anything you (the copyright holder) have trademarked such as logos related to the project to endorse their products or anything like that. It keeps it permissive by saying they may use it to describe the origins of their work but nothing else really. Ie: "we use this software to build it" as opposed to "these people endorse it!".

@joenash
Copy link

joenash commented May 12, 2017

Whoa I missed some fun in here! Thanks @PandelisZ @alyssais @BlueHatbRit for your wisdom and feedback 🙇

@sprusr Just a minor nit-picky things from me:

You're going to need Node.js and npm installed, as well as hardware support for Bluetooth Low Energy.

Here you could link to installation guides for Node/npm, and something that helps determine if they have hardware support for BLE.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

5 participants