skysight-inc/HackerNews huggingface dataset:
> What _are_ the "correct" use cases for NoSQL?

there are many and the different use cases for it that I know of aren't really connected by a theme or any criterion that can be generalized. this is my own observations only, and not a statement based on theory. the wisdom of experience. take it for what it's worth.

1. application state persistence. persisting the app state in something closer to its native representation (JSON, for example) is convenient sometimes. if all you really want to do is save the state and then reload it later in another session you've got a strong use case for some kind of NoSQL. Note that application state persistence is very different than object state persistence. The app state is specific to a single user at a single point in time. Object state might have multiple users (anyone that can manipulate that object) and multiple points in time (e.g. objects that are persisted for long periods of time).

2. Key:Value store for cacheing. this is the most basic, canonical use case. Memcached, redis, etc.

3. data structures that SQL is poorly suited for. Graphs and Trees come to mind. if you find your SQL schema suddenly becoming bogged down in M2M through tables, you probably have a good use case for a Graph oriented datastore.

4. Time series. arguably this is just a subset of relational data, or a domain specific language extension over traditional SQL, but still, it feels a little different in practice.
Cloudflare is reporting that the issue has been resolved.

https://www.cloudflarestatus.com/incidents/51q3xhq8w7t8
I just hit this too. I guess I have to abandon that account and use a different email.
You can't downvote stories. You can only flag them. I'm not sure where the karma threshold is. I flagged this one, though. :)
I apologize if this comes across as rude, but what's the point of this post? I can't think of any value or information to be gained from it.
Learning a language/framework to the point where you can be productive doesn't take very long. Learning a language/framework to the point there you are maximally productive is a much larger and more costly commitment.
TLDR (I think): Due to Github, recruiters can poach employees easily. As such, hiring anyone who has not peaked is useless, because he might be poached after training/getting better and we will have to compete with other (possibly more wealthy) employers to retain him.
The biggest problem with open market hiring:

The best people aren't on the open job market. They'll get scooped up by their network.

You're hiring the best of new grads, bullshit artists, people that just moved, extenuating circumstances, or didn't impress anyone they ever worked with.
As someone with only a basic understanding of threads, what is a better idea than fork/joins for scaling? Are you talking about thread pools or something else?
Do you have a viable alternative to protecting small websites from DDOS attacks?
Or even Chrome itself.
Do you like software development, in general ? In other words, is there something that you've worked on in the past that you were passionate about, and found yourself thinking about, even when not "working" ?

If the answer to any of the above is "yes", then you may just need to find another job that better suits your interests and needs in terms of career progression. Software development jobs can vary greatly in terms of being interesting/challenging. Being on a big development team is sometimes not the best option for developers that are just starting out. There's simply not enough room to grow and explore because your work environment is so rigid and pre-determined by others.
I've found it very easy just using the Marshal and Unmarshal packages for golang:

https://golang.org/pkg/encoding/json/#Unmarshal

They have some reasonable examples there.
This system of educational one-upmanship where someone will try to discredit others due to their formal education rather than logical fallacies in their argument just comes off as inaccurate and pretentious to me.
Those job openings want senior devs at junior salaries.

There are enough jobs out there that senior devs can laugh those off.

That's not a tech shortage - that's a sanity shortage on behalf of the startups (often new MBA grads with no experience who think their Hot Idea funded by their VC friend deserves devs taking pay-cuts for their lottery ticket options. News flash: senior devs have played the game too long to be bilked for suckers like that)
Kenton, the Windows support looks amazing and I'm grateful for it. There are so many of us for whom lack of up to date Windows support is a showstopper, so, thanks! (Thanks to Harris and others, as well)
But I don't think that was the author's intention. Uneducated would have sufficed.
It's in the official repos for many distros including OpenSUSE.

