<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Disqus - Latest Comments for nunojob</title><link>http://disqus.com/by/nunojob/</link><description></description><atom:link href="http://disqus.com/nunojob/comments.rss" rel="self"></atom:link><language>en</language><lastBuildDate>Fri, 09 Aug 2013 20:11:07 -0000</lastBuildDate><item><title>Re: How to write a command line application in Node.js - Liang Zan - Blog</title><link>http://blog.liangzan.net/blog/2012/07/30/how-to-write-a-command-line-application-in-node-dot-js/#comment-995138880</link><description>&lt;p&gt;Have you seen `dscape/frameless` or flatiron? We use it internally at nodejitsu. JJ also did &lt;a href="https://github.com/chjj/blessed" rel="nofollow noopener" target="_blank" title="https://github.com/chjj/blessed"&gt;https://github.com/chjj/ble...&lt;/a&gt; Check it out&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Fri, 09 Aug 2013 20:11:07 -0000</pubDate></item><item><title>Re: bob.ippoli.to - Bob Ippolito (@etrepum) on Python, Erlang, JavaScript, etc.</title><link>http://bob.ippoli.to/archives/2013/07/18/codecosmos-tech/#comment-969767686</link><description>&lt;p&gt;As an open source developer that wrote many lines of code you needed to make this application work, this saddens me. It is an awesome feeling when people create awesome products with code you (and your closest friends) built.&lt;/p&gt;&lt;p&gt;Maybe it helps contextualize that the same people you were criticizing built/enabled a very significant part of the open source projects you considered awesome. Don't need to thank anyone, it's liberally licensed you can just use it. But why say in a blog post that these people and their efforts, suck.&lt;/p&gt;&lt;p&gt;But if you do decide to criticize, at least say why and help people be better. Don't be dismissive.&lt;br&gt;And remember, you might be praising a person in a paragraph and criticizing in the next. They might be one and the same.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Fri, 19 Jul 2013 20:54:56 -0000</pubDate></item><item><title>Re: http://writings.nunojob.com/2011/11/couchdb-in-the-browser-vs-indexed-database-api.html</title><link>http://writings.nunojob.com/2011/11/couchdb-in-the-browser-vs-indexed-database-api.html#comment-784112478</link><description>&lt;p&gt;Check PouchDB &lt;a href="https://github.com/daleharvey/pouchdb" rel="nofollow noopener" target="_blank" title="https://github.com/daleharvey/pouchdb"&gt;https://github.com/daleharv...&lt;/a&gt;&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Wed, 30 Jan 2013 23:10:39 -0000</pubDate></item><item><title>Re: Nuno's Notebook — nano - minimalistic CouchDB client for nodejs</title><link>http://writings.nunojob.com/2011/08/nano-minimalistic-couchdb-client-for-nodejs.html#comment-757711394</link><description>&lt;p&gt;Whoah! That is shocking. In node pair number releases are stable (0.2, 0.4, 0.6, 0.8, 0.10) and 0.5 is unstable.&lt;/p&gt;&lt;p&gt;No idea what the guys at canonical where thinking there, but this is hardly a nano bug then.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Sun, 06 Jan 2013 06:43:56 -0000</pubDate></item><item><title>Re: Nuno's Notebook — nano - minimalistic CouchDB client for nodejs</title><link>http://writings.nunojob.com/2011/08/nano-minimalistic-couchdb-client-for-nodejs.html#comment-757082658</link><description>&lt;p&gt;Hey.&lt;/p&gt;&lt;p&gt;Can you do a `node --version` and tell me what it shows?&lt;/p&gt;&lt;p&gt;Nano works in node 0.6+&lt;/p&gt;&lt;p&gt;This worked fine for me btw. Just tried it. Really want to fix this, and I know how to, but first I would like to know in what circumstances this happened&lt;br&gt;Nuno&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Sat, 05 Jan 2013 15:52:58 -0000</pubDate></item><item><title>Re: Nuno's Notebook — Nano 3</title><link>http://writings.nunojob.com/2012/05/Nano-3.html#comment-569436506</link><description>&lt;p&gt;Makes sense, but you will need to task the user to reauthenticate when cookie expires :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Wed, 27 Jun 2012 20:09:05 -0000</pubDate></item><item><title>Re: Nuno's Notebook — Nano 3</title><link>http://writings.nunojob.com/2012/05/Nano-3.html#comment-568054626</link><description>&lt;p&gt;Nop, basic auth works with the built in roles and permissions&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Tue, 26 Jun 2012 20:03:04 -0000</pubDate></item><item><title>Re: Nuno's Notebook — Nano 3</title><link>http://writings.nunojob.com/2012/05/Nano-3.html#comment-568017698</link><description>&lt;p&gt;You can have CouchDB on localhost and not available via the internet. This would make it secure as long as firewall is not breached.&lt;br&gt;You can use CouchDB with HTTPS plus Basic Auth giving you the same guarantees as SSL.&lt;/p&gt;&lt;p&gt;Makes sense?&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Tue, 26 Jun 2012 19:09:47 -0000</pubDate></item><item><title>Re: Nuno's Notebook — nano - minimalistic CouchDB client for nodejs</title><link>http://writings.nunojob.com/2011/08/nano-minimalistic-couchdb-client-for-nodejs.html#comment-552048384</link><description>&lt;p&gt;@twitter-187379379 that won't work, as Futon uses jQuery ajax and that is not in node.&lt;br&gt;I would argue that is a good thing :)If and when @mikealrogers ports request to the browser (but needs to include `pipe`) I will launch a browser version of nano, which is better than the futon code anyway.&lt;/p&gt;&lt;p&gt;Thanks for using nano,  hope you enjoy it.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Fri, 08 Jun 2012 12:53:34 -0000</pubDate></item><item><title>Re: Nuno's Notebook â Clarinet - SAX based evented streaming JSON parser in JavaScript for the browser and nodejs</title><link>http://writings.nunojob.com/2011/12/clarinet-sax-based-evented-streaming-json-parser-in-javascript-for-the-browser-and-nodejs.html#comment-545596994</link><description>&lt;p&gt;You do realize this is not a paper, but just some work i did with a little rigor.&lt;/p&gt;&lt;p&gt;I'm no researcher, neither aspire to be :)&lt;/p&gt;&lt;p&gt;This was just so easy I did it anyway.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Sat, 02 Jun 2012 04:39:45 -0000</pubDate></item><item><title>Re: Nuno's Notebook — My Contribution to JSConf 2012 The Good And The Bad Open Source</title><link>http://writings.nunojob.com/2012/05/My-Contribution-to-JSConf-2012-The-Good-And-The-Bad-Open-Source.html#comment-529135751</link><description>&lt;p&gt;Thanks Sean. Really appreciate your comment.&lt;/p&gt;&lt;p&gt;I used to work at Hawthorn in IBM btw, have some friends in Poughkeepsie :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Tue, 15 May 2012 04:25:06 -0000</pubDate></item><item><title>Re: http://codeofrob.com/entries/anti-templating-languages.html</title><link>http://codeofrob.com/entries/anti-templating-languages.html#comment-479738574</link><description>&lt;p&gt;Have you ever used Knockoutjs?&lt;/p&gt;&lt;p&gt;Your comment makes me think the answer is no.&lt;/p&gt;&lt;p&gt;Would be great to have the functionality KOJS offers (read data binding) in a project that works with plates though. That I know that doesn't exist.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Thu, 29 Mar 2012 14:36:09 -0000</pubDate></item><item><title>Re: Getting off the Couch(DB)</title><link>http://www.signalengage.com/2012/01/24/getting-off-the-couchdb/#comment-431101597</link><description>&lt;p&gt;John, great simple post on the topic. Doesn't cover MVCC but does cover LSMT. &lt;a href="http://www.readability.com/articles/cy5s83cg" rel="nofollow noopener" target="_blank" title="http://www.readability.com/articles/cy5s83cg"&gt;http://www.readability.com/...&lt;/a&gt;&lt;/p&gt;&lt;p&gt;This technique is what enables search engines. That's why database and search guys tend to get pissed when you say MVCC and slow in the same sentence. People will always go WAT? Unless you work for 10gen, I've seen this moto in their slides. However having talked to them on occasion they always admitted MVCC was in the roadmap.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Mon, 06 Feb 2012 15:25:01 -0000</pubDate></item><item><title>Re: Getting off the Couch(DB)</title><link>http://www.signalengage.com/2012/01/24/getting-off-the-couchdb/#comment-428039363</link><description>&lt;p&gt;To clarify: I think HTTP APIs are a necessity now a days and i would create them for any app. But if I built a database it would probably have the HTTP API as a good to have, not essential. I think it is accepted that you should build your database as the platform for vendor independence and not rely in empty promisses like JDBC for platform independence. &lt;/p&gt;&lt;p&gt;But reading your comment - the problem is not the HTTP API for serving the app (as I expected) but the lack of enterprise support for administration tooling in CouchDB. Not surprised. Maybe you should at least look at closed source alternatives, there's a reason why they cost money.&lt;/p&gt;&lt;p&gt;As for the MVCC you are still wrong. I can write a in-memory MVCC implementation with auto compaction. Resource utilization means your database using stuff Mem, CPU, Disk or Network. They kind of always do that anyway. So it's always a tradeoff, it's about the architecture. MVCC is a performance hack just don't forget that. However the objectives of Couch architecture and implementation of MVCC are not focused on speed but in replication. This yes, is the key point that hurts you. One of them, I'm not a database engineer for Couch so..&lt;/p&gt;&lt;p&gt;Good luck with Mongo, seriously :) I hope you guys solve your problems but the lack of context and knowledge people have with databases, mixed with the fact that people sell them buzzwords they can't really grasp unless they get serious experience in the field is a problem. I would advise you to do a POC with different vendors and compare results. Maybe give them all the same box, data, and objectives in terms of performance, a other non functional requirements. That does not solve the fact that you can still get burned in the long run but if done at the right scale it can at least preclude things that you found here later on,&lt;/p&gt;&lt;p&gt;&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Thu, 02 Feb 2012 15:53:36 -0000</pubDate></item><item><title>Re: Getting off the Couch(DB)</title><link>http://www.signalengage.com/2012/01/24/getting-off-the-couchdb/#comment-428006698</link><description>&lt;p&gt;You are wrong in several things:&lt;/p&gt;&lt;p&gt;&amp;gt;&amp;gt; HTTP is a Very Slow Database Protocol&lt;/p&gt;&lt;p&gt;Here's a good example. HTTP as absolutely nothing to do with your problem. If HTTP was your problem to scale you are basically saying Couch HTTP server is a disgrace.I am yet to see a place where a HTTP server was a bottleneck to a database.&lt;/p&gt;&lt;p&gt;&amp;gt;&amp;gt; MVCC Overhead&lt;/p&gt;&lt;p&gt;I think you don't really know what MVCC is. Reading some stuff about Couch is certainly not indicative of all the MVCC implementations in the world. There are CouchDB architecture decisions that impact write heavy applications but those have nothing to do with MVCC. e.g. Postgres and MarkLogic use MVCC to SPEED up ingestion times. Do you really think that `read and write` is faster than just `write` in all situations? No, it's not. MVCC was designed as an approach to make ingestion faster, not slower. Problem is basically deferred to reads, and it's super useful on indexes. Compaction is a non issue, CouchDB simply doesn't support auto compaction.&lt;/p&gt;&lt;p&gt;Good luck with mongo, it seems like you are going to need it. I would advise you to do some research before, there's plenty close source products built specifically to solve the problem you are trying to solve.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Thu, 02 Feb 2012 15:10:15 -0000</pubDate></item><item><title>Re: Nuno's Notebook — nano - minimalistic CouchDB client for nodejs</title><link>http://writings.nunojob.com/2011/08/nano-minimalistic-couchdb-client-for-nodejs.html#comment-424698079</link><description>&lt;p&gt;Thanks Nitin. Octopus I'm not available for any sort of consulting. I can vouch for Nitin as I know him personally. :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Mon, 30 Jan 2012 17:26:01 -0000</pubDate></item><item><title>Re: http://nodetuts.com/tutorials/29-deploying-to-nodejitsu.html</title><link>http://nodetuts.com/tutorials/29-deploying-to-nodejitsu.html#comment-384786623</link><description>&lt;p&gt;To get an invite just go to #nodejitsu @ freenode :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Mon, 12 Dec 2011 09:56:29 -0000</pubDate></item><item><title>Re: Nuno's Notebook â Mock Testing CouchDB in node.js with Nock and TAP</title><link>http://writings.nunojob.com/2011/12/Mock-Testing-CouchDB-Using-NodeJS-With-Nock-And-TAP.html#comment-378819644</link><description>&lt;p&gt;Two obvious things:&lt;/p&gt;&lt;p&gt;1. In Mock request you need to mock request. In Nock you can just simply use request. Ask Pedro about the black magic details&lt;br&gt;2. Nock allows you to record http calls, which helps not having to write a bunch of code. I didn't see that in Mock Request&lt;/p&gt;&lt;p&gt;In all fairness I never used it so it's likely that there are features there that also don't exist in Nock&lt;/p&gt;&lt;p&gt;Nuno&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Sun, 04 Dec 2011 02:05:45 -0000</pubDate></item><item><title>Re: Nuno's Notebook â Mock Testing CouchDB in node.js with Nock and TAP</title><link>http://writings.nunojob.com/2011/12/Mock-Testing-CouchDB-Using-NodeJS-With-Nock-And-TAP.html#comment-378817942</link><description>&lt;p&gt;I didn't know mock-request existed up until now. :) &lt;/p&gt;&lt;p&gt;It's in the roadmap to make nock work without writing any code. First time would go against real servers and subsequent times it would just replay those requests :) I'm sure Pedro can elaborate more if you ask him.&lt;/p&gt;&lt;p&gt;I've dropped your question on twitter and irc to see if anyone knows anything on TCP :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Sun, 04 Dec 2011 01:57:57 -0000</pubDate></item><item><title>Re: Is Haskell the Cure?</title><link>http://mathias-biilmann.net/posts/2011/10/is-haskell-the-cure#comment-325557095</link><description>&lt;p&gt;I find it extremely hard to believe the ecosystem is near the dimension of ruby, java, or javascript.&lt;/p&gt;&lt;p&gt;One could argue this but if you do it probably means you just never tried ruby/java/javascript&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Mon, 03 Oct 2011 10:17:28 -0000</pubDate></item><item><title>Re: Is Haskell the Cure?</title><link>http://mathias-biilmann.net/posts/2011/10/is-haskell-the-cure#comment-325551480</link><description>&lt;p&gt;Tinha que ser um portugues a vir fazer figura de otario. Nao era?&lt;br&gt;&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Mon, 03 Oct 2011 10:06:44 -0000</pubDate></item><item><title>Re: Is Haskell the Cure?</title><link>http://mathias-biilmann.net/posts/2011/10/is-haskell-the-cure#comment-325550422</link><description>&lt;p&gt;Well that's just because you started by programming imperative. And switched to functional. If you had done the opposite (like I did) I figure you would think imperative and OO languages are to hard to learn. All that messy copied object and crazy syntax right? :)&lt;/p&gt;&lt;p&gt;Point is haskell is no harder to learn than any other language. You just started by looking at the world with different eyes. I actually think haskell is a great language to teach someone how to develop software.&lt;/p&gt;&lt;p&gt;PS. After re-reading my comment I think it sounds a bit harsh. I don't mean it that way I sound way too serious in writing but am actually goofing around most of the time :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Mon, 03 Oct 2011 10:04:34 -0000</pubDate></item><item><title>Re: Is Haskell the Cure?</title><link>http://mathias-biilmann.net/posts/2011/10/is-haskell-the-cure#comment-325497643</link><description>&lt;p&gt;"a humongous learning curve"&lt;/p&gt;&lt;p&gt;What? Just cause it was hard for you doesn't make this true. Haskell is the easiest langage to learn. And I do javascript and xquery daily, and am proficient in a bunch of other languages. I have no idea why you would say this.&lt;/p&gt;&lt;p&gt;What is missing in haskell is a ecosystem. Something like npm with a million utils.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Mon, 03 Oct 2011 08:10:45 -0000</pubDate></item><item><title>Re: Nuno's Notebook — So you think you can build a document database?</title><link>http://writings.nunojob.com/2011/09/so-you-think-you-can-build-a-document-database.html#comment-316121537</link><description>&lt;p&gt;Susanne I never tried OrientDB so I can't comment deeply on it. If you provide me a significant white-paper describing the architecture I would.&lt;/p&gt;&lt;p&gt;Some notes after just browsing thru OrientDBs documentation:&lt;/p&gt;&lt;p&gt;- OrientDB does not support pessimistic locking. By default it does no transactions. ACID claim seems a bit far fetch. That I know of you have two ways to preserve ACID. Pessimistic, or something base on short lived locks like voltdb does. Am I missing something here? :)&lt;br&gt;- Couldn't find anything talking about full text search. In MarkLogic you have support you would expect from a state of the art enterprise search engine&lt;br&gt;- Couldn't find anything about what it does to speed up inserts. How does it avoid the global lock situation like it happens in mongo?&lt;br&gt;- Clustering seems to have a single point of failure with a replica by default. MarkLogic does shared nothing clustering meaning no single point of failure. As far as I could see clustering is just a way to maintain HA, there's nothing in the docs I could find about scaling horizontally.&lt;br&gt;- Security is not baked into the index, so security doesn't help make your queries faster&lt;br&gt;- Indexes are pretty much like mongo. So claims made here apply the same on OrientDB. MarkLogic offers both range indexes (in memory) and something like an extended inverted index that allows adhoc queries against unstructured data&lt;br&gt;- OrientDB was written in java which is already a funny in regards to claiming Pb scale transactions. C++ can be a pain to write but you certainly have more flexibility, and at MarkLogic we use that flexibility.&lt;br&gt;- The initial release was in 2010. MarkLogic has a group of top level engineers working on a product since 2003, having deployed in numerous customers, with huge deployments. Isn't saying orientdb supports "everything plus" a tad optimistic?&lt;br&gt;- Can't see any notion of reverse queries or alerts.&lt;br&gt;- No references to the geospatial queries&lt;br&gt;- No way to transform your data on the way in&lt;br&gt;- No ways to enrich documents&lt;br&gt;- MarkLogic is not light weight, it's easy to use but easy duty. Scaling a PB of document with transactions is no easy task. It is a technical acomplisment on it's on and requires memory, disk and cpu. Our binaries are not 1mb for sure. I do understand this being a selling point for a embedded database, but then it couldn't do all marklogic can do.&lt;/p&gt;&lt;p&gt;After looking at it it looks more like an alternative to neo4j than a document database to tell you the truth. Which makes sense on the not having horizontally scalable clusters, scaling a graph horizontally is real hard :)Please don't take them to heart. I obviously had 5 seconds to look at your docs and got some of that wrong. I was just trying to be helpful and explain why I said there's no real alternative to MarkLogic in the open source world. So feel free to tell me I'm wrong, I'm wrong often :)&lt;/p&gt;&lt;p&gt;PS. Opinions are my own, not my employer (MarkLogic).&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Tue, 20 Sep 2011 15:44:00 -0000</pubDate></item><item><title>Re: Nuno's Notebook — So you think you can build a document database?</title><link>http://writings.nunojob.com/2011/09/so-you-think-you-can-build-a-document-database.html#comment-316109806</link><description>&lt;p&gt;I don't believe there is Peter.&lt;/p&gt;&lt;p&gt;I'll skip the boring details but I don't think neither MongoDB or CouchDB are trying to be a general purpose database for documents.&lt;br&gt;(I actually wrote a long post with all the boring bits but OS X gestures decided to swipe it off) &lt;/p&gt;&lt;p&gt;In other words there is no MarkLogic open source alternative, neither I see that happening in a 1/2 years time frame (given the current architecture of most open source document database not fitting what you need to do to have such a general purpose doc database).&lt;/p&gt;&lt;p&gt;Feel free to ping me on twitter with questions. Or email :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nunojob</dc:creator><pubDate>Tue, 20 Sep 2011 15:23:39 -0000</pubDate></item></channel></rss>