Developing a real time collaborative drawing system [closed] - javascript

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I am interested in making a realtime collaborative drawing system similar to http://flockdraw.com/ . However I would like to only use open source tools (flockdraw uses flash and also limits the number of users) and also I will host it myself.
I have been considering writing the whole thing in Java. However I realize I am not up to date with recent advances in programming languages/libraries. What would be a good programming language/library combination to do this task?
Update. This question/answer looks very relevant.

See:
Realtime HTML5 Canvas Drawing with WebSockets, Node.JS & Socket.io - all open source
draw similar technologies to the above
node.js drawing game tutorial
The basic principles for this is generally pretty easy. Just communicate the shape that has been drawn to the other users - as you suggest. With that in mind there are a number of open source realtime web technologies that you could use.

I've seen apps like that using HTML5.
Take a look at this app. I think it can help you get started.
This kind of apps usually take advantage of HTML5 Canvas and probably HTML5 WebSockets. There are lots of libraries and tutorials out there.

Related

Can you help me with framework choice? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm thinking about developing an app which will make a strong use of geolocation (mongodb will be my choice), and strong upload of photos (and viewing too).
I was just wondering if you could help me with framework election. I've been using node.js for months and I'm very comfortable with it, but because of its one-process nature, will it be bad for locking when uploading big photos?
The other solution I'm working on is rails.
Which one will you choose? Any other ?
Thanks
With Streaming you can support more then one client during a upload, since the upload will be broken into different parts. I sure expressjs has some good streaming examples.
... but because of its one-process nature, will it be bad for locking when uploading big photos?
Take a look at the cluster module, this should help with leveraging more cores. In fact one of the node.js clients on the front page are these guys: Transloadit who focus on handling images.
I'm thinking about developing an app which will make a strong use of geolocation (mongodb will be my choice)...
I've done a lot of work with MongoDB and I recommend reading up on the limitations of MongoDB's geo-location tools. The product does provide some functionality, but it does not match the features of Postgres. You will want to ensure that MongoDB covers all of the features you require before beginning.

Is there something similar to RealBasic or LiveCode, but that uses Javascript/HTML as a language? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I'm a programming "enthusiast", not a pro, and I'm looking for an easy graphical programming environment (for desktop, on the Mac and iOS) similar to RealBasic or RunRev Livecode.
However, because my available time is limited, I'd rather spend it into something that uses a more ubiquitous language like Javascript/Html5 (so I can transfer this knowledge into other areas like web programming) rather than an idiosyncratic language like the one used by Livecode or RealBasic (which cannot be used outside of that specific programming environment).
I've looked into Appcelerator Titanium (which uses Javascript/HTML/CSS), but it doesn't seem to have an easy GUI development interface.
Any suggestions ?
Thanks.
Wakanda is likely the closest I've seen as well.
My experience on a Mac is that it isn't terribly stable. Not sure if that is just my env or if it's because it's still relatively new. I like, and am very impressed with what they are doing, but just not sure I can trust it yet for production level stuff.
Realsoftware has an awful lot of perks. I'm still exploring it but looks like it maybe what I'll use. It would be an easy decision if it was JS/HTML5! It's all compiled and server side tho - as I understand it.
EDIT:
Have a good look at Wakanda's NoSQL data capabilities. They are nothing short of amazing and very well thought out. Four types, storage, calculated, relational and alias. There's a good overview YouTube vid at https://vimeo.com/31837379
Have a look to the new Javascript Stack : Wakanda

Why HTML5 focus so much on Javascript? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I am learning HTML5. I see almost everything is linked to JS. Why is it so much JS focused than HTML/XHTML?
It's not per se. Javascript is just a very common thing in quality UI's these days. Designers and developers demand interaction on their interfaces that can in many cases only be accomplished via client-side interaction, which is what javascript gives you. Because HTML 5 is cutting edge, it's logical that quality UI guys with expertise in javascript would be flexing their muscle.
HTML5 is responding to many things such as video and tweening that used to require plugins like Flash and Javascript to accomplish. This will allow us to provide these "advanced" features more natively, improving usablity. You'll already see this in examples like YouTube's html5 video delivery, which is compatible with mobile browsers that don't support Flash.
Here's my quick short answer.
Javascript is handled client side and can enable asynchronous requests. This makes pages much faster and allows for animations and content changes without reloads.
My take on this: HTML5 will try to standardize the concept of Web applications. You can pretty much think of HTML5 as the mark-up that defines the user interface while Javascript is the language that allows you to do the application logic (ie. Ajax, User control callbacks).
If you've ever used the Android SDK, the iOS SDK, or Microsoft's WPF, you'll notice that the user interface is defined through XML constructs like input, buttons, etc. While you used, Java, Objective C, or C# to do all the programming logic. Now, HTML 5 and Javascript are being advanced towards the same paradigm.

what technologies to use for Collaborative Web App Networking [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I'm wanting to create a web app where people can collaborate with a specified image.
For example, if you take a look at this basketball app
https://market.android.com/details?id=com.canica.apps.basket&hl=en
I'm envisioning something similar where people can log in, draw plays etc,
I want updates to happen in real time, so that other people logged in as a team see what others are 'drawing'.
I was thinking of extending a html canvas drawing app and adding network communication, but I'm not sure where to start looking.
My question is - What technologies should I be looking at for pushing the data out to the users?
Does anyone have suggestions?
You've almost answered your own question, especially with your use of HTML5 and JavaScript tag.
You should take a look at WebSockets (what, what and why).
WebSockets allow for bi-directional communication between any client and server. Originally only available in web browsers via JavaScript but there are now a number of WebSocket client libraries available which mean that whilst you can develop with browsers in mind there's no reason why you client can't be any device.
A quick search came up with this example. There is also this iPad/iPhone application.
There also appears to be a video tutorial that uses node.js and socket.io here:
http://wesbos.com/html5-canvas-websockets-nodejs/
If you don't want to worry about installing and maintaining your own realtime infrastructure that also deals with fallback techniques for older web browsers then you might consider using a hosted realtime web service.
XMPP might be something to look into. A great book about interacting with XMPP servers from the browser is Professional XMPP Programming With JavaScript and jQuery.
It's a pretty soft introduction and I think there might even be a chapter in there that covers implementing something similar.

What techniques are available to do P2P in the browser? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
What options does a web developer currently have for implementing client-side peer-to-peer systems in the web browser? Some hypothetical examples might be a file-sharing service that bypasses the web-server after clients find eachother, or a chat service.
What I know about:
the site chatroulette uses
some flash technology as discussed
here.
And I am also aware of Opera
Unity which extends the browser
model to encompass both a client and
a server, as well as this firefox plugin which works similarly
I also just came across this blog
post related to the Joose js
framework, but am not yet sure if it
is relevant here.
Support for this kind of thing seems like it might or might not be supported by websockets in HTML5 and has been discussed here and here and here.
I recommend you to take a look at RTMFP protocol in Adobe Flash Player - it seems you can build something close to what you're asking with it.
I was looking for the same thing, this library looks apealing:
rtmfp-api/

Categories