Website Add-On Suggestions


#1

Oooookay so I could literally write a few books about what I’m going to try to suggest to the guys up here at RocketJump so pardon me I am going to try to keep it as

simple and to-the-point as possible. As the name of the thread implies I’m suggesting that RocketJump.com add a branch of their site which would allow sharing

videos users to upload them AND RJ wouldn’t have to host each video on their server virtually eliminating upload time.

Now the suggestion I’m posing is that RJ.com have a branch of their site which allows user registration and login as well as a system that allows literally every user

and view to contribute bandwidth to stream the video lightening the load on RJ.com and taking up virtually no server space. Now as far as I have looked into myself.

. There is positively no system in place for this. Now before you :frowning: assuming you aren’t :open_mouth: about what I’m saying already. I am working on the scripts and code for

this. Now this may take a few months to get full functionality and run in line with the RJ.com standards. But I’m hoping to have a functional beta pumped out by the

end of the week.

Now I still haven’t made it clear as to what it is I’m suggesting so I will get to it. The system that will be in part responsible for this endeavor will be

WebTorrent a web based alternative to its forefather protocol BitTorrent. You can go to the

links provided to get more information on both of the protocols but I am going to do my best to explain the needed parts and make the necessary points so that

you’ll understand my proposition.

[url=http://bittorrent.com/]BitTorrent[/url]

Essentials

BitTorrent is a protocol which allows for easy and efficient file transfer. Featuring peer to peer protocol taking out middle men. [i]Also[/i] there is speculation that

it is illegal this is because of its efficiency in file transfer speed and security it proves very effective for quick secure and private transfer of copyrighted material.

This doesn’t make the protocol itself illegal however.

How it Works

When a torrent is made it contains the needed links for a BitTorrent client to find the other users who have that file in the network. Once a user finishes

uploading/seeding to the first downloader/leecher he now has the file and is capable of contributing it to the network. So say that the file was "CatVideo

[1337].mkv" and the first user who downloaded it decided to stay in the network and seed/upload the file to new users. Now if another user enters the group/swarm

and wants to download the file he sends requests through BitTorrent to download the file and the two users offer pieces of the file to the new leecher/downloader.

Now while the third user is downloading/leeching the file “CatVideo[1337].mkv” say one more comes in during the process. Now the there is a fourth man in the

mix while the third isn’t done downloading “CatVideo[1337].mkv” so the first two users with the whole file partially offer the file to the fourth user while still giving

in pieces the file to user #3, user #3 is able to copy the pieces they already have and send them to user #4 and this system can be applied indefinitely.

[url=http://webtorrent.io/]WebTorrent[/url]

What it Has To Offer

When it comes to BitTorrent there is normally a downloaded and installed client involved and responsible for the file transfers. WebTorrent offers the ability to do

that inside the web browser (specifically Google Chrome and FireFox at this moment in time). It also allows the users to stream their files so long as the web browser

supports it. You can also right click and download the video while streaming it. Just like BitTorrent too while you stream the video you are sharing pieces of it with

other users streaming the same video. Skipping in-stream is also possible. This also means the video does not need to be uploaded to the actual server.

Meaning low bandwidth cost and no need for digital storage on the part of the website host. Only downside to the protocol is that it is only supported in HTML and

JavaScript which to web coders is a pretty huge downside but I am doing my best to work it out.

The System I'm Working On

At the moment I still in the very begining and working out on figuring out how the system will work out logically and all else. Styling it shouldn’t be much of an issue

but is a very low priority. I can obviously explain more if you need me to. Contact me at tenebrae.exercitus@tuta.io. The system I want to build has a YouTube like

format allowing users to register and post videos. The search engine is a little low on the priority list but will be included in the 1.0 version. The 0.1337 version there

can be a list of the videos and a user login and register system as well as a way to post the videos. Moderation is the main thing that I may not be able to control for

the users running the site. So moderation and censoring and downing videos and banning users may be made more dificult so I will work on the security bugs like

that the best I can.

For the most part it will be in PHP, HTML, and JavaScript. It will be open source and once I really have something to show I can post it on GitHub or something. I

want to do this and would love to see RocketJump do something with it. That would be awesome on a personal and revolutionary on the cultural level since nothing

like this has really been done before.

Once again my email is tenebrae.exercitus@tuta.io contact me via PM, reply, or email if you want to know more I’ll do my best to get with you I am also relatively

available on Skype but not to consistantly ‘@edward_stryfe’ commments, questions, or anything would be super appreciated from either users or staff. I am more

than willing to work with people(I think I have the whole body of the project taken care of aside from styling though). I hope this is a well recieved idea but if not

that is fine just the same I just wanted to put it out there.

Also just to make sure it’s clear you can learn more about BitTorrent and WebTorrent in the links provided and try out WebTorrent at http://btorrent.xyz/ or

http://instant.io/ and the project I’m working on will be open source and totally legal and I am not going to charge for lisencing or be selling it in the first place.


#2

PS Sorry the formatting of the post is a little off I wrote it in a text editor application instead of on the site to make sure that the page or server didn’t reset and delete it :pensive:


#3

P.P.S. If there are no replies received in a day or so I’m going to assume no one is interested. But if anyone is I can write up a log of my progress. Also for the RJ staff just so you know this software can be used on your site for just yourselves instead of having the whole interface mocking YouTube. Since you obviously don’t have to do that sort of thing if you don’t want to.

Same goes to any freelancers who might be interested. :smiley: please feel free to reply comment ask questions anything.


#4

Well, it seems to be a great project…
But is there anything that would make it better than a platform like Youtube ?

I think you are going to work too much for something that is not worth it.
And replacing a system is quite annoying, even if the code is already written.


#5

I’m not sure I follow. But with this system you can take YouTube out as a middleman and use this code on your own site making it possible especially for more popular sites to stream their videos for a fraction of the price on their own servers. It allows users who have their own websites to host videos for a fraction of the bandwidth and with almost no space taken off the server.

I’m quite sure I follow your question though could you reformat it. Sorry for asking this I’m just not sure I follow.


#6

FOLLOWUP: Also I’m not trying to come up with a system to replace YouTube if anything this system should be adopted by YouTube for a good few reasons. But since no big name business is taking on I am just coming up with this for the users to use until there’s a mainstream version of the software.


#7

Hey @Edward_Stryfe, thanks for putting so much effort into this, and thanks for openly sharing your ideas here! Moreover, holy crap am I impressed that you’re getting into this stuff. Am I correctly remembering that somewhere else you posted that you were ~14 years old?

Damn, man. Definitely would not have had the skillzz to be even thinking about this stuff at your age. Keep hackin’, dude!

Crowd-sourcing a P2P video platform is a really freakin’ cool idea, but unfortunately probably wouldn’t work for us for a number of reasons. Happy to discuss more, at least to the extent that I can, but that’s where we stand.

However, I would love to be a sounding board for you if you have any questions about either the technology side or the project management / software engineering side. I’m super excited to see young people attacking cool, ambitious projects, and I’m eager to help however I can. You just let me know!

(Sorry for the slow response, btw. I’ve been traveling a lot lately.)


#8

Thanks to you too @Daniel I try :stuck_out_tongue: as for sharing ideas I don’t see why I shouldn’t have I love contributing to the community in any applicable way, also yes I am 14 ATM, and will be 15 in April. I’m more than interested in discussing this topic/subject with you be it over email, thread, or PM, or skype I don’t mind whichever you prefer.

I’d also love for you to review the tech and source to your ability’s limit. Right now I’m waiting on some replies from the creator of the software to work on the project further. I’d also be more than happy to hear as to why the platform wouldn’t work for you(obviously if it’s some top-secret RJ thing you don’t have to). I figured it’d be a nice addition to the site allowing the users to share their content through your site and thought I’d write up the proposal.

(Also sorry for my slow reply just the same I had to stay the week with some extended family and was only able to read your post yesterday)


#9

Hey man no sweat on the “slow response” :smile: This is forum’s all about community and fun. You have no obligation to respond quickly! Family is way more important.

If you want to keep discussing this topic, just keep it right here in the thread. I think it’d be cool to have this sort of thing out in the open so that others can chime in and learn from it.

While I’m happy to help out as much as I can, I don’t have a ton of free time, so I probably won’t be able to thoroughly go through all of your source. However, if there’s any specific stuff on which you’d like feedback, I can do my best to dig in.

As far as why it doesn’t fit RJ, there are two issues: the first is, as you suspect, a hand-wavy “no we can’t because super top-secret RJ thing.” The second, more obvious, issue has to do with the plethora of legal, logistical, and liability issues that arise with us running a tracker. I’m not saying we couldn’t find ways to minimize the risks, but we wouldn’t be able to do away with them altogether, nor do we have the time or resources to try right now.


#10

Well I’m kind of impressed you came to that conclusion cause I’ve been on BitTorrent Trackers and a lot of the users don’t know a thing about it :smile: But you don’t need to run the tracker or offer .torrent files. It’s all just streaming but don’t get me wrong I respect your reasons totally. The whole WebTorrent front is still really new and undiscovered so it’s difficult to explain even to a person who is educated in the original BitTorrent protocol. Not to say you aren’t more knowledgeable then me in this I’m not sure.

It’s not like the original makeup of the BitTorrent protocol, and makes more thorough use of the information hashes and DHT network eliminating the need for trackers. The risk though for you with copyright and legality lies solely in the level of responsibility of your users when it comes to uploading content.

And if you make the site/index/page whatever in the image on “Only Original Content Allowed” and have mods with a watchful eye then you can keep it clean. Once again not trying to push it, if it seems that way sorry, I’m just not sure else how to explain the whole situation/protocol/system/blahblahblah.

Also as for the whole you helping don’t sweat it man you obviously have a real job :smile: so I know I can’t be bothering you with all that. I’m also not the kind of person to ask for help even when he needs it so don’t sweat it I’ll be sure and do my best to figure it out. Only difficulty I’m going to have is I need to learn SQL and JavaScript two languages I have no background in. So I might ask for a good resource or example if you know of any here or there for a specific type of function or what-have-you.

(I’d love to do discuss this further with you but at the moment my uncle is having me do some encoding and audio editing and subtitle making so I need to get back to that for now.)


#11

Mkay I’m done with it 99.99% so I can discuss some more if you’re still free or wanted any more depth into what I was saying earlier or about the project or whatever it may be
@Daniel

EDIT the video not the whole video streaming project :smile: I’m still waiting to hear back from the creator on a few bits. As well as design and configure everything :neutral_face:


#12

Ahh JavaScript. It’s a beautiful, awful language. It appears very simple, but if you want to get into complicated or high-performance stuff, it gets nasty quick.

For JavaScript I highly recommend JavaScript: The Good Parts. It’s super short, and admittedly super dry, but it delves into most of the aspects of JavaScript that are tricky or idiosyncratic. For the record, I don’t agree with a lot of Crockford’s remedies, but he describes the problems well.

Depending on what you want to do in JS, you may need to learn about how the main JavaScript engines work. Definitely don’t worry about that at first, however. V8 (Chrome JS engine), for instance, has all kinds of rough edges that you run into once you start pushing things more. Change a line of code and suddenly your whole algorithm runs 1000x more slowly because now V8 can’t perform the same optimizations…awful stuff to debug.

SQL is straightforward enough that you’ll quickly and easily write something that works. You can probably pick the basics up anywhere for free, for instance at Khan Academy. Once you start doing more complicated stuff, getting something to work fast is far more complicated, and may require that you learn a fair amount about how databases like MySQL or Postgres work internally, things like relational algebra, query optimization, etc.


#13

IKnowRight?

Anyway though thanks for these sources right out front. . . now I don’t have an excuse to procrastinate. . hoo-rah.

Really though genuine kudos to you my friend you’re a trooper really :heart: :smile:

For the time being I’m waiting on a reply to figure out how customizable the player is going to be allowed to be. Since that’s pretty limiting I need to work on the CSS of the main layout now. As well as all the search functions which is either going to use web crawling software (notGoogleFYI) or a MySQL database. Once that’s done I can work on the forms/applications, copyright and boring paperwork type stuff. Then work out a possible comment system either using pure HTML/JS or implementing the iFrame tag in a discreet manner.

All in all once decisions are made and limits are set this won’t be a difficult process which is really encouraging personally heh :relieved: I may have more difficulty with the design than I let on though cause while the code won’t be so bad I’m so indecisive and bad with colors that initially it’s probably going to be a mess :smile:


#14

Yeah I looked that up and found out that that was a real book . . . :stuck_out_tongue: I know that should be a no duh but I don’t have money for that kind of thing if push comes to shove though I may need to tear a chapter out of it through less conventional internet means. But I am trying to not do that as much as possible so I’m relying on W3Schools a good bit and I have a few JavaScript books that are 20 years old ( ©1996 no joke) based on versions 1.0, 1.1, and JDK 1.0.2. Hopefully those will carry some of the essentials I’m going to need to get things done and that JavaScript isn’t like PHP and SQL and just upgrades to a point where old functions don’t work anymore and that this is more of a skeletal example :smile:

I also came across this book which I might take a peek at since it is a little bit newer JavaScript for Kids :neutral_face: .


#15

Totally understand if a $$$ book is out of the question, but OH GOD DON’T USE W3SCHOOLS!

If you want API reference / documentation, Mozilla’s documentation is WAAAAY better: https://developer.mozilla.org/en-US/

EDIT: It’s not that w3schools is wrong; it’s just crappy.


#16

lul okay that’s a new one W3Schools has been like the go to. I’m not really trying to learn the entirety of the language only the aspects that apply to this project. Since the project is on git I can read it all up and take notes on certain functions that are behaving differently and I usually find I decent explanation/definition of a function tag what have you on there.

That or stack overflow has some good results now and again(that and they’re like the first that come up in the metadata search engine ;P) I’ll take your word on it though cause I’m sure you’re a lot more experienced with this situation than I am obviously. For the most part though I can import a lot of the code from the original WebTorrent project but not all of it and when it comes to making changes I’m at a bit of a loss as to what functions function which and so on.

My goal though overall is just to at a bare minimum have a stream whose video container I can manage (in other words by default the video stream is as big as the resolution of the video, I obviously don’t want that) and customize in the slightest, and a Blob and .torrent URL. The rest will practically be cake cause I’ve done most of the rest. At the moment I’m going through the Git source of http://fastcast.nz and http://webtorrent.io trying to reverse engineer it :confused: I’m probably better off learning as much as I can about JS/jQuery first though :neutral_face: which I as a professional procrastinator am not looking forward to :smile: :broken_heart: .


#17

I’d learn JS first. Full stop. jQuery is a) a framework, and those change all the time, become obsolete, etc., and b) already losing favor, so by the time you have JS mastered it may not be what you choose to go with, especially if you want a full-featured web client (e.g., Angular, Ember, React, etc. might be better).


#18

Ok thanks for the save on that one man :smiley: and thanks again for keeping replying and participating in this you’re real sport man keep it up :heart:!


#19

I’m having a little trouble maybe you can lend a hand in this:

[quote]`

`[/quote] I want to be able to use a little bit of CSS on `file.` I know that I can use the `appendTo ` on it but once I append it to a tag (for example `#vidcont`) the with the HTML `
` and use some CSS (example `#vidcont{width:640px;height:360;}`) it doesn't work. I tried this and using `div` instead of the `id` but it doesn't want to cooperate.

#20

No problem, Edward. A couple things would be helpful for me to understand what’s going on:

  1. What type is var file? Where is it defined (i.e., source code)?
  2. Where are you putting your CSS? Are you adding it inline to the HTML page above? Linked style sheet? Inserted directly in JS?