Planet CouchDB

August 27, 2015

The Offical CouchDB Blog

CouchDB Weekly News, August 27, 2015

Major Discussions

CouchDB Certification?  (see thread)

Planning to organise a NoSQL/CouchDB course for computing learners, a user has asked for an official or certified graduation test for CouchDB. While there isn’t any official certification that CouchDB learners can obtain, the CouchDB community is very open to support efforts learning, teaching and mentoring of any kind. It is also very welcome to share experiences, insights and materials that the community and other learners or teachers can benefit from. You can also write about them, e.g. on the CouchDB blog. Please don’t hesitate to submit your ideas to the list at marketing@couchdb.apache.org.

Performance tuning and optimization guidelines (see thread)

On the user@-mailing list, it was asked for certain documents describing performance tuning parameters for CouchDB. The answer refers to the docs that describe all configuration parameters in CouchDB.

Query view with keys, is order guaranteed? (see thread)

A user wants to know if a particular order behaviour with multiple-key querying will be reliably preserved in future versions of CouchDB, which isn’t a committed behaviour and therefore isn’t guaranteed at the moment.

Releases in the CouchDB Universe

PouchDB

Opinions and other News in the CouchDB Universe

… and in the PouchDB Universe

Use Cases, Questions and Answers

Stack Overflow:

no public answer yet (Stack Overflow):

For more new questions and answers about CouchDB, see these search results and about PouchDB, these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

New Committer

  • Clemens Stolle (IRC nick: klaemo, Twitter: @klaemo) has been elected as a CouchDB committer. Welcome to CouchDB, Clemens!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “‘The risk may seem small when you consider one single website collecting this type of information,’ Runa Sandvik, an independent security researcher and former Tor developer, told Ars. ‘The real concern with behavioral profiling is when it is being done by multiple big websites owned by the same company or organization.” – How the way you type can shatter anonymity – even on Tor
  • “‘On the street I was a hustler, I was a grinder. I never used the word ‘entrepreneur’,’ he says, reflecting on his transition from the dope game in New York, to rap, to the tech game. ‘I always had that spirit in me. I’ve just been using it in the wrong way.’” – If you want diversity in Silicon Valley, add a dose of hip hop
  • “In 2013, I began celebrating career achievements by eating a donut. I had found that whenever something awesome happened in my career—maybe I got published, or promoted, or launched a project—I wouldn’t take the time to celebrate the achievement… I decided to start celebrating in a public way so that more people may be inspired to find their own ways of marking their career achievements.” – Celebrating our achievements
  • “In the back of my mind, I knew the day would come where I would have to share a stage with the man who harassed me for 3 years. And that day has come.” – We Still Let Harassers Participate In Our Community
  • “Even if it’s by accident, nerd culture does tend to exclude women and LGBTQIA+ people in a bunch of different ways. This sucks – because nerd culture is supposed to be the culture of the neglected. It’s the culture of the people who were never popular in high school or never had a lot of friends or were bullied for one reason or another. As a culture basically founded on being outcasts, I think it’s absolutely necessary that we be as open and accepting as possible.” – Nerd Culture Has a Problem – Here Are 5 Ways to Be More Inclusive

… and also in the news


Filed under: News

by katha4couch at August 27, 2015 05:47 PM

August 21, 2015

Kanso

CommonMark for CHICKEN

I've recently been 'incubating' lots of CHICKEN eggs and it's about time they hatched. I'll try to publish one each week until the backlog is cleared. We're going to start easy and work towards the interesting. This week, CommonMark.

If you've ever worked with Markdown parsers, you'll know they often have different interpretations of the format. This can be a problem if you want to render both on the server, and on the client. For improved compatibility, I prefer CommonMark; a highly specified variant of Markdown, which includes most of the niceties found in modern Markdown parsers.

Implementation

I originally planned to write this in pure Scheme using comparse - a library of parser combinators similar to Haskell's Parsec - having previously enjoyed writing a TOML parser with it. Unfortunately, CommonMark is a more complicated format than TOML, and would take a while to implement. Since CHICKEN already has good Markdown parsers, I considered updating one to suit my needs - in the end, it was much quicker and easier to write a binding for the cmark C library, so that's what I did.

Installation

The cmark egg is available via the CHICKEN egg index:

chicken-install cmark

You must also install cmark, since the egg uses the libcmark.so shared library - If your package manager doesn't provide a cmark package, you can install from source using the usual make && make install dance.

Usage

(use cmark)

(commonmark->html "# Hello world!")

;; for embedded HTML support, turn off safe mode:
(commonmark->html "<script>alert('hello');</script>" safe: #f)

Speaking of use, it currently powers this blog!

Improvements

This is a very simple Scheme binding which provides CommonMark string to HTML string conversion. It would be nice to support SXML output too, so we could use the SXML tooling to query, transform and render the result. The cmark C library provides iterators for it's parsed node tree, which might help with this - pull requests welcome!

August 21, 2015 08:04 AM

August 20, 2015

The Offical CouchDB Blog

CouchDB Weekly News, August 20, 2015

Major Discussions

Joan Touzet was interviewed on CouchDB and the Apache way

Joan was interviewed for her upcoming keynote talk at Texas Linux Fest: Joan Touzet on CouchDB and the Apache way

Project Fauxton Feedback (see thread)

In order to write a presentation under the working title “The State of Fauxton 2015” Michelle Phung asked the user community to present their thoughts, concerns and future improvement ideas for the project. Some extensive feedback reveal interesting perspectives on and use cases for Fauxton and imply relevant objections concerning design and layout. For instance, who has used Fauxton as a debugging tool, would like it to rather feature more information by reducing empty space and default font size. Also, preferred options of viewing and editing documents, e.g. with tables, and how the latest version of Fauxton currently handles those, are discussed on several levels. For details of the feedback, see the summarised responses of Jason and Eli.

A parallel discussion about potential improvements of the Fauxton visual guide’s UI arrived at the idea to integrate the visual guide into Fauxton and thereby making it easier to find and adapting it to the layout.

Starting CouchDB 2.0 under diverse network infrastructures (see thread)

A user directed a question about node naming in CouchDB 2.0 to the user-mailing list. The problem occurred, that a database created on a computer under a certain hostname will appear empty under a different hostname due to “a mismatch in the node name and fabric”. As the “node name is set by the vm.args file [and] it defaults to ‘-name couchdb’, which will cause CouchDB to try to discover the system hostname”, it is suggested to “set that value directly as ‘-name couchdb@’ or ‘-name couchdb@’ […] to set it to something that can be routed from other nodes…”.

Releases in the CouchDB Universe

    • couchdown 1.2.0 – A leveldown backend for CouchDB
    • couchdb-backup-restore 1.0.3 – Creates backups of CouchDB databases (.tar.gz files containing one .json file per database) and restores from those backups.
    • couchdb-objects 1.0.7 – Aids in the construction of JSON objects as used by CouchDB.
    • couchdb-render 1.0.1 – Given the code of a CouchDB show/list function (and some other stuff), this module runs it and returns the result.
    • couchdb-eval 1.0.6 – Compiles a piece of code to a function object, providing a CouchDB-like JavaScript context.
    • unexpected-couchdb 0.1.0 – Unexpected plugin for unit testing against a mock CouchDB server.

PouchDB

Opinions and other News in the CouchDB Universe

…and in the PouchDB Universe

Use Cases, Questions and Answers

Stack Overflow:

no public answer yet:

For more new questions and answers about CouchDB, see these search results and about PouchDB, these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “It’s not only about whether you are a core team member or not: people who are early founders or early members of a project, organization, or core team, are typically privileged over later adopters even as the organization grows and changes. It doesn’t matter how many contributions you have made as a later adopter, the founders and early adopters will stay the stars of the project…” – The Hidden Power Dynamics of Open Source
  • “We aren’t in a place where we can to take a year off, but one or two or more of these times away will preserve and cultivate a healthy creative vision for our lives, which is our greatest goal and mark of success. This means we will have to actively choose to have times where we make less income, live more frugally, and are smarter with what we have.” – The Journey to choosing time-off
  • “The middle ground […] between the anti-discrimination-movement and the privacy-movement […] is a census that is done in a sensitive way. But this can also be a very political process. [In this] map showing countries where ethnicity or race was counted and enumerated since 1991 [it is interesting to see that] for example in France it is forbidden by law to collect any data based on racial-ethnic origin. In contrast […] it was very usual to put you photo on your CV. […] There’s lots of research that proof many discriminatory hiring-practices based on that. Social scientists have advised ways to get around that status […]. So it’s not like the data is not being collected, but it is being collected in a ad-hoc or inaccurate way.” – Representing marginalised communities in data: CCCamp
  • “The best mentorship model is a network ‘Having a diverse set of mentors has been crucial to my success.’ — Lara Hogan, Senior Engineering Manager. […] I’ve always thought of mentorship as a very intense 1:1 relationship and I’m sure that’s still a platonic ideal, but it’s not a scalable one. Many people I interviewed had established an in-house network of mentors, where inexperienced managers can learn from those with very different backgrounds.” – What I didn’t know about great engineering culture
  • “The way media dotes over its tortured male artists while undermining the personal struggles of women who suffer the same is nuanced, but a look into the archive suggests the phenomenon is well documented across race, genre, and generation. When Janis Joplin died on October 4, 1970 the New York Times called her a ‘misfit’ whose ‘behavior was explosive’ and remembers her as ‘drinking from a bottle at her concerts’ and ‘screaming obscenities at a policeman in the audience’. Two weeks prior when Jimi Hendrix died – also at the age of 27– the same paper’s headline referred to him as a ‘Top of Music World Flamboyant Performer Noted for Sensuous Style’’ – Amy Winehouse, Kurt Cobain and the Gendering of Martyrdom
  • “Companies keep on deceiving themselves into thinking that the developers are the only important and worthy hires. While they might be a key part of product development, a product is useless if no one knows that it exists or how to use it, or if the development team feels exhausted and overworked, eventually burning out and neglecting key parts of the business.” – How the Glorification of Software Developers Compromises Tech Companies

… and also in the news


Filed under: News

by katha4couch at August 20, 2015 06:52 PM

August 13, 2015

The Offical CouchDB Blog

CouchDB Weekly News, August 13, 2015

Major Discussions

Brainstorm: A new CouchDB tag-line? (see thread)

On the marketing list a discussion on shortening and strengthening the current CouchDB tag-line was reopened. For many the term ‘replication’, as referring to the most distinctive feature of CouchDB, therefore should be part of the new line. The line “Apache CouchDB is a database that uses JSON for documents, JavaScript for MapReduce indexes, and regular HTTP for its API” has been compared to competitors’ tag-lines and contrasted with several suggestions.

Let’s cut a Nano release (see thread)

Last month Nuno Job and Pedro Teixeira and the YLD.io team donated the Nano client to the ASF. The official release has not been completed due to a few remaining issues and open questions, that were kindly summarised by Jason Smith.

The discussion tackles on updating the README of the ‘dscape-repo’ on Github to point to the ASF project and, furthermore, transferring the repository to the Apache account. For its release via npm or other package managers an official voting might be required.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

…and in the PouchDB Universe

Use Cases, Questions and Answers (CouchDB)

Use Case:

Stack Overflow:

no public answer yet (Stack Overflow):

For more new questions and answers about CouchDB, see these search results.

Use Cases, Questions and Answers (PouchDB)

Stack Overflow:

For more new questions and answers about PouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “If you are an open source project maintainer, give this a shot. Add the label first-timers-only to your project so people can find it here. I think that we can be more friendly to newcomers in the open source community. You never know, you may find a new main contributor to the project or even a new life-long friend. Either way, the more people we get into open source the better. And by being open like this, we’re helping ‘Bring Kindness back to Open Source.’” – First Timers Only – A suggestion to Open Source project maintainers…
  • However, black men accounted for 40 percent of the 60 unarmed deaths, even though they make up just 6 percent of the U.S. population. The Post’s analysis shows that black men were seven times more likely than white men to die by police gunfire while unarmed.” – Black And Unarmed
  • “Right now, you’re inaccessible. Tomorrow, your images might have descriptive alt text. Next week, your design might have an improved contrast ratio. Next month your header navigation might have a more usable structure, with better headings and links with active and hover styles. With each iteration, more and more people could have an effortless experience each day.” – Incremental Accessibility
  • “As my own buffer slowly returned, I felt the dirty windshield I’d been looking through starting to clear.…I worry sometimes that the buffer gets too thick. My old demons creep up on me, tell me that if I’m not living a painfully raw existence, I’m not a real artist.” – Meditation vs. medication: A comic essay on facing depression

… and also in the news


Filed under: News

by katha4couch at August 13, 2015 04:21 PM

August 06, 2015

The Offical CouchDB Blog

CouchDB Weekly News, August 06, 2015

Major Discussions

CouchDB Filtered Replication – Group of Doc’s Don’t appear to be batched (see thread)

A user has issues with a filter doing a simple check and making syncing from a couch instance to another much slower. The questions: “Does CouchDB filter replication not group docs and send 1 doc in each _bulk_docs call to the target host? Is there some configuration which would allow the filter replication to group docs to speed up replication?”

It is discussed if the replicator is faster than the filter function in this case, and if to request ‘filtered _changes feed’ to check the throughput speed.

A possible explanation states that the “replicator will dynamically choose ‘_bulk_docs’ batch sizes based on the number of documents that are ready to be transmitted to the source” and that it is currently “possible to set an upper bound on the size”, but not a lower. Though other referred issues imply that batch size doesn’t seem to be configurable.

Releases in the CouchDB Universe

Releases in the PouchDB Universe

Opinions and other News in the CouchDB Universe

… and in the PouchDB Universe

Use Cases, Questions and Answers for CouchDB

Stack Overflow:

no public answer yet (Stack Overflow):

For more new questions and answers about CouchDB, see these search results.

Use Cases, Questions and Answers for PouchDB

Stack Overflow:

For more new questions and answers about PouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

New Committer

  • Bastian Krol (IRC nick: basti1302, Twitter: @bastiankrol) has been elected as a CouchDB committer. Welcome to CouchDB, Bastian!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “I’ve had an engineer on salary at a bootcamp message me to explicitly “be friends with benefits” while I was in the interview process at the school he worked for. I would like to add that both men responsible for these unfavorable experiences are not bad people. They are both socially-accepted, “smart” and “normal” guys. This illustrates one of the industry’s deep underlying issues.” – You May Have Seen My Face on BART
  • “‘Segment the product by quality, value and personal image—ideas that all ended up leading to the thriving coffee market of today. Just when we thought we were out, they sucked us back in. (Meanwhile, the parallel rise of coffee and decline of tobacco could be a sociology thesis, in and of itself.)’ That little insight is part of a three-part series on the anthropology of coffee on the blog Anthropology in Practice.” – The anthropology of coffee
  • “The future belongs to all of us—or, ultimately, none of us—why does it matter if the vast majority of futurists are white men? It matters for the same reasons diversity drives market growth: because when only one type of person is engaged in asking key questions about a specialty—envisioning the future or otherwise—they miss entire frameworks for identifying and solving problems.” – Why Aren’t There More Women Futurists?
  • “‘It is important to recreate that ‘water cooler’ conversation that naturally occurs in a traditional office,’ […] Staying focused on work is important, but taking a moment to ask your colleagues about their weekends, hobbies, families and other personal activities strengthens those bonds and leads to a higher-functioning team.” – 5 ways to make working remotely actually work

… and also in the news


Filed under: News

by katha4couch at August 06, 2015 04:24 PM

July 30, 2015

The Offical CouchDB Blog

CouchDB Weekly News, July 30, 2015

Major Discussions

[NEWS] Open Sourcing Cloudant Search {see thread) and Cloudant Search is Open Source now! (see thread)

IBM Cloudant announced to be “Open-Sourcing CouchDB Search Integration with Lucene”! This means, Cloudant open sourced the Search Stack that is powering the Cloudant Search features, which “consists of two repositories, Dreyfus, written in Erlang and Clouseau as a Scalang project that uses Lucene. Dreyfus is compatible with the new clustering features of CouchDB and makes use of them. It establishes links between the VMs/nodes to get the results from the shards before merging them as the final result which is returned to the user. For details how it works under the hood see this document.”

The CouchDB community happily discusses, how to optionally integrate the two projects as part of the ASF.

[2.0] Replication Issues (see thread)

While trying to upgrade a database from 1.6.1 to 2.0.0/master/0c579b98 and Jan listed a number of issues. Help is greatly appreciated with those! (See list of issues in the thread). Replication is running on 2.0, pulling from 1.6.1 over the EC2 internal ip address. One issue has already been fixed.

Hide all _all_docs and _changes (see thread)

A user wants to disable the ‘_all_docs’ feature in general, or ‘_all_docs’/ ‘and _changes’ for only specific databases, to prevent a user from seeing a list of all documents, the latter of which is not possible. It was advised to ensure that only wanted parts of the API are available and to consider using a reverse proxy, like nginx.

Using _active_tasks to track continuous replication status (see thread)

A user tries to find a way to know whether a document has been effectively replicated (in continuous mode) to a remote CouchDB, with a minimum of network requests. Two approaches have been suggested, one of which is getting the document ‘local_seq’ on the source side and watch the replication status on ‘_active_tasks’ until the completed sequence, ‘checkpointed_source_seq’, is equal to the document’s one.

Basic user cannot acces _users view (see thread)

Here a user wants to know how to allow ‘basic users’ in CouchDB 1.4.0 (without user or admin roles defined) to access ‘_users’ design document in order to call some view (when users have a ‘group’-property) and only get users of their group. It was indicated to take the security section about User’s Public Information into concern.

Updating lost user passwords (see thread)

The user@ mailing list was asked, if it is possible to make a user privileged (not an admin), to permit make changes to other ‘_user documents’, such as password changes. The answer to this is, that it is currently not possible, as only admins can edit other user’s ‘_users docs’.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

Stack Overflow:

no public answer yet (Stack Overflow):

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “Just recently I spent a week doing support work for an application while my coworker was on vacation, reminding me yet again how much I learn from it. Since this was the first time I’d been involved with the app, I learned about the ways our users were getting tripped up, and saw pitfalls which I may never have thought about otherwise.” – Developing Empathy
  • “Much like what is said about including accessibility in your design, it doesn’t have to be extra work to make your culture sober-friendly, and it will improve everyone’s experience as a byproduct. Hold events at places other than bars – consider venues that don’t serve alcohol… When you focus on alcohol as the main activity, such as meeting in a bar, it becomes a barrier to participation for those hoping to refrain from alcohol.” – The UX of Alcohol Abuse: Reflections on a Year of Sobriety
  • “… the requirement to use a real name violates the rights, enshrined in German law, to use a pseudonym, while requests for digital copies of an official photo ID also contradict the passport and ID card law. In addition, he said that “the unauthorised modification of the pseudonym … blatantly violated the right to informational self-determination and constitutes a deliberate infringement of the Data Protection Act”.” – Germany fights Facebook over real names policy
  • “Organizations interested in hiring more diverse candidates need not lower their hiring bar; instead, they should raise the bar and create an interview process that takes a more rigorous, research-based approach to hiring.” – Want to Hire More Diverse People? Raise Your Bar.
  • “hen we meet people who are deaf, we can’t see what is physically wrong with them, but we believe them when they say they can’t hear us. Why don’t we believe people with other disabilities?” – Human Operating Systems
  • “As a Black female CS major at Stanford, I hate walking around the halls of the Gates Computer Science Building.” – No, I Am Not Lost, A Black woman’s experience in the Stanford Computer Science Major
  • “There was always going to be a cis white woman on stage (me), which meant that if I didn’t pay attention, these “all women” panels might have reinforced other hierarchies. In the initial list of speakers I wanted to invite, I noticed that a significant number of them speak openly about their queerness, trans identity, or race.” – How I Organized a Series of Six Panels on Technology with Only Women Speaking

… and also in the news

  • “…what’s written in Erlang that’s blown your socks off? – “…honestly CouchDB is still just too cool” (@adron and @KielanLemons via twitter)

Filed under: News

by katha4couch at July 30, 2015 05:47 PM

July 23, 2015

The Offical CouchDB Blog

CouchDB Weekly News, July 23, 2015

Major Discussions

Windows build failing on couch_ejson_compare.c (see thread)

As reported in the previous Weekly News, there was a problem with the Windows build blocked by khash NIF (see thread). Now it has been tried to revert to the old-style ets approach on Windows, conditionally using khash only on *NIX. The first go on @wohali’s Windows build went well up to compilation of couch_ejson_compare.c. The PR awaits a +1 from a *nix person before merging.

Optimizing chunked transfer-encoding and the impact on clients (see thread)

It has been discussed how to deal with the chunked transfer-encoding capability of HTTP/1.1 to stream _all_docs, _changes, _view and similar responses to clients, that CouchDB uses. As it is more efficient to coalescent multiple rows into a chunk and yields throughput improvements, this change also bears the risk of breaking clients that have been organised on sending single rows-per-chunk. (More details on this topic can be found in COUCHDB-2724 and associated Pull Requests). Several options have been analysed and discussed.

High CPU after loading 15K documents (see thread)

While monitoring CouchDB, a user is concerned that the CPU keeps around 10-12% of the time from the erlang processes and wants to find out, why it takes CPU time, when only a new document is added to the DB each 5-6 minutes and there are only few read requests.

npm releases and ASF releases (see thread)

Some questions regarding npm releases and the ASF/ASF releases and reposting them, came up in a former discussion (Welcome nano to the ASF), and have been re-addressed: “How do we handle npm releases? Currently Nuno Job, Pedro Teixeira and me have write access on npmjs.com. This needs to be changed so we maybe can have a CouchDB account? Also, how does the Apache release procedure work for npm packages?”

An approach to automate releases, maybe with the help of semantic-release, was suggested.

[couchrest] (see thread)

A pull request, “Persistent Connections and Streaming”, for the CouchRest gem includes a few, possibly breaking, API changes. The change boils down to replacing RestClient with HTTPClient which adds support for:

  • Persistent HTTP connections
  • Built-in streaming

You’re invited to help with feedback to the beta (version 2.0.0.beta1), before a final version will be released.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

CouchDB Use Cases, Questions and Answers

  • Use Case: CouchDB Statistics: A CouchDB backend for the core Statistics module
  • QusetionNo CouchDB filter parameter working with CoachDB and Dreamfactory, is this normal? Answer:CouchDB doesn’t have a filter language. One needs NoSQL with traditional SQL-like filter arguments.

Stack Overflow:

no public answer yet (Stack Overflow):

For more new questions and answers about CouchDB, see these search results.

PouchDB Use Cases, Questions and Answers (PouchDB)

Stack Overflow:

For more new questions and answers about PouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “Last week I spoke at a new conference in Dublin called InspireFest: fresh perspectives on leadership, innovation and diversity in science, technology, engineering and mathematics (Stem). It was a Stem conference with a difference – 75% of the speakers were women.” – Technology still has a problem with women – but change is in the air
  • ““Safe space”: it’s an idealistic term. It’s just not a case of “if you build it, they will come.” It takes some work to get a website to a place where users will feel welcome. I spoke to the founders and editors of Femsplain, CirclePlus.co, Black Girl Nerds and Autostraddle as well as the marketing head at Disqus and the founder of dating app Thurst, to find out what it takes to create safe spaces online.” – How Niche Sites are Building Safe Spaces and Better Communities
  • “Small modules favor library authors at the expense of library users. Because library authors typically have larger megaphones (more Twitter followers, more credibility on GitHub and Hacker News, etc), their voices are heard more often.” – Small modules: it’s not quite that simple
  • “Reem was one of several students invited to participate in the public forum with the chancellor last Wednesday, part of a discussion series called Living Well in Germany. ‘Politics is sometimes hard,’ the chancellor said…” – Tearful Moment With Merkel Turns Migrant Girl Into a Potent Symbol
  • “There’s a funny thing about survival. People think it’s about strength. About not surrendering. It twists your mind around, shines lights into the path ahead so you can find your way back, but it also blinds you, softly covering the spaces you can’t bear to see. Yet, still, here I am, surviving, all while feeling like I surrendered my whole life to surviving.” – On Wednesdays we wear our Battle Scars

… and also in the news


Filed under: News

by katha4couch at July 23, 2015 06:06 PM

July 16, 2015

The Offical CouchDB Blog

CouchDB Weekly News, July 16, 2015

Major Discussions

Welcome nano to the ASF! :) (see thread)

