skysight-inc/HackerNews huggingface dataset:
I've seen a fair number of articles over the last couple of years comparing the strengths and weaknesses relational/document-store/graph databases. What I've never seen adequately addressed is why that tradeoff even has to exist. Is there some fundamental axiom like the CAP theorem explaining why a database like MongoDB couldn't implement foreign keys and indexing, or why an SQL couldn't implement document storage to go along with its relational goodness?

In fact, as far as I can tell (never having used it), Postgres's Hstore appears to offer the same advantages as a document store, without sacrificing the ability to add relations when necessary. Where's the downside?
Sorry to chase you between threads, but yes, I'd like to get in touch for the Getty files! Care to share contact info?
Why betting on HTML5 / Mobile Web is the wrong answer for the enteprise
Meddle is a micro-blogging platform that allows individuals to add commentary on selected excerpts of articles.

Bloggers can embed Meddle in their Wordpress accounts to essentially turn comments into shareable pieces of content that can translate to page views.

Thoughts?
The main concern in the US is it needs to be a licensed vehicle and it needs brake and turn lights, that's about it. I'm not sure how this would be classified but you might need seat belts too.
I've been a US-based remote worker for close to 3 years now.

I started doing contracting work in Rails while I worked full time in .NET (while going onsite everyday). I also networked a lot within the local Ruby community. When I was ready to jump to Rails full time, a friend through the community was staffing up an early stage startup with remote devs spread across the city. This was a good way to dip my toes into remote work while still maintaining local connections.

After a year of that, I jumped to a larger company to join their remote team of Rails developers (currently about 10 of us are remote). Now I'm pretty adjusted to the remote lifestyle and it would be very hard to let go of it since the impact to family life is so positive.

My advice would be to do as many others have done and start with remote contracting to see how it works. Then you can either convert to full time or find another full time role later if you need benefits. However, if you can remain as a contractor I would generally advise people to do that if your financial situation allows for it.
So true. Great lens with a big aperture strapped facing a 35mm sensor blows away every point and shoot inc phone cameras. Try taking great pics indoor with a phone camera. Even if technology improves on the lens & sensor side you will still need a good light source for indoor shots. I don't think a 580EX will strap onto your phone camera.
Mattermark VC Portfolio Benchmarking – B2B Companies
Something like Imgur might be a good use-case for MongoDB. There's basically no relations between images, so each image can easily be thought of as a lone document.

That said, even if somebody was building something like Imgur, I would still advise that the start with a SQL database. SQL is very well-understood, and you will have no problem finding developers that have deep experience in your SQL engine of choice.

More importantly, by the time you hit the point where you need a NoSQL solution to handle scaling issues, you will have achieved product-market fit, and can make a sane technology decision based on your vastly greater understanding of the business needs.
ITT tech startups learn about Lunix.
How true. Also, most people, in my experience, are unable or unwilling to accept frank feedback. They will get their feelings hurt, argue, get angry, or just block out what you're saying. (At least this is true in my experience in the US - perhaps some other countries have a more direct culture, e.g. Germany/Israel/Russia?)

So if you can project your ability to calmly receive frank feedback, others may be more likely to tell you what they really think.
actually in india there is a cottage industry on training people to ace tech interviews and solve these kind of problems
It was exactly that level of arrogance (the last sentence in the original article) that prompted my first comment. Really, can't you promote your language without personal attacks?
Its because Teamspace is addictive. Going back is crippling. My work team uses Teamspace so I don't have to face this at work. I'm sure not going to volunteer to use Skype again.
As almost everyone reading this knows, software is going to "eat the world" -- to quote Marc Andreessen.[1]

The corollary to that prediction: wherever one finds software, one will also find bugs and malware.

So, bugs and malware everywhere -- in our phones, TVs, ovens, vehicles, factories... and space stations.

--

[1] http://online.wsj.com/news/articles/SB1000142405311190348090...
Their legal documents are taken from them. They are told that the police will lock them in prison or deport them if they try to get help.

