Couchbase Most Dreaded Database, why?

#1

Why is Couchbase ranked the most dreaded database on StackOverflow Survey 2019?

Probably because of lack of balance between the community edition and the enterprise edition.
How can Couchbase company discard updates for community edition for several months (like version 6.0.1)?
And how can it stripe the community edition of important features that are present in enterprise edition?

I think this unbalancedness is a huge disadvantages of Couchbase and one of the main reasons of being ranked as the most dreaded database.

This is my opinion.

1 Like
#2

Thank you for your inquiry! And thank you for your recent participation on the Couchbase forums.

We actually are thrilled to have made the list of databases being considered on the StackOverflow survey. There are many databases that we not even considered.

As you can imagine, we have had a fair bit of internal discussion on these results, and the underlying premise and logic beneath the ‘dreaded’ and ‘loved’ metrics. I think you will see some more from us in the near future on them.

You’ve asked some fair questions about CE, and there are those who agree with your observation regarding what you described as “unbalancedness”.

Perhaps you can answer a couple of additional questions:

  • Which features do you feel we should prioritize for CE?
  • As a developer, how would you like to experience a robust data system like Couchbase for the first time?

Thank you!

Benjamin

1 Like
#3

Which features do you feel we should prioritize for CE?

These features:
1- Always latest update for CE. Both CE and EE have latest update at the same time.
1.5- Patches and maintenance updates
2- peer to peer sync for Couchbase Lite CE

  • As a developer, how would you like to experience a robust data system like Couchbase for the first time?

I’d like to easily find easy and friendly and long and informative docs and tutorials about topics like adding sync for mobile apps for a programmer like me, who has very little knowledge about server and establishing connections.
I also would like to get quick responses from forum.couchbase.com

#4

Have you had an opportunity to take a look at the tutorials here? I’m interested in learning about your thoughts on the existing docs/tutorials, particularly on the mobile side. If there are ways you think we can improve, or other types of examples you’d like to see please let me know!

#5

@robert.hedgpeth Ways to improve? Treat the reader as a baby and the tutorial babysits the reader.
Or treating the reader as unaware of what is technical database and ports and client/server processes and details, and terms used in the tutorial or docs.

This is my opinion and suggestion only

#6

@vanilla Would you happen to have an example of a tutorial you’ve had trouble working with? Would it be possible for you to highlight some areas you’ve had trouble understanding so that we can add more/better details to? I’m very eager to understand some specific changes you’d like to see. Then that will give us a better idea of your expectations, and a starting point for improving the tutorials and documentation.

#7

@robert.hedgpeth okay
I was searching for a tutorial about adding replication with sync gateway for apps that use Couchbase Lite.
I only got tutorials that used Sync Gateway in memory walrus: database, no tutorials about persistent database with Couchbase Server.
This one for example, https://docs.couchbase.com/tutorials/todo-app/introduction.html
And there you can only see “Swift” implementation for this project, no Android or Xamarin.

But I might have exaggerated the quality of the docs and tutorials, but anyway, in that example, I see no navigation or linking to the implementations of that TODO app sample easily.
I might be able to google and try to find it, but it would be easier if it where linked in the tutorial.

#8

Changing the underlying database for Sync Gateway won’t affect how things work in general. The only thing you need to worry about in that scenario is setting Sync Gateway’s config file to use Couchbase Server which is described in the getting started guide here: https://docs.couchbase.com/sync-gateway/2.5/getting-started.html#start-sync-gateway

#9

@bbrks Mine is same as the one in the tutorial, I just changed the name of the bucket and user and password and added “num_index_replicas”:0,

But still nothing works
Is it okay if I just write the replication code only once in the singleton of my app, like this one:

const Couchbase = require(‘nativescript-couchbase-plugin’).Couchbase;

const stock = new Couchbase(‘stock-database’);