nmo is now a subproject of CouchDB, like nano. nmo is a cli client for managing CouchDB 2.0 clusters. See here for the code location and the Github mirror.

View thread for simple quickstart introduction.

Windows build blocked by khash NIF (see thread)

Progress on the Windows buildUnfortunately a release blocker on Windows in the khash NIF was detected. This NIF expects to call an Erlang BEAM VM internal function, make_hash2().

Proposed three options:
1) Build a custom beam.smp.dll on Windows that exports make_hash2, which means that Windows builds have to have a custom built Erlang with patches. This would have to be written and will never be able to run against stock Erlang builds from erlang.org.

2) Revert to the old-style ets approach on Windows, conditionally using khash only on *NIX, an idea that had been proposed earlier and would involve having to load the khash app only when not running on a Windows platform.

 3) Ship CouchDB 2.0 without a Windows build – even though it seems that the Windows build is popular.

Previous discussion:

Windows PR #1 (see thread) / Windows PR #2 (see thread)

The dev@ mailinglist was invited to confirm the following pull requests:

Support Windows build target #69
Support Windows build target #3

(Published in detail once the khash issue was sorted out. See also this pull request: Remove the use of make_hash2)

CouchDB question on user@ (see thread)

A new user asks about CouchDB and received first answers:
Question: Is the database per user is a good model? A: Yes! And filtering by document type is a very common CouchDB data model.

Question: Is there away to tell CouchDB not to store revisions? Or is this needed to make sure the synchronisation is correctly? Answer: _rev can’t be understood as a revisioning system. It’s used to ensure that data is stored consistently across multiple replicas.

Question: When a document is deleted there is nothing like deletion but a revision setting the document to a state of RETIRED? … When syncing to a new device it is going to get all the [retired documents] and then mark them off as deleted. Answer: _deleted: true! But all other fields are typically removed, too. Filtered replication can remove these so-called tombstones if there is a very high volume of deleted documents. To keep old documents, don’t use this DELETE method but create your own delete, such as an inactive: true/false field.

Releases in the CouchDB Universe

  • nano-option 1.0.0 – Create a nano adapter if option is not already a nano adapter. Also set X-Couch-Full-Commit header.
  • CouchDB Bootstrap 1.7.6 – Bootstrap projects: configure CouchDB, setup security, deploy ddocs and create users.

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

Stack Overflow:

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Use Cases, Questions and Answers (PouchDB)

Stack Overflow:

no public answer yet:

For more new questions and answers about PouchDB, see these search results

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

New Committer

  • [Johannes Jörg Schmidt] (IRC nick:TFTFTF, Twitter:@dieTF) has been elected as a CouchDB committer. Welcome to CouchDB, Jörg!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “The “web” is not a part of nature. It was not discovered; we don’t have to just accept it. The “web” is an infrastructural system that was built by people, and it was built very recently and very sloppily. It currently has the property that it forgets what must be remembered, and remembers what must be forgotten. It manages to screw up both the sacredness of the common record and the sacredness of private interaction.” – The Web of Alexandria (follow-up)
  • “Here’s the thing: not everyone wants to be an engineer. Just because you don’t understand my job or don’t find it appealing, doesn’t mean it isn’t real or valid. It doesn’t mean I’m not as smart, or geeky, or excited about technology. It just means we like to do different things. And that’s OK.” – The myth of the non-technical startup empolyee
  • “The real problem I see is, because of prepublish’s implicit nature, the people who benefit from it might not be aware of and unable to advocate for it.” –  What is npm’s prepublish, and why is it so confusing?
  • “ But the Stream, mobile applications, and moving images: They all show a departure from a books-internet toward a television-internet. We seem to have gone from a non-linear mode of communication — nodes and networks and links — toward a linear one, with centralization and hierarchies. The web was not envisioned as a form of television when it was invented. But, like it or not, it is rapidly resembling TV: linear, passive, programmed and inward-looking.” –  The Web We Have to Save
  • “Meritocracy presumes that everyone starts off and continues through with the same level of access to opportunity, time, and money, which is unfortunately not the case. … Businesses are choosing candidates based on their open source contributions, knowing that they are getting more value for less money out of them. … This is akin to not paying someone for overtime.” – Is Tech a Meritocracy?

… and also in the news


Filed under: News

by katha4couch at July 16, 2015 03:05 PM

July 09, 2015

The Offical CouchDB Blog

CouchDB Weekly News, July 9, 2015

Major Discussions

[PROPOSAL] Workflow with forked repos (see thread)

A new proposal on @dev is kicking-off the “plan to sync the couchdb-jiffy fork up to the current master” because of useful improvements for scheduler, tests, Windows build in the recent versions of jiffy.

[PROPOSAL] Fauxton config and the new config API (ongoing, see thread)

When several issues for multi-node-setups occurred with the config section in Fauxton, it was proposed “that the UI communicates in a direct and clear way that another (maybe external) tooling is necessary as soon as you’re dealing with a cluster.” and that “for ‘clusters of one’, we can just show the config screen.” Other opinions are, that with 2.0 “limiting the web UI to cluster-of-one setups is perfectly fine” and thus noone would be losing capability.

Continuous Integration Redux (ongoing, see thread)

Last week on dev@ it was announced that efforts to grow a CouchDB CI team have been initiated, especially in regard of the upcoming 2.0 release: Testing on multiple operating systems, different operating system versions, dependency versions and configurations (and Windows!) will be required.

Help is needed! Looking for people interested in assuming ownership of the CouchDB Continuous Integration operations (See the thread for details and requirements. The discussion continues.)

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

Stack Overflow:

no public answer yet (Stack Overflow):

For more new questions and answers about CouchDB, see these search results.

Use Cases, Questions and Answers (PouchDB)

no public answer yet (Stack Overflow):

For more new questions and answers about PouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “Money can be a bridge to the freedom of exploring Musts. And it often doesn’t require much. But it does require determination. Money can be used to buy you a day, a week, month of time to work on a Must, which may amount to nothing. Or it can be used to buy a sweater, a suit, a car — the value of which is obvious and low risk.” – The Crossroads of Should and Must
  • “Peterson told BuzzFeed News, ‘There’s a lot of lip service about women in tech. People say someone should do something, but when they have other events like these, they are not actually awarding money. It’s just so that a bunch of people can feel like they’re Mark Cuban. But with this event, they put their money where their mouth is.’” – Women Rule The Tech Scene At D.C. Startup Competition
  • “I sat in a state of wonder. At a time when I had forgotten the possibility of pleasure, Pépin had effortlessly, instinctively brought me back to life. Without knowing it, he had extended a hand to a drowning man. For dessert we had crème brûlée and an apple tart, coffee, and one more glass of wine. And then I was shaking that hand again, the other clasped warmly atop mine. And then I was out on the street, dazed and floating.” – The Chef who saved my life
  • “This means half my time and mental energy is spent debating my inner self, just to keep moving forward. Think about that. Think about how much time you spend on solving a problem and then try to solve that same problem if every other second you had to argue with someone about a completely pointless and random thing. It becomes really hard to get into a flow space for solving hard problems with this going on. // Depression is a daily struggle. Some of us have the upper hand on our depression right now, but I can assure that many will eventually slip, needing more understanding, and maybe some help some time in the future.” – On Depression
  • “While around half of all webpages are in English, only about 28 percent of the people using the internet speak English as a first language. Interesting, right? There are billions of people who use and browse the English web, but are not native speakers.” – Designing for non-native speakers

… and also in the news


Filed under: News

by katha4couch at July 09, 2015 06:29 PM

July 02, 2015

The Offical CouchDB Blog

CouchDB Weekly News, July 02, 2015

Major Discussions

Building CouchDB 2.0 (see thread)

Here are a few more todos, all 2.0-tagged issues on JIRA and open
Pull Requests listed, in addition to the list that was shared in the ML last week. Near goal: Get a first feature complete version of CouchDB 2.0 out as a Release Candidate or Beta release.

Continuous Integration Redux (see thread)

On dev@ efforts to grow a CouchDB CI team have been initiated to be able to guarantee quality across many platforms and configuration. This is crucial especially in regard of the upcoming 2.0 release, testing on multiple operating systems, different operating system versions, dependency versions and configurations (and Windows!) will be required.

Help is needed! Looking for someone or a group of people that are interested in assuming ownership of the CouchDB Continuous Integration operations (See the thread for details and requirements. The discussion now goes further into structure and optional tools of the future CI system.)

Recover space imposed by 4K minimum document size? (see thread)

A user@ dealt with an issue with compaction used via the _utils UI and the database exceeding the size of the posted documents disproportionately, which was solved by triggering the compaction directly from the API with curl.

ApacheCon Core & Big Data EU (see thread)

This year ApacheCon has grown to two events – Apache: Big Data (September 28 – 30th) and ApacheCon: Core, (October 1-2) both in Budapest. Call for talk proposals for ApacheCon ended on July 1st. Several talk submissions have entered by CouchDB contributors and members. The idea of a small summit or BarCamp Apache space could be realised during the events is likely to be pursued.

[PROPOSAL] Fauxton config and the new config API (see thread)

Last week we got a new API endpoint: _node/<fqdn>/_config
While working with the API and explaining the new config section in Fauxton to people issues for for multi-node-setups became clear. The proposal for the config section in Fauxton: Detect if we are running in “Single Node Mode”.

parsing json (see thread)

On user@ it was asked which tool is used in CouchDB to parse the JSON-documents: couchdb-jiffy ia a C-implementation of a JSON parser, though there is a discussion to move back to mochijson2 (native Erlang). Also view results are serialised by SpiderMonkey’s native JSON.stringify();.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

Stack Overflow:

no public answer yet (Stack Overflow):

For more new questions and answers about CouchDB, see these search results.

Use Cases, Questions and Answers (PouchDB)

no public answer yet (Stack Overflow):

For more new questions and answers about PouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “The system itself is rather loosely organized with no one really “in charge.” As computer coordinator Ross Lenet put it, “It’s amazing it even works at all.” – In 1993, This Is What I Wrote About The Internet Coming To My High School
  • “Few things are hurting the tech industry more than that surprised look on your face when you meet someone who doesn’t conform to your idea of who works here. For all of the things that we say about how you don’t have to be a stereotypical computer nerd to be in this industry, it’s precisely through our surprised reactions we suggest otherwise.” – Stop Acting So Surprised: How Microaggressions Enforce Stereotypes in Tech
  • “Additionally, coding camps are not doing enough to bridge the bias and legitimacy gap their graduates will face in job searches. A ‘brogrammer’ just out of devcamp can talk about how quickly he is sure to pick up RSpec and still get the position. A queer woman will be looked at as if she is saying she doesn’t know how to open Terminal.” – Programmer Legitimacy: Earned, Bought, or Borrowed?
  • “The day that Facebook decided my name was not real enough and summarily cut me off from my friends, family and peers and left me with the stark choice between using my legal name or using a name people would know me by. … there’s a twist: I used to work there. In fact, I’m the trans woman who initiated the custom gender feature. And the name I go by on Facebook? That’s the name that was on my work badge.” – My name is only real enough to work at Facebook, not to use on the site
  • “I couldn’t be happier that all gay couples can now access each other’s Social Security benefits, file their taxes jointly, adopt children, and more easily emigrate to be with each other. I just wish marriage weren’t the only path to these benefits.” – I’m Pro Gay Equality. Pro Marriage? Less So.
  • “The logical conclusion seems to be that simply spending money on diversity initiatives meant to attract the attention of non-white, non-male potential hires once their careers are already underway is a bandaid on a larger cultural problem.” – The 21st Century Has Really Not Been Great For Women And Minorities In STEM

… and also in the news


Filed under: News

by katha4couch at July 02, 2015 08:18 PM

June 25, 2015

The Offical CouchDB Blog

CouchDB Weekly News, June 25, 2015

Major Discussions

The new 2.0 build tools just landed in master (see thread)

A CouchDB 2.0 build script, that started in February 11th, was merged June 24th. A major rework was started last week making a new ./configure script that comes with extensive unit tests for the CouchDB project and accepts most of the customisation options of a GNU./configure that behaves according to the GNU Coding Standards. The result is, that CouchDB master and 2.0 will work similar to 1.x when concerning system installation behaviour. Now testing for different systems and configurations can begin. Feedback is highly appreciated.

DB size question (see thread)

A user was asking how to handle significant increase of DB volume and how to configure checkpoint_after, doc_buffer_size? The answer referred to a discussion about DB file size and a setting that helped reduce it: checkpoint_after = 5242880000 doc_buffer_size = 524288000

IP Clearance for couchperuser and docker-couchdb started (see thread)

IP Clearance procedure on general@incubator.a.o. was started and concluded this week.

[DISCUSSION] NMO to ASF (ongoing, SEE thread)

Process to move nmo – a tool to manage CouchDB clusters was written as part of COUCHDB-2598 – to ASF will get started.

SSL with self-signed certificates (see thread)

A user asked how to make CouchDB work with HTTPS and a self-signed certificate. The issues are that, depending on the client, the connection is accepted or refused. The discussion preceded on Stackoverflow. A current solution that was fond to use stunnel in front of CouchDB.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

StackOverflow:

no public answer yet (StackOverflow):

Use Cases, Questions and Answers (PouchDB)

no public answer yet (StackOverflow):

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “It was while Kleiman was an undergraduate studying computer science that she came across a picture of  the first programmable computer, ENIAC. She noticed that while the men in the picture were captioned, the women were not. After making inquiries, she was told, dismissively, that the women were models. Suspicious … she dug and dug until she discovered … these six women were founders who created the first software app and the first sorting machine, and their story might never have been told if she hadn’t noticed something odd about that picture.” – The world’s first app creators
  • “A system with per-page payouts is a system that rewards cliffhangers and mysteries across all genres. It rewards anything that keeps people hooked, even if that means putting less of an emphasis on nuance and complexity.” – What If Authors Were Paid Every Time Someone Turned a Page? Amazon is about to find out.
  • “Most of the time when developing applications, we assume that people have permanent access to a broadband connection, no matter where they are in the world. … Let’s face it, … we are struggling with connectivity issues all the time, be it bad mobile coverage or expensive roaming. So why are most web sites and apps not prepared for that?” – Why offline-first matters, and what developers should know about it
  • “The inclusion of a playable female protagonist Evie Frye in Ubisoft’s Victorian-era proffering Assassin’s Creed: Syndicate is extremely noteworthy, considering the controversy surrounding the release of Assassin’s Creed: Unity back in 2014, which, despite promises made by the publisher, did not feature a lady on the forefront because the developers couldn’t take the time out of their day to design one. (It’s also worth noting that technical director James Therien consistently referred to the hypothetical character as a ‘feature’, because women are obviously only accessories.)”– E3 2015 Showed Strides For Female Representation In Gamer Culture
  • “Those of us who have written, thought, or spoken about this — even in shadowed whispers — need to keep speaking out about call-out culture and toxic activism, both against the ideological purists who tell us we’re providing ammunition to the ‘enemy’ and the professional scapegoaters who seek to farm clicks and book advances off of this issue.” – So You’ve Been Publicly Scapegoated: Why We Must Speak Out On Call-Out Culture
  • “After four years of drawing regularly, I still sucked. I still wasn’t as good as the ones who had been drawing 10 times as often for 10 times as long. I could see that I was moving forward, but I could also see that I wasn’t at the end. On the other hand, I wasn’t at the beginning anymore.” – The damned annoying truth about sucking at things

… and also in the news


Filed under: News

by katha4couch at June 25, 2015 03:44 PM

June 18, 2015

The Offical CouchDB Blog

CouchDB Weekly News, June 18, 2015

Major Discussions

2.0 progress (see thread)

A list of missing features and suggestions. Feedback is very welcome.

CouchDB questions (or why use a document-based database) (see thread)

A new user to CouchDB wants to make a desktop app that syncs with a Django app and wants to know how a NoSQL, schema-less and document-based database like CouchDB, as opposed to a relational one like PostgreSQL, is to be used to sync the data and include an undo functionality to reverse transactions.

Since transactions are not reversible, it was suggested to use PouchDB with NW.js., implement an undo-feature and recover previous document versions. Also it is being stated that replication and scalability is not as simple in PostgreSQL, whereas with CouchDB, master-master simplicity is a core feature. The main advantage of a NoSQL-database in this case would be, that it’s schema-less and therefore more sustainable.

HTTPS Reverse Proxy Replication (see thread)

A user has been trying to get CouchDB continuous replication to work with a remote database behind an https reverse proxy. It was suggested to check X-Forwarded-Proto.

CouchDB for Android (see thread)

One way to use CouchDB in an Android environment is to start building an Android app that works in sync with CouchDB. Instead of using CouchDB 1.2-beta that was build for Android, it was suggested to use Couchbase Lite, which is also compatible with CouchDB.

CouchDB utc_id behavior (see thread)

Another user recognised uncommon behaviour of new document IDs when being synched between two CouchDB servers that had their clocks synchronised via ntp. While using timestamps to order the documents, they were not in a chronological order, even though OS clocks were in sync…

Releases in the CouchDB Universe

Releases in the PouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

