63 karma · joined May 30, 2010
convergence.io convergencelabs.com
Essentially, they are doing OT on the DOM.
The data model could easily be defined in Convergence. Implementation-wise, the primary limitation would be that at the moment we only offer a javascript/typescript client. I haven't explored the VSCode base but I know it was written in TS and provided as a "native app". We do have an example of Convergence running in node.js (NWJS).
One of our value propositions is a unified backend for dealing with any JSON data (and eventually beyond), avoiding binding server-side code to a particular choice of UI component.
We're working on both offline mode and a generic rich-text data model with support for the major editors.
If anyone's interested, I'd happily do some Q and A here.
Convergence Labs is the creator of Convergence, the world's first API designed from the ground up for collaborative co-editing. We do consulting work as well and recently landed an extremely interesting and ambitious project that is a perfect fit for our product. You would be our first hire and work directly with the founders.
This would be an excellent position for a smart and ambitious FE developer with a couple years of React experience. You'd be working directly with three industry veterans on a potentially transformative collaborative consumer-facing application. We are small and flexible, so just about everything is negotiable: 1099/W2, rate/salary, working from home, hours, equity, whatever.
Further information and contact information here: https://docs.google.com/document/d/1xcvi1yxLOml66TrCPLYHCCSo...
Even as the author, I think web-based IDEs have pretty limited utility, but it is a great showcase for the power of our API. We (my co-founder and I) built this in about 10 days.
This article had some visibility on HN a couple weeks ago, perhaps it is what you are looking for: http://digitalfreepen.com/2017/10/06/simple-real-time-collab...
The fact that that article needs 10 plus pages to describe one of the simplest use cases belies the unfortunate underlying truth: OT (and realtime co-editing) is intractably difficult for all but the most constrained data models. Which is a pity because it is undeniably cool, and why we built Convergence (https://convergencelabs.com) -- general-purpose realtime collaboration.
[1] https://convergencelabs.com/blog/2017/09/what-makes-for-a-gr...
For those wanting real-time collaboration functionality in their apps but don't have the intellectual curiosity (or time!) to learn the ins and outs, we [1] built a general-purpose API for folks to add real-time collaboration to their web apps. Think Firebase but designed from the ground up for simultaneous editing and with additional first-class support for common UX needs such as shared cursors and selections. We agree that the web is moving in this direction and are excited to see what gets built!
[1]convergencelabs.com
Rewriting your web app in AngularJS? Get expert help. I'll lay out your project architecture, deliver a proof of concept, and train your developers on "the Angular way."
http://boxelderweb.com/angular alec@boxelderweb.com
For your typical client engagement, yes, you won't want to post prices. Unless your business is well-defined enough to be able to target specific types of clients, each with its own landing page and predictable project scope.
I'm a full-stack web developer specializing in Django/Python, Ruby on Rails, and JEE back-ends. I've also done a handful of apps for iOS and Android. You could say I'm a generalist.
My clients can attest to my fairness and lack of ego, which could be a welcome change from a lot of freelancers these days.
Portfolio here: http://boxelderweb.com/portfolio
Contact alec @ the domain name above.
In my experience, I charge more (than I made when salaried), but only bill the 4-7 hours a day really, actually working. I'm much more productive, work less hours, and make more money doing it.
Specialties are certainly a lucrative way to go, but not necessarily essential. An all-rounder is more likely to have a long-term relationship with a client (depending on the industry of course).