const push = stock.createPushReplication(
‘ws://localhost:4984/stock-database’
);
push.setUserNameAndPassword(“sync_gateway”,“123456”);
const pull = stock.createPullReplication(
‘ws://localhost:4984/stock-database’
);
pull.setSessionId(“SomeId”);
pull.setSessionIdAndCookieName(“SomeId”,“SomeCookieName”);

push.setContinuous(true);
pull.setContinuous(true);
push.start();
pull.start();

module.exports.stock = stock;

Is my link to the Sync Gateway ‘ws://localhost:4984/stock-database’
true?

I think this is nearly a month I am trying to enable and get the replication to work

#10

@robert.hedgpeth Deep down in my heart, I have love for Couchbase, it is advanced, nice, cool, and provides many features that other don’t.
But I want best for Couchbase, to make itself popular and growing, I suggest putting profits aside and putting community spirit in the core of Couchbase.

@bbrks Syncing issue solved, the problem was using 127.0.0.1 as the IP address of the server.

#11

I have to agree with everything @vanilla has said, it is really not easy for a small company to engage with Couchbase, the ecosystem is geared to corporate clients who will have access to multiple developers creating native mobile applications, small companies like myself that choose technology stacks for hybrid development in order to minimize costs are not adequately catered for. My company used Ionic which in turn uses the cordova plugin which when I last looked was helplessly out of date and the documentation around it was archaic.

@papa-n1ql asked what features should be prioritized for CE and mentioned internal discussions around this. The fact is that small companies need to start with the CE edition to save costs but they need to deploy a live production ready platform in order to onboard customers. Once they have customers they will be able to invest in licenses.

For me the answer is very very simple … enable small companies with the CE edition to be able build platforms that can be seemlessly migrated to the Enterprise edition when the platform starts to become successful.

For me this means -

1 - Always have latest update of CE in line and to the same quality as EE and always provide patches and updates to CE at the same time as EE - If my application is not robust and bug free, I won’t get customers and I won’t reach the point where EE becomes commercially viable

2 - Couchbase lite encryption is required for CE - If I approach a client and they ask if my databases are encrypted and I say no, then for a lot of clients this is a show stopper

3 - Robust and fully up to date, tested and certified plugins for hybrid frameworks - This would really really help

I agree with @vanilla that couchbase is a brilliant database and that is why I want to use it. If you could just remove the chicken and egg situation for small businesses and allow them to start small and grow seemlessy to become EE customers.

2 Likes
#12

@geraldapeoples I was using a hybrid framework, too, specifically PhoneGap Desktop with Framework7, but I felt it was not enough for a large project, then I switched to NativeScript Sidekick, and I feel it is marvelous, it provides 100 cloud builds for free every month!
Also, NativeScript has a nice marketplace website for easily finding plugins, and Alhamdulilah it has this Couchbase Plugin, I think it uses CB Lite version 2.1.1

NativeScript is a reason made my developer life much easier, it has HMR, easy testing and debugging, webpack (can be enabled by one click), auto icon and splash screen generator (for different screen sizes and densities), and it produces native apps, which are very fast.
It provides three flavors, Vanilla JS, TypeScript, Angular, and Vue.

#13

We really like Couchbase and use the CE version. We think the documentation and forum support is great. I reported several bugs which got fixed. But not in CE right away… the delayed bugfixes for CE leave a bad feeling for us. At the moment we are on 6.0.0.

I feel that you are targeting large enterprises. But I think more people should know about CB and the great stuff you are doing with N1QL. But your strategy on large enterprises with CE vs EE might be counterproductive with regards to adoption of smaller startups. It can create a burden and frustration: e.g. In the beginning when we discovered Couchbase we spent weeks starting and building stuff with Couchbase just to figure out in the end that a feature I used during development is not available in CE (e.g. GSI index replication).

It would be great to just have one version of CB.

1 Like
#14

@vanilla … Thank you for the feedback on nativescript, it is definitely a framework that we have looked at and liked but haven’t had the time to make the migration yet, we will definitely be looking to move as soon as we can :o)

1 Like