Stack Overflow:

  • CouchDB override a base JSON document. Question: A standard strategy (or best-practice) for creating a JSON document that a) is based on another document and b) contains a small number of JSON properties that represent overrides to the original document? Answer: It depends on the use case whether to use a CouchDB _list, an approach based on CouchDB _view, or an CouchDB _update handler, and create a view to return each updated document if any overrides exist and the normal document if overrides don’t exist for it.
  • CouchDB – Why is my reduce is always coming as false? Answer: You got the sum of values per title, while you wanted the sum of values in general, by changing the grouping drop-down list to none. Check CouchDB’s wiki for more details on grouping.
  • Indexing names in JSON using elasticsearch in couchdb – trying to implement full-text query for JSON documents. How to index only the title field? Answer: With the elasticsearch-river-couchdb plugin, one can configure the river with a script to remove all fields but the ones to specify. Find an example in the official documentation of the plugin.

no public answer yet (Stack Overflow):

For more new questions and answers about CouchDB, see these search results.

PouchDB Questions and Answers

Stack Overflow:

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “We could choose to spend extraordinary amounts of money and countless man-hours laboring over a system which provides the reliability we want. We could construct a data center. We could deploy big, expensive machines. We could install redundant fiber and switches. We could drudge over infallible code. Or we could stop, think for a moment, and realize maybe [saying] “sorry” is a more effective alternative.” – Distributed Systems Are a UX Problem
  • “It is obvious that his comments were sexist, but few people could recognise the names or faces of the women he has so thoughtlessly brushed aside. Even in his inadequate apology, he neglected to mention any women scientists who have impressed him during his career…” – The Unseen Women Scientists Behind Hunt’s Nobel Price
  • “Do you feel in the zone working solo plugging away at what you love? Great, make space for that to occur and guard that time like your dreams depend on it — because they do.” – There Are No Hacks To A Meaningful Life
  • “Open Source has a serious problem with sustainability and people working on OS projects for months or years and then giving up on them because they simply don’t want to put any more time in them because it’s so frustrating. So I wanted to have this discussion about what you can do to minimise this frustration.” – The Changelog  #159: Sustaining Open Source Software with Mike Perham
  • “Digging through the company’s membership data, LinkedIn found that software engineering teams in industries outside of technology tended to have many more women.” – This study suggests Silicon Valley really is biased against women
  • Don’t hire a junior developer as a marketing effort or PR stunt. This reason only considers your company’s best interests rather than those of the candidate. If you’re doing this, you probably haven’t read anything I mention above or below this paragraph.” – The Catch-22 of Being “Too Junior”
  • “It isn’t enough to just state that you’re being color-blind or gender-blind. You need to explicitly say that you’re looking to build a diverse team. The former can imply that you’re being lazy and maintaining your structural biases, but hope to be surprised and delighted when you find a minority or female candidate who can overcome those biases, whereas the latter is a position of active engagement.” – On Recruiting, Inclusiveness, and Crafting Better Job Descriptions

… and also in the news

 

 

 


Filed under: News

by katha4couch at June 18, 2015 08:20 PM

June 11, 2015

The Offical CouchDB Blog

CouchDB Weekly News, June 11, 2015

Major Discussions

Cloudant videos discussing CouchDB (see thread)

How to use user interviews featuring CouchDB such as the videos by Cloudant and Dimagi (full list):

Cross post Bootstrap chapter on CouchDB Blog? (see thread)

A chapter on Bootstrap written for CouchDB Best Practices in the eHealth Africa docs, is being suggested for a cross post on the CouchDB blog.

Releases in the CouchDB Universe

Releases in the PouchDB Universe

Opinions and other News in the CouchDB Universe

  • Blog post: Deconstructing Big Data – Adventures with NoSQL, Big Data and Data Science
  • Article: The number of NoSQL options grows (SDTimes) – “The Apache Foundation: Accumulo is a key-value store that provides a robust, scalable, high-performance data storage and retrieval system. Cassandra is a highly scalable, high-availability, high-performance wide column store also based on Google’s BigTable design. CouchDB is a document database that uses JSON for documents, JavaScript for Map/Reduce queries, and regular HTTP for an API, making it a great choice for Web and mobile apps.”

Use Cases, Questions and Answers

Stack Overflow:

Stack Overflow (PouchDB):

  • Architecture of an app when using CouchDB/PouchDB
    1. If I have multiple users with there own authentication, how can I make sure that the users get access to only their data? And will I still have 1 database on server end? – Answer: Ref to guide in the pouchdb-authentication README.
    2. PouchDB on the client side can be in sync with a remote PouchDB. But when an application is build with Javascript how do you make sure that people are not inserting data into PouchDB by ‘hacking’ the client-side Javascript? – Answer: You cannot prevent users from writing bad data (they can always open up the console and do whatever they want), but you can use something like pouchdb-validation to re-use your validation function on the client side.
    3. Would the use of a backend be gone in these kinds of setups? And if you want to have an API for 3rd party, you just put for example an Sails.js backend around the CouchDB? – Answer: Some people write PouchDB apps without any backend (just using pure CouchDB/Cloudant/Couchbase), whereas others like to mix the database with a server architecture of their choice. …
  • How do I query X specific documents all at once using an index with pouchdb?
  • PouchDB from Nodejs generate auth credentials? – Answer: pouchdb-authentication is designed for use in the browser, but you can use nano to interface with CouchDB from Node.

no public answer yet:

Stack Overflow:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “attempts to realize the values of liberational technology can produce unanticipated, even self-sabotaging effects. … Although mainstream tech culture has drifted from the more radical premises of liberational technologies, free and open-source software (F/OSS) has certainly creatively troubled liberal values of proprietary ownership, bringing intellectual copyright and other information restrictions under greater scrutiny. Despite such potential, open source software never wholly escapes capitalism and is thus subject to a pattern of exclusions” – Tripping Over Our Bootstraps: Open Source Ecology and the Promise of Liberational Technology
  • “They are known as téléchargeurs, or downloaders, and they operate as an offline version of iTunes, Spotify and Pandora all rolled into one. / It was a question as dumb as my simple Nokia phone. A cellphone is a digital Swiss Army knife: flashlight, calculator, camera and, yes, audio player. Mali’s homegrown, offline digital music has created a space for sharing songs that is in many ways more vibrant than the algorithm-driven way music is so often experienced in the United States — more personal, more curated, more human.” – A Music-Sharing Network for the Unconnected
  • “There’s probably more than one way of using color codes as data. But one thought I had was that they could be an interesting way of identifying racialized depictions of comic book characters in a reproducible manner.” – Race, Gender, and Skin Color Dynamism in Comic Books
  • “CEO Nick Van Weerdenburg says, “In building Rangle.io as a diverse company in one of the world’s most diverse cities, I always imagined we would do fine in hiring and building a strong female core. However when we stopped and looked at the facts once we hit 50 people, we realized we needed to be more proactive to reach our goals- not just as a company but as an industry.” – Initiative announced for Women in Tech

… and also in the news


Filed under: News

by katha4couch at June 11, 2015 03:45 PM

June 04, 2015

The Offical CouchDB Blog

CouchDB Weekly News, June 04, 2015

CouchDB Weekly Meeting (see summary)

  • CouchDB 2.0 status: Benchmark test suite results needed – measurement tools, e.g. work2, tsung, locust.io, will be further investigated. CORS support for chttpd is merged. Some performance issues were tackled.
  • Open floor: ApacheCon EU (divided into Core and Big Data) – Call for Speakers is open and a strong CouchDB presence planned, ideally with a full-day CouchDB track to especially address 2.0 and big data!
  • L10N: The publication of the docs translations is planned to be pursued to encourage the work on translations and give them clear place and goal in the docs. The RTD (Read the docs) service, where docs are hosted, now has support for localization, which will be inspected.

Major Discussions

[DISCUSSION] nmo to the ASF (see thread)

nmo (speaks: nemo) – a tool to manage CouchDB clusters was written as part of COUCHDB-2598 and is discussed for an official donation to the ASF, so it could be shipped as an addition with the next CouchDB release.

[PROPOSAL] GitHub issues (see thread)

It was proposed to additionally enable GitHub issues for GitHub repos to make contributing to CouchDB easier and attract more contributors. In terms of implementation, JIRA remains main system of records, while it was discussed having GH issues parallelly mirroring JIRA issues and comments.

FAUXTON 1.0.3 RELEASED (see thread)

Fauxton 1.0.3 (modular CouchDB dashboard and Futon replacement) with several fixes and improvements for example: IndexResults, a header-controller reset and display of error message with index creation.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

via Stack Overflow:

no public answer yet (via Stack Overflow):

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “When an organization is explicitly presented as meritocratic, individuals in managerial positions favor a male employee over an equally qualified female employee by awarding him a larger monetary reward. This finding demonstrates that the pursuit of meritocracy at the workplace may be more difficult than it first appears and that there may be unrecognized risks behind certain organizational efforts used to reward merit.” – The Paradox of Meritocracy in Organizations
  • “1. Almost all the successful microservice stories have started with a monolith that got too big and was broken up. 2. Almost all the cases where I’ve heard of a system that was built as a microservice system from scratch, it has ended up in serious trouble.” – MonolithFirst
  • <header class="entry-header">“Intersectionality is a way to think holistically about how different forms of oppression (and privilege) interact in people’s lives, and as such is a concept with both a tremendous theoretical explanatory power and a substantial efficacy as an action strategy.” – An intersectional take on technology, rights and justice</header>
  • <header class="entry-header">“This is the true potential of the internet of things. It could put our vast stores of tacit, embodied knowledge to work online. It could unite the physical and digital worlds. And it could put us in control of our own information and contextual integrity, against a moral and political backdrop that is resolutely committed to human rights, the rule of law and social cohesion. It could become an internet, not of smart things, but of smart, empowered people.” – Forget the internet of things – we need an internet of people</header>
  • “In this talk from Codemania 2015, I explore the benefits and practical applications of immutable data beyond concurrency in both object-oriented and functional programming, from individual immutable fields up to system-level immutability.” – Enjoy Yourself Because You Can’t Change Anything Anyway: Immutable Data in the Real World, Kelsey Gilmore-Innis
  • “It’s got a lot better value for money in the last year, so we’ve gone from “dipping our toes in the water” to “ORDER EVERYTHING WITH SSDs!” pretty rapidly. […] We should probably collect some real data on this as an industry and share it around; I’ve always been of the mindset that we’re weirdly secretive sometimes of what hardware/software we use but we should share” – SSDs: A gift and a curse
  • “Women once dominated the world of coding. One of the first software businesses in the U.S., CompInc., was founded in 1958 by a woman, Elsie Shutt, who hired female programmers.” – How Gender Stereotyping Impacts Women in STEM

… and also in the news


Filed under: News

by katha4couch at June 04, 2015 03:43 PM

May 28, 2015

The Offical CouchDB Blog

CouchDB Weekly News, May 28, 2015

CouchDB Weekly Meeting (see summary)

Fauxton: active tasks will be finished soon with being moved from backbone to react. Work on wizard-ticket – a cli client for _setup and an Erlang patch, which allows to stay in one session/tab for the fauxton setup wizard.

Major Discussions

On Plugins and Extensibility (see thread)

The discussion on the development mailing list touches upon the increasing developments of applications and the various ways in which their extensibility has been pursued. A plugin proposal suggests to write a utility application, aiming to combine and consolidate all individual features and thereby simplify implementation of each.

Twitter Account Follower Stats (see thread) & [NEWS] (see thread)

Great feedback for user engagement with CouchDB content: Readers of the Weekly News have asked to be able to subscribe to the weekly News post on the CouchDB via e-mail. CouchDB has over 25.000 follower on the @CouchDB-Twitter account and doubled during the last 12 months. This is presumably owed to increased marketing activities. It is discussed how to pursue this positive development with additional small referring activities e.g.:

  • daily tweet linking to items in the weekly news
  • weekly news subscription info on the twitter profile
  • introduce an news@ mailing list or other subscription tool to the blog

Releases in the CouchDB Universe

Releases/news on PouchDB

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

Stack Overflow:

  • Cloudant skip parameter not working
  • QuestionHow can I securely connect to Cloudant using PouchDB? Answer: Cloudant credentials should never be hard-coded into your client-side app. One design pattern is to use a “one database per user” approach.
  • QuestionHow to get Couchdb/Cloundant design document ready for search all fields? (with PouchDB-Find to query the data.) Answer: A user-created map/reduce or Cloudant Search index cannot be used to service a Cloudant Query call – it maintains its own indices. Cloudant Query requires that a suitable index exists to service a request to _find.
  • Sync views between pouchdb and couchdb – The user wants to setup a secondary search index and therefore tried to create a view on the Couchdb instance using the pouchdb-find plugin. Answer: pouchdb-find is a reimplementation of Cloudant Query Language, and not their search index. It is better to not sync design documents at all – merely replicate using a filter to avoid syncing design docs. Then one can create design documents that are optimized for whatever platform (PouchDB, CouchDB, Cloudant, the various PouchDB plugins, etc.).

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “I imagine they focused, not on an exit strategy, but on an exist strategy, a strategy built on sticking around; a strategy not for a buy-out, but for a handing down, a passing along.” – Natasha Lampard
  • “I don’t think I was ever outright mean to anyone. I was just callously indifferent and on a long enough timeline that is indistinguishable from being mean. In a cruel twist of irony I thought that was what it meant to be professional. In retrospect it just seems inhuman.” – Be Kind.
  • “Ask questions first, give suggestions later. I always ask first, “How did you feel about that?” when the presenter finishes. Listen and understand. They’ll know exactly how they did. Your job is to help them find new ways to take their talk to the next level for their eventual audience. Your job is NOT to teach this presenter something.” – Giving Presentation Feedback by Lara Hogan
  • “companies with large enough teams can have two modes of employment that employees could ideally opt into. “Passion-mode” and “coast-mode.” Someone who is on an upswing should get put on a big project that’s going to take a lot of energy. Someone who is burnt out from the last big project should be given work that will allow them to show up a little late, and leave a little early.” – The Productivity Cycle by Alex Sexton
  • “Because the product we were developing was AT [Assistive Technology] the vendors charged us between seven and thirty times the price that they charged for the same components when they were included in games or other mainstream consumer software using the niche market, low volume argument.” – Inclusivity Requires A Paradigm Shift

… and also in the news


Filed under: News

by katha4couch at May 28, 2015 04:05 PM

May 21, 2015

The Offical CouchDB Blog

CouchDB Weekly News, May 21, 2015

Major Discussions

Transfer of replication.io (see thraed)

It has been discussed how to transfer the domain from IBM to ASF infra.

CouchDB website

After some contributors teamed up to redesign the CouchDB website, especially the “contribute-section” overview, we now have a beautiful result. And speaking of contributions – The new CouchDB website team itself happens to be looking for support. You can take a look at the website repo here and subscribe to the website mailing list for updates.

[REPORT] CouchDB (see thread)

Regarding the latest report the acceptance of the Nano project was stated. Currently it is being worked on (legal) preparations for the adoption. Furthermore the CouchDB-Python project becoming part of the ASF as well will be discussed.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

  • Use Case: How to ‘force write’ in v2.0 ? (see thread) A user, who used to use “all_or_nothing” to introduce conflicts in CouchDB 1.6 wanted to know how to do this in 2.0, which doesn’t support it any longer.
  • Use Case: Drupal 8 sync demo – Showing how a Drupal 8 site syncs content bi-directionally between Drupal sites (or other API compatible systems such as CouchDB) and make it offline-first with PouchDB.
  • Use Case (Video): Limited Bandwidth Applications using the example of a potential police department app (Northern Virginia Architecture Roundtable, May 18th, 2015)

Stack Overflow:

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

… or read about something else important:

  • “The contemporary system of American policing and incarceration puts human beings in cages at rates unprecedented in American history and unparalleled in the modern world. It is a considerable bureaucratic achievement to accomplish the transfer of thirteen million bodies each year” – Policing, Mass Imprisonment, and the Failure of American Lawyers
  • “What was this? A company that mentions empathy and diversity, two of my personal core values in their core values? Is such a thing even possible? […] To see a non-black leader in tech empathizing with the experiences of those in Ferguson, using his platform to amplify the voices and stories of those who might be otherwise ignored was powerful and moving.” – Seeking Happy.
  • “When strangers surprise me with the “women in tech” conversation, it’s most likely because they’re in a position of privilege that prevents them from understanding that it’s burdensome for someone who lives this experience to talk about it.” – Mean time to “women in tech”.
  • “One person stated that I don’t need to worry about making open source contributions and I went ‘Yay, cool, less pressure’, another seemed to state that I am of little worth if I don’t contribute ‘Fuck, okay, I guess I better get on that then’. I wish programmers were more aware of the things they are saying and the attitudes they express, and how that might effect a young padawan like me.” — As a new developer
  • “In the end, will our value as individuals be measured by more than the quality of our code?” – (@ModelViewCulture via twitter on The Dehumanizing Myth of the Meritocracy)
  • “I watch the copious numbers of ‘women in tech’ groups, coding schools and initiatives, bringing new people into the terrible pipeline with big hopes. Learn to code! Get a job! Live happily ever after… oh wait.” – Where Does Your Pipeline Lead?
  • “With a few taps on a phone, for a fee, today’s hottest start-ups will help people on the lowest rungs of the 1 percent live like their betters in the 0.1 percent.” – A Tech Boom Aimed at the Few Instead of the World
  • On Replication and Convergence – Can Replicas Converge Across Partitioned Networks ? and The Hash History Approach for Reconciling Mutual Inconsistency

… and also in the news


Filed under: News

by katha4couch at May 21, 2015 09:01 AM

May 14, 2015

The Offical CouchDB Blog

CouchDB Weekly News, May 14, 2015

CouchDB Weekly Meeting (see summary)

  • CouchDB 2.0 status: work is making progress. Help with a Windows version is much appreciated.
    Also, the _config endpoint for cluster interface still needs to be figured out. Potentially using a database for config values. Discussion (summary below, continues on on dev@.)
    And: Currently compaction works only on the backdoor ports, which isn’t feasible and the workflow should also prevent users from triggering a clusterwide compaction. First step is a list of all incompatibilities in the docs. A proper solution for the compact view feature is more likely for 2.1.
  • Fauxton: Can detect if running on a backdoor port now. Also, the conversion of the front page from backbone.js to react.js got merged in!
  • Marketing: Get in touch with companies/organisations that use CouchDB to promote authentic user voices e.g. on YouTube or as testimonials or authorised quotes.
  • Meeting time: The IRC meeting shall be held an hour earlier – 18:00 UTC.
  • Other business: Redesign of the ‘contribute’-section on the CouchDB website progresses (summary of discussion below).

Major Discussions

CouchDB Articles Pills and Tutorials Ideas (ongoing, see thread) & How do CouchApps fit into the CouchDB story? (ongoing, see thread)

The discussion on Marketing-ML around the future of CouchApps and its place with CouchDB continued and subdivided into multiple threads, while the main points of discussion remained:

  • how to fix the identity of CouchApps (design, naming etc.)
  • within context of the CouchDB story of “Data where you need it.”
  • and the CouchDB core features

The common goal of this discussion is agreed on to be finding a way to strengthen the overall CouchDB story for its greater good and to find a reasonable way to further handle the functionalities of what are CouchApps today, so that they no longer lead to confusion in the perception of what CouchDB is about. Especially renaming (or potentially take the name “Couch” from CouchApps) is being discussed as a crucial step to mark a clear distinction, e.g. in the follow-up thread.

Two names: CouchDB & Couch APP Server (see thread)

A user suggested to “focus on marketing two concepts named ‘CouchDB’ and ‘Couch App Server’.” as “a middle ground between the two extremes of ‘R.I.P. CouchApps’ and ‘CouchApps are CouchDB’s greatest feature!’”

The future of couchapp (ongoing, see thread)

Another follow-up thread on the User- and Marketing-ML. Some users describe their personal story of getting to know CouchDB and what they have learned about the role and use of CouchApps. Discussion will continue on the Marketing-ML.

Configuration in CouchDB 2.0 (ongoing, see thread)

In the Fauxton team that is using CouchDB 2.0, it has been discussed to remove the config tap or how to achieve a better way to make configuration work on cluster-wide interfaces and prevent the unwitting use of config on backdoor ports. Config changes and other solutions are being discussed for 2.0.

CouchDB website: contributing redesign / text help (see thread)

It was proposed to introduce a clear overview, visually presented as cards, of the various subprojects and what is required to be able to contribute on them. Some contributors teamed up to compose crisp onboarding text for this overview, to help address the right users for the respective projects.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

Use Cases:

Stack Overflow:

no public answer yet:

Stack Overflow:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • Web Annotation Is Already A Scale. Three takeaways from I Aonntate 2015 – “I was particularly struck by one group’s concept of a configurable ‘filter’ that could help make sense of the many annotations across the web, bringing value to different groups of people. It’s an exciting time to build standards and interoperability so annotations can communicate with each other.”
  • The importance of being uncomfortable. – “We all know that it’s important to be honest with each other. It’s one of the first things we learn as children, right up there with “share” and “play nice.” But honesty is hard. We spend a lot of time trying not to be uncomfortable.”
  • The Recompiler: An Interview with Audrey Eschright – “Audrey’s newest project is The Recompiler, a feminist hacker magazine that will be launching in summer of 2015. Given Audrey’s successful track record, The Recompiler promises bring something wonderful and valuable to the lives of many technically-minded people.”
  • The Pipeline Isn’t The Problem: Dissecting The Real Gender Bias in Tech Positions – “Talented women like Seka face additional obstacles to being a woman in tech—feeling even more insecure and unsupported for not being ‘techie’ enough.”

… and also in the news


Filed under: News

by katha4couch at May 14, 2015 05:58 AM

May 07, 2015

The Offical CouchDB Blog

CouchDB Weekly News, May 07, 2015

Major Discussions

CouchDB made the ThoughtWorks Technology Radar (see thread)

The latest ThoughtWorks Radar includes a new blip for “offline first web applications” (blip: “technology or technique that plays a role in software development”) and CouchDB and Hoodie are featured here as references: “There are some tools which help simplify offline first implementation such as Hoodie, and CouchDB also offers ability to work with a locally deployed application on a local data storage.”

CouchDB Articles Pills and Tutorials Ideas (see thread) & How do CouchApps fit into the CouchDB story? (see thread)

The discussion around the future of CouchApps:

  • how to fix the identity of CouchApps (design, naming etc.)
  • within context of the CouchDB story of “Data where you need it.”
  • and the CouchDB core features

Best practices for testing CouchDB 2.0 (see thread)

Question: A user asked how to use wanted to know if to use the master branch from the git to compile CouchDB from sources or if fixes for CouchDB 2.0 are being committed to another branch?

Answer: In general it has been suggested to test features on a branch for the specific sub-projects not on the master. Also to check open pull requests on GitHub to test sub-projects that are specifically proposed for merge, with the help of this search tool:  http://s.apache.org/couchdb-ubersicht

[RESULT] accept Nano contribution (was: [VOTE] accept Nano contribution) (see thread)

Nuno Job wants to donate Nano, a popular Node.js Client library for CouchDB to the ASF. The vote passed.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

Use Case:

Stack Overflow:

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “Today, in conjunction with Creative Commons, we’re happy to announce support for explicit post licensing on Medium.” – Explicit post licensing
  • “Nobu and Gao come only in one flavor: inscrutable mysterious menace. They aren’t villains who happen to be Asian; their Asianness is central to their villainousness. YoDaredevil, Executive Order 9066 called — it wants its Asian treachery stereotypes back!” – Black Mask, Yellow Peril: Anti-Asianism in Netflix’s otherwise brilliant Daredevil
  • “I’m now at the point where “diversity in tech” has become synonymous with white women. And I’m here to raise the red flag.” – Houston, We Have a Problem
  • “According to an article in the Wall Street Journal, as many as 20% of large U.S. companies are providing unconscious bias training to their employees, and this percentage can reach 50% in the next five years. We know everyone has hidden biases. No one is blaming you if you didn’t know male managers used the words“assertive,” playful,” and “funny” in reviews right before demoting their female employees, yet promoted their male employees when using the same words. But as more companies exist now to help uncover unconscious discrimination, there’s really no excuse in stopping tech from solving its damaging diversity problem.” The Growing Business of Detecting Unconscious Bias

… and also in the news


Filed under: News

by katha4couch at May 07, 2015 05:20 PM

April 30, 2015

The Offical CouchDB Blog

CouchDB Weekly News, April 30, 2015

Major Discussions

Configuration in CouchDB 2.0 (see thread)

In the Fauxton team that is using CouchDB 2.0 daily, it has been worked on to remove the config tap. Thereby testing features on back ports that still support the config route lead to multiple unexpected errors. The options for solutions and major config changes, e.g. a token-ring are to be discussed further.

GSOC 2015 [Visualize document revision tree and navigate betweenthese revisions] (see thread) & [COUCHDB-2214] Dashboard as main page (see thread)

Nadeeshaan Gunasinghe’s and Dulanga Sashika, two undergraduates from the Computer Science and Engineering department at University of Moratuwa, Sri Lanka, addressed the CouchDB mailing list for help with their proposals for Google Summer of Code 2015. Congratulations: Both have been accepted.

[VOTE] accept Nano contribution (ongoing, see thread)

Nuno Job wants to contribute Nano, a popular Node.js Client library for CouchDB to the ASF.

[PROPOSAL] CouchDB tests organization (see thread)

Plans to split up the various CouchDB test suites from the main repo into their repositories. Especially the JavaScript tests can then be shared among other projects like PouchDB.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

Triggerjob: CouchDB database driven REST events – a database-driven daemon and scheduler to extend CouchDB and Couchapps with asynchronous REST events.

Stack Overflow:

no public answer yet:

Stack Overflow:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

New Commiter

  • Maria Andersson (Apache ID: mia; IRC nick: mar-ia) has been elected as a CouchDB committer. Welcome to CouchDB, Maria!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “People who look like me can just kinda do programming for work if we want, or not do it, or switch into it later, or out of it again, or work quietly, or nerd-rant on how Ruby sucks or rocks or whatever, or name-drop monads. And nobody will make remarks about our appearance, about whether we’re truly dedicated hackers, or how our behavior might reflect badly on “our kind” of people. That’s silent technical privilege.” Silent Technical Privilege
  • ““Taming the Trolls,” a panel at the Women in the World Summit, addressed a more pernicious brand of trolling—a variety that is vicious, violent, and flagrantly sexist.” What’s it like to be subject to incessant misogynistic trolling? Ashley Judd and Anita Sarkeesian speak out.
  • “Glover began to consider selling leaked CDs from the plant. He knew a couple of employees who were smuggling them out, and a pre-release album from a hot artist, copied to a blank disk, would be valuable. (Indeed, recording executives at the time saw this as a key business risk.) But PolyGram’s offerings just weren’t that good. The company had a dominant position in adult contemporary, but the kind of people who bought knockoff CDs from the trunk of a car didn’t want Bryan Adams and Sheryl Crow. They wanted Jay Z, and the plant didn’t have it.” The man who broke the music business. The dawn of online piracy.
  • “Four years ago, I wrote a rant about why Varnish has no SSL support (Why no SSL ?) and the upcoming 4.1 release is good excuse to revisit that issue.” SSL revisited.
  • “I followed a nearly equal ratio of women and men, but retweeted men three times as often as I retweeted women. This, despite my knowing how underrepresented women’s voices are in the areas I obsess over, such as technology and policy and culture.” The year I didn’t retweet men.

… and also in the news


Filed under: News

by katha4couch at April 30, 2015 06:42 PM

April 23, 2015

The Offical CouchDB Blog

CouchDB Weekly News, April 23, 2015

CouchDB Weekly Meeting (see summary)

  • Fauxton: New features – Active Tasks layout (more changes to come), auto updater in Changes tab, press escape key to dismiss the notifications in fauxton.
  • nano contribution to the Apache Software Foundation: incubator IP clearance and a vote over Contributors Licensing Agreement to come
  • couchperuser: run IP clearance, research idea to create a markdown2ipclearance.xml script
  • couchdb-docker: run IP clearance
  • _bulk _get: backport couch implementation for json api, review and merge iilyak work on multipart api, finish /db/_bulk_get to match couchbase implementation.
  • build script: help is needed to fix issue, especially with Windows support
  • CouchDB 2.0 status: work is making progress. Bug fix in a branch of cassim, but other things (deleted docs, conflict handling) need to be addressed in the same code path. Cluster solution for config on backport needed, tbd on dev@.
  • Other topics: see summary

Major Discussions

[Result] [Vote] CouchDB Logo – Round #3) (see thread)

  • Constantin Angheloiu: 15.5
  • Paul Davis: 9.5
  • Old CouchDb logo: 2

See the whole vote results as CSV.
New logo and tweak options are being discussed in the PMC and on marketing@.

[DISCUSSION] Move Fauxton to its own mailing list? (see thread)

It was decided by consensus that a new mailing list notifications@ is established to outsource JIRA tickets and GH traffic and other automated notifications from dev@ to make the conversation here more “human”. Subscribe by writing an e-mail.

How to use an included document’s key? (see thread)

Question: A user asked how to use an included document and know the
“value of ancestor” for an application for pharmacists to keep track of their patients medication?

Answer: It has been suggested to use event elements to have one document for each patient visits to the pharmacy.

Cancel a replication? (see thread)

Question: A user asked how to cancel a replication if there is no document in the _replication database?

Answer: The aim of the replication is that at the end of the process, all active documents on the source database are also in the destination database and all documents that were deleted in the source databases are also deleted on the destination database as stated in the documentation.

Trying CouchDB 2.0 (see thread)

Question: A user wants to test CouchDB 2.0 on a cluster of three mashines and is facing issues with the Fauxton config and wants to know a way to manually fix it.

Answer: Ensure that admin credentials, couchdb/secret and erlang cookie are the same on all three nodes. Otherwise they won’t connect each other. Also, interact with /_cluster_setup with curl for now – a Fauxton update in on the way. If you rung it with dev/run script it automatizes these routines.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

Use Case:

Stack Overflow:

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “Those in power think that they’re being fair. They also believe they’ve reached the top of their field because they are better and smarter than others. Any challenge to these beliefs feels like a personal attack, and is met with a circular logic that reinforces the comfortable assumption that they sit atop a meritocracy.” – Now What? How to Create Fair Companies after the Ellen Pao Verdict
  • “As developers we seem to have a tendency to get really religious about frameworks. We invest a bunch of time learning a tool and then hold onto it tightly. But, it doesn’t really buy us anything to be religious about tools. Simply converting to another big framework doesn’t protect us from a similar situation in the future, does it?” – Optimize for change. It’s the only constant.
  • “A great decision is often not a revolutionary move. We were doing the technical work to enable this already. The team wanted to be deploying more frequently. All I did was provide the push, to raise the bar just a little bit higher and express my confidence that we would easily clear it. ” – The Best Decision I Made in 2014
  • “Friends and family are the first line of support for people with emotional problems. While it is wonderful to be trusted, this often creates anxiety and dilemmas. Friends worry they will say the wrong thing. Tolerating another person’s pain and distress can be difficult. While there is no one right technique for every situation, here are some tips to keep in mind.” – How to be a friend

… and also in the news


Filed under: News

by katha4couch at April 23, 2015 03:16 PM

April 17, 2015

The Offical CouchDB Blog

CouchDB Weekly News, April 17, 2015

CouchDB Weekly Meeting (see summary)

  • CouchDB 2.0 status: work is making progress. There’s still a list of missing steps and blockers – any help with is always extremely welcome!
  • CouchDB Logo vote: the vote is ongoing
  • Google Summer of Code (GSoC): discussions with GSoC participants
  • Other topics: see summary

Major Discussions

[VOTE] CouchDB Logo – Round #3 (ongoing, SEE THREAD)

The third round to vote on the CouchDB logo is still ongoing. The options to vote for are:

Please send your votes (+1 / 0 / -1) for each proposed candidate, so we can get an impression of which one(s) the community members like and which they don’t. The vote is open for non-committers as well.

Can replication be setup between different CouchDB versions? (see thread)

Question: A user asked if it’s possible to setup replication between different CouchDB versions, e.g. 1.2 and 1.6?

Answer: yes, it’s possible. It wouldn’t need special operations or setup to let it work from the start. Compaction of databases and views wouldn’t harm though, and would ensure that all the new format features are being applied.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “There is no reason to be depressed or give up simply because you will make a few wrong choices. Even more crucial, you must try your best every time because it is the effort and the practice that drives the learning process. They are essential, even if you fail.” – Your first choice is rarely the optimal choice: 5 lessons on being wrong
  • “How many times do we have to tell these stories before they become real — before we all agree that this is a problem, and more than that, agree to do something about it?” – Beyond Storytelling: Actionable Ways to Help with Tech’s “Woman Problem”
  • “Developing multiple areas of knowledge in a limited line of work doesn’t make you a polymath – it just makes you a different kind of employee.” – The Full-Stack Employee and The Glorification of Generalization
  • “If you are a man, you are part of rape culture. I know … that sounds rough. You’re not a rapist, necessarily. But you do perpetuate the attitudes and behaviors commonly referred to as rape culture. You may be thinking, ‘Now, hold up, Zaron! You don’t know me, homey! I’ll be damned if I’m gonna let you say I’m some sorta fan of rape. That’s not me, man!’ I totally know how you feel. That was pretty much exactly my response when someone told me I was a part of rape culture.” – A Gentlemen’s Guide To Rape Culture

… and also in the news

  • “jeez, just replicated a couchDB to a pouchDB for the 1st time. what a breeeeeeeeze.” (@fabianmu, on Twitter)

Filed under: News

by Lena Reinhard at April 17, 2015 03:09 PM

April 08, 2015

The Offical CouchDB Blog

CouchDB Weekly News, April 08, 2015

Major Discussions

[VOTE] CouchDB Logo – Round #3 (ongoing, SEE THREAD)

A third round to vote on the CouchDB logo was just started. The options to vote for are:

Please send your votes (+1 / 0 / -1) for each proposed candidate, so we can get an impression of which one(s) the community members like and which they don’t. The vote is open for non-committers as well.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Time to relax!

  • “[E]xpectations for decision-making have gone from “get it done soon” to “get it done now” to “it should have been done yesterday,” we tend to jump to conclusions instead of asking more questions. And the unfortunate side effect of not asking enough questions is poor decision-making. That’s why it’s imperative that we slow down and take the time to ask more — and better — questions.” – Relearning the Art of asking Questions
  • “Why were programmers hiring for ninjas, espousing meditation, and writing “koans?” Why were these faux-Asian aspirations so widespread?” – Damaged Karma: Commoditization and Exploitation of Asians in Tech
  • “I see people writing about ‘callout culture’ a lot, and while a lot of digital ink seems to be spilled on scrutinising the behaviour of people who do the calling out, very little seems to get said about ways to constructively react when you are the recipient of a callout.” – So You’ve Been Called Out: A Handy Guide to Receiving Social Justice-Related Criticism on the Internet

… and also in the news


Filed under: News

by Lena Reinhard at April 08, 2015 07:00 PM

April 02, 2015

The Offical CouchDB Blog

CouchDB Weekly News, April 02, 2015

Major Discussions

Notice: Submissions for the new CouchDB logo are open (SEE THREAD)

As announced, there will be a vote for a new logo for CouchDB soon. All submissions so far, minus the ones that resulted in a 404, are listed below. If a link is missing, please submit it to the thread.

A vote on the new logo will be started soon. If you are a fan of the old logo, don’t worry, since it will also be part of the vote.

Vote: Accept couchperuser codebase (SEE THREAD)

The vote passed.

Announcement: jqouch, a jq-based view server (SEE THREAD)

Release of jqouch, a jq-based view server for CouchDB. It’s extremely
rudimentary, but works as a proof of concept of what can be achieved. Some background information on jqouch can be found here.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Job opportunities for people with CouchDB skills

Time to relax!

  • “For a moment over the last month, we jumped out of our water and thought very critically about the environment within which we swim. More and more women and men are starting to “lean in” and take responsibility for changing the waters.” – A Fish is the last to discover Water
  • “I hate running, but a few times a year I decide to be a runner. I update my cardio playlist, stretch my legs, and tell myself it’s going to be fun this time. And it is, for the first few minutes. Then at some point around mile three, I have to stop and walk. I turn into a sweaty, grunty, red-faced monster. An angry tomato in running shoes, floundering down the sidewalk.” – Enjoy the Walk
  • “While gaming and the larger tech industry intersect and overlap in many ways, much of tech’s infrastructure, power and financial centers, and culture operate distinctly from the machinations of the gaming industry, and most of tech has been able to ignore the spread of GamerGate to date.” – GamerGate’s Next Target Is The Tech Industry: Are We Ready?
  • “Working for a big business the word process can easily come up a dozen times in any given conversation. Depending on the individual you are speaking to it can come up multiple times in a single sentence. This is one of those words that is so overused that it begins to loose all meaning. The problem is that just saying you need process isn’t enough to solve your problem.”
  • “Mansplaining (verb, gerund) describes the phenomenon of someone (usually a man, but not always) behaving as though he has superior knowledge to someone else (often a woman) who actually knows more about the topic in question than he does.” – Beyond Mansplaining: A New Lexicon of Misogynist Trolling Behaviors

… and also in the news


Filed under: News

by Lena Reinhard at April 02, 2015 07:52 PM

March 26, 2015

The Offical CouchDB Blog

CouchDB Weekly News, March 26, 2015

Major Discussions

GitHub Pull Requests merging policy (SEE THREAD)

Ongoing discussion of approaches and processes for merging Pull Requests on GitHub.

Vote: Import docker-couchdb (SEE THREAD)

The vote passed.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

  • py-couchdb project is looking for a new maintainer. If someone is interested and would like to help, please contact Andrey Antukh (see contact details in this email).

Use Cases, Questions and Answers

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Job opportunities for people with CouchDB skills

Time to relax!

  • “As the 120-ton space shuttle sits surrounded by almost 4 million pounds of rocket fuel, exhaling noxious fumes, visibly impatient to defy gravity, its on-board computers take command. Four identical machines, running identical software, pull information from thousands of sensors, make hundreds of milli-second decisions, vote on every decision, check with each other 250 times a second. A fifth computer, with different software, stands by to take control should the other four malfunction.” – Space Shuttle Software: They write the right stuff
  • “Problems around this issue are not going to vanish overnight, but it’s clear that women won’t advance to top jobs until they can speak forcefully without being seen as incompetent, blabby nags. And without always having to second-guess their own actions in a way that men just don’t have to do.” – What happens when women speak up
  • “If you ask someone specifically to consider speaking at your conference, they’re WAY more likely to consider submitting a talk than if you don’t.” – You can choose who submits talks to your conference
  • “Being a low-budget community event, we didn’t have a lot of money. But we tried to show our attendees and speakers that we care about them. Here’s what we did and what it cost us.” – How much it cost us to make more attendees feel safe and welcome at .concat() 2015

… and also in the news


Filed under: News

by Lena Reinhard at March 26, 2015 06:54 PM

March 19, 2015

The Offical CouchDB Blog

The CouchDB Weekly News, March 19, 2015

CouchDB Weekly Meeting (see summary)

  • Fauxton status: Fauxton test suite for integration tests will be running on CouchDB 2.0 soon, a PR is already in review. For the Mango interface this means that integration tests can be written for it. In Mango, you can currently create indexes and list them, and work on rewriting the all-docs-list to react is currently ongoing as well.
  • rcouch merge: some work is already done, further work is currently on hold.
  • couchperuser: couchperuser may get donated to the ASF, a clearance and vote will be done to move this forward.
  • Google Summer of Code (GSoC): anyone who wants to mentor, please get in touch on the according thread.
  • couchdb-www: the infra team is currently testing git-based website publishing. I we now want to make any changes on the CouchDB Website now, we have to do it in SVN and git, but only for a short while, until we’re moved over fully
  • couchdbdocker: this project is also being imported from Github, paperwork has been filed, next step will be to get IP clearance going.
  • couchdb-nano: paperwork has been filed as well, the import process will start soon
  • _bulk_revs: discussion about optimising replication performance using _bulk_revs / COUCHDB-2310
  • CouchDB 2.0: a text about the process for the new logo will be written, and consolidation of install instructions will be figured out by community members.

Major Discussions

Vote: Import docker-couchdb (SEE THREAD)

Formal vote on accepting the donation of the docker-couchdb project to CouchDB. The vote is still ongoing.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Time to relax!

  • “Bengali is the seventh most common native language in the world, sitting ahead of the eighth (Russian) by a wide margin, with as many native speakers as French, German, and Italian combined. And yet, on the Internet, Bengali is very much a second-class citizen … .” – I Can Text You A Pile of Poo, But I Can’t Write My Name
  • “My primary lesson from the dark days of burnout is to be honest and transparent, even if you fear that people will find out the awful truth. Sometimes you have to accept that you aren’t as good as you think you are, that you’re a fool for thinking you could blithely avoid burnout by sheer will.” – On Burnout and the Year of Hell

… and also in the news


Filed under: News

by Lena Reinhard at March 19, 2015 07:52 PM

March 10, 2015

The Offical CouchDB Blog

CouchDB Weekly News, March 10, 2015

CouchDB Weekly Meeting (see summary)

  • Fauxton update: the team is currently working on a Mango interface in Fauxton
  • CouchDB logo discussion: a page will be created where all existing logo proposals are comparable and votable
  • CouchDB 2.0: list of blockers is here, and help is needed with testing this PR on your machine and writing feedback into the PR. Recently, an initial draft of the docs for 2.0 has been sent to the mailing list, feedback to this thread is very welcome as well.
  • Work on new website: information will be collected on the new website mailing list (www@couchdb.apache.org).

Major Discussions

CouchDB & Google Summer of Code: request for projects (SEE THREAD)

CouchDB takes part in this Google Summer of Code and they are searching for nice project ideas until the end of next week. If you have an idea for a project, just reply to this thread or create a Jira ticket and add the tag gsoc to it.

Releases in the CouchDB Universe

Use Cases, Questions and Answers

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

New Committer

  • Michelle Phung (Apache ID: michellep; IRC nick: michellep) has been elected as a CouchDB committer. Welcome to CouchDB, Michelle!

Events

Time to relax!

  • “I know that the majority of companies truly want to create a more diverse workforce, but I don’t think they know how to ensure that minority candidates like me have a fighting chance to pass their interview process.” – Trying to hire a diverse team of engineers? It’s not just a pipeline issue
  • “One category of reactions that I receive all the time as a programmer that presents as feminine is: No one believes I am a programmer. I can’t tell you how many people, when meeting me and hearing my profession, tell me that I look like a designer, someone in accounting, someone in marketing, anything but a programmer.”Coding like a girl

… and also in the news


Filed under: News

by Lena Reinhard at March 10, 2015 05:19 PM

March 03, 2015

The Offical CouchDB Blog

CouchDB Weekly News, March 03, 2015

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

New Committer

  • Kyle Joseph Snavely (IRC nick: ksnavely; Apache ID: ksnavely; Twitter: motohacker) has been elected as a CouchDB committer. Welcome to CouchDB!

Events

Job opportunities for people with CouchDB skills

Time to relax!

… and also in the news


Filed under: News

by Lena Reinhard at March 03, 2015 05:54 PM

February 25, 2015

The Offical CouchDB Blog

How to Organise Your Own CouchDB Day (it’s easy)

This post originally appeared on http://robert-kowalski.de/blog/how-to-organize-an-event/ and was written by CouchDB Committer Robert Kowalski. We are re-posting it here with his permission. See the recap to see how well it went.

Andy and I recently organized the first CouchDB Day in Hamburg. Having more CouchDB Days would be quite awesome, but Andy and me work as volunteers in our spare time and we don’t scale that much :) – same for the JS Unconf that I am organizing. In this post I want to share some insights regarding the organization of events. In general this guide is not limited to CouchDB or JavaScript – you can switch it with every other Open Source project or topics related to IT.

Organizing a (un)conference is much work, but it is also a lot of fun and a rewarding experience.

Decide on team size

A smaller team means faster decisions but sharing of tasks is limited. I suggest that you are at least 2 persons, as you can help each other and I think you get a better event as you both are taking care and have ideas. Having a larger team means sometimes much more time for finding a solution where everybody agrees on, but you can share more tasks over an amount of people.

Event length & expected amount of attendees

We decided to have the CouchDB Day for one day. Food and location are always the biggest expenses. That means if you decide on having a two day conference instead of one day, you will almost double your expenses.

That means the count of attendees and the length of the event directly relates to your costs (and the amount of sponsors you will need).

Examples:

CouchDB Day: 100 attendees 1 day   6.000€
JS Unconf:   300 attendees 2 days 40.000€

Choose a ticket price

If you decide on taking a small amount of money for the event you will decrease the no-show-rate. I also organize JS Unconf and the tickets cost 42-120€ for two days, including food and parties. This is quite cheap (just covering a very small part of the expenses) but the fact that you have to “buy” the ticket leads to many folks showing up even if it is raining outside.

Fun fact: after talking to other conference organizers which have ticket prices at 300-1.200€ it seems the price does not really matter. As long as the attendees pay something the no-show-rate is usually 15% and it does not matter if the ticket costs 1.000€ or 42€.

For our free event we had a 30% rate – we lowered the rate a bit by sending emails before the event to all attendees asking them to cancel their ticket if they can’t make it to the day.

Food

Make sure to ask attendees when buying their ticket if they have dietary requirements. The CouchDB Day had almost 50% vegetarians and vegans! Asking for it when they get the ticket makes it easier for you to plan the ratio of food needed.

As I just spend money I already got from sponsors food is the second thing after the location that I am trying to buy. It is also the most expensive part of the event.

If you have bad luck and can’t afford food it’s also no problem, but the location should be next to some restaurants.

Take care of diversity and a CoC

For JS Unconf 2015 and CouchDB Day we have a budget for diversity tickets. 100-150€ for travel plus a free ticket is a good amount to enable people that could not afford otherwise to join the event.

Please also take care of a Code of Conduct. It shouldn’t be just a link on your website, I suggest that you also mention it at the beginning of the event in your moderation and give a short explanation. Conferences should be a safe space for everyone.

You should also wear event T-Shirts that makes it easy for attendees to spot you in the crowd if they need help or have questions, you can also announce that in the beginning.

Get sponsors

You will need sponsors for the event. The deal for the CouchDB Day was:

* Banner with link on our website at http://day.couchdb.org/
* place for a Rollout-Banner at the event day
* A table for offering, t-shirts, info material and goodies
* your logo on the sponsor slide

1.000€ + VAT (19%)

For a one day event in Germany a budget of 6000€ is a good indicator, but it depends on your needs. We started with one-two sponsors and as we got more sponsors, we added more features to the event (like food, a photographer etc.).

I strictly just spent money that we already had in the past years and had good experiences with it. Sometimes it can happen that you are not able to spend all the money as you don’t have enough time before the event (e.g. last minute sponsoring one week before the event) – but you still can keep the money for next year. If there is no following event you can donate the money to organizations like the Ada Initiative.

Party

If you have money left, having a party in the evening is cool!

Organizing the party is easy, but there are a few things you should take care of: many attendees are not drinking alcohol at all, you should definitely offer softdrinks if you are offering beer for free. If you are also offering cocktails it is nice to have free non-alcoholic cocktails, too.

We usually have the party in a bar not too far away from the event-location.

I had bad experiences with vouchers for drinks in the past years, you have to take care everyone gets an amount of vouchers – and additionally as there is also a no-show rate at the party or some are leaving early it seems that you are often paying 500€ for vouchers, but just a few are used. It seems to me that it is easier to pay a specific amount to a bar and the attendees just show their badge for a free drink.

For a party after an event which has 100 during the day you can get pretty far with 500€ in the evening, depending on the price for a beer or softdrink. JS Unconf – which has 300 attendees and happens on Saturday and Sunday – has a budget of 500€ on Friday for our Warmup Party and 1.500€ for the main party on Saturday. Of course it is also possible to spend 1000€ with just 30-40 persons that are attending the party.

Add nice extras

If there is money left, spending it for a photographer is a good idea. Creating a Moodfilm which captures the atmosphere of the event is also nice if you have some money left. Both will help you and the attendees to remember how cool your event was.

For events regarding Open Source projects: contact the maintainers

Many Open Source projects have a trademark: CouchDB, Node.js and npm are all trademarked. Please contact the maintainers and explain your event to them. For CouchDB we contacted the CouchDB PMC with the initial idea and shared our logo designs. We got some nice tips from the PMC regarding our event, they even got a small guideline page for events!

You probably want some kind of insurance for your attendees. At least in Germany it is a good idea to have an insurance that will pay if bad things happen, like a lamp is falling down on an attendee. It costs around 150-300€ for 100-400 attendees.

As you are earning money and spending money you will need to think about your tax requirements. Can a company you are friends with help you regarding that? Are you organizing a lot of events and creating a foundation makes sense for you?

Conclusion

Organizing an event is a lot of work but it is not that hard! If you are organizing an event you can talk to other organizers and ask questions and share experiences.

I would be really happy if we see a CouchDB Day or JS Unconf in other parts of the world!


Filed under: News

by janlehn at February 25, 2015 03:51 PM

February 24, 2015

The Offical CouchDB Blog

CouchDB Weekly News, February 24, 2015

CouchDB Weekly Meeting (see summary)

  • CouchDB Day Hamburg: photos from the event will be shared on Flickr (update after the meeting: the photos can be found here)
  • Packaging CouchDB 2.0: the first PR for creating a CouchDB 2.0 tarball is up here, feedback is very welcome (especially for different platforms)
  • Remaining CouchDB 2.0 tasks: document with missing items is here, missing tasks and blockers will be added to Jira
  • Moving the “website group” and CouchDB Website to git
  • nano contribution to the Apache Software Foundation: community members will look into the code, volunteer on the Contributors Licensing Agreement signing process

Major Discussions

The latest CouchDB Report (SEE THREAD)

You can find the latest report on CouchDB here.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

no public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

New Committer

  • Eric Avdey (IRC nick: eiri; Apache ID: eiri) has been elected as a CouchDB committer. Welcome to CouchDB, Eric!
  • Welcome as well to Tony Sun (IRC nick: tonysun83; Apache ID: tonysun83; Twitter: TonyS0427), who has been elected as a CouchDB committer last week. Welcome on board!

Events

Time to relax!

  • “I felt that same beautiful freedom writing code that I knew and loved from skating. Compared with what skate culture had become, everything about tech felt fresh and possible. Where skateboarding now celebrated destruction, computer culture celebrated creation.” – Silicon Valley Could Learn a Lot From Skater Culture. Just Not How to Be a Meritocracy
  • “We all want to do something or be something and have it be okay with everyone. We talk about how we don’t care what people think, but what we really mean is that we only care what the people we care about think. We care about potential buyers/clients. We care about our family, friends, people we meet on the street or interact with online.” – Mary Cassatt
  • “Craft comes from learning the lessons and building new ways of doing things from experience and iteration. Craft is something we can teach the ones coming behind us. And by teaching craft to the next generation, we pay back those who came alongside us when we were young. And it can be as simple as passing an idea on.”On being generous
  • “In 2011, after 15 years, she left before achieving a management position.” – Women are leaving the tech industry in droves
  • “We’re happy to tell people to disable security features in order to install third-party software. We’re happy to tell people to download and build source code without providing any meaningful way to verify that it hasn’t been tampered with. Install methods for popular utilities often still start “curl | sudo bash”. This isn’t good enough.” – It has been 0 days since the last significant security failure. It always will be.

… and also in the news

  • “CouchDB is always my favourite example of a great REST implementation” (@CodeStars, on Twitter)
  • “Teaching myself Node.js, AngularJS, CouchDB, tied together with Yeoman. This is pretty awesome.” (@jimmywim, on Twitter)

Filed under: News

by Lena Reinhard at February 24, 2015 02:11 PM

CouchDB Day 2015 recap

On February 7th, the first CouchDB Day took place in the nice city of Hamburg, Germany. It was a blast! This blog post is a recap of the Day and will report about what happened.

But first of all, we would like to share some impressions with you. We were lucky enough to have a film team at the event and we are super excited to present the first CouchDB Day Mood Film.

<iframe allowfullscreen="true" class="youtube-player" frameborder="0" height="326" src="http://www.youtube.com/embed/pjv5M4YyLrA?version=3&amp;rel=1&amp;fs=1&amp;showsearch=0&amp;showinfo=1&amp;iv_load_policy=1&amp;wmode=transparent" type="text/html" width="525"></iframe>

The Day before

As this was the first CouchDB Day, Robert and me took extra care of everything in advance. At least we think we did. So the day before the event, we met with Holger Blank, Klaus Trainer and Sebastian Rothbucher to set up everything in the location. Thanks again to Holger and SinnerSchrader for hosting us. We couldn’t have imagined a better place. You rock! :)

We had a main room with a capacity for approx. 120 people – the amount of attendees we expected. Furthermore, there was a lounge where we decided to serve breakfast and lunch.And we had two more conference rooms. The main room is that big so that we divided it into two rooms. So if counting correctly, we had four rooms for hacking, speaking or simply hanging around. Each with a projector for sure.

Preparing everything was quite easy because my former fine colleague Daniel Goos form SinnerSchrader had already setup the audio stuff and the fridge for drinks was filled ;-). So nothing stopped us from looking forward to the next morning. But we shall not forget to check out the party location and the beer they served there. That’s we did as our last task at this day.

The Day

We arrived at 08:00 in the morning. Pretty early for a Saturday but looking forward to an awesome event saved us from complaining about the time.

And believe it or not. There had already been some attendees waiting to get in. Cool start.

We opened doors at 08:30 and the people came in time. Awesome. The mega cool two by two Espresso machine started to roar. Everything was fine.

At 09:00 Robert and me gave the introduction and welcomed everybody. The first impression was a blast. With ~100 people attending, our “no show” rate was low. Perfect.

CouchDB Day 2015 Intro

Introduction by Robert and Andy

After some info and proposals how we thought to run the day, it was our pleasure to welcome Jan Lehnardt as our keynote speaker.

<iframe allowfullscreen="true" class="youtube-player" frameborder="0" height="326" src="http://www.youtube.com/embed/cbVXHpSCgb8?version=3&amp;rel=1&amp;fs=1&amp;showsearch=0&amp;showinfo=1&amp;iv_load_policy=1&amp;wmode=transparent" type="text/html" width="525"></iframe>

Hacking, talking, presenting

It was extremely cool to see, that many groups had been formed after a quick “find my interest”. There was an introduction to Erlang by Robert Newson, an introduction to Hoodie by Ola Gasidlo and Sven Lito and an introduction to Fauxton by Sebastian Rothbucher and Robert Kowalski for example.

Robert Newson showing Erlang

Bob showing Erlang

Sebastian showing Fauxton

Sebastian showing Fauxton

Ola and Sven showing Hoodie

Ola and Sven showing Hoodie

But a lot more groups sat together and discussed or hacked. This was, for us as the organisers, exactly what we were looking forward to. So at this point of the day: mission accomplished.

Talks

As our idea was that all attendees work on and with CouchDB, we decided to have only three talks. After lunch, we were extremely happy to hear and see a live introduction to CouchDB 2.0 by Klaus Trainer.

<iframe allowfullscreen="true" class="youtube-player" frameborder="0" height="326" src="http://www.youtube.com/embed/C1FFMedIemY?version=3&amp;rel=1&amp;fs=1&amp;showsearch=0&amp;showinfo=1&amp;iv_load_policy=1&amp;wmode=transparent" type="text/html" width="525"></iframe>

And directly after Klaus, we saw Frank Mecklenburg with his talk How to replicate the Internet into your browser and a short Q&A.

<iframe allowfullscreen="true" class="youtube-player" frameborder="0" height="326" src="http://www.youtube.com/embed/V7mC1eoaRI0?version=3&amp;rel=1&amp;fs=1&amp;showsearch=0&amp;showinfo=1&amp;iv_load_policy=1&amp;wmode=transparent" type="text/html" width="525"></iframe>

This was perfect after a well received and yummy lunch provided by Schanzenstern Hamburg.

After these talks the attendees went back to form different groups and worked on various other things. Again – Cool!

At around 16:00 we served various cake and stressed the two by two Espresso machine again. It was delicious and extra sugar motivated everybody.

We recognised, that the time period between the lunch talks and the last talk was a bit long. Maybe everyone ate too much because it was that good ;-). So to not stress everybody’s mood, we asked Ólafur Arason if he would start 30 minutes earlier with his talk Reusing CouchDB cookies for token based urls. And so he did.

<iframe allowfullscreen="true" class="youtube-player" frameborder="0" height="326" src="http://www.youtube.com/embed/5DqBYsvoD9M?version=3&amp;rel=1&amp;fs=1&amp;showsearch=0&amp;showinfo=1&amp;iv_load_policy=1&amp;wmode=transparent" type="text/html" width="525"></iframe>

Outro and Party

Well, after one more Q&A for Ólafur’s talk, we came to the end of the day. Robert and I were extremely happy that everything went that well and obviously everybody was happy with the day. So the last thing we had to ask the attendees is to wait a bit for a family photo and show them the way to the next whisky bar … aka the CouchDB Day party.

Party

The party location was a bar in Altona called Laundrette. Funny fact: you can bring your laundry and wash it there ;-). The party was super awesome and the budget we had (and some extra ;-) ) was enough to make everyone happy. It was again a full success.

## Committer meeting on Sunday

We already planned a CouchDB committer meeting for Sunday. And so we met in the Ubilabs office (thanks for hosting us again) and started to discuss the next steps to CouchDB 2.0. This day was also a success because hacking on CouchDB 2.0 resulted in a even more stable CouchDB 2.0 developer preview.

Videos and Photos

The CouchDB project has a CouchDB Youtube Channel at CouchDB Youtube . You are welcome to watch the talks from the CouchDB Day. And we have also Flickr album where we put some photos from the event. Please check it out at CouchDB Flickr.

Conclusion and thanks

CouchDB Day 2015 was a blast. The feedback we received was extremely good. Some people already asked us when the next CouchDB Day will happen this year :). Please be patient and expect the next one next year.

All this would not have bend possible without our great sponsors. Please visit http://day.couchdb.org and say hello to them. You all rock!

And we also want to thank the people who helped to make this day so extremely successful. The people who talked about stuff in the groups, the speakers, the helpers, the video crew, the food crew, the photo crew and last but not least the attendees. The CouchDB Day would not have happened without you! You rock and you are awesome.

Extra special thanks go out to sum.cumo GmbH for doing all the financial stuff for us. And to Luigi Dileone for creating the awesome CouchDB Day logo. Thank you!

We are looking forward to see all of you next year. Because …

There will be a CouchDB Day 2016! Promised!

All the best for you from

Robert and Andy


Filed under: Events

by andywenk at February 24, 2015 11:12 AM

February 17, 2015

The Offical CouchDB Blog

CouchDB Weekly News, February 17, 2015

CouchDB IRC Meeting

The next CouchDB IRC Meeting will take place on February 18th, 8pm GMT (you can check your local time e.g. here). Everyone is welcome to attend this meeting. If you have anything to put on the agenda, please reply to this email or mention it at the start of the meeting. The meeting will take place in irc://irc.freenode.net/couchdb-meeting, you can also access it online by following this link.

Releases in the CouchDB Universe

  • couchdb-audit 0.1.3 – an npm and Kanso module for auditing changes to CouchDB documents
  • pouchdb-load 1.3.0 – PouchDB Load – load dumped CouchDB/PouchDB databases on the client
  • vflow-pouchdb 1.0.8 – a flow abstraction for you PouchDB or CouchDB write-stream database

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

No public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

Events

Job Opportunities for people with CouchDB skills

Time to relax!

  • Our puny brain can handle a very limited amount of logic at a time. While programmers proclaim logic as their domain, they are only sometimes and slightly better at managing complexity than the rest of us, mortals. The more logic our app has, the harder it is to change it or introduce new people to it.” – Writing code for humans
  • “Software increasingly defines the world around us. It’s rewriting everything about human interaction — I spend a lot more time on my iPhone than I do at my local civic center. Facebook, Apple, Tinder, Snapchat, and Google create our social realities — how we make friends, how we get jobs, and how mankind interacts. And the truth is, women don’t truly have a seat at the table.” – I’m Brianna Wu, And I’m Risking My Life Standing Up To Gamergate

… and also in the News


Filed under: News

by Lena Reinhard at February 17, 2015 08:14 PM

February 10, 2015

The Offical CouchDB Blog

CouchDB Weekly News, February 10, 2015

CouchDB IRC Meeting

The next CouchDB IRC Meeting will take place on February 18th, 8pm GMT (you can check your local time e.g. here). Everyone is welcome to attend this meeting. If you have anything to put on the agenda, please reply to this email or mention it at the start of the meeting. The meeting will take place in irc://irc.freenode.net/couchdb-meeting, you can also access it online by following this link.

Major Discussions

Mango working on CouchDB Master (see thread)

Mango has just been enabled in CouchDB Master, so you can now play with it. You should be able to follow this example.

Release of CouchDB 2.0? (SEE THREAD)

Question: A user asked about the expected release date or time frame for CouchDB 2.0

Answer: There is no official release date yet, especially since there is still some work to be done – e.g. the setup topics and also documentation are not yet finished (in parts not even started). You can of course already test CouchDB 2.0 in the Developer Preview.

CouchDB-Scala – a new purely functional Scala client for CouchDB (see thread)

The first public release of CouchDB-Scala has been announced – a purely functional Scala client for CouchDB. You can find the project on GitHub, a few details and notes about it are in the Wiki.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

No public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

Events

Job Opportunities for people with CouchDB skills

Time to relax!

  • “Everyone is obsessed with how successful people start their day. And if you’ve decided to do something about the quality of your life, you’ll start working on developing a morning routine and trying different versions of it. But we seem to forget that what productive people – those who work each day to achieve what they want and have hacked so many areas of their life – do before they go to bed is as important.”10 Things to do before you go to Bed
  • “Many Americans spend a minimum of eight hours per day sitting in an office, but we observed significant physical and mental health benefits in subjects after just one instance of standing up, walking out the door, and never coming back to their place of work again, … .” – Health Experts Recommend Standing Up At Desk, Leaving Office, Never Coming Back

… and also in the News


Filed under: News

