Hacker Newsnew | past | comments | ask | show | jobs | submit | versusdotcom's commentslogin

We switched from SQL to Mongo on http://versus.com one year ago and are quite happy—we couldn't imagine to go back.

But I think it heavily depends on the specific use case what DB to use.


I agree, Mongo is easy and fast.

My problem with NoSQL is that you MUST know there won't be changing requirements:

Later you might need to do the equivalent of joining 3-4 tables. Then you have trouble... But I'm a coward that look both left and right before crossing a street.


"My problem with NoSQL is that you MUST know there won't be changing requirements"

I thought the main advantage of document-oriented schema-less databases (I haven't used MongoDB but I have used CouchDB) was that they are supposed to give more flexibility in the early stages of projects.

NB Personally, I've moved to PostgreSQL and its JSON storage as then you get most of the benefits of both worlds.


> I thought the main advantage of document-oriented schema-less databases (I haven't used MongoDB but I have used CouchDB) was that they are supposed to give more flexibility in the early stages of projects.

Depends on your requirements, I guess. If you want to maintain even eventual consistency, any update that crosses document boundaries has to be thought about very seriously in order to avoid breakages in the face of concurrent modifications. So, ideally you design your documents such that any one logical operation only has to hit one document.

This is pretty easy for very simple tasks, but can get rapidly more difficult in the face of more complex or changing requirements. I suspect a substantial proportion of Mongo or Couch based applications simply ignore this problem, and are lucky that they don't have enough concurrent activity that stuff breaks frequently.

Using Postgres/JSON neatly avoids this problem because you get ACID back, and you can do cross-document updates all you like.


>>[NoSQL] are supposed to give more flexibility in the early stages of projects

I agree with what you wrote.

But my point is that _changing_ requirements can screw you, if you find that you _later_ need relational capabilities.


Well, that's why I gave up on CouchDB once I found that I was actually much happier with the hybrid approach of using JSON documents inside a relational structure.


MongoDB is actually well suited to changing requirements.

Because it is schema less and document based you can trivially add new rich schemas to existing documents. And in the case of doing joins you can always do it in application layer or using DBRef or MapReduce. There are valid options that are still quite performant.


"Because it is schema less ... you can trivially add new rich schemas" made me lol. Maybe this makes sense to Mongo users, but I have no idea what you mean here and the language you use to describe this feature is, well, contradictory to say the least.


it means a typo in release-15 auto-creates a whole new database without anyone noticing and you sit around and wonder where all of the data went yesterday.


Oh man, the memories.

Just today I enjoyed explaining to a developer why his insert into a timestamp failed because of formatting, with a nice english error message. Thanks Postgres!

Whereas the same thing last year with Mongo just inserted the wrong date into a misspelled key and we didn't figure it out for days.


Actually it does seem contradictory reading back on it. I meant it doesn't have a fixed, enforced schema like SQL databases and it is easy to add new data structures e.g. lists, maps, sets.


Totally agree and also recommend to look at React. While Angular is just way too much of everything React is pretty much thought-out:

Here a quick comparison of both: http://versus.com/en/angularjs-vs-react

Here a pretty good video of React's founder pointing on some weakness of Angular: http://www.youtube.com/watch?v=x7cQ3mrcKaY


NODE.JS positions in Berlin/Germany—all full-time and permanent

Top 5 reasons why you should move to Berlin, now:

1. Lowest livings costs with highest quality of living. Stay in gorgeous, perfectly renovated apartments in pre-WWII residential buildings with high ceilings, right in the middle of the center and pay a fraction of costs of any other capital (even cheaper than any Eastern European capital). No need for a car—Berlin has one of the densest subway nets and wide streets make biking fun. In addition, Germany has an amazing social health care system including health, unemployment and pension (when working as an employee).

2. A vibrant and fast growing ecosystem of smart people. A vast number of new software talents, founders, software companies and VCs are moving to Berlin, every day (Twitter, Google, Soundcloud, Early Bird and many more).

3. People here are open-minded, outgoing, mix well and international—no need to learn German, everyone speaks English! Making new friends is a matter of days. Visit tons of networking and startup events, every week.

4. Easy work permissions—Europeans do not need any and can work from day one and the rest applies for the hassle-free Blue Card.

5. Berlin's night life is unmatched, huge and changing every day (plus ridiculously cheap). Berlin has got some of the most dazzling, naughty, and original clubs on the face of the Earth. Berlin is calling and getting the new tech hub of Europe. If you are passionate about building great software, we’d love to talk with you. If you don't live in Berlin yet, we could help to fix that.

All job offers => http://urge.io/jobs

Mail addresse => career <at> versus <dot> com

NEW: EDITOR IN CHIEF position open for a new tech related online publication


We run Versus and are just working on automated comparisons of JS MV* frameworks—check some examples:

Angular vs Backbone http://versus.com/en/angularjs-vs-backbone-js

Angular vs Ember http://versus.com/en/angularjs-vs-ember-js

React vs Backbone http://versus.com/en/react-vs-backbone-js

React vs Angular http://versus.com/en/react-vs-angularjs

Knockout vs Angular http://versus.com/en/knockout-js-vs-angularjs

Or compare any two frameworks by using the search on Versus.


This is a good idea, and hopefully will become an alternative to Stack Overflows "closed as not constructive" questions.


How'd you get that domain name?


NODE.JS, ANDROID and PRODUCT MANAGEMENT positions in Berlin/Germany—all full-time and permanent

Top 5 reasons why you should move to Berlin, now:

1. Lowest livings costs with highest quality of living. Stay in gorgeous, perfectly renovated apartments in pre-WWII residential buildings with high ceilings, right in the middle of the center and pay a fraction of costs of any other capital (even cheaper than any Eastern European capital). No need for a car—Berlin has one of the densest subway nets and wide streets make biking fun. In addition, Germany has an amazing social health care system including health, unemployment and pension (when working as an employee).

2. A vibrant and fast growing ecosystem of smart people. A vast number of new software talents, founders, software companies and VCs are moving to Berlin, every day (Twitter, Google, Soundcloud, Early Bird and many more).

3. People here are open-minded, outgoing, mix well and international—no need to learn German, everyone speaks English! Making new friends is a matter of days. Visit tons of networking and startup events, every week.

4. Easy work permissions—Europeans do not need any and can work from day one and the rest applies for the hassle-free Blue Card.

5. Berlin's night life is unmatched, huge and changing every day (plus ridiculously cheap). Berlin has got some of the most dazzling, naughty, and original clubs on the face of the Earth.

Berlin is calling and getting the new tech hub of Europe. If you are passionate about building great software, we’d love to talk with you. If you don't live in Berlin yet, we could help to fix that.

All job offers => http://urge.io/jobs

Mail addresse => career <at> versus <dot> com


Versus - Berlin/Germany - Node.js

Top 5 reasons why you should move to Berlin, now:

1. Lowest livings costs with highest quality of living. Stay in gorgeous, perfectly renovated apartments in pre-WWII residential buildings with high ceilings, right in the middle of the center and pay a fraction of costs of any other capital (even cheaper than any Eastern European capital). No need for a car—Berlin has one of the densest subway nets and wide streets make biking fun. In addition, Germany has an amazing social health care system including health, unemployment and pension (when working as an employee).

2. A vibrant and fast growing ecosystem of smart people. A vast number of new software talents, founders, software companies and VCs are moving to Berlin, every day (Twitter, Google, Soundcloud, Early Bird and many more).

3. People here are open-minded, outgoing, mix well and international—no need to learn German, everyone speaks English! Making new friends is a matter of days. Visit tons of networking and startup events, every week.

4. Easy work permissions—Europeans do not need any and can work from day one and the rest applies for the hassle-free Blue Card.

5. Berlin's night life is unmatched, huge and changing every day (plus ridiculously cheap). Berlin has got some of the most dazzling, naughty, and original clubs on the face of the Earth.

Berlin is calling and getting the new tech hub of Europe. If you are passionate about building great software, we’d love to talk with you. If you don't live in Berlin yet, we could help to fix that.

Infos on the Node position => http://urge.io/jobs#Node.js%20Growth%20Hacker%20for%20High%2...

All job offers => http://urge.io/jobs

Mail addresse => career <at> urge <dot> io


> no need to learn German, everyone speaks English!

That's only in the startup scene, really. Most tech companies' primary language is still German, and the English proficiency of people you need to interact with in day-to-day things (post office, grocery shopping, etc.) widely varies. Some people (e.g. at the unemployment agency) even outright refuse speaking English.


I agree. If you want to integrate then prepare to learn to speak German, otherwise you'll only have expat hipster friends.

Try the VHS for language learning. It is cheap and worth every cent: http://www.berlin.de/vhs/


Nice chart and very similar to our recruitement—since spring we've been hiring Node/JS devs only.


Seeing as you are in Berlin, would you mind sharing how many cool tech companies in Germany require you to speak German? Yours doesn't I know that.


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

Search: