Over ten years ago, SourceCoder 2 was released on Cemetech, allowing community members to view and edit their TI-BASIC programs online. In a move that put it significantly ahead of the curve, one of SourceCoder 2's flagship features was the ability to share projects with other users: you could share a particular project with everyone, or just a few specific people, and allow them to view and/or edit those projects. As of the release of SourceCoder 3, however, this feature was removed. We had seen very few Cemetechians actually make use of these features, and the effort required to maintain them was deemed excessive. Since the first open beta release of SourceCoder 3, however, we have seen a resurgence of collaboration in the graphing calculator community. Therefore, in an effort spearheaded by Cemetech global administrator extraordinaire Peter "PT_" Tillema, a form of sharing has returned to SourceCoder 3.

We reached out to our membership to understand exactly what kind of project sharing they wanted, and heard a helpful consensus. Our members largely were not interested in realtime collaboration with other members, or even being able to trade off projects with others. Instead, they wanted to be able to show the current state of a project to someone else, for help, feedback, or even as a learning tool. Therefore, we have added a sharing tool that works like this:
  • Click the "Share" button in an SC3 project to get a shareable link.
  • Anyone to whom you give that link will then be able to view your project in its current state. If people don't have the link, they still won't be able to view the project.
  • People with the link can choose to clone the project into their own SourceCoder projects folder, allowing them to edit a copy (not the original).
  • At any time, you can choose to "Unshare" your project by clicking the appropriate button. The link you got will be (permanently) invalidated, no one will be able to see the current and future progress of your project, although any cloned copies of your project will remain in their owners' projects folder.
Feel free to try this new feature out; it's now live within SourceCoder 3. As always, we welcome comments, feedback, and questions in the attached topic.

Try It Out
SourceCoder 3


I am happy that this is here. Thanks, PT_! (and all others who helped.)
Thanks Smile
Mainly Kerm and Pieman helped, Kerm with coding and help, Pieman with testing Very Happy
This seems like a fantastic addition to SC. Might I assume that git is being used somewhere? The use of cloning tipped off my coding senses.
This is cool! I think the most important part (sharing code) is there. There is no real use in having multiple people editing a master program, at least not in basic, because most things are done in one sitting.
Also, Pieman, hmu with some links! Laughing
To make it easier to view the existing share link for a project, I propose the following changes:
1) Only show the Share button next to the Save/Export/Test buttons, not the Unshare button.
2) Instead, once a project has been shared, have a new [ Shared Project: [hash...] [Unshare] ] bar below the existing project row.
3) This will presumably require one extra piece of information be passed from api.php to the frontend when a project is opened.

Thoughts (especially PT_)?
That would indeed work, although it's not my 'favorite' option. I really like the current GUI, and I think a bar below the Project: buttons doesn't fit well in the GUI. I don't know how to do it else though, my best try would be the hash next to the Test button, or the hash in between "Unshare" and "Test".
KermMartian wrote:
To make it easier to view the existing share link for a project, I propose the following changes:

4) Work with our existing URL shortener. http://cemete.ch/scHASH. Or even work out a system that uses 5 or 6 characters to define each project. If you have 5 characters per project, That would be 5^(26+26+10) or 2.16840434e43 entries before we ran out - since A-Za-z0-9 - for a proper short URL. I imagine the hash of each project is some exceedingly long string?

edit: Or would it be (26+26+10)^5? Which would be 916132832 possible things.
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum