this post was submitted on 11 Aug 2023
69 points (91.6% liked)

Programming

17499 readers
37 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 1 year ago
MODERATORS
 

I am confused as to whether it is acceptable to use code produced by other people for something that is related to me and my creations. Do i have to resort to coding my portfolio website with pure css and js to demonstrate my credibility and experience as a candidate employee? Does the ideology of 'using other people's tools to create a better product' apply here in this context, or would it be considered plagiarism? Is there some sort of gradient as to how much i should use third party tools for my website for it be ethically appropriate, if it all?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 5 points 1 year ago* (last edited 1 year ago) (1 children)

This is good advice. For example, here's a tricky one: https://github.com/IanLunn/Hover/blob/master/license.txt

Hover.css is made available under a free personal/open source or paid commercial licenses depending on your requirements.

Would you need to pay Ian Lunn Design to incorporate the library into your portfolio website? It's used for a commercial purpose technically, but you're not selling the website to a client. This is a source-available license, rather than a free software license. A free software license permits you to use the software for anything, with the only obligations usually being around keeping copyright notices intact and licensing your code in a certain way.

Generally, free software licenses are simpler and you'll usually be fine so long as you keep your code available under the same terms. Of course, things get a bit tricky when combining incompatible free software licenses...

Compatibility is important if you want to combine software with two different licenses into one major work.

Generally speaking, most software on Github tends to be licensed under a few free software licenses, which are interoperable with each other:

  • MIT License
  • GPL, LGPL, and AGPL Licenses, which have one major difference in obligations between them
  • ISC License
  • Apache 2.0 License
  • Mozilla 2.0 Public License

However, when you combine MIT and GPL together, you may be obligated to distribute any changes you make to the MIT-licensed portion, depending on how strongly it's associated with the GPL portion. This is because the GPL is copyleft—that is, it requires you to provide anyone you transmit the binary form of the software to the associated sources if they ask for them. The MIT license does not require this obligation.

None of this really matters for a website, though, because you're not transmitting the software; you are instead providing a service. Do keep an eye out for the AGPL, because this one applies even with server-side software interacting with clients.

I think writefreesoftware does a good job of explaining licensing for developers in simpler terms than the GNU Project: https://writefreesoftware.org/learn/licenses/

Sorry for the length...it's kind of a complex topic.

[–] [email protected] 4 points 1 year ago

It's getting into the realm of law where the answer is almost always "it depends"