couchdb-marketing mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jan Lehnardt <...@apache.org>
Subject Re: Blogpost: "Databases aren't boring"
Date Fri, 22 Apr 2016 15:35:50 GMT
Great job everyone, this looks fab! :)

I’d say lets keep this for Tuesday late morning EU hours, Fridays are notoriously slow.

If anyone else has another good idea, I won’t be against it :)

Best
Jan
--

> On 22 Apr 2016, at 10:53, Andy Wenk <andywenk@apache.org> wrote:
> 
> Here is the preview: https://couchdbblog.wordpress.com/?p=973&preview=true
> 
> Not sure if you can see it Robert. Please someone else have a quick check. We can post
it then? The question is when?
> 
> All the best
> 
> Andy
> --
> Andy Wenk
> Hamburg - Germany
> RockIt!
> 
> GPG public key: https://pgp.mit.edu/pks/lookup?op=get&search=0x4F1D0C59BC90917D
> 
> 
> 
> 
>> On 22 Apr 2016, at 10:47, Andy Wenk <andywenk@apache.org> wrote:
>> 
>> I am creating a draft at the moment … will be back in 30 Minutes with a link
>> 
>> Cheers
>> 
>> Andy
>> --
>> Andy Wenk
>> Hamburg - Germany
>> RockIt!
>> 
>> GPG public key: https://pgp.mit.edu/pks/lookup?op=get&search=0x4F1D0C59BC90917D
>> 
>> 
>> 
>> 
>>> On 22 Apr 2016, at 04:32, Robert Kowalski <rok@kowalski.gd> wrote:
>>> 
>>> forgot to add the images:
>>> 
>>> https://github.com/robertkowalski/couch-labs/blob/blog/blog/databases-are-not-boring/1-to-1.png
>>> https://github.com/robertkowalski/couch-labs/blob/blog/blog/databases-are-not-boring/diff.png
>>> https://github.com/robertkowalski/couch-labs/blob/blog/blog/databases-are-not-boring/first-prototype.png
>>> 
>>> On Fri, Apr 22, 2016 at 12:10 AM, Robert Kowalski <rok@kowalski.gd> wrote:
>>> 
>>>> Hey there!
>>>> 
>>>> Here is the latest version, thanks to the awesome help of Jenn!
>>>> 
>>>> I am leaving for Cuba in 6 hours, it would be cool if someone could
>>>> publish it. The feature is already merged. Please decide how you want to
>>>> handle the video (embedded youtube, gif or something else).
>>>> 
>>>> Thank you,
>>>> Robert
>>>> 
>>>> 
>>>> Original video:
>>>> 
>>>> https://dl.dropboxusercontent.com/u/1809262/rev-browse.mov
>>>> 
>>>> gif: https://dl.dropboxusercontent.com/u/1809262/revision-browser.gif
>>>> 
>>>> Article:
>>>> 
>>>> ---
>>>> 
>>>> # Databases aren’t boring
>>>> 
>>>> It sounds super boring, sometimes scary. Let’s talk about database
>>>> development, data management, and database administration. Sounds boring,
>>>> right? I promise: it isn’t. I mainly develop for [Fauxton](
>>>> https://github.com/apache/couchdb-fauxton), the UI for CouchDB we’ll
>>>> release with 2.0. We are developing, designing, and concepting a UI for
>>>> administration and data management.
>>>> 
>>>> When I tell fellow developers and designers that I develop a database,
>>>> many of them look scared. Sometimes they also look bored, because people
>>>> rarely imagine data management is exciting. Some of them might think of
>>>> boring database courses in college. In this article we’ll discover what
>>>> makes database development so interesting and exciting.
>>>> 
>>>> One of our main objectives is to make data management as frictionless as
>>>> possible for the user. How can we lower the entry barrier for new users,
>>>> but still support our power users? How can we display data in an accurate,
>>>> detailed way, but still have a high density of information? How do we
>>>> measure our success without traditional systems to measure engagement, like
>>>> tracking? It is important to remember--we can be successful only if our
>>>> users are successful.
>>>> 
>>>> A recent example where we want to make our users more successful is
>>>> [eventual consistency and MVCC](
>>>> http://guide.couchdb.org/draft/consistency.html). Large numbers of
>>>> conflicts can be problematic; they will slow down the database and take up
>>>> a lot of space. Some of the Fauxton developers recently had a hackweek. As
>>>> part of one project we asked ourselves: “How can we make conflict detection
>>>> and resolution a first class citizen in CouchDB and make it as frictionless
>>>> as possible?”
>>>> 
>>>> Our goals:
>>>> 
>>>> - Conflict detection should be as easy as possible
>>>> - Make conflict resolution as easy as possible and provide necessary
>>>> tooling
>>>> - Help to avoid situations where a large number of conflicts become
>>>> problematic
>>>> - Provide better education and tutorials for conflict resolution, directly
>>>> in the dashboard
>>>> 
>>>> We focused mainly on conflict resolution as our time was limited to one
>>>> week. A document with conflicts has different revisions, and Couch elects
>>>> one as the “winning revision.” How to choose the right revision and get
rid
>>>> of the other ones? Our project, codenamed “The Revision Browser,” was
born.
>>>> We wanted to provide a way to easily diff revisions, and inspect the
>>>> revision tree. We also wanted an easy way to delete conflicting revisions
>>>> and select other revisions as a winner. The first, ugly prototype had two
>>>> dropdowns:
>>>> 
>>>> ![The first prototype](first-prototype.png)
>>>> 
>>>> We are a distributed team, so use video calls for evaluating the
>>>> iterations. We demo the current, incomplete work. Whenever possible, we
>>>> test ad-hoc changes directly in the browser during the session. One
>>>> addition that came up during our demos was to provide another view mode
>>>> next to the “diff mode”. It shows both conflicting documents next to
each
>>>> other:
>>>> 
>>>> ![Both conflicting documents next to each other](1-to-1.png)
>>>> 
>>>> After the hackweek we had some work left to bring the project over the
>>>> finish line. I am happy to announce that we have a minimum viable product
>>>> now:
>>>> 
>>>> ![The diffing for both conflicting documents](diff.png)
>>>> 
>>>> The feature was created in close collaboration with other developers and
>>>> UX researchers. [Here is a video showing the new features in action](
>>>> https://www.youtube.com/watch?v=3G8d7PzMVsk):
>>>> 
>>>> 
>>>> 
>>>> <iframe width="420" height="315" src="
>>>> https://www.youtube.com/embed/3G8d7PzMVsk" frameborder="0"
>>>> allowfullscreen></iframe>
>>>> 
>>>> 
>>>> Data management is also interesting from the technical point of view. How
>>>> can we display a lot of documents, but keep the application snappy?
>>>> 
>>>> The revision browser is written in React. The code itself is pretty
>>>> concise as we recently added ES 2015 / ES6 support to Fauxton. Thanks to
>>>> our test coverage, we can refactor large parts of Fauxton. Recently, we
>>>> changed the whole infrastructure underneath without much trouble.
>>>> Interested in the code? It is available at:
>>>> https://github.com/apache/couchdb-fauxton/pull/670
>>>> 
>>>> 
>>>> 
>>>> ## Conclusion
>>>> 
>>>> 
>>>> Despite its image, data management and database administration IS
>>>> interesting. We face hard problems from a product point of view. They are
>>>> challenging and it is fun to solve them in a team including developers, UX
>>>> researchers, and designers. We also face interesting technical problems and
>>>> solve them with the best technology available.
>>>> 
>>>> 
>>>> ## About the author
>>>> 
>>>> Robert Kowalski is a passionate software engineer and CouchDB contributor.
>>>> He enjoys traveling and recently released a book about command line tools
>>>> in Node.js, [The CLI Book](http://theclibook.com).
>>>> 
>>>> 
>>>> 
>>>> On Thu, Apr 21, 2016 at 12:50 AM, Robert Kowalski <rok@kowalski.gd>
wrote:
>>>> 
>>>>> here is the original source of the video (maybe to create better gifs
i
>>>>> my does not suffice?):
>>>>> https://dl.dropboxusercontent.com/u/1809262/rev-browse.mov
>>>>> 
>>>>> On Thu, Apr 21, 2016 at 12:48 AM, Robert Kowalski <rok@kowalski.gd>
>>>>> wrote:
>>>>> 
>>>>>> here is the gif:
>>>>>> https://dl.dropboxusercontent.com/u/1809262/revision-browser.gif
>>>>>> 
>>>>>> On Tue, Apr 19, 2016 at 8:56 PM, Jan Lehnardt <jan@apache.org>
wrote:
>>>>>> 
>>>>>>> ooooh, I really like this, the feature and the writeup! Thanks
for
>>>>>>> offering to post
>>>>>>> it on the CouchDB blog. I’d be very much in favour!
>>>>>>> 
>>>>>>> I’d suggest we put this in a google doc and give it an editorial
>>>>>>> once-over (looking at Jenn with puppy-eyes ^^), but then this
is ready to
>>>>>>> go.
>>>>>>> 
>>>>>>> The video could maybe be a gif, so we can tweet/share it more
easily,
>>>>>>> if you are up for converting it (or anyone, really).
>>>>>>> 
>>>>>>> Great job! :)
>>>>>>> 
>>>>>>> Best
>>>>>>> Jan
>>>>>>> --
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>> On 19 Apr 2016, at 19:39, Robert Kowalski <rok@kowalski.gd>
wrote:
>>>>>>>> 
>>>>>>>> Hi there,
>>>>>>>> 
>>>>>>>> I went into a hip cafe this weekend, drank espressi and wrote
a
>>>>>>> blogpost!
>>>>>>>> 
>>>>>>>> The draft is at
>>>>>>>> 
>>>>>>> https://github.com/robertkowalski/couch-labs/blob/blog/blog/databases-are-not-boring/databases-are-not-boring.md
>>>>>>>> 
>>>>>>>> If you want we can publish it on the CouchDB blog, but I
am also happy
>>>>>>>> to publish it somewhere else.
>>>>>>>> 
>>>>>>>> btw.: seems GitHub does not support embedded videos in markdown,
so I
>>>>>>>> linked it for the draft.
>>>>>>> 
>>>>>>> --
>>>>>>> Professional Support for Apache CouchDB:
>>>>>>> https://neighbourhood.ie/couchdb-support/
>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>> 
> 

--
Professional Support for Apache CouchDB:
https://neighbourhood.ie/couchdb-support/


Mime
View raw message