I actually am fixing up the install documents even though I don't use Neovim
Airbnb Settles Lawsuit in San Francisco
I work with a dude who is 50 from Michigan. It's amazing to hear stories of what an American lifestyle in the 70's and 80's was like. With 40,000 income he could buy a house, a vacation house in northern Michigan, a boat and two great vacations a year.

Its hard to admit standards of living are decreasing. There is def a lot of blame to go around. I agree one should not be disdainful of people who are different.

This red team vs blue team logic is getting us no where.
When it was first posted it was before any announcement, thus the headline was based on guesswork and rumours as opposed to linking to an article containing any actual information.
Basically yes, though I'd also make it so if you alias a field it's referred to by the alias from then on (e.g. FIELDS foo AS bar ORDER BY bar instead of SELECT foo AS bar ORDER BY foo). I'd probably be inclined to rename some of the keywords as well (SORT, FILTER, MAP, REDUCE perhaps).

There are some query builder libraries that let you specify clauses in a different order, like "query.from(table).where(col, value).select([...fields])", but I have yet to find one that lets you specify the query as a series of transformations on tables. (I think the word I'm looking for is "isomorphic" but that doesn't seem right somehow.)
The auth process is stupid. Can't login because I don't remember my password. Can't reset because it needs more information. Trying to hook up with Github doesn't help either. Very frustrating.
Well yes. Electron apps are still win32 apps underneath.

There's also a 'native' HTML+JS stack for UWP/Win10.
You can't be expected to exact as the square root of 10 is irrational. Perhaps that says something about the 10x developers.
And... if you accumulate a lot of data,you may mostly access it in an aggregated way, such as GROUP BY.
where ALTER TABLE ADD COLUMN X is free.
It's really hard to know what constitutes DDOS traffic at times. Suppose a Netflix show got really popular, do you cut it off. Let's make an exception for Netflix. What if a new competitor blahflix got popular quickly, Does its traffic get blocked?

Oh wait now blahflix needs to pay $$$ to get special privileges. Shit gets hairy real quick.

Suppose DDOS happens from iot devices. One of this is an important medical device that got hacked. Do you auto shut it down and block it's traffic. What about the life critical device under same IP through NAT that is secure also getting blocked?

ISPs should remain dumb pipes. You really don't want to give comcast more power.
I think the $500k example is misleading. At that level of seniority, your open source work isn't your primary qualification.

What the author is pointing to is the $250k dev who just 2 years back was struggling to land a $90k job.
Dead on Arrival for our company.
We only buy Thunderbolt 3 equipped notebooks for compatibility with our Dockingstation-Flexdesk setups.

I would have bought them in a heartbeat over Dell XPS 13s for our Customer Support guys.

It makes me really sad because this points to longer clinging to the Surface Pro 3 Connector, so the next Surface Pro & Surface Book are likely not to ditch it in favor of TB3. I'm still on my Surface Pro 2 and want to upgrade badly, but this makes me look elsewhere. Sadly.
That cloudflare status is very strange: it says (said) Angola, Dubai, Philadelphia (US), some Australian locations and some in South America were affected. Anyone have a good explanation of such a random distribution?
Introducing Windows 10 S
There was a wonderful episode of the 99% invisible podcast on this subject, while it focuses on sound it goes way deeper than this article

http://99percentinvisible.org/episode/sounds-natural/
Typically there are two arguments for NoSQL: "no SQL!" (i.e., "the SQL language is so ugly, difficult, and painful") and "no ACID" (i.e., eventually consistent, hopefully, maybe).

The first one is always demonstrated to be a terrible argument when someone creates a SQL alike for whatever NoSQL we're talking about.

The second one has been a more durable argument. But transactional semantics clearly are independent of query language! And technologies like Lustre and Spanner show that one can still have some measure of traditional transactional semantics in distributed systems (filesystems and databases, respectively). There are many applications where some degree of "eventually-consistent" is a great tool for making them scale, but this is often a function of what can be done in the event that inconsistencies create problems (e.g., a store selling more items of some product than it has available, a case where the store can refund the customer or delay delivery).

