Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Codassium - WebRTC-based video chat and code editor for interviews (codassium.com)
88 points by karterk on April 4, 2013 | hide | past | favorite | 59 comments



This is very awesome (I was talking with someone the day before last about how something like this should exist).

On a very different note: why is it that the default "tab" in so many of these online editors is just two spaces? It seems to be a thing in many online code based editors, and I don't know why. Is that a common convention for the languages that the authors of these in-browser-editors use? What's the deal? And why can't I change it to four spaces?


Two space indentation for me. That's pretty much the default for ruby code AFAIK.

I'm somewhat ambivalent about it though. On the one hand I find it easier to read (less scanning back and forth across the page) but on the other it is forgiving to deeply nested code.


Well, I'll be that guy then: Why are people not using tabs instead of spaces?

Really: I couldn't care less about how much spaces my team mate is using for a tab. I just know: Indent by tab, and everyone can set their settings on their own and it looks always perfectly indented.


Relevant: http://www.jwz.org/doc/tabs-vs-spaces.html

tl;dr; Spaces are the correct technical choice due to interop issues with TAB.


Interop issues which, in real life, never actually surface as issues for anybody.

I'm personally in the camp that feels that spaces are logically inferior; A tab uses one character to represent some atomic idea that you intend to declare (an indent level). Replicating this intent with sequences of repeated spaces is on par with centering text on a web page by using

         Hello World!
instead of setting the text-align CSS style. (Just as that method prevents the browser from centering the text correctly according to the user's chosen viewport size, so using spaces for indentation prevents an editor from letting a user read code the way they would prefer to.)

Of course, if the project/platform you're working in has an established style guide or convention in place, go with that :)


Exactly that is what I think as well.


I think a lot of people use two spaces in diff communities. I prefer two, but I'm not sure if it's because I'm in these communities or what.


I'm a four-space tab person, myself. Two spaces looks like a typo rather than an indent, to me.

At one time there was a movement afoot for some sort flexible tabbing (using actual tabs) but it seems to have died out.


wow, you guys just don't have a clue ;P

It's 3 space tabbing or go home.

(I am actually serious, about the space part, not the clue part. 2 spaces looks like a typo and 4 wastes space once you indent a couple of times. Got to be 3, although if I had to choose, 2 or 4, then definitely 4.)


in languages that enforce spacing 4 makes sense, but otherwise why bother with it?

larger spacing discourages pyramid code (like in python which is stylistically functional), but sometimes (eg: HTML) this is unavoidable, and 4 spaces are a nightmare


Myself and some friends built a very similar tool during the LAUNCH hackathon. It's a shared code editor with some github integration for saving your work, and webrtc handling the video chat. Check it out, we'd love some feedback. https://seshcode.com


I am somehow against people expecting me to write syntactical code at job interviews. I prefer to write pseudo code, explain my thought process. Being a guy who deals with various languages throughout the day makes it hard to code everything right when someone looking over my shoulder as I tend to google now and then to get right functions/methods of achieving something. Thats just me I guess.


You're not the only one. I've experienced many types of interviewing: skyping, verbally coding, online code editing, in-person whiteboard coding, homework/coding tests, programming language trivia, math brain teasers, etc. The funny thing is that even when getting all of the questions "correct," they haven't ever gotten me closer to a job offer than more traditional methods.

You can tell within the first 10 seconds of your first interaction with a company if they are actually interested in hiring you, or just window shopping. The conversation starts with the HR person/hiring manager talking up their company, asking about your experience and then essentially asking you how soon you can start.

In other words, if someone doesn't already have a good idea that they want to hire you based on your resume and experience, no amount of code circus is going to move the chains forward.


I work with a lot of languages too. And, this has been something which I have thought a bit about. There are jobs where polyglot skills play a big part (e.g. software consultancy), but there are also jobs which require someone to just go out and crank code. In those cases, I don't think it's wrong for someone to expect syntactical correctness.


Either consider treating your interviewer as "Google".

Or just write down the prototype of the function you need, tell the interviewer what you expect it to do, offer to code it up later if necessary, and use it


This look fantastic. One suggestion I would make is to have a chatbox incase both parties do not have a webcam.


Even if you have a webcam a chat is still useful to share links, etc that aren't code. I'm betting a lot of people would use comments in code as an ad-hoc chat.


Totally agree with you. Wanted to get this out of the door - otherwise I tend to keep adding "one more feature".


You've got something really great so far. I'd start charging immediately :)