by Lena Reinhard at February 10, 2015 08:03 PM

February 03, 2015

The Offical CouchDB Blog

CouchDB Weekly News, February 03, 2015

Major Discussions

Welcome to Mango to CouchDB and the ASF (see thread)

We’re excited to welcome Mango to CouchDB and the ASF this week. Mango is an API Layer for CouchDB with a MongoDB inspired query language interface for Apache CouchDB which got donated to the ASF by IBM Cloudant. The codes is located here, a GitHub mirror should be available anytime soon.

Update handlers (see thread)

Question: a user had thought that updates were automatically called upon submitting or modifying a document to the DB, but then realised that to make an update run, they need to call its URL. They asked if there’s a way to achieve what they need or if they better add the logic to their server side code.

Answers:

  • Update handlers need to be requested explicitly.
  • CouchDB doesn’t provide any method to change your documents automagically on PUT. It’s not oblivious how this feature should work
    in case of replication.
  • Normally, you don’t need any server side. All you need is to ensure
    that the clients are send you valid documents (e.g. setup validate_doc_update functions). Whether they call update handlers or they implement update handle logic on their side is not a question users should be concerned about – but valid data is.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

No public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

Events

Time to relax!

  • “But I look back and feel grateful for those trials and what they’ve taught me. They’ve forced me to grow and made me a better person. Most importantly, they taught me one of the hardest and most important lessons I’ve learned in my life: Seek to live with an open palm.”The weight is a gift

… and also in the News


Filed under: News

by Lena Reinhard at February 03, 2015 08:55 PM

January 27, 2015

The Offical CouchDB Blog

CouchDB Weekly News, January 27, 2015

Major Discussions

Offer to donate Nano and futoncli to CouchDB (see thread)

CouchDB got the offer to receive Nano and futoncli as donations. Many questions and details have been discussed in the thread. Legal questions around it have been raised separately towards the ASF Incubator this week as well.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

No public answer yet

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

Events

Job Opportunities for people with CouchDB skills

Time to relax!

  • “To avoid being stuck in a local maxima, we need to periodically look across boundaries. This means both looking below familiar abstractions, and above to see what others are building upon your work.” – Coevolution of Software
  • “How about let’s have 2015 be the year that we stop looking for ‘rockstars’ and stop tolerating ‘rockstar’ behavior like people who constantly interrupt and speak over others because their ‘rockstar’ opinion is just that … important. If we all mindfully work to interrupt this interrupt culture, all voices can be heard, and everyone wins.” – On interrupting interrupt culture
  • Philosophers and scientists have been at war for decades over the question of what makes human beings more than complex robots. – Why can’t the world’s greatest minds solve the mystery of consciousness?
  • “Fuelling the mind isn’t easy, it requires rigour and discipline. Put in that discipline, however, and the returns will be considerable. Your ideas will flow and, the more you apply yourself to priming the brain, the more you’ll see connections in the content you encounter.” – Designing a Mind

Filed under: News

by Lena Reinhard at January 27, 2015 07:12 PM

January 20, 2015

The Offical CouchDB Blog

CouchDB Weekly News, January 20, 2015

Major Discussions

Limitation on number of databases? (see thread)

Question: A user was wondering if CouchDB was imposing any limit on the number of databases which a single instance can serve (and replicate).

Answer: There are two limits:

  1. Operation system limit on file descriptions user allowed to manage (see uliimit).
  2. CouchDB inner limitation. See the CouchDB Docs for details.

Configuring these options right allows you to serve thousands active
databases without any problem.

CouchDB to csv file (see thread)

Question: a user is working on a script in Java to convert a whole CouchDB into a csv file and wants to know about the easiest way to do that.

Approaches:

  • using `/{db}/_all_docs?include_docs=true` (see docs)
  • Couch has an HTTP API, so you have to pull the right URL in Java (i.e. open a java.net.Connection to the right URL). You can try the URL in the browser before to check whether all the right data is there. So, you can point your browser to http://{server}:{port}/{db}/_all_docs?include_docs=true and check if you have all info in it. Then you can use something like (new java.net.URL(“http://{server}:{port}/{db}/_all_docs?include_docs=true”).openConnection()) to grab the URL connection and work from there. Using something like this is certainly useful
    when moving forward.
  • using a list and fetching it as a csv file.

Releases in the CouchDB Universe

Use Cases, Questions and Answers

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

Events

Job Opportunities for people with CouchDB skills

Time to relax!

  • “Turns out great minds don’t think alike. Discover how some of the world’s most original artists, writers and musicians structured their day … .” – The Daily Routines of Famous Creative People
  • “As developers, designers, and content creators we cannot control what users are carrying into their experiences with our work. They’re carrying past and present pain. We cannot pretend our users are perfect automatons, single data points on a web log devoid of emotion. We have to be kind. After all, we have our own past and present pain we’re carrying into the interaction.” – The Year of Empathy
  • “Ah, meritocracy! The great solution to all of society’s problems, at least if the white, heterosexual, cis-male hacker is to be believed. If just we’d had meritocracy, then we could actually solve the important problems, and everyone would be happy!” – There’s no merit in meritocracy

… and also in the news


Filed under: News

by Lena Reinhard at January 20, 2015 04:13 PM

January 13, 2015

The Offical CouchDB Blog

CouchDB Weekly News, January 13, 2015

Major Discussions

CouchDB Day 2015 is coming very soon (see thread)

CouchDB Day 2015 will take place in Hamburg, Germany, on February 7, 2015. You can still register a free ticket here. The schedule is already online here. The Hoodie people are giving away four travel grants for visiting CouchDB Day, you’ll find all details in this post.

For you people in Berlin: there’s also an opportunity to get a ride to Hamburg with someone visiting CouchDB day.

React.js and Fauxton (see thread)

The Fauxton team wants to move from using backbone.js for Fauxton development to using React.js and a Flux architecture. There’s already a Pull Request for the initial work and they’re looking for feedback. Generally, any feedback you will have to improve this branch is very welcome, also feedback on whether they’re adhering to the Flux pattern correctly and more questions which you can find in detail here. It would be great to have your support in this!

Open PRs which need some review and merge (see thread)

There’s a number of open PRs which need some review and help – you’ll find the list here.

Proposal: CouchDB tests organisation (see thread)

Proposal for slight change in CouchDB’s test layout, the full text is here.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

No public answer yet:

  • Stack Overflow: How to GET all doc from CouchDB database and show then in a HTML <div>?

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

Events

Job Opportunities for people with CouchDB skills

Time to relax!

  • “Empathy is the most important skill you can practice. It will lead to greater success personally and professionally and will allow you to become happier the more you practice.”Your most important skill: Empathy
  • “One of the most popular, enduring, and irritating myths about depression is that it means depressed people are sad all the time – and that by extension, people who are happy can’t be experiencing depression, even if they say they are.” – Depression doesn’t make you sad all the time
  • “I love Open Source. It has taught me many things going beyond programming — better collaboration, patience, compassion and mentoring. But it has a very dark side too, that often gets swept under the carpet of shiny benefits of a new career and so-called fame.”The Dark Side of Open Source

… and also in the news


Filed under: News

by Lena Reinhard at January 13, 2015 07:45 PM

December 19, 2014

The Offical CouchDB Blog

CouchDB Weekly News, December 19, 2014 and CouchDB Highlights in 2014

CouchDB IRC Meeting (see summary)

  • CouchDB Day 2015, Hamburg, Germany – if you attend and would like to talk about CouchDB 2.0 or something please get in touch with awenkhh (andywenk@apache.org)
  • CouchDB 2.0 – an email will be sent to dev@ mailing list with a first plan about dependencies reorganisation
  • Cloudant Query (Mango) Contribution
  • Fauxton – good progress, still a few blockers for 2.0
  • CouchDB Branding (logo, slogan) – ongoing discussion on marketing@ mailing list

Major Discussions

Stream CouchDB changes in PostgreSQL (see thread)

A user wrote about their setup and use case and this Node libary to stream CouchDB changes into PostgreSQL, there’s also a round of feedback and more ideas from the community in the thread.

Soft launch: CouchDB Advocate Hub now live (see thread)

In order to broaden the number of people contributing to CouchDB and give people more opportunities to support the project and our marketing efforts, we’re soft launching CouchDB’s Advocate Hub this week. There’s a basic set of challenges set up, some basic badges, and some basic rewards, which can already be tried, and which you can give feedback to (either in the community forum, or in the email thread). There’s more planned for next year, but it would be great if you could already take a first look and give us some feedback.

Deprecation of erlang@ mailing list (see thread)

As for inactivity, the erlang@ mailing list has been deprecated this week. Goodbye, Erlang mailing list, and thanks for the great times we had with you!

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

Events

Time to relax!

  • “One of the most consolidated misconceptions about programming, since the early days, is the idea that such activity is purely technical, completely exact in nature, like Math and Physics. Computation is exact, but programming is not. The first is a result of a machine operation, and the latter is still a human activity.” – The Art of Programming
  • “If you’re feeling anxious, breathe from your diaphragm in order to keep your sympathetic nervous system from revving up too much. And remember that it can be good to be keyed up: the right amount of nervousness will enhance your performance.” – The relationship between anxiety and performance
  • “It had long been tradition that operating calculating machines was “women’s work”; it was thought to be just keypunching, like typing. Women programmed and operated the punchcard machines to produce calculations for the Manhattan Project.” – Margaret Hamilton, Lead Software Engineer, Project Apollo
  • “I decided to start celebrating in a public way so that more people may be inspired to find their own ways of marking their career achievements. These are those donuts.” – The importance of donuts

CouchDB Highlights in 2014

The year is almost over, and it’s a great time for a quick look back – back at an exciting year full of work and great news from CouchDB, its community and CouchDB’s universe. And here’s to only a few of them (in random order):

  • CouchDB 2.0 Developer Preview is released.
  • CouchDB 1.6.1 released.
  • The CouchDB community established its Code of Conduct and Diverstiy Statement, which were later adopted by the Apache Software Foundation as well
  • In 2014, 9 new Committers and 2 new Project Management Committee members joined the community in addition to everyone who’s already part of the project. CouchDB now has 42 committers and 12 PMC members. We’re proud and honoured to have you all on board.
  • IBM acquired Cloudant.
  • Cloudant Local released (the first CouchDB-on-your-premises-with-enterprise-support product).
  • In March, the first issue of the CouchDB Weekly News has been published, and this post is the 38th issue of these Weekly News.
  • CouchDB got a new blog (it’s this one that you’re looking at).
  • Cloudant Query being donated to CouchDB.
  • npm’s continued success, building on CouchDB and the founding of npm, inc.
  • Postgres & MySQL continue to work on native JSON support + HTTP interfaces.
  • Several major PouchDB releases.
  • Release of Fauxton.
  • … as well as many, many more. Thanks to everyone who helped making all of this possible!

Editors’ Note

Dear reader, we want to thank you for reading this, our last issue of the CouchDB Weekly News in 2014. Both CouchDB and its Weekly News are from the community and for the community, and we’re glad that you’re with us. We wish you great last days this year and hope your new year will be off to a good start.

Stay with us, and: relax.

… and also in the news


Filed under: News

by Lena Reinhard at December 19, 2014 11:02 AM

December 11, 2014

The Offical CouchDB Blog

CouchDB Weekly News, December 11, 2014

Releases in the CouchDB Universe

  • nano-repository 1.0.0 – makes using CouchDB via Nano even easier
  • broccoli-couchdb-versioning 0.1.1 – define couchdb design documents on the file system, and automatically push them to couchdb when they change
  • boxspring 0.0.20 – a collection of Backbone Model classes for interacting with CouchDB compatible with Browser and Server-side execution
  • express-pouchdb 0.8.1 – express submodule with a CouchDB style REST interface to PouchDB
  • cradle 0.6.9 – the high-level, caching, CouchDB library
  • couchbeam 1.1.5 – a CouchDB client library for Erlang applications
  • npm have relaunched their website

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

No public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

Events

Time to relax!

  • “The idea that the software industry benefits from an unwritten law of unconditional and mutual respect is an extension of meritocratic thinking: it’s as unrealistic as the meritocracy itself.” – Codes of Conduct: when being excellent is not enough
  • “The world is not acting in our long-term benefit. Imagine you walk down the street and every store is trying to get your money right now; in your pocket you have a phone and every app wants to control your attention right now. Most of the entities in our lives really want us to make mistakes in their favor. So the world is making things very, very difficult.” – How to be efficient

… and also in the news


Filed under: News

by Lena Reinhard at December 11, 2014 02:43 PM

December 04, 2014

The Offical CouchDB Blog

CouchDB Weekly News, December 04, 2014

Major Discussions

Infinite resets hanging views (see thread)

Question: a user is trying to run a temporary view on a big-ish db (> 1000 docs), and the view seemed to hang forever, and they were not sure if there was something wrong with their view or settings. The view looked like this:

# map function
function(doc) {
emit(doc, doc.tweets);
}

Answers / approaches:

  1. Think of `map` as a way to create secondary indexes.
    1. An index on the whole document doesn’t make much sense.
    2. Moreover, at query time, if you want to get data that are in the same document, need map/reduce isn’t needed at all. Just create a `show` function.
  2. I would go further and say: Never emit the full doc in a map function.
    You can get the full doc by using the include_docs flag when querying the
    view. If you need a key that only refers to a single doc, use the _id of
    the doc.
  3. Don’t write your own reduce functions, use couch’s built in, Erlang functions (See http://wiki.apache.org/couchdb/Built-In_Reduce_Functions). You will save yourself a lot of headaches and you will not match the performance of these functions. In your case, _count is probably what you want, though you probably don’t even need a reduce function with such an index (as Aurelien essentially pointed out). Handle the case where doc.tweets doesn’t exist in your map function:
    emit(doc._id, doc.tweets || []);

Allow user-defined views (see thread)

Question: a user was thinking about a platform based on CouchDB, where each set of users would get their own CouchDB Database, to store and query data. They want to allow them to define their own custom queries to query the data and want to create a form which allows to build a query and translates it to a JS view, and, on top of that, defining custom views directly in JS – basically their custom map/reduce functions. The users would also be able to import different sets of data. Still, they were not sure about possible DoS attacks with endless loops inside the function, or attacks by emiting too much data.

Approaches:

  • os_process_timeout applies to view servers (default is 5 seconds) so you can configure the timeout for view queries, not sure about CPU/HDD Space (although inspecting _stats might shed some light).
  • If viable for the application, it may also be possible to initially have a process where new queries written are vetted by a human before they are run. The advantage of this is two-fold, namely:
    • i) you’ll be able to move on a prove your concept quickly
    • ii) while doing this, you may learn enough (and things may change enough) for you to automate the vetting process.
  • The worst case will be always RCE since you’re going allow everyone
    execute arbitrary code on your server. JavaScript query server is only safe while SpiderMonkey sandbox is. However, if you want to use some custom query servers when things will go bad since nor Python, Erlang, Clojure and other I know servers supports sandboxing which means you can do anything.
  • The idea may work for Mango – Cloudant views query DSL – since it’s very limited by allowed operations, but then you’ll face another problem: disk space will run out very quickly since a single index file may be much more bigger then database itself.
  • For now the most simple and secure way to allow custom users view is to let users replicate your database to their CouchDB instance where they can do anything whatever they need.
  • Another approach: use CouchDB for whatever you need on the server side, and when a user needs to run a custom query, run that query on a client-side copy of the data in PouchDB. This wouldn’t work with very large data sets, but would work on smaller data sets.
  • Alternatively, don’t allow the user to write the view. Build some Ui that helps creating the view function, specify some things that can be run on the data and construct the view with that. This is essentially a query builder for CouchDB.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

No public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

Events

Time to relax!

… and also in the news


Filed under: News

by Lena Reinhard at December 04, 2014 05:42 PM

November 27, 2014

The Offical CouchDB Blog

CouchDB Weekly News, November 27, 2014

Release

  • CouchDB 2.0 Developer Preview has been released last week. You can download it here, its features and more are described here

Major Discussions

Offline Replication / Synchronisation (see thread)

Question: due to infrastructural reasons, online synchronisation is impossible in a project. Thus, a user asked if it were possible to create some sort of file with the delta-update that could be transported to a place with better Internet access or to the next hub (e. g. country coordination) where it is imported in the instance running there, or anything similar that could be feasible.

Approaches:

  • If connections are bad, but work sometimes, and the use case permits that data is only synchronised sometimes, then CouchDB’s current functionalities are sufficient.
  • When connections are just always bad, the user can copy the .couch file (“the CouchDB database”) to something that they can bring to a connected hub. Then they put the .couch file into a place that can run CouchDB, start CouchDB, sync from there. CouchDB will figure out the delta. In this, the full DB will carried, but only the delta will be synchronised. Just carrying the delta is currently not really an option. If that is a concern, hacking around with pouchdb-replication-stream, pouchdb-dump-cli or pouchdb-load may help.

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

No public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

Events

Time to relax!

… and also in the news


Filed under: News

by Lena Reinhard at November 27, 2014 11:02 AM

November 21, 2014

Kanso

Focus mode

I'm currently reading The Shallows by Nicholas Carr. It's been enjoyable so far, even if it's mostly nostalgia for the physical book as a medium. I'll reserve judgement on the text as a whole until I've finished it, but I wanted to make a small digression first (which you might consider ironic after reading the book).

One point that resonated with me regarded the cognitive load of hyperlinks. Rather than simply annotating text to add meaning, links can distract us from digesting the information. Anyone who's lost themselves in a Wikipedia rabbit-hole will probably find that familiar. In web development we're constantly fussing over the call to action or otherwise encouraging interactivity. So, for a bit of fun, I've thrown together a tiny bookmarklet to remove all links on a document and replace them with text. Who knows, perhaps it'll help you get through that extra long blog post you've only been scanning up until now. So, without further ado, I present that last link you'll ever click (on this page): Focus Mode.

What's more, it fits into a tweet, too. If you like it, drag it up to your bookmarks bar and use it as a bookmarklet on other sites. Though, if you've just clicked it you might have to reload the page first! Oh, and well done, you've just successfully avoided the gauntlet of links on this post (or at least came back afterwards).

November 21, 2014 03:52 PM

November 20, 2014

The Offical CouchDB Blog

CouchDB Weekly News, November 20, 2014

Release

  • CouchDB 2.0 Developer Preview has been released. You can download it here, its features and more are described here

Major Discussions

Guidelines for creating a CouchDB Event (Work in Progress; see thread)

New guidelines for creating a CouchDB Event have been set up, you’ll find them here. Your feedback is highly appreciated.

The Apache Software Foundation adopts CouchDB’s Code of Conduct and Diversity Statement (see thread)

On November 18, the ASF has adopted the CouchDB Code of Conduct and Diversity Statement into an official ASF-wide policy.

Releases in the CouchDB Universe

  • couchdb-python 1.0 – issue fixes, improvements and more; download from PyPI | source
  • Mango – a MongoDB inspired query interface; Open Sourced by Cloudant this week, with an intent to donate it to CouchDB; more details on it are here
  • sofa – easy R interface to CouchDB

Opinions and other News in the CouchDB Universe

Use Cases, Questions and Answers

No public answer yet:

For more new questions and answers about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to have you on board!

Events

Time to relax!

  • “It seems the mere mention of tools that support and encourage marginalised people to be a part of the tech industry incites a frothing flame war from the privileged.” – Tech Freedom vs. Feminism
  • “Keep cake moist by just eating the entire thing in one sitting.” – … and 12 more amazing Food and Life Hacks you need to know right now
  • “As a tech community, we are increasingly recognizing that diversity is fundamental to building a just, inclusive and beneficial industry, and that diverse teams perform better, are more innovative, and can build better products for a diverse world. In order to be successful with diverse recruiting, tech companies must invest in analysis and improvement at every stage of the hiring process.” – 25 Tips for Diverse Hiring
  • Kitten Therapy: the Prescription for Stress
  • Sloth Life

… and also in the news


Filed under: News

by Lena Reinhard at November 20, 2014 06:41 PM

June 10, 2014

The Old Official CouchDB Blog

Apache CouchDB 1.6.0 Released

Apache CouchDB 1.6.0 has been released and is available for download.

CouchDB is a database that completely embraces the web. Store your data with JSON documents. Access your documents with your web browser, via HTTP. Query, combine, and transform your documents with JavaScript. CouchDB works well with modern web and mobile apps. You can even serve web apps directly out of CouchDB. And you can distribute your data, or your apps, efficiently using CouchDB’s incremental replication. CouchDB supports master-master setups with automatic conflict detection.

Grab your copy here:

http://couchdb.apache.org/

Pre-built packages for Windows and OS X are available.

CouchDB 1.6.0 is a feature release, and was originally published on 2014-06-10.

These release notes are based on the changelog.

Upgrade Notes

The Proxy Authentication handler was renamed to proxy_authentication_handler to follow the *_authentication_handler form of all other handlers. The old proxy_authentification_handler name is marked as deprecated and will be removed in future releases. It’s strongly recommended to update the httpd/authentication_handlers option with the new value if you have this handler configured.

What's New

  • COUCHDB-2200: support Erlang/OTP 17.0 #35e16032
  • Fauxton: many improvements in our experimental new user interface, including switching the code editor from CodeMirror to Ace as well as better support for various browsers.
  • Add the max_count option (UUIDs Configuration) to allow rate-limiting the amount of UUIDs that can be requested from the /_uuids handler in a single request (CVE 2014-2668).
  • COUCHDB-1986: increase socket buffer size to improve replication speed for large documents and attachments, and fix tests on BSD-like systems. #9a0e561b
  • COUCHDB-1953: improve performance of multipart/related requests. #ce3e89dc
  • COUCHDB-2221: verify that authentication-related configuration settings are well-formed. #dbe769c6
  • COUCHDB-1922: fix CORS exposed headers. #4f619833
  • Rename proxy_authentification_handler to proxy_authentication_handler. #c66ac4a8
  • COUCHDB-1795: ensure the startup script clears the pid file on termination. #818ef4f9
  • COUCHDB-1962: replication can now be performed without having write access to the source database (#1d5fe2aa), the replication checkpoint interval is now configurable (#0693f98e).
  • COUCHDB-2025: add support for SOCKS5 proxies for replication. #fcd76c9
  • COUCHDB-1930: redirect to the correct page after submitting a new document with a different ID than the one suggested by Futon. #4906b591
  • COUCHDB-1923: add support for attachments and att_encoding_info options (formerly only available on the documents API) to the view API. #ca41964b
  • COUCHDB-1647: for failed replications originating from a document in the _replicator database, store the failure reason in the document. #08cac68b
  • A number of improvements for the documentation.

by djc at June 10, 2014 05:17 PM

June 06, 2014

The Old Official CouchDB Blog

CouchDB Weekly News, June 06

Weekly CouchDB meeting – summary

  • 1.6.0 release status: the vote had passed last week, binaries for Mac and Windows are ready for testing. The release will be very soon, stay tuned!
  • BigCouch merge: significant process has been made; testing is highly important now. We want to encourage everyone to help with testing COUCHDB-1843 branch, especially :5984 API iface. Info: to run the bigcouch from merge branch: clone couchdb.git, checkout 1843-feature-bigcouch, ./configure && make && dev/run. Please report any errors you find during testing on dev@ Mailing list or on IRC #couchdb-dev.
  • Bylaws, Code of Conduct and Diversity Statement: all PMC members are asked for reviewing and commenting the Bylaws and the Code of Conduct and Diversity Statement. A thread about approval models and vetoes will be started on the mailing list.

Releases in the CouchDB Universe

Opinions

Use Cases, Questions and Answers

no public answer yet:
For more new questions about CouchDB, see these search results.

Get involved!

If you want to get into working on CouchDB:
  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
We'd be happy to have you!

Events

Job opportunities for people with CouchDB skills

… and also in the news

Posted on behalf of Lena Reinhard.

by Noah Slater at June 06, 2014 04:04 PM

May 30, 2014

The Old Official CouchDB Blog

CouchDB Weekly News, May 30

Major Discussions

Vote on release of Apache CouchDB 1.6.0 rc.5 (will be released as Apache CouchDB 1.6.0 — see thread)

The vote passed.

Limiting view access (see thread)

Use case: sharing docs between users with different roles and according access. Goal is to make sure via adding according CouchDB settings that no user can see who the other users of the doc are.

Answer: Natively, CouchDB doesn’t provide this functionality. Thus, the canonical answer is to use a proxy in front of CouchDB that can limit access to certain URLs, or to deploy a middleware layer written in your favourite language that can broker the access.

CouchDB minimum revs_limit and Compaction (see thread)

Use case: limiting the number of revisions stored for a specific document in a database. Setup: setting the revs_limit to a specific number and then running the compaction. This did not work, the number of revisions could not be limited this way, and the enquirer asked why.

Answer: _revs_limit does not do what one may think it does, – CouchDB is not a revision control system. After completion only the latest revision of each document is preserved. _revs_limit refers only to how many old _rev values are retained. Lowering this value will save some storage but can also make replication less efficient as a failure to find a common ancestor will cause CouchDB to copy the document afresh.

Releases in the CouchDB Universe

Special topic: Content Management Systems based on CouchDB

  • Kleks – a pure CouchDB based CMS written as a CouchApp using Kanso, Spine.js, CoffeeScript and Stylus. Supports multi-site setup and Markdown authoring
  • Couchpress – a super lightweight and modular CMS built on NodeJS, Express and CouchDB
  • CMS – a Content Management System written with Ruby on Rails and CouchDB
  • Cmtool – a rails 3.2+ CMS as engine for a CouchDB backend
  • CCMS – a Backend-free, client-side JavaScript and CouchDB based CMS
  • Falkland CMS (Website) – a Curation Management System written in Clojure, ClojureScript and CouchDB

Opinions

Use Cases, Questions and Answers

Get involved!

If you want to get into working on CouchDB:
  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
We'd be happy to have you!

Events

Job opportunities for people with CouchDB skills

… and also in the news

Posted on behalf of Lena Reinhard.

by Noah Slater at May 30, 2014 04:17 PM

May 22, 2014

The Old Official CouchDB Blog

CouchDB Weekly News, May 22

Weekly CouchDB meeting – summary

  • 1.6.0 release: no new issues were found during voting on CouchDB 1.6.0 rc5
  • BigCouch merge: significant progress has been made. Everyone is still encouraged to continue helping with building and testing COUCHDB-1843 branch. Further items for discussions will be sent to the mailing list.
  • CouchDB Meetup Hamburg: the CouchDB user group in Hamburg has its own Google Plus Community and will have their next meetup will be on June 10, 2014.

Major Discussions

Running views return nothing with CouchDB 1.5.1 (ongoing discussion; see thread)
Setup: code that creates database, documents and design documents with views and lists. When views are run, nothing is returned under CouchDB 1.5.1. When the same code is run against another CouchDB server (CouchDB 1.5.0), all views return the right responses and results. Approach: the problem described here could be an error from a library not found while running an external process (CouchJS in this case). It turned out libmozjs.so was either not installed or not in a path searched by the dynamic linker. Once it is added, it should be ensured that CouchJS can be run, afterwards, CouchDB should be able to build the views without restarting CouchDB.
Discussion: Project by-laws (ongoing discussion; see thread)
The discussion about the by-laws is still ongoing, more updates have been made. They can be found here, your feedback is still very welcome.
Release Apache CouchDB 1.6.0 rc5 (see thread)
The testing and voting for all systems is still in progress.

Releases in the CouchDB Universe

Opinions

Use Cases, Questions and Answers

Get involved!

If you want to get into working on CouchDB:
  • Here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
We'd be happy to have you!

Events

Job opportunities for people with CouchDB skills

… and also in the news

Posted on behalf of Lena Reinhard.

by Noah Slater at May 22, 2014 04:06 PM

May 16, 2014

The Old Official CouchDB Blog

CouchDB Weekly News, May 16

Blog Posts

Weekly CouchDB meeting – summary

  • BigCouch merge: significant process has been made. We want to encourage everyone to check out the COUCHDB-1843 branch and help with testing. Info: to run the bigcouch from merge branch: clone couchdb.git, checkout 1843-feature-bigcouch, ./configure && make && dev/run. Please report any errors you find during testing on dev@ Mailing list or on IRC #couchdb-dev.
  • 1.6.0 release: 1.6.0 rc5 is still open vor testing and voting. There are now Windows binaries against Erlang 17.0, – Windows users out there, feel free to test them. On the issues with Erlang 17.0, please also see this post on what it takes to use it in production. There'll be a follow-up item on this which will be sent to the mailing list this week.
  • CouchDB Meetups: there have been two CouchDB Meetups in Hamburg and Berlin, Germany, in the last week, and both were amazing. The recap for Hamburg can be found here.

Major Discussions

Discussion: Project by-laws (ongoing discussion; see thread)

The by-laws have been discussed and updated according to the community's comments. They can be found here, your feedback is very welcome.

Release Apache CouchDB 1.6.0 rc5 (see thread)

The testing and voting for all systems is still in progress.

Releases in the CouchDB Universe

  • couch-daemon – helps you write CouchDB workers efficiently that can be implemented and managed by CouchDB as os_daemons; with a Highland streaming interface
  • couchdb2s3 (0.3.0) – export CouchDB databases to line-oriented json files on s3
  • sails-couchdb-orm (0.9.0) – CouchDB adapter for Sails.js and Waterline ORM
  • dimensionist – CouchDB daemon to extract dimensions from image attachments

Opinions

Use Cases, Questions and Answers

Get involved!

If you want to get into working on CouchDB:
  • Help us testing Apache CouchDB 1.6.0 rc5! You'll find all important information on release artefacts and test procedure here.
  • Here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
We'd be happy to have you!

Job opportunities for people with CouchDB skills

… and also in the news

Posted on behalf of Lena Reinhard.

by dch at May 16, 2014 12:30 PM

May 15, 2014

The Old Official CouchDB Blog

Recap CouchDB Meetup Hamburg No. 1

This is the recap from our first CouchDB User Group Hamburg Meeting at May 13th 2014.

First of all thanks to everyone for attending. Also a big thank you to Ubilabs for hosting the meetup at their awesome office in Hamburg "Schanzenviertel".

Six people have been attending at this first meeting. Although it was a quite small meeting, we have discussed many things. At the beginning, everybody introduced themselves and dropped some info about what they are doing - especially with CouchDB. Andy spoke about the CouchDB history, the Apache Software Foundation and the ASF CouchDB project. After that, Klaus was giving some insights about coding in CouchDB's core and explained various internals. And Robert showed the new awesome Fauxton webinterface for CouchDB.

Julius attended accidentally, because he originally was thinking about founding a "Hamburg Beamers" - an Erlang user group. He got in touch with Dave Cottlehuber, who is a member from the "Vienna Beamers", pointing Julius to our first meetup (thanks Dave :) ). When digging a bit deeper into CouchDB, Julius was excited about what CouchDB offers.

We were also thinking about putting the Beamers and Couchers together in one user group because we thought that one of the main topics will be Erlang. This is not decided though. We did also look into Elixir and Klaus and Julius gave some basic insights. Elixir looks really cool and promising.

After nearly three hours, we finished our beers (thanks to Ubilabs for sponsering the drinks). Everybody was happy with the first meeting and we are looking forward to the next one. We plan to have the meeting every month. So the next meeting will be in mid June. Klaus will give the first talk where he is introducing a web service he is creating for measuring software complexity with Elixir and CouchDB.

We have now created a G+ Community called CouchDB Meetup Hamburg. We will use this community to announce upcoming events. This is the easiest way at the moment.

Finally, we decided to meet again at June, 10th and again at Ubilabs. Thanks a lot in advance.

Looking forward to see also new interested folks. So please spread the word.

by andywenk at May 15, 2014 07:26 AM

May 14, 2014

The Old Official CouchDB Blog

Board Report (May 2014)

Apache CouchDB is a database that uses JSON for documents, JavaScript for MapReduce queries, and regular HTTP for an API.

Releases

1.5.1 (2014-04-08) http://www.apache.org/dist/couchdb/notes/1.5.1/apache-couchdb-1.5.1.html

Recent Activity

  • Started with weekly news with great success. Also available at https://blogs.apache.org/couchdb/
  • The community is in the process of creating a CoC and bylaws
  • Ongoing work on the release 1.6.0. Actually voting on Apache CouchDB 1.6.0-rc.4
  • Working on the BigCouch merge from Cloudant
  • Good progress in reviewing the rcouch merge
  • Community work on migrating content to the new wiki started
  • Translation work going well

Community

Including the following additions, CouchDB has 35 committers and 12 PMC members.

New committers:

  • Robert Kowalski

New PMC members:

  • Joan Touzet

Mailing list stats:

announce

  • 175 subscribers (+24)
  • 1 message since February (1)

user

  • 1386 subscribers (-19)
  • 750 messages since February (-336)

erlang

  • 167 subscribers (+13)
  • 1 messages since February (-13)

dev

  • 599 subscribers (-3)
  • 2630 messages since February (+1306)

commits

  • 104 subscribers (0)
  • 2655 messages since February (-80)

marketing

  • 31 subscribers
  • 312 messages since February

l10n

  • 36 subscribers (+5)
  • 16 messages since May (-191)

replication

  • 54 subscribers (+7)
  • 53 messages since February (+28)

Issues: None.

by Jan at May 14, 2014 11:32 AM

May 08, 2014

The Old Official CouchDB Blog

CouchDB Weekly News, May 08

Weekly CouchDB meeting – summary

  • 1.6.0 release: 1.6.0-rc.5 is out for testing, so for all systems go. 1.6.x CI is all green, a formal vote will be coming this week
  • rcouch merge status: testing up to now showed it's functional, it will be suggested for integration branch merge
  • BigCouch merge status: a massive progress has been made this week. Soon branches will be rewritten to clean up the history, afterwards the community will be asked for help with testing.
  • Fauxton: agreement that Fauxton replaces Futon in CouchDB 2.0 (post merge) and that resolution of COUCHDB-1954 prior to that is critical. There'll be a thread on dev@ mailing list about this and release preparation.
  • Bylaws, Code of Conduct, Diversity Statement: everyone in the community is still invited to read the by-laws draft and join the discussion on dev@ mailing list (see thread); an initial Code of Conduct and Diversity draft will be posted next week
  • Project release artefacts: the current state of what the project release artefacts are will be documented and publicized

Major Discussions

Discussion: Project by-laws (ongoing discussion; see thread)

The first draft of the by-laws has been modified and is still being discussed. It can be found here, your comments are very welcome.

How to get results in descending order by date and without ID field (see thread)

The docs for result orders can be found here. To remove the ID field, users can use a list function.

Release Apache CouchDB 1.6.0 rc5 (ongoing testing and discussion; see thread)

The testing for all systems is still in progress. If you want to test, please follow this test procedure. The changes since last vote round can be found here.

Releases in the CouchDB Universe

  • PouchDB 2.2.0 – including persistent mapreduce, eventemitter api, replication works for huge datasets
  • highland-couchr 1.0.0 – streaming style API to CouchDB, using couchr under the hood
  • massage-couch 0.1.0 – massage CouchDB documents with an OS daemon worker.

Opinions

Use Cases, Questions and Answers

Get involved!

If you want to get into working on CouchDB:
  • Help us testing Apache CouchDB 1.6.0 rc5! You'll find all important information on release artefacts and test procedure here.
  • Here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
We'd be happy to have you!

Events

Job opportunities for people with CouchDB skills

  • DevOps Engineer, New York, USA
  • Work for any of JS, UI/UX, Node, CouchDB experience (see tweet), can work remote

… and also in the news

Posted on behalf of Lena Reinhard.

by Noah Slater at May 08, 2014 06:52 PM

May 02, 2014

The Old Official CouchDB Blog

CouchDB Weekly News, May 1

Weekly CouchDB meeting – summary

  • 1.6.0 release: we are making progress, next is checking if all bugs have been fixed
  • BigCouch merge status: Cloudant will now focus on the BigCouch merge, visible progress should happen in the next couple of weeks
  • rcouch merge status: the testing is still in progress, feedback will be provided to the mailing list; merge to the new integration branch can be done after that feedback
  • Code of Conduct: the first version will now be drafted based on the discussion on the mailing list (for details, see "Major Discussions" section below)
  • By-laws: everyone in the community is invited to read the draft and join the discussion (see thread); please note that the bylaws now include a new idea about PMC chair rotation
  • Translation update: German translation is making good progress (see status here)

Major Discussions

Apache CouchDB Diversity Statement (see thread)

This discussion was initiated with the suggestion to establish a project-wide Diversity Statement. First, the idea was brought up to turn this document into a PMC charter, a document that sets out what the PMC values, their commitment to diversity, and their pledge to the project. The second idea was about how merit is being recognised and it was brought up to broaden this around the four areas community, project, documentation and code. "This is what we value. This is what we will recognise. Our promise to the community." (Noah Slater) It was agreed on creating two documents, one for the PMC charter, a second one for diversity.

Discussion: Project by-laws (ongoing discussion; see thread)

Proposal to vote in set of project by-laws that define the specific roles in this community and the decision making procedures that are used. The first draft of the by-laws has been discussed and modified accordingly and can be found here. Comments are very welcome.

Apache CouchDB Developer Code of Conduct (ongoing discussion; see thread)

The PMC initiated a thread on moving forwards establishing an Apache CouchDB Developer Code of Conduct (CoC for short). Example Codes of Conduct from Debian, Python, Django , Bantik, Node.JS and the Node.JS IRC channel policy were as well considered and discussed as transparency, the consequences of infractions and the differentiation between minor offences and major offences, how to deal with profanity and how this applies to IRC and the moderation policy there.

HIPAA (Health Insurance Portability and Accountability Act) / HIPAA 5010 / PIPEDA compliance (see thread)

Question on building applications using CouchDB while having to follow HIPAA compliance. As for the legal topic this is, the community strongly recommended the user get in touch with a lawyer and getting proper compliancy and regulatory guidance.

CouchDB load spike (see thread, see also the same question on StackOverflow)

Setup: CouchDB 1.5.0, database with < 10 GB of data in it and continuous replication. Every few hours (3-4 times per day) they recognise a huge spike that floors the load to around 1.5 and memory usage to close to 100%. It turned out there was a similar issue that was already discussed (link to gist). The user filed issue COUCHDB-2231.

Tips for general CouchDB monitoring and graphs drawing tools to check what's causing huge spikes (from Alexander Shorin, see this reply):

  • Munin plugin for CouchDB monitoring – It doesn’t handle system metrics for the CouchDB process yet, but that will be added soon; users should make sure they have a similar plugin for their monitoring system.
  • Skyline, a detector for spikes and other anomalies
  • Oculus, a metrics correlation tool that makes it very easy to compare multiple graphs for an anomaly period with it.
Release Apache CouchDB 1.6.0 rc3 (ongoing testing and discussion; see thread)

Some issues have already been fixed, the testing is still ongoing. Find all release artefacts we are voting on in this list. If you want to test, please follow this test procedure. The changes since last vote round can be found here.

Releases in the CouchDB Universe

  • yama – mail app, work in progress; syncs CouchDB instance with an email inbox for RESTful email
  • tornado-couchdb 0.2.3 – Blocking and non-blocking (asynchronous) clients for CouchDB using Tornado's httpclient
  • loveseat 0.0.11 – very limited CouchDB interface
  • follow-db-updates 0.0.2 – easy CouchDB _db_changes follower, with older couch pollyfill
  • seneca-couchdb-changes 0.1.0 – emit seneca.js events for all events in a couchdb _changes feed
  • changes-stream 1.0.3 – simple module that handles getting changes from couchdb
  • neuropil 3.0.2 – a lighter and faster registry client for CouchDB based npm server
  • nano 5.8.0 – minimalistic CouchDB driver for node.js
  • couch_tap 0.0.2 – providing a DSL that allows complex CouchDB documents to be converted into rows in a RDBMS' table

Opinions

Use Cases, Questions and Answers

Get involved!

If you want to get into working on CouchDB:
  • rcouch Merge: Erlang hackers and CouchDB users, we need your help with testing and review of the rcouch merge. It's easy! Find the how-to in this post.
  • Here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
  • You want join us for the updates of CouchDB-Python for Python 3? Take a look at issue 231.
We'd be happy to have you!

Events

Job opportunities for people with CouchDB skills

… and also in the news

Posted on behalf of Lena Reinhard.

by Noah Slater at May 02, 2014 04:06 PM

April 24, 2014

The Old Official CouchDB Blog

CouchDB Weekly News, April 24

Weekly CouchDB meeting – summary

  • 1.6.0 release: voting for 1.6 rc3 is open; Erlang R15 and R16 are fine, but several unexpected issues for testing with Erlang R14BX were reported; any help with testing and diagnosing the issue is welcome
  • rcouch merge status: the recent call for testing led to progress on COUCHDB-1994.The Windows build and some other little bugs could be fixed. Still, help with testing is very welcome!
  • BigCouch merge status: large progress was made last week, next steps will be code review and testing
  • BigCouch branch and the new multirepo design: how to edit individual repos and split big CouchDB.git into single and finally run the merge

Major Discussions

Error when installing CouchDB on Windows 7 (see thread)

Installation of CouchDB 1.5.1_R16B02 binary on Windows 7 lead to an issue caused by a problem with the Windows R16B02 installation file. This file has been replaced quickly, everything works now. The installation file can be downloaded here.

Compaction of a database with the same number of documents is getting slower over time (see thread)