I'm extremely skeptical of NoSQLs, as you can tell. I would say that NoSQLs have NoPLACE. (Certainly as to that first argument.)

I'm also extremely skeptical of ORMs. So far as I can tell ORMs only ever add a layer of headaches. They seem to aim for simplifying the DB experience for developers and users, but the moment you step out of the small world of queries made simpler by the ORM... you're in for a world of hurt.
"Some 95% of Fortune 500 CEOs are male, as are 98% of the self-made billionaires on the Forbes rich list and 93% of the world’s heads of government..." It CAN'T be related to women's desires or choices: men and women are IDENTICAL! again,
"And those old stereotypes are deeply ingrained in the minds of the men they marginalise; they no more see jobs centred on serving or caring as their sort of thing than society does..." It CAN'T be related to men's desires or choices: men and women are IDENTICAL!

Are we ready yet to consider that men and women, while EQUAL, may not be IDENTICAL?????
There is indeed a reason, that is women are naturally/biologically caretakers and nurturers. Women are more trusted and accepted as nurses and caregivers than men. Many women would be uncomfortable or refuse to have a male caregiver help bathe or dress them.
Fabric on a horizontal surface my fingers are supposed to touch 1000 times a day for the next 3-5 years? So gross.
> 10x ReactJS developers, 10x Angular2 developers,

Are there really? I don't see many language/framework experts having 10x impact. Maybe Herb Sutter and Bjarne Stroustrup.
I would guess that the people making that kind of bank tend to not have GitHub accounts, or at best their fool-around-on-the-weekend projects on it.

That's a fuckton of money. I don't know how you make that unless you're in finance, self-employed as a high-end consultant, a CTO/senior architect, or a founder.
Surface Laptop
Almost every single phone out there is capable listen on standard radio frequencies. It depends on the manufacturer whether or not this functionality is enabled though.
Working at a place that focuses on billable hours and the majority of work is time and materials, the answer speaks for itself.
The solution can't be to hurt innocent traffic because a malicious user has some of the bandwidth. I agree some ISPs are complicit in the situation, but tit-for-tat approaches ultimately will hobble ISPs and create an irate and a distrustful internet. Even if you do create a magical technical solution that solves all the challenges without hurting bystanders, then you face an even bigger challenge: the status quo.

There is no way to get from our current situation to the world you propose - there will be never be a quorum from ISPs (or governments) on this sort of standard. It's a tragedy of the commons and no single participant has enough leverage or interest in a new status quo.
Silicon Valley Bank | API Banking Engineer | San Francisco, CA | Full-Time | Onsite / Remote (US) http://docs.svbplatform.com

Enable the world of FinTech by building public APIs for commercial banking. We're using clojure & postgres to expose brand new, easy to use, well documented RESTful interfaces for clients. Among other projects we work on, our small team created the technical integration with Stripe that powers Atlas (https://stripe.com/atlas). Our team consists of former Facebook, Disqus, and Standard Treasury (YC S13) engineers; startups are in our DNA.

With an aggressive roadmap of new products we'd like to launch in 2017, we're looking to expand our team to help deliver new APIs. While we don't currently have any full time remote employees on our team, we are open to remote US-based engineers helping us become a fully-distributed team.

Our interview process is designed to be respectful of your time; we have a short (~1h quiz) to get a baseline assessment of your technical skills, followed by a broader parsing problem (~4h project) to understand how you solve technical problems in a more realistic scenario. Both steps can be submitted on your schedule. These code samples minimize complications with whiteboard interviews and establish a consistent sample for all applicants.

Unfortunately, we're not able to provide detailed feedback on individual submissions, and we can't sponsor visas at this time.

This is the third or fourth month in a row that we're posting this same job post, and we have met many great folks (especially those as enthusiastic about Clojure as we are!), some of whom have joined our team. We've grown and will continue to grow as we build this product into a world-class banking API. Come join us!