You are down to the very root of the problem here; the logical thing to do would be to make sure these threats are not credible, but it seems you are advocating exactly the opposite.

Domestic sex workers rarely turn to sex work out of free choice. They've made bad decisions, and now they're addicted to drugs, or in deep debt, and sex work is the only way they can get money.

There are many (most?) professions that people choose primarily because that is the best way for them to make money. Why take exception with sex work?

The few people who enjoy sex work are not enough to satiate demand for sex workers, especially if it's legal.

What does this even mean? Normally, demand and supply are made equal through price, and this is exactly how it happens in sex work, just as in any other.

It's nice to think that a bit of sex work is one way that people could chose to put themselves through college and then move on to much better work, but unfortunately that's nothing like the truth of sex work.

s/sex work/any other manual job/, and your statement would still stand true, except it often provides a much higher hourly rate for the worker, compared to most alternatives.

Fundamentally, this is nothing but covert moralizing, implicitly arguing that if other people make choices that you personally consider repugnant, they are somehow objectively wrong and need to be re-educated to see the error of their ways.
All the cool programmers use CoffeeFuck.
Is it possible to reliably bury power lines in Florida? The ground is one big sea-level swamp.
Remote Code Execution in GitLab Shell
Google won in so many ways these past few years, but one of the biggest wins over Apple was ironically... in the interface.

Google introduced the flat interface in its website and pioneered it in Chrome. (Yes, IE had long ago been flat but it was ugly.) It even made the icon completely flat. Android had simple, flat designs. Apple had nice skeumorphism.

Then surprisingly both Microsof and Apple followed Google's design aesthetic! Except Google does it better. Take Apple for example ... I thought I'd never see the day when I'd aay Google's app interfaces are more consistent and beautiful than Apple's. But it's true. They have buttons that look beautiful when pressed, due to 3D hints. All their apps have the same consistent aesthetic. Since iOS7, the aame cannot be said of Apple's apps.

It makes Google's suite of apps a pleasure to use. And speaking of the suite side of Google, look at it:

Maps

YouTube

Analytics

These first two alone are the go to solutions for anyone who needs that stuff. Want to show maps? Use Google (maybe bing). Want to embed video or link to one? YouTube! (would you use vimeo on mobile?)

In short... Google is an indispensable part of everyone's mobile phone and can charge for its large integrations.
Agreed. Also, this looks way more like a case where the author mis-structured his data for his intended use case, and is blaming the tool instead of the skill level used to implement it. Nesting deeper than one level in a document is rarely going to result in sufficient query capability with respect to the nested items. Even MySQL can't nest rows inside other rows, which is what he seems to have wanted. Maybe he chose MongoDB because he wasn't ready to think around the architecting issues that an SQL-based database would require, which happen to be, although not immediately obvious, similar to those in Mongo.
But it's not web scaled :)

http://www.youtube.com/watch?v=URJeuxI7kHo
JSON is cool and hip.

More seriously, it has been gaining popularity because of it's direct relationship to built-in structures in most programming languages.

For example: XML doesn't have a concept of arrays, but accomplishes storing collections in it's own special way. It's up to the parser to determine how this should be referenced and interacted-with, while with JSON there's no question: it's an array.
Thanks, useful. I'm sure it'll break copy/paste in Google Docs, but that's a small price to way.
Golang Blackjack strategy test framework
> I am unwilling to put in the time to understand Scala's types, especially because it's so easy to do without them. If I need Haskell-level type safety for some subset of a project, I would use Frege or another Haskell implementation for the JVM that is certain to come along.

Learning Scala's type system takes time, yes; it quite possibly takes longer to learn Scala than most languages. But it's still going to be less effort than learning two different languages.