Thank you! Mind if I emailed you to ask you some questions on that? :)


You are more than welcome to (email is my twitter handle in my profile at gmail). However, you should ask them here so everyone can benefit!


Seshcode has chat https://seshcode.com


Looks decent.

Would not use it out of principle that it forces social login.


First Show HN :) Any feedback greatly appreciated :)


Really enjoying the concept of this! A few friends of mine and I do JavaScript lessons over Google Hangout right now and this would be a much preferred alternative, although it doesn't seem to allow more than two people's cams at once.

I realize this is for interviews and there'd be no reason to have this unless you were potentially testing multiple candidates at once, but it would also be useful to us if we each had our own code environments that didn't interfere with the master source, but could be public or private to the others in the room. Just an idea. :)


I agree with you. A private editor or the ability to have tabs will be useful. The learning part did cross my mind, but I wanted to focus on a specific use-case instead of diluting the message by pitching it as a general purpose tool.

although it doesn't seem to allow more than two people's cams at once.

More than 2 people works fine for me. Is anyone else facing this issue?


Interesting, I'm not sure what my deal is, maybe it's a firewall here at work. I was able to see the live editing going on in the box but the only cam preview was mine.


It might also be because of the pounding that the server is taking currently, though it seems to be holding up fine. :) If you get a chance, please try some time later and let me know if it works then. Thanks.


I agree this would be awesome. Google hangouts has a collaborative editor app but, getting everyone set up is a hassle. This app is much easier.


Cool stuff!

One suggestion: if the code wasn't changed yet, switching languages should adjust the syntax in the initial example. So the default `var foo = 'bar';` in JavaScript should become `foo = 'bar'` in Python, etc.


Thanks, will add that to my todo list!


Is there a way to replace chat functionality with, say, images or documents? For instance, a document that the interviewer could show the candidate instead of having to send/email that document over.


Ideally, screen sharing will be nice, but we will have to wait for the proposed spec to evolve for that.


Chrome asks for permission to access my camera and my mic. I allow. No mic or camera. "Loading..."

Chrome 25.0.1364.172 Macbook Pro [closed] with external 27" Thunderbolt ACD.

Hope it helps, I'm excited to try it.


Do you see any errors in the developer console? I have been testing this for a while and it did work on Chrome 25. Chrome 26 was released only last week.

Sometimes, I am not able to distinguish between a missing mic/webcam and genuine webrtc connection issues so either could be a problem.


Upgraded Chrome. Still no dice. Guessing it has to do with the external display and the closed laptop. This may help: http://cl.ly/O3w9


No errors in console. Might be because my Chrom refuses to update to 26 (says can't contact update server).


I think the WebRTC stuff was only fully implemented in Chrome 26. Didn't you get the update for it on Mac?


I upgraded my Firefox to 23.0a1 but still it says 'Video chat is disabled because your browser does not support WebRTC'. Am I missing anything?


To be frank, I have not tested it extensively on Firefox. Will do that over the course of next week.


If you could combine this with runnable or something, in order to run tests, that would be great


It occurs to me that this could actually be a very handy way to get help from more competent friends as I'm learning to code. I've had offers to review my code, but being able to do it live would be great. Great tool!


Love the idea but just tried it with a buddy and we could share text but neither one of us saw the other one. We could however see ourselves.


There might still be some quirks/bugs due to stuff like firewalls and anti-virus software. I'm hoping that this becomes more polished in the future versions of Chrome and Firefox.


What was used to build this? How are the languages being handled? And open source frameworks. I'm interested in the real time coding.


This could also be a cool way to remote pair, no?


Nice work Codassium. I helped with Seshcode. It's great to see other people building awesome coder tools too.


Thanks :)


Anybody know the correct about:config tweaks required to try this in Firefox 20? Or is FF 21 required?


FF 21 update hit me and it works now.


Very very cool. First feature request: Support for Objective-C syntax highlighting :)


Good job. WebRTC ftw. Anyone using it for recruiting?


Any chance of PHP syntax highlighting being added?


Noted. Will add it, thanks.


+1


so is anyone going to attempt an in-browser skype-like clone with webrtc? i might do it if no one else does


Nice!


awesome!


awesome




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: