Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

SilentPanda

Moderator emeritus
Original poster
Oct 8, 2002
9,992
31
The Bamboo Forest
More specifically, code you post in this forum...

Due to U.S. copyright law pretty much anything you post here is under copyright once you post it. But what are your personal thoughts on code posted here? What are your personal feelings on how code is used here? On the flip side do you do anything special to code you find here or elsewhere on the internet?

Do we need to make a license for code posted here?

This thought came to me just because of a post yesterday on Slashdot.

----------------------------------------------------------------

For me I figure if I post code in a public area I wouldn't care if I saw it later on down the line in a commercial application. I certainly expect to see it in homework... while I may have rights to the code my thought is that once I've made it public, it's public.

I guess if I really wanted to keep the code semi-secret I would PM it to the person that made the inquiry and attach a license.

As for code I find on forums, tutorials, etc... if I feel it's a significant amount of code (a whole method or possibly an algorithm) I will include a URL in the comments so people know I didn't make it. If somebody helps me add some lines to code I posted I will often times neglect to attribute those lines to them but in that case I figure they are explicitly helping me out and would be daft to not think I'd be using it.
 

Animalk

macrumors 6502
May 27, 2007
471
19
Montreal Canada
This is a very interesting point and sooner or later the software development community will have to deal with this head on.

My vision of the future of software development is large databases of code that you can look up through a web browser and that you can use at your will. There are only so many ways you can do something and usually people are all doing something very similar. So why make a fuss about it.

Just think of how much development time will be saved when you know what you have to do and can go shopping for the tools (methods and libraries) you need to get your job done. If I had a cent for every time i thought to myself "Man this code has been written about a billion times since the 70's and why do I have to rewrite it when I want to do exactly the same thing?" I'd be the world's richest man.

Also this leaves any code in this database open to discussion and modification. So you see, its community debugging and everyone knows the more heads you have looking at the code, to more solid it will be. It's something you learn with experience because sometimes you get so entrenched in your way of thinking for your algorithm in mind that you let slip important basics which turn up as bugs later on.

Simply a thank you to the original author(s) in the source code is all that is needed.

Mind, you These tools are basic methods and libraries. Nothing enormous. For example methods to take strings from managed C++ to unmanaged C++. BFS, DFS, etc. algorithms, Linked List builder, Tree builder and all that. No RPG builder or no MP3 player creator types things. Strictly software development methods and libraries which you can implement into your code as modules. All the basic and semi advanced tools any software developer would need basically.

Too much time is wasted reinventing the wheel in Software Development in my opinion and not enough time is spent working on the "warp drive" of tomorrow.

I am really interested in what you all think about this and I would encourage you to post about it. :)
 

toddburch

macrumors 6502a
Dec 4, 2006
748
0
Katy, Texas
It makes sense to have established, debugged, common routines available to use and share for the sake of speedy development.

But there still has to be a mechanism in place to make money writing software.

On top of these snippets of gold, it would make sense to also establish a framework of handling error conditions, so that free-snippet#1 and free-snippet#425 share something in common with regards to invocation, error handling, behavoi<u>r, linking requirements, look and feel, etc... Too much too dispersed and nothing in common makes for a mess.

Todd
 

Animalk

macrumors 6502
May 27, 2007
471
19
Montreal Canada
Good point Todd. There is definitely a need for an established set of rules and procedures to follow when creating or debugging code for such a project. But I would also argue that for such an idea to work, it would largely be dependent on the goodness of the community using it, commenting it and maintaining it. Much like Wikipedia.
 

kainjow

Moderator emeritus
Jun 15, 2000
7,958
7
I don't worry about it. I have a public Subversion account hosted with Google with a few dozen projects that I don't even both to put a license on. As long as someone doesn't take my projects and claim it to be theirs, I'm fine.
 

Krevnik

macrumors 601
Sep 8, 2003
4,100
1,309
I don't worry about it. I have a public Subversion account hosted with Google with a few dozen projects that I don't even both to put a license on. As long as someone doesn't take my projects and claim it to be theirs, I'm fine.

Which is fine, although as it stands, without a license, nobody has a right to use it at all, even if it is publically posted. For your purposes, the tiny, and simple, BSD license is probably good enough. Anyone who stands to make a profit off of snippets, routines or small libraries (in a bigger project) that is derived from your code could be in a legal quagmire without you even thinking there is a problem. Copyright is setup to protect the author, but the end result is that the author must make their intentions clear to others (via a license file usually) if they want to grant rights.

I am actually tempted to update my sig to attach a BSD license to my posts. ;)
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.