Live data from Hacker News

Show HN: Snapmeet, Remote meetings with realtime notes and video, built with React

snapmeet.io

1–10 of 13 posts

Re: Show HN: Snapmeet, Remote meetings with realtime notes and video, built with React

#3
post #2

Co-founder here: This is our first node/react/flux app, coming from a rails/angular stack. Happy to discuss our experience and answer any questions!

The Share button is over the meeting title on firefox, pretty cool otherwise!

How would you compare react+flux and angular and how are you handling testing?

Re: Show HN: Snapmeet, Remote meetings with realtime notes and video, built with React

#4
post #3
post #2

Co-founder here: This is our first node/react/flux app, coming from a rails/angular stack. Happy to discuss our experience and answer any questions!

The Share button is over the meeting title on firefox, pretty cool otherwise! How would you compare react+flux and angular and how are you handling testing?

Thanks! Also, appreciate the bug report.

Re React v Angular:

Before Angular I was coming from knockoutjs, and most of Angular made sense to me pretty immediately out of the box. It felt very quick to get going.

The community/tooling around it was also pretty great. For example, angular-material is miles ahead of material-ui (the most popular react material UI framework). I've definitely missed having access to so many great off the shelf libraries.

The downsides were mainly around architecture; we ended up littering state all over the place as a result of two-way bindings, and it always felt a little like we were missing an important abstraction. Even on an MVP, it started to feel like we were nervous about touching components because we weren't sure what would break elsewhere in the system.

Flux stores/dispatcher is that abstraction we were missing. We've made an effort to follow the model closely with all of our DB data and it pays off wonderfully. The code is easier to reason about and I have more confidence about which changes could produce downstream effects.

The downside is following the pattern tightly requires a whole lot of boiler plate. For simple things like flipping a bit in a component in response to a user action, angular was incredibly easy. Doing it following the Flux pattern is much less so (dom element calls a callback in the component which calls an action creator which calls the dispatcher which is listened to buy a store which is observed by the component..). In Angular you touch two files with one line of code, with React the same change might involve changes across five or six files with a lot more boilerplate.

I do think that extra work pays for itself in future maintenance costs, but for a scrappy start up trying to move fast, it can at times feel painful.

Which brings me to testing; The short answer is: we don't. I think testing is important for a product with an established user base. I think it's less important when you're trying to get an MVP out there to see what people think. We know that what we showed today will need to change, we're just not sure how yet. Assuming that pretty much everything in the product will churn in the next six months, setting up a robust test suite felt too expensive for the value it returns. As the product consolidates we'll fill in tests, but not while the feature churn is as high as it is.

Re: Show HN: Snapmeet, Remote meetings with realtime notes and video, built with React

#5
post #4
post #3

Earlier quoted context omitted.

The Share button is over the meeting title on firefox, pretty cool otherwise! How would you compare react+flux and angular and how are you handling testing?

Thanks! Also, appreciate the bug report. Re React v Angular: Before Angular I was coming from knockoutjs, and most of Angular made sense to me pretty immediately out of the box. It felt very quick to get going. The community/tooling around it was also pretty great. For example, angular-material is miles ahead of material-ui (the most popular react material UI framework). I've definitely missed having access to so man…

we (your users) are your test suite :)

Nicely done- looking forward to the next iteration

Re: Show HN: Snapmeet, Remote meetings with realtime notes and video, built with React

#6
post #2

Co-founder here: This is our first node/react/flux app, coming from a rails/angular stack. Happy to discuss our experience and answer any questions!

Really a nice idea. In your opinion React delivers the promise to get out all the business logic of the UI? And how much time to develop the site? Any tutorials or resources recommended?

Re: Show HN: Snapmeet, Remote meetings with realtime notes and video, built with React

#7
post #5
post #4

Earlier quoted context omitted.

Thanks! Also, appreciate the bug report. Re React v Angular: Before Angular I was coming from knockoutjs, and most of Angular made sense to me pretty immediately out of the box. It felt very quick to get going. The community/tooling around it was also pretty great. For example, angular-material is miles ahead of material-ui (the most popular react material UI framework). I've definitely missed having access to so man…

we (your users) are your test suite :) Nicely done- looking forward to the next iteration

Thanks! Please share any feedback with us at feedback@snapmeet.io too (other co-founder here)

Re: Show HN: Snapmeet, Remote meetings with realtime notes and video, built with React

#8
post #2

Co-founder here: This is our first node/react/flux app, coming from a rails/angular stack. Happy to discuss our experience and answer any questions!

Really a nice idea. In your opinion React delivers the promise to get out all the business logic of the UI? And how much time to develop the site? Any tutorials or resources recommended?

I think it does, although you're always free to hack it :P I've definitely thrown some ternary operators in my render methods for simple conditionals in order to avoid heavier solutions.

Re: time; The team is me and my cofounder. I'm full time dev, my co-founder splits his time between ops, dev, and business stuff. First commit was March 18, but we were splitting time with our previous product attempt for about a month of that. So maybe call it 3 months of full time dev work? That included quite a bit of learning beyond React; the whole stack is new to us (Node/Express, Neo4j, Socket.io, ShareJS, SimpleWebRTC).

For coming up to speed on React, I definitely spent a lot of time with the Facebook documentation, which is decent. For flux I hit pretty much every resource linked on the flux github repo, but I think the best overview I came across was this video by Jing and Bill from FB: https://www.youtube.com/watch?v=i__969noyAM

This thread (which they both participate in) is also helpful for thinking about your server communication. : https://groups.google.com/forum/#!topic/reactjs/QQ-0dJ4eYUc I feel like that's a topic not well covered elsewhere in docs

Also, keep an eye out on Stack Overflow. It looks like Bill spent a lot of time answering flux questions. You might find it worthwhile to read through his answers to flux things: http://stackoverflow.com/users/395379/fisherwebdev

Hope that helps!

Re: Show HN: Snapmeet, Remote meetings with realtime notes and video, built with React

#10

I've tried this out in a meeting with a couple of other people. It worked pretty well! I work remotely and this is definitely shaping into something really great.

Thanks! What's missing from your current toolset, and what would you like to see here?
Post reply on HN