I think that most organizations are already using a lot of code that they don't understand. The JVM itself is many thousands of lines of not especially clear code; I suspect very few java-based organizations really understand it (and I've hit bugs in the JVM in real life, so it's not that there's no need to understand it). Likewise large, popular Java libraries like Spring and Hibernate (particularly given that they do bytecode manipulation, so you can't always even assume that the normal rules of the language apply).

I think standard library implementations are rarely read in any language, so the complexity of the standard library implementation in scala isn't a concern. I think the interfaces are important, and if users are unable to understand the method signatures then that's a problem. But documenting what a method does is often seen as adequate (e.g. in Python or Ruby the documentation is the only interface signature you get), so I don't see a fundamental problem with the "simplified signature in the documentation" approach (though it would be better to have some way of automatedly ensuring these were correct).

(The only alternative would be to give up the power entirely, or to have two distinct collection libraries; neither of those seems like a good answer. If you don't see having Haskell-level language power as an advantage, then yes the complex library interface is not worth it and you'd be better with a less powerful language. But if you see value in writing parts of your system in something like Haskell, I think it's a big win to be able to use the same language for the haskell-like parts and the kotlin-like parts, and learning a complex library is less overhead than learning a second language).
Duplicity is an open source project that can be used with different types of storage (I use them with OpenStack Object Storage instead of S3).

You can host your own backups if you want (supports ftp, sftp, ... check the docs: http://duplicity.nongnu.org/duplicity.1.html), but Tarsnap is an hosted solution.
Zero to Peanut Butter Docker Time in 78 Seconds
I really don't get the feeling that VCs in general are good at picking the formidable founders

The sentence you are responding to is the whole point of the article. VCs don't have to be good at picking formidable founders. (I don't know whether they are or aren't.) They just have to believe that they are good at it - and they do.
And the fact Google Maps interface is awful and Apple maps has more useful contextual data.

Personally I used both Google Maps and Apple Maps to around navigate Australia in a mobile home recently. At times both maps where useless, but generally Google Maps was just awful.

Its been stated in this thread that Apple Maps is good enough, but the flip side is, in rural Australia at least, Google Maps just isn't good enough.
Apple forcing users to use their map (or any) software is exactly why Google needed to give the android OS away for free. Google would of been screwed on mobile if they didnt push so hard with android.
OP should have been using a graph database. Ranting about MongoDB because it doesn't support what it's not designed to support is a bit silly. A RDBMS would have been just as poor of a choice here.
The article mentions that they considered a graph database, but considered it too niche for production. Is that the general opinion on graph databases (like neo4j) at this point? Not production ready? This project seems like a perfect application for a graph database.
I hold a fair amount of bitcoin as both a speculative investment, and because I support bitcoin in principle. I've long suspected that the biggest threat to bitcoin's long-term survival will be the power structure - banks or government or both - but I hold out hope that the will of the people to use this currency will overpower the will of the powers that be to suppress it. I've put my money where my mouth is, and I appreciate good articles like these which delve into the subject in detail.
This is one:
https://www.secondmarket.com/company/bitcoin-investment-trus...

There may be more. I remember reading about the Winkelvoss' trying to do something similar.
> But yet somehow $8/mo feels much cheaper than $250 for a professional IDE

these are 2 different products and a flawed point. You still need a professional ide, if you dont have one already.
Maybe I'm cynical (or not cynical enough) but I always tend to cast a wary eye at product marketed like this:

>You don't need to read thou­sands of pages to learn me­chan­ics and cal­cu­lus, so why are the re­quired text­books so long? Text­book pub­lish­ers pro­duce such large text­books so they can charge you $150 for each text­book. They want to get $300 from you to teach you the ba­sics. That's not cool!

It comes off the same way as infomercials for "One health secret that doctors don't want you to know!".
This is just a naive article from a naive developer who shouldn't be responsible for choosing data stores in any project. 4-6 projects is a lot? I think you need to get your head out of your a (like most ruby devs ;).
Well if they used Windows, at least we'd occasionally get free ISS parts showing up in our backyards.

FTR: I'm a Windows user.
If anything, I'd like to see more 'why I wrote X in Python', and 'why I wrote Y in Java' pieces.

I suspect in many cases the answer is 'because I've invested time in learning it' rather than technical benefits. Not that this is a bad reason.
You probably had the maximum number of connections in ip_conntrack_max set to ~64K
As I get more experience in 7, I am finding it more painful. It might be one particular implementation where any attempt to bring up network settings resulted in nothing happening, not even an error message.

Also, clicking on the "volume" icon should not bring up a spinning blue circle, not even for a millisecond.

I just might get chased into a MacBook or whatever they are called these days. And I don't like Apple very much right now so that's something.
Or maybe something like this: A Graph Database

http://en.wikipedia.org/wiki/Graph_database
Not sure why it has to be one or the other.

It seems perfectly reasonable to store the users profile information and media in mongodb and your likes and comments in a relational db.
Ask HN: Plugnplay FTP Server for USB harddrives
Thinking about building a piece of hardware. I wanted to get the HN community opinion or in the alternative see if anyone knows of a similar commercially available device.

As the subject line suggests, this will be a plugnplay FTP server for USB devices (mainly harddrives, jump drives. Think WD MyCloud except with multiple USB ports to connect multiple harddrives or thumbdrives. This way I can access multiple drives, easily save multiple backups incase one goes bad (which is just a matter of time), and these drives would be stand alone from all other devices on a given network.
Check my comment history, I've given several use cases. Basically, Mongo is nice if you don't need a lot of relational stuff but do have lots of arbitrary data to store. A good example is time series data where the format changes over time -- often it's not a good idea to go back and convert old data (sometimes it's not even possible). Mongo makes it really easy to support multiple schemas if your business requires it, rather than having to maintain arbitrary numbers of different tables.
Dwolla Open Sources Mobile Payment App
Yes! Especially when many consumers just want something to put on Instagram or some social network at web resolution.
We already have CommonJS. It rocks. Use it. Whether your code runs in node or the browser is exactly what the "engines" property of the "package.json" file is for.
except there are relationships in imgur. For example when it groups images from different subreddits or creates albums.
However, for some reason we don't see hordes of underage slaves manning McDonald's, do we?
Perhaps it has something to do with the fact that burger joints are legal, and hence violating labor laws has real consequences for their proprietors, and sex work isn't, so labor laws have no relevance?
+100000000 !!!!!!!!!!!!!

I can't think of how many times I've had to do this. I relaly like georgemcbay@'s idea to just mark as spam. Gonna do that from now on
A good simple use-case for a document database (could be MongoDB, but not necessarily) is configuration and system "schema" type data. For example, storing all of a user's settings and preferences into a document keyed by the user's Id.
Biomeme - DNA diagnostics on your smartphone
Ask HN:Thoughts on Crowdsourcing Crime reports
I am from India and I recently started an initiative to fight crime using crowd-sourcing .Here is the link to beta application http://www.zerocrime.org.

Currently users can file unoffical reports and we place them on the map.
Over time, We plan to aggregate these reports to create a crime rating index of neighborhoods and areas will be color-coded as per their crime rating. We will also conduct advanced analytics and longitudinal studies to generate meaningful insights for law enforcement agencies and media houses. We also plan to develop crime prevention tools such as prediction of crime through data analysis.

Thoughts ?
The $11 million in bitcoins the Winklevoss brothers bought now worth $32 million
Look Inside Apple’s Spaceship Headquarters
Correct. I wasn't saying that they have to be unprofitable going forward, just that the pre-funding doesn't entirely explain the losses.

I think it's a sensible document and it shows the USPS understands their situation and is willing to remain solvent in a humane and useful way.
It did wonders for imgur?
As an Android Google Maps user, the bigger issue for me is how terrible Google Maps 7.x.x is compared to 6.x.x. I've got my Nexus 4 set up to remain on 6.x.x indefinitely and fear of reverting Maps to 6.x.x on KitKat being a PITA is the reason I'm not planning on buying a Nexus 5 or any newer Android phone for the foreseeable future.

They are very slowly undoing some of the damage that the incredibly misguided earlier 7.x.x releases caused, but 6.x.x is still, by far, the superior app for now.
People like my girlfriend who are either unaware of better alternatives or too lazy to look into it. It took me months to get her to download google maps, finally culminating in a small argument when apple maps sent us the wrong way in unfamiliar territory. Apple maps is far inferior.
This misses the point. The real problem was the question of whether Microsoft was using its position as a major software vendor to warp the web browser market in ways ultimately highly detrimental to user experience. The popular answer is probably 'yes', as a generation of web developers cry out in despair.

The problem is that by bundling this particular application, and by its behaviour with that application (ignoring standards etc.), Microsoft was able to massively distort the web market based on its monopoloy position rather than technical merit. This affected the development of the web for years afterwards - even to this day!

If you agree these problems existed (I don't think it's a controversial opinion...), then the conclusion is precisely that MS should not be able to set the default web browser, because allowing to do so would be ultimately more damaging than giving users a slightly poorer experience when they have to install their own. This is a quantitatively different situation to that of many other default apps, where MS neither wants nor tries to monopolistically dominate a a massive emerging market segment - but if they did, perhaps the same questions would come up again.

Edit: So I guess the summary would be yes, MS does get to set lots of default applications, but this is exactly what the case was about. Should they actually be allowed to do so? Even if sometimes it's okay, what about the times where this lets them dominate for reasons totally unrelated to technical superiority?
Don’t Talk to (Just) Me
at mongo training we were told map/reduce did not offer performance and to avoid it for online use. You must use the "aggregation framework".
> It's unclear to me what the author is criticizing.

The author isn't criticizing so much as observing. From TFA:

The post is not about the Agnostic or his code, it’s about the dynamic of programmers eager to rewrite code in their own image, and the hypothesis that our (I am equally guilty of this behaviour) motivation for doing so is to emphasize the small differences between ourselves and others.
So, the next step is to use the camera and microphone on your phone to detect the PIN on the phone that somebody standing next to you uses. With a directional microphone, a good video camera and some smart gonio to reconstruct eye position relative to the screen it should be possible to detect the PIN even if the screen isn't visible in the shot.
Rocket Surgery Made Easy

http://www.amazon.com/Rocket-Surgery-Made-Easy-Do-It-Yoursel...
Wouldn't fair, equal footing for dealing with Bitcoin involve paying £5000 to apply to register with the FSA and dealing with the same and money laundering regulations that financial services firms have to?

Here's 145 pages to get you started on some of the rules you might have to follow as a provider of VAT-exempt "e-money" instead of "single purpose vouchers"
http://www.fsa.gov.uk/pubs/international/approach_emoney.pdf

These are in turn a lot less onerous than some of those those for exchangers and remitters of currency...
People like my girlfriend who are either unaware of better alternatives or too lazy to look into it.

Isn't that the definition of "good enough"? If it were truly awful, then she'd be forced to look up an alternative, because it'd never work. So it must work well enough for her.
Backbone CQRS
> Strongly held opinions suck all the joy out of conjuring bits to do your bidding.

I'd say just the opposite. If you care about programming, you care about doing it the right way. The people who don't have strong opinions are generally the people who don't care, and don't enjoy their jobs, and don't produce good results.
Lots of open source projects make torrents of their files available for download from their website. That's a different animal from building a torrent client into your app. The PortableApps.com Platform is how lots of our users get their apps now, right from the app store or via the automatic app updater, and that all takes place via HTTP. In order to properly use torrents, we'd need to build a client right into the app store so users can use it but still one-click update/install their apps. But, having a torrent client built into the platform would encourage companies to block the platform itself. And, it would leave our users unable to update their apps inside organizations that block torrenting at the network level.