Separately, we have a product manager role now available as well, where you can help us define and execute against the aggressive roadmap we have in front of us. More info on that role is available here: http://docs.svbplatform.com/jobs/pm.html

Contact Mike at api-jobs@svb.com for more information and to apply.
In theory. In practice, it's pretty much nonexistent. There's a long tweetstorm about it here: https://twitter.com/greg_doucette/status/821017618106744833 but the short version is that there are so many exceptions to the exclusionary rule (a.k.a. "Fruit of the Poisonous Tree Doctrine") that it might as well not exist for all the good it's likely to do you.
There is something to be said for risk aversion, but I often encounter attitudes like the one in this blog post that seem proud they are willing avoid risk at any cost. It's irrational.

If every company only wants the best of the best programmers and adopts a "better a false negative than a false positive" attitude to hiring, then it is just economics that programmers who are not obviously first class are being undervalued. Translation: if every company wants programmers with a perfect git profile, you can get a programmer w/o a good git profile at bargain prices. Even when you price in the risk of hiring duds, with such an irrational attraction to top-performers, there is a huge opportunity to profit here.

Sure, no one should go seek out unnecessary risks, but I think companies should employ a little more cost benefit analysis. Training people is a risk. Hiring junior programmers is a risk. Hiring programmers from a second tier college is a risk. But risks are opportunities to innovate.

If you only want to hire MIT grads with 10,000 GitHub stars, fine, but don't expect to get a competitive advantage from this, because this is by and large what all your competitors are doing.

The company that learns to identify and retain new talent or manage the risks of hiring "B-team" programmers will be the one with the competitive advantage.
Last I checked, OpenShift was comparable to Heroku.
I don't get much disdain from this article, I'm afraid. I think you might be reading too much into it.
It's an abuse prevention mechanism. We do not permit users to have multiple OpenShift Online accounts. See 2.1 in the OpenShift Online terms of service: https://www.openshift.com/legal/terms.html

"You may not (or permit third parties to) create multiple accounts or otherwise access the Services in a manner that is intended to avoid Fees or to circumvent maximum capacity thresholds for the Services."
Ease of development vs software quality for the user is supposed to be a trade-off but I'm quite convinced it actually isn't, and it may be one of the biggest lies of the software development history.
Car drivers are currently required to carry insurance against the damage they might do to third parties, although there's usually a (high) cap on the amount.

I don't see why self-driving cars shouldn't be required to be insured either.
The area that I see this really come into play is with problems that the developer initially doesn't know how to solve. Some developers learn and adapt 10x faster than the average developer, and it seems like they're never blocked.
This article says "The Monopolies" and then names 5 companies that in some way or another compete with each other. I know what they're getting at, but these are not monopolies. Especially weird since using Monopoly in a plural form when talking about the same (or similar) industry completely defeats the purpose of the word.
That doesn't matter at all. They've still got tons of capacity.

> You don't solve a DDoS problem by having less capacity than your attacker and most individual companies can never afford the amount of bandwidth that is at Cloudflare's disposal.

You can have less capacity than Akamai (many excellent providers have less) and still serve this purpose.
What's weird is that any game I throw at the machine (which is what I built it for) works flawlessly. It's only Lightroom/Photoshop that give me grief.
For CDN, yes. For DDoS mitigation, no. Before they removed the figure from their website they claimed about 1/5th the DDoS mitigation capacity as Cloudflare.
I'm not sure how easily win32 apps can be ported to the store, might be worth the trouble.
The idea is that if you're inventing a new data format, you can write the Go types first, and the JSON schema is based on that. This works ok if you're starting in Go.

Mapping arbitrary JSON to Go types may or may not be simple, depending on the data format.
The Windows Store already supports HTML/JS-based apps, but not using electron. (It uses Microsoft Edge's engine IIRC)
No, because the same complaints are equally applicable to the highly literate MA holders that serve coffee and fast food.

The "uneducated men" in this article have the advantage of not being saddled with 50k in debt, and they probably end up getting paid more with jobs like groundskeeper and forklift operator.

Making college free would remove that advantage and loop it back onto the group that is already positioned to get themselves into college.
Yeah, god forbid people say anything that goes against the assumptions of du jour, which should be permanently set in stone...
High end desktops are a niche, a small but important one, and the MacPro was wildly successful... at first.

There's a reason people complained about the lack of upgrades and it wasn't because no-one bought one.

Your suggestion would be the most un-Apple thing I've heard. They never do stuff like that because they believe in their solution as being the best.

They could have been right - that was the bet. What you describe is not a bet at all!
GitHub's user agreement allows for the free use of any code posted in a public repo.
A lot of research seems to be going towards what men do wrong. Doing the same "research" on women and generalizing it similarly would of course be considered deeply sexist and misogynist.
Thanks! Indeed a copy paste error, I updated the article.
I think it's hard to dispute that networked sensors/controllers can have tangible benefits.

My issue with the current trend is that 'IoT'/Internet-enabled is a way to both sell a product, and then effectively rent access to it via the 'cloud' interface. If you stop paying, your device is (mostly) useless. If they stop supporting it, your device is (mostly) useless. The actual whereabouts of any data produced by your device is probably unknown, as is its security and usage.

It's the same tired old "If you're not paying..., you're the product", except that you're actually paying.

Many of these abuses are much harder to do if you don't expose your exciting new Thing of Internet directly to the entire global communications infrastructure, but then we're back in the bad old days where people had to use software that wasn't a thin client in a browser[1].

I'd really really like a LAN of Things, or a VPN of Things, that still functions after your service has gone bankrupt or sold their souls to Oracle or something. But of businesses, especially those riding the wave of 'your data is feedstock to our deep-learning quantum magic pixies, and we'd never ever sell it all for a cheap buck[2]' would find it much trickier if that sweet sweet data wasn't coming their way.

Development & distribution, as well as actually charging for for things, become harder problems though, which means everyone wants to head to the promised land of *aaS, where A/B unicorns frolic in the fields and green/blue munchkins guide your clueless users down the yellow brick upgrade pipeline.

[1] Only mostly sarcastic.
[2] unless someone offered
Don't know that they have more but most colos I've used are using akamai.
I think it's a double-standard. When women underachieve in any area, we assume discrimination is the culprit, or we at least say there is some system that is failing them. When men underachieve, it's because they're "not able to adapt" or we blame it on "toxic masculinity" (for example, when boys do worse in school, we make negative implications, but years after graduation when women receive a lower salary, we assume discrimination even in the presence of strong contradictory evidence).

This isn't meant to be read as defensive; just a social observation.
Wait, so you were talking about the baseband chips?

Both Google and Apple design against the baseband chips as adversarial components. Before we play the "but HSIC is complicated and there's DMA in it", we're talking about security teams that have designed and implemented encrypted memory busses; I think they can handle bog-standard interconnects. I can't speak to random Xiaomi phones, but the baseband security risk story on modern flagship phones is pretty much a myth.

"Phones are insecure because baseband DMA" is a pretty reliable way to spot people who, for lack of any better way to put it, tend to get their security news from Boing Boing.

I've done some platform work on phones, but I'm not close to a leading expert on this stuff (I'm an old-school bug hunter with a focus on crypto bugs, which drags me into some odd corners sometimes). I try hard not to assume that my exposure to this stuff means I know more than other people, not least because that habit has gotten me pantsed in debates with people who know a lot more than me. Modern phones are super complicated and I do not have their block diagrams available to recall from memory. Maybe there is some component that can DMA over arbitrary AP memory that I just wasn't aware of. Are you aware of one? Have you worked on these systems?
It's worth watching every single interview to this man, honestly.
I have a medium sized website, for 20$ a month they take 80% of the requests and bandwidth so i don't have to pay for a dedicated server and someone to run it.

I love them very much.

If they fuck up too often i can stop using them in 5 minutes, this is just perfect.