A database containing a relatively stable number of documents (in CouchDB: "doc_count"), the documents themselves change frequently (including many insertions and deletions (CouchDB: "doc_del_count")). The person asking expected the compaction time to stay the same, but numbers showed that it took longer to compact the database over time, thus they asked why this was the case, and how it could overcome.

The reply is that compaction time in CouchDB scales with the sum of "doc_count" and "doc_del_count". As explained by Adam Kocoloski, this can currently be controlled by "1) [Purging] the deleted docs (lots of caveats about replication, potential for view index resets, etc.); 2) [Rotating] over to a new database, either by querying both or by replicating non-deleted docs to the new one. Neither one is particularly palatable. CouchDB currently keeps the tombstones around forever so that replication can always work. Making changes on that front is a pretty subtle thing but maybe not completely impossible. Also, there's a new compactor in the works that is faster and generates smaller files."

Data replication: replicating only non-deleted documents (same discussion as above; see thread)

The approach could be to either run a filtered replication or block deleted documents with a validate_doc_update function on the target database (see example function here).

How to handle terabyte databases (see thread)

This was a request about improving performance, insert time, compaction and replication for terabyte databases with billions of documents (setup: CouchDB 1.2 and CouchDB 1.4). Some approaches to handle a write-heavy workload:

  • Replication: Supply parameters to allocate more resources to a given job (code example here).
  • Insert time: Ensure that e.g. compaction only runs in the background and does not impact the throughput of interactive operations; this is work in process at the moment.
  • Compaction: A new, significantly faster compactor that also generates smaller post-compaction files that also eliminates the exponential falloff in throughput observed by the inquirer is in the works. – This problem can be solved by BigCouch as it tries to partition databases.
  • Ensure to not exceed the write capacity of the RAID (this effect is amplified for partitioned databases).
Vote: Release Apache CouchDB 1.6.0 rc3 (ongoing testing and discussion; see thread)

We encourage the whole community to download and test these release artefacts so that any critical issues can be resolved before the release is made. Everyone is free to vote on this release, so get stuck in on our dev@couchdb.apache.org mailing list! Find all release artefacts we are voting on in this list. If you want to test, please follow this test procedure. The changes since last vote round can be found here.

Releases in the CouchDB Universe

Opinions

Use Cases, Questions and Answers

Get involved!

If you want to get into working on CouchDB:
  • rcouch Merge: Erlang hackers and CouchDB users, e need your help with testing and review of the rcouch merge. It's easy! Find the how-to in this post.
  • Here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
  • You want join us for the updates of CouchDB-Python for Python 3? Take a look at issue 231.
We'd be happy to have you!

Events

  • April 26, Delhi, India: CouchDB meetup - Understanding how design documents work
  • June 16, 17, San Francisco, CA: CloudantCON

Job opportunities for people with CouchDB skills

… and also in the news

Posted on behalf of Lena Reinhard.

by Noah Slater at April 24, 2014 07:14 PM

April 17, 2014

Joan Touzet

Understanding race-induced conflicts in BigCouch

Distributed databases with a near-real-time multi-master configuration – such as BigCouch, coming soon to Apache CouchDB – must deal with the potential of simultaneous modifications of a single resource. While the approach taken by multiple single-machine Apache CouchDB servers using regular HTTP replication is well understood, the situation changes a little bit when dealing with BigCouch-style internal replication inside a cluster.

I think it’s time to have a better understanding of what this means, and what impact this has on you as an application developer. Most of the time, there’s no change – to your app, a BigCouch-style cluster looks and feels like a single Apache CouchDB node. But when making near-simultaneous writes to the same document from different clients, you may experience document conflicts that you wouldn’t have with an Apache CouchDB 1.x single server.

How does this happen? Bear with me – this gets a bit complex. Hopefully this diagram will help.

The sequence diagram below depicts a scenario where two very closely spaced writes to the same document in a 3-node BigCouch cluster will lead to a document conflict.

Sequence diagram showing Sequence diagram illustrating a document conflict introduced by near-simultaneous writes to a 3-node cluster.

Sequence diagram illustrating a document conflict introduced by near-simultaneous writes to a 3-node cluster.

In this example, the database cluster is a 3-node cluster, with default settings of n=3, r=2 and w=2. (This means that a successful write to a document must write 2 copies to disk before an HTTP 201 status code is returned.) Client 1 and Client 2, both external client processes talking to the cluster, are both trying to update /db/doc, which is currently at revision 3. Client 1 is trying to write rev 4-1, and Client 2 is trying to write rev 4-2.

For the purposes of this example, we are going to state a specific ordering for document writes, and treat the write as being processed serially in a specific order. In reality, writes are issued in parallel with no coordination of writes. The scenario as shown is simply one of the possible event sequences you may run into, in the wild.

Client 1’s write is being mediated by Node A. For this example, Node A issues writes to nodes A, B and C, in that order. Client 2’s write is being mediated by Node C. For this example, Node C issues writes to nodes C, B and A, in that order. Both Clients’ first writes succeed (Client 1/Node A and Client 2/Node C) and return the internal equivalent of an HTTP 201 status code.

Arbitrarily, we say Client 1’s request to Node B arrives prior to Client 2’s request to Node B. (One will always be processed before the other; it doesn’t matter which one gets there first.)  Node B makes the write of revision 4-1, and returns a 201 equivalent to Node A.

At this point, Node A has 2 successful write responses back. Since the cluster is configured with w=2, a 201 is returned to Client 1 and the client disconnects; its work finished. The third write, already issued by Node A to Node C, will eventually be handled, the conflict recorded to disk and a 409 sent back to Node A. Note that both copies of the document are kept, capturing the document conflict on Node C when this write occurs. Node A’s work is now done.

Just after completing its write of revision 4-1, Node B then processes Node C’s write attempt of rev 4-2 from Client 2. This results in the conflict being written to disk, and returns the 409 equivalent to Node C. The same happens when Node C’s write to Node A is processed. Node C now has a non-conflict 201 response from itself, and the 409 responses from Node B and Node A, so it sends the client a 202 status.

At the end of the process, all 3 nodes have both versions of the document recorded, fulfilling CouchDB’s promise of eventual consistency.

Still with me? Good.

So which document “wins”? By design, the document with the higher hash value (the second part of the _rev token, i.e. _rev=##-hash) will win. If 4-1 and 4-2 were the actual _rev values, 4-2 would win. As such, there is no guarantee that the write with a 201 response will be the ‘winner.’ [1]

The closer together writes to the same document occur, the more likely it is that the cluster may still be processing a previous write when the subsequent write comes in. Even with resolution and DELETEs of the losing conflicts, document “tombstones” will be left behind on these leaf nodes to ensure replication results in eventual consistency (CouchDB’s guarantee! [2])

The best approach is to avoid these kinds of document conflicts via an access pattern where simultaneous writes are as unlikely to occur as possible. There are a number of resources out there on how to design apps this way, but one of my favourites is to never re-write a document, store all operations as new documents, and use a view or _all_docs and the startkey/endkey parameters to retrieve the latest state of a given resource.

Barring an application redesign, your CouchDB client should look for 202s and conflicts in documents consistently, and provide evidence of this result to the application layer. [3] You can also create a conflicts view to review all conflicts in a given database.

Resist the temptation to try and resolve the conflict in the CouchDB library! Only at the application layer can you best decide how to deal with a document conflict. You might initially choose to ignore conflicts, but probably it’s in your best interest to perform some sort of manual resolution and write a new, merged version based on data in all the conflicted versions.

If you’re still lost, post in the comments or on the couchdb-user mailing list and I’ll do my best to explain.


[1] https://cloudant.com/for-developers/faq/data/, “My write returned a 201, and yet I have a conflicted document -  what gives?”

[2] Doing better is a provably difficult problem. For reference, start with  L. Lamport’s Time, Clocks and the Ordering of Events in a Distributed System, Communications of the ACM 21, 7 (July 1978), 558-565.

[3] Take note: some CouchDB libraries, such as python-couchdb, do not differentiate between a 201 and a 202 response!

by Wohali at April 17, 2014 05:01 PM

The Old Official CouchDB Blog

CouchDB Weekly News, April 17

Blog Posts

Weekly CouchDB meeting – summary

  • Bigcouch Merge: work on branches has started again and will make good progress
  • rcouch Merge: code reviews have been restarted; more help with testing is needed; discussion around Windows support, will be continued on Dev-Mailing list
  • Advocate Hub: onboarding at the moment, next steps will be sent to marketing mailing list soon
  • 1.6.0 release: release candidate 3 (rc3) is being prepared now
  • COUCHDB-1986: the issue is being investigated, will be updated soon if its status changes

Major Discussions

1.6.0 changelog review (see thread)

A discussion around what exactly should be included in 1.6.0 (see changelog and documentation for details).

Handling the Welcome Request (see thread)

How to handle the welcome message that appears from a root request and direct the "/" request to another URL (setup: version 1.5 on a Windows machine).

authentication_redirect is not working (see thread)

How to handle the redirection of users after login to other databases that service page requests (and avoid errors; setup: public application with CouchDB-based authentication).

Vote: Release Apache CouchDB 1.6.0 rc2 (see thread)

The vote was aborted because of an issue brought up by the test suite.

Modeling Relationships and providing Transactional Integrity (see thread; ongoing discussion)

… and the question if _bulk_docs is transactional (hint: it's not)

Releases in the CouchDB Universe

Opinions

Use Cases, Questions and Answers

Get involved!

If you want to get into working on CouchDB:
  • rcouch Merge: Erlang hackers and CouchDB users, we need your help with testing and review of the rcouch merge. It's easy! Find the how-to in this post.
  • Here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
  • You want join us for the updates of CouchDB-Python for Python 3? Take a look at issue 231.
We'd be happy to have you!

Events

Job opportunities for people with CouchDB skills

… and also in the news

Posted on behalf of Lena Reinhard.

by Noah Slater at April 17, 2014 10:03 AM

April 16, 2014

The Old Official CouchDB Blog

Merging rcouch

rcouch is a variant of CouchDB that is derived from the main Apache CouchDB code base. One way to look at it is as a “future port” of CouchDB, that is for two reasons:

  1. The internals are greatly improved. In simple terms, if CouchDB would be started to day, it would look a lot like rcouch.
  2. It comes with a number of nice new features.

So whether you are a CouchDB user or a CouchDB Erlang developer, rcouch is good news for you!

Since CouchDB has been around for a while, the internal codebase is a little crufty. We are constantly working on improving that, but one of the larger efforts have been done within the rcouch project by Apache CouchDB committer Benoit Chesneau.

At the same time, Benoit added a number of nice little features that benefit CouchDB users, just to name a few:

  • _changes for views.
  • Replication from views.
  • Write-only “Drop-Box” databases.
  • Request validation on-read.
  • _db_changes (actually, we nicked that one for Apache CouchDB 1.4 already :).

For more information, see the rcouch website.

Benoit has generously donated the rcouch project back to Apache CouchDB and has worked on merging the rcouch and the CouchDB codebases. Now it is time to review the merged code and get it into Apache CouchDB proper and put it into a new release.

With that, we need your help.

How you can help, you ask? Easy!

If you are a CouchDB user, and are not afraid to build CouchDB yourself, give the rcouch merge branch a spin:

git clone https://github.com/apache/couchdb.git
cd couchdb
git checkout -b 1994-merge-rcouch origin/1994-merge-rcouch

# Read the DEVELOPERS file to install all dependencies

# test regular build:
make

# test build with static icu library
make icu=static

# test build with shared libraries
make libs=shared

# run test suite
make check

# make a release
make rel

# run:
./rel/apache-couchdb/bin/couchdb start

# now CouchDB is running at http://127.0.0.1:5984/_utils/, as usual, you just won’t see any output.


If you are an Erlang developer, we could use your help with code reviews. Any small chunks will help!

Please see the associated JIRA ticket for more information.

Thanks so much!


FaQ: how does this relate to BigCouch?

It doesn’t really, the BigCouch merge is ongoing and we will announce updates and requests for review when the time is right. Well, actually, if we can convince you to help with the review of the rcouch merge, we can put even more resources on the BigCouch merge :)

by Jan at April 16, 2014 08:50 PM

April 10, 2014

The Old Official CouchDB Blog

CouchDB Weekly News, 10 April

Releases

Apache CouchDB 1.5.1 released
This is a security release. Download link | Release notes

Blog Posts

Major Discussions

Writing many docs at once: bench marking a 10k write to a CouchDB server (see thread here)
A discussion around handling and measurements of bulk input in CouchDB.
Question about "complex" range queries (see thread here)
Requirements for sort orders of data views.
Is the revision field deterministic? (see thread here)
Quoting Robert Samuel Newson's reply: "Yes, it’s deterministic. The same document with the same history will have the same _rev value. This is an optimization over the previous algorithm where _rev was a random UUID. […] The advantage is that two servers receiving the same update can more optimally replicate. They still have to check that the target has all _id/_rev pairs but will usually be able to skip actually transmitting document and attachment content."

CouchDB Universe

  • Apache Con has taken place from April 7-9. You can find the slides of the talks given here

Releases in the CouchDB Universe

  • New Erlang Version is out
  • mbtiles2couchdb, for using CouchDB as a simple tiles server
  • RCouch has a new home: announcement | the new home
  • PPnet, a minimal social network to drop into websites based on PouchDB
  • sabisu, a sensu web UI, got open sourced by Cloudant last week
  • Janus, an online storage for offline Web Apps built using PouchDB
  • couche 0.0.2, a couchdb client for node, with specific apis
  • mock-couch, an http server pretending to be couchdb, for unit testing
  • couchdb-sync 0.1.1 - a generic couchdb replicator which is basically an eventemitter
  • hackoregon-couch 0.0.2 which exports database information from PostgreSQL and imports into CouchDB
  • overwatch 0.2.7, a deterministic couchdb replication watcher

Opinions

Use Cases, Questions and Answers

Get Involved!

If you want to get into working on CouchDB:
  • here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
  • Your help on updating CouchDB-Python for Python 3. Wanna join? Please participate here.
We'd be happy to have you!

New PMC Member

  • Joan Touzet joins the Apache CouchDB Project Management Committee today. Joan has made outstanding, sustained contributions to the project. Welcome to the Couch, Joan!

Events

Job opportunities

… and also in the news

Posted on behalf of Lena Reinhard.

by Noah Slater at April 10, 2014 10:59 AM

April 09, 2014

The Old Official CouchDB Blog

Apache CouchDB 1.5.1 Released

Apache CouchDB 1.5.1 has been released and is available for download.

CouchDB is a database that completely embraces the web. Store your data with JSON documents. Access your documents with your web browser, via HTTP. Query, combine, and transform your documents with JavaScript. CouchDB works well with modern web and mobile apps. You can even serve web apps directly out of CouchDB. And you can distribute your data, or your apps, efficiently using CouchDB’s incremental replication. CouchDB supports master-master setups with automatic conflict detection.

Grab your copy here:

http://couchdb.apache.org/

Pre-built packages for Windows and OS X are available.

CouchDB 1.5.1 is a security release, and was originally published on 2014-04-09.

These release notes are based on the changelog.

Changes

  • Add the max_count option (UUIDs Configuration) to allow rate-limiting the amount of UUIDs that can be requested from the /_uuids handler in a single request.

by djc at April 09, 2014 05:39 PM

Apache CouchDB 1.5.0 Released

Apache CouchDB 1.5.0 has been released and is available for download.

CouchDB is a database that completely embraces the web. Store your data with JSON documents. Access your documents with your web browser, via HTTP. Query, combine, and transform your documents with JavaScript. CouchDB works well with modern web and mobile apps. You can even serve web apps directly out of CouchDB. And you can distribute your data, or your apps, efficiently using CouchDB’s incremental replication. CouchDB supports master-master setups with automatic conflict detection.

Grab your copy here:

http://couchdb.apache.org/

Pre-built packages for Windows and OS X are available.

CouchDB 1.5.0 is a feature release, and was originally published on 2013-11-05.

These release notes are based on the changelog.

Changes

  • COUCHDB-1781: The official documentation has been overhauled. A lot of content from other sources have been merged, and the index page has been rebuilt to make the docs much more accessible. #54813a7
  • A new administration UI, codenamed Fauxton, has been included as an experimental preview. It can be accessed at /_utils/fauxton/. There are too many improvements here to list them all. We are looking for feedback from the community on this preview release.
  • COUCHDB-1888: Fixed an issue where admin users would be restricted by the public_fields feature.
  • Fixed an issue with the JavaScript CLI test runner. #be76882, #54813a7
  • COUCHDB-1867: An experimental plugin feature has been added. See src/couch_plugin/README.md for details. We invite the community to test and report any findings.
  • COUCHDB-1894: An experimental Node.js-based query server runtime has been added. See Experimental Features for details. We invite the community to test and report any findings.
  • COUCHDB-1901: Better retry mechanism for transferring attachments during replication. #4ca2cec

by djc at April 09, 2014 05:37 PM

April 08, 2014

The Old Official CouchDB Blog

CouchDB and the Heartbleed SSL/TLS Vulnerability

You may or may not have heard about the Heartbleed SSL/TLS vulnerability yet. Without much exaggeration, this is a big one.

What does this mean for CouchDB?

1. If you are using CouchDB with the built-in SSL support, you are at the whim of Erlang/OTP’s handling of SSL. Lucky for you, while they do use OpenSSL for the heavy lifting, they do the TLS/SSL handshake logic in Erlang (Source). That means you are not affected by this issue.

2. If you are using CouchDB behind a third-party proxy server you are at the whim of the SSL library it uses. For the big three Apache, nginx and HAProxy it’s all OpenSSL. So if they are using OpenSSL 1.0.1-1.0.1f with heartbeat support (RFC6520) enabled (the default), you need to take action. As far as I can tell now:

  • 0. Check if you are vulnerable
  • 1. Stop your service.
  • 2. Upgrade to OpenSSL 1.0.1g or recompile OpenSSL without heartbeat support.
  • 3. Request new cert from your SSL cert vendor.
  • 4. Revoke your old cert.
  • 5. Invalidate all existing sessions by changing the CouchDB couchdb_httpd_auth/secret configuration value to a new UUID.
  • 6. Restart your service.
  • 7. Invalidate all your user’s passwords and/or OAuth tokens.
  • 8. Notify your users that any of their data and passwords are potentially compromised.

by Jan at April 08, 2014 03:53 PM

The Little Things(1): Do Not Delete

CouchDB takes data storage extremely seriously. This usually means we work hard to make sure that the CouchDB storage modules are as robust as we can make them. Sometimes though, we go all the way to the HTTP API to secure against accidental data loss, saving users from their mistakes, rather than dealing with hard drives and kernel caches that usually stand in the way of safe data storage.

The scenario:

To delete a document in CouchDB, you issue the following HTTP request:

DELETE /database/docid?rev=12345 HTTP/1.1

A common way to program this looks like this:

http.request('DELETE', db + '/' + docId + '?rev=' + docRev);

So far so innocent. Sometimes though, users came to us and complained that their whole database was deleted by that code.

Turns out the above code creates a request that deletes the whole database, if the docId variable isn’t set correctly. The request then looks like:

DELETE /database/?rev=12345 HTTP/1.1

It looks like an honest mistake, once you check the CouchDB log file, but good old CouchDB would just go ahead and delete the database, ignoring the ?rev= value.

We thought this is a good opportunity to help users not accidentally losing their data. So since late 2009 (yes, this is an oldie, but it came up in a recent discussion and we thought it is worth writing about :), CouchDB will not delete a database, if it sees that a ?rev= parameter is present and it looks like that this is just a malformed request, as database deletions have no business requiring a ?rev=.

One can make an easy argument that the code sample is fairly shoddy and we’d agree. But we are not here to argue how our users use our database beyond complying with the API and recommended use-cases. And if we can help them keep their data, that’s a win in our book

Continuing down this thought, we thought we could do one better. You know that to delete a document, you must pass the current rev value, like you see above. This is to ensure that we don’t delete the document accidentally without knowing that someone else may have added an update to it that we don’t actually want to delete. It’s CouchDB’s standard multi version currency control (MVCC) mechanism at work.

Databases don’t have revisions like documents, and deleting a database is a simple HTTP DELETE /database away. Databases, however, do have a sequence id, it’s the ID you get from the changes feed, it’s an number that starts at 0 when the database is created and increments by 1 each time a document is added, updated or deleted. Each state of the database has a single sequence ID associated with it.

Similar to a rev, we could require the latest sequence ID to delete a database, as in:

DELETE /database?seq_id=6789

And deny database deletes that don’t carry the latest seq_id. We think this is a decent idea, but unfortunately, this would break backwards compatibility with older versions of CouchDB and it would break a good amount of code in the field, so we are hesitant to add this feature. In addition, sequence IDs change a little when BigCouch finally gets merged, so we’d have to look at this again then.

In the meantime, we have the protection against simple coding errors and we are happy that our users keep their hard earned data more often now.

by Jan at April 08, 2014 01:59 PM