skysight-inc/HackerNews huggingface dataset:
I was just starting a new project and had to make a choice. I looked at the MongoDB 3.0.x release notes to see if the project has managed to improve in the last couple of years, and there are still way too many "data files are not correctly recovered following unexpected system restarts" and "race condition between inserts and checkpoints that could result in lost records" issues being fixed in each release for my liking. Different projects have different tolerances, of course.

If I was leaning towards NoSQL I would probably choose something rock solid like DynamoDB on AWS. That thing (mostly) scales by simply throwing money at it, on my last project that had tens of millions of users it worked very well, but it's definitely not cheap.

For my personal project I ended up going with PostgreSQL 9.4. The initial user experience is still as bad as I remember from years ago (after installing PostgreSQL on Ubuntu, neither the logged in user nor root have a default DB, can't even run psql, cannot create new DB's out of the box, and the tutorial(!) waxes on about "Architectural Fundamentals" instead of "Do x,y,z to install and insert a few rows of data").

With Postgres I'm able to have JSON type columns, where my unstructured documents are stored, as well as regular foreign keys, transactions and joins at the table level. So far I'm very pleased with how it's working out, I think it's a good middle ground between the flexibility of NoSQL and the reliability + querying power of SQL.
Not sure how your comparison relates to this article. It's a completely different attack vector.

I, for one, will keep using KeePass and sync my database between devices via cloud services.
>You would not have wanted to invest in a Google or Facebook run by some MBA instead of the founders.

I invest in companies run by MBAs all of the time. I don't fear them or think they're inherently stupid.

I mean, "tech people" have never failed at running companies, am I right?
Is this not an instance of "it rather involved being on the other side of this airtight hatchway" [1]?

edited to clarify: I don't mean the specific attack described there, but the general issue that it represents: "X did something insecure because you granted a malicious program permission to alter its operation" doesn't really imply anything about X except that it isn't literally magic.

[1]: http://blogs.msdn.com/b/oldnewthing/archive/2013/08/02/10438...
IMHO autonomous driving systems still do not mix well with humans on the road. Could even say they are not compatible with each other.
With how things have been going, soon we would have systems predicting behavior of human driver for safer driving. But by then, roads will have humans, systems predicting human behavior and systems released between the two without prediction.
"less code means less bugs"

That really depends on how you make less code. Transforming an if condition in a ternary operator could make the code much harder maintain, therefore bring more bugs. This is one example from several cases.

Sometimes a longer code means a code more readable.
> Trying to speed it up with tanks and guns is just crazy.

No, that's dictating.
Using Routes in an Angular 2 TypeScript Application
Big O hides all constants. A hybrid algorithm using Quicksort for the heavy lifting is O(n log n) in the worst case, but is a significant amount faster than heapsort - mainly due to cache effects.

See pdqsort for examples (benchmarks included): https://github.com/orlp/pdqsort.

It shows that on average it's twice as fast on the random input distribution.
I love stuff like this. I and some other students made a Quake 3 engine in C# using OpenTK (OpenGL 4) in about 6 weeks. None of us had ever done real game development before. It was a great learning experience and overall we're pretty happy with what we accomplished.

It's still very preliminary and not optimised, but I might tinker away at it now that my degree is all but done. At this point it can load and render any Q3 (or OpenArena) BSP map, but most all other things are missing.

https://github.com/aggregates/tk-quake
However bad you think income inequality is, it's worse.
Sigh. Yes, I'll assume you're perfect and never run anything you didn't write yourself.

Edit: Okay, think about it this way - if you're the perfect sysadmin who doesn't run anything bad, how do you go about protecting your non-so-perfect users? How do you protect the server you're tasked to maintain?
> Malthus was wrong with his prediction, but he wasn't wrong with noticing obvious limits to growth. It takes special effort to consciously stop noticing it.

Malthus premised his hypothesis on an assertion that there were obvious limits to growth. Both the premise of obvious limits to growth and the conclusion of catastrophic resource scarcity due to population growth were wrong.

Our food supply is an obvious limit to population growth like an unlocked door is an obvious limit to leaving a room. Yes, if you do nothing, then you will be limited. That should not instill hand-wringing, existential dread.

> Malthus sounds much more probable than your "don't worry, future generations will somehow fix it".

History has proven Malthus and his modern incarnation Ehrlich to be wrong time and time again, which doesn't bode well for that probability of yours.

Again, "don't worry, future generations will somehow fix it" is a strawman. Pithy, but vapid. Firstly, I said we will engineer ways to overcome limitations. Our current generation is, and will continue to, engineer ways to feed ourselves, generate potable water, control our climate, clean our air, thrive, and grow our population.

Do I have proof that the engineers of future generations won't all squander their life and do nothing more than optimize sales funnels and click-through-rates? No. But I think it is much more probable that our society will continue to produce some engineers that have not only the talent but the focus we need to break through our current brittle limitations to population growth -- just like their parents, grandparents, and every generation before them did.
Ha! That's what I thought. It's a duct-taping solution.
Region restricted to me in UK. However there's this "news" report on the PBS doc being made, https://www.youtube.com/watch?v=Sd18fLEf_Cw which includes excerpts.
It looks like the Chinese government has adopted some impressively sane policies to even out the gender ratio: http://www.theguardian.com/world/2011/nov/02/chinas-great-ge... Though a lot still remains to be done, I'm happy that at least some people are thinking about the problem seriously.
>>> Two or more serious hits to the head within days of each other can interfere with the brain’s ability to use sugar......

>>> In animal studies, Ohio State University scientists have shown that brain cells ramp up their energy use six days after a concussion to recover from the damage....

Hope the studies were done in a humane way..
> I invest in companies run by MBAs all of the time.

So do I. But not if it's a tech growth startup. If you'd replaced Zuckerberg with an MBA in 2006 they would have exited at $1B, pocketed the cash, and moved on.
ISA compatibility is overrated.
Are people really ok with jail time for a drunken tweet from the pub?
Future of Gaming
I would assume that this only works on an unlocked (unencrypted) database in-memory.

This is a cool tool for an attacker, but I would guess that almost all virtual password managers are vulnerable to it and that this 'vulnerability' is not specific to Keepass, this is just an implementation.

The only way to mitigate this attack vector 'somewhat' is having the database lock after a timeout and don't leave it unlocked all the time. I would guess this is true for all password managers.

But I'm happy to be told differently.

In general, I think a Keepass tool is nice for private use, but because of the nature of these tools, I would use a kind of centralised password server with RBAC to limit the scope of a breach.
It's much harder to inject code to a running process and steal information, assuming the user entered the encryption key and didn't close the app in time, than to just look for all text files on the computer and read them.
Windows 10 to be a recommended update in early 2016
Here is how I did it

start: left
skipNext
goto start
goto double

double: left
left
goto double

The idea comes from the "find a loop in a singlely linked list in O(1) space" problem.

One pointer moves twice as fast the as the other one.
Crowdfunding for startups is about to become a reality
Really?

I like the ternary operator more than if, but only because if is a statement in JavaScript.
While maybe this won't always be the case, the current chromeOS structure allows for arbitrary code, you just have to enable a development mode. The process for doing that is well documented. I don't have a problem with a computer that comes restricted as long as there is a documented process for un-restricting it. Same reason I don't find SIP in OS X or Secure Boot a problem. Security features are good as long as they are configurable.
> Swapping a few words out from a famous poems or song to make it relate to your chosen subject is also not a great artistic achievement.

It certainly can be, if the re-imagining and the juxtaposition created are creative and surprising enough. But of course usually they aren't. Sturgeon squared.
It scales, to a point. In my opinion however, any type of sharding/clustering is still a total mess in PostgreSQL. Most projects will however probably never need to.
Frozen Cache – mitigating cold-boot attacks on full disk encryption (2009)
Go Responsive for This Christmas and Brighten Up Online Sales
I think there is a difference in not wanting to buy a cheap laptop because of build/hardware quality, and not being able to buy a cheap laptop because it won't let you run arbitrary code. One's a choice you make because you have the money to afford a nicer laptop. The other makes it even harder for the less fortunate to understand computers.
Somewhat funny coincidence that the top picture on your twitter (linked from your profile) is of the former prime minister of Sweden who changed the rules for student loans so they can be suspended after failing just one exam.
Matters – single observation-publishing scientific journal
Your perception I think (I'd say largely because of the focus from the silver screen)

https://i.imgur.com/eyUnc.jpg

Adolf only in third place, almost pipped by Leopold (also colonial as it happens) but no where near Mao.
The real question is, "Does Facebook need China?"
Tor launches anti-censorship Messenger service
So this is the pit Apple will finally choke on. They will be able to change a lot of things and surprise in many ways but they will never ditch their extreme secrecy and become open and collaborative.
28 or so years off for being an unemployed hispanic woman without insurance is a bit of a shocker
Wow Rust 20%+ faster than gcc / C in k-nucleotide and fasta. Then again the Rust vs C++ makes me wonder if this benchmark is flawed. 4.4 vs 38 seconds for binary-trees. Somethings not right with some of those tests.

Edit: Looks like an C++ optimization issue in that specific task. Broken down by task, C is at the top followed by Rust.[1] Rust is at or near the top in every category. Very impressive.

[1] http://benchmarksgame.alioth.debian.org/u64q/performance.php...
No one is really "brought to justice" in lawsuits since they're not criminal. Its simply a transfer of wealth from shareholders (e.g. anyone who invests in this company through a 401k or market index) to litigants.
These coywolves are twice as big (by mass) as a coyote. It would make them much more dangerous, I'd say.
I am not a surfer but growing up in Australia, I get bombarded with adverts from RipCurl, QuickSilver and Billabong etc at a young age. Are the high prices due to the marketing hype that is generated by these companies? Definitely see this marketing hype from these companies' line of clothing.
For the curious, this is InstantBird (which uses Pidgin's libpurple* library for chat and Mozilla for UI/rendering) plus the Off The Record/OTR plugin (for encryption of content) plus a Tor client.

Note that InstandBird last had a release in December 2013 and their blog was abandoned in July 2014, so their future is a bit up in the air even though commits still happen on the Mercurial repository at Mozilla. Pidgin has released multiple security updates since the December 2013 release of InstantBird 1.5. I'm unsure if the Tor folks have incorporated these changes offhand. They use the clunky gitweb client for web browsing of their repository and I don't have time to clone a git repo at the moment.

It's also worth noting that Pidgin's libpurple uses XMPP for Facebook and Google chats, neither of which will work well any longer due to both of them deprecating XMPP.

If you'd like to use secure chat and are unconcerned with the meta-data, there are quite a few better options at present. If you'd like to use secure chat over Tor, you can use any of those options over the Tor network manually. This does have a lot of promise for making it easier for a regular end user, though, so testing and feedback are encouraged.

*Update - According to a comment reference below, they now build without libpurple using their own custom Javascript libraries.
The multi feature of redis kind of allows you to create some level of transactionality over multiple items, no?
Not so fast with the evolutionary fantasies. If they can breed and produce fertile offspring, are they really different species? Maybe we've got the definitions wrong somewhere.
your statements don't conflict, it's just an interpretation of the term "very big." Lots of people are buying the softtops, but those people might not be the people still investing in high-end hardtops (if that's the term). If sales of one item are increasing without a concurrent, statistically significant and apparently causal decrease in the sales of supposedly competing items, then it's not really disrupting a current market. It's just making it a lot bigger and getting most of the new volume. You could say that the market is almost tangential to the existing surf shop market.
This.

While it is overall encouraging, I was also taken aback by the very narrow margin this resolution was passed (285 to 281).
I kept thinking,how would robots know when to switch directions? That is when I realized that robots do not have to crash head on but overtaking is sufficient.

This is one case where I am glad that I did not read HN comments before solving. My solution is the same as moftz and other left leaners. :) First iteration I made the speed be four times the slow robot but of course double speed is fine.
There is not a huge gap in difference, in terms of HW quality between a Chromebook and a normal cheap laptop (in my experience). Can you provide an example ?

I planned to buy a Chromebook a while ago and do exactly as the parent suggested, but got to the conclusion that it's just not worth the hassle (also, Chromebooks tend to have minimal storage, which is definitely not ideal in a normal laptop).

In general, Chrome OS or not, the HW (touchpad, screen and keyboard even more than raw power) in a 200$ laptop is BAD.
>There needs to be more people chasing their dreams rather then being cranked through the academia process.

I am reminded of the following story I experienced in my first year chemistry class. The class was being taught by the head of undergraduate studies for science and he asked us (a room of 500 students) how many people wanted to become chemists and maybe 20 or so people put up their hand. How many people want to become physicists? Maybe 30 or so put up their hand. How many people want to become doctors? A good 400 people put up their hand. He then said "only 20 of you will make it to med school, I hope you have a back-up plan."

The problem is that we only hear about the success stories not the vast amount of people who fail. That isn't to say don't follow your dreams, but be realistic about them and have other options available when things don't go your way.
Apple opens up its cryptographic libraries to third-party developers
Are you also pretty sure that you couldn't buy a used surfboard for $100? I just did a quick search on Craigslist for my area (somewhat of a surf place) and saw prices from $200 - I'm sure if that's their asking, the sale price is potentially lower.
The problem is that every creature harms something else. Every species would eat itself to starvation given the chance. Look up the reintroduction of wolves to Yellowstone and the diversity and balance it has allowed.
I wouldn't trust any of the benchmarks in the Benchmarks Game. I say this as someone who spent a fair while optimizing the Rust benchmarks to use all of the hacks the other languages use in some[1]. _Very_ few of the benchmarks are actually fair, and those that are normally don't matter.

You're generally better off with random internet tests than the Benchmarks Game, since they at least don't have the kind of cheating-but-not-cheating that ruins the Benchmarks Game.

That said, it's totally possible to do assembly-level tuning in Rust and, sans-SIMD, there's no real difficulty with getting Rust to go fast on these workflows.

[1] https://alioth.debian.org/tracker/?func=browse&group_id=1008... See ones with "Joshua Landau" in title. All (but thread_ring, which is literally the silliest benchmark I've ever seen) beat C++ (sometimes by a lot). The disclaimer would be that none of my submissions have been submitted (or rejected) yet.
Lithium-air battery research shows potential paths to next-gen batteries
What does this mean: "extraction of KeePass 2.x password database information from memory"?

When is KeePass data held in memory? When the program is simply running or only when you copy a password to the clipboard?

KeePass shows accounts in a ListView type of control and in a dialog, both of which probably store the data in memory. I'm just wondering if this tool can snatch accounts just from simply having KeePass running, in which case this could be bad for malware/spyware. Picture a malware program running, waits for KeePass to show up in the process list, grabs all your accounts and sends them to a remote site. Yikes.
The beauty and total illegibility of extreme metal logos
I also find the word "rewilding" bizarre. You might be able to reintroduce a few species but you can never completely eliminate all human involvement on earth. Even if we all left the planet completely you would still never bring the earth back to where it started.
Instantbird still seems to be under very active development. See the comm-central repository, which is Instantbird.

Tor Messenger does not seem to be using libpurple, at least judging by the comments here: https://lwn.net/Articles/662471/#Comments. And I tried it with Google Talk and it works. Wikipedia says that Google Talk as a client was deprecated but you can still use it with third-party clients like Pidgin, Tor Messenger, etc.
Configurability can be taken away easily.

Secure Boot is the best example for that:

• On Windows RT devices it always was mandatory and could not be disabled.

• On Windows 8 devices, manufacturers must give users an option to disable it.

• On Windows 10 devices, it is now in the manufacturer discretion whether it can be disabled or not.

The next step is obvious.
FSJF #23 – Best JavaScript Articles. Weekly
True, thank you for this clarification. I myself use KeePass but it's more for convenience of password generation and storage than anything else.
New NASA Study Reveals Origin of Amino Acids in Apollo Lunar Samples
I had a follow up question:

Are things at the point where you could reasonable write a modern 3D engine using Rust 1.0? [1] What would be the tradeoffs at this point vs. C++?

[1] Ignoring all the tooling involved with art, music, etc.
>Haven't ever had any teacher telling you to do something you didn't like to do,

This is an important point. Let's face it, kids are socially stupid and inexperienced. They don't know what they want, what they need, what's good for them or even what's out there. Their worlds are small. 15 year old me would eat pizza every meal if it were my choice.

Allowing for the freedom of exploration is important, but so is a little bit of steering.
Mind the Bus and Go on Red: Overcoming Biases and Assumptions
So if you're capable of injecting code into an arbitrary process (which requires admin privileges if I understand correctly), couldn't you just inject it into a browser and steal them that way
They also don't have to test in the United States.
Sorry for the off-topic-ness, but it really irks me when the US auto industry is referred to as "Detroit." I grew up in Flint, MI and currently live just outside of Detroit, and the implication that the US auto industry is here is, frankly, rather offensive. Sure, there are a couple plants here and there, and corporate HQs, of course, but after what the US auto industry did to the blue collar workers in Flint and Detroit (among others here in MI), it feels disingenuous to say that the US auto industry is "here."
A large part of it is because that's what they feel their products are worth / that is what the market will bear, but yes, marketing is indeed a huge cost component of any product that does marketing.

The higher-level the marketing, the more expensive a component.

Put into perspective, Have you ever been to a grocery store and seen store-brand cereal at a fraction of the cost? They're often (but not always) just as good as their name-brand counterparts, but the cost discrepancy, more than anything, is the marketing budget.
I don't understand why everyone keeps pretending there's a smooth continuum: "He says they contain GM’s road map to autonomy, starting with “Driver in charge” in 2010, progressing to “Driver mostly in charge” this year, to “Car mostly in charge” in 2020, and finally “Car in charge” in 2025."

That just doesn't make sense. To my mind, there's "cruise control" as it exists today, and "car drives itself completely and safely even in adverse conditions". Pretending that it's safe to suddenly hand over to the human in an emergency is just crazy.
I would go ahead and refund 2 months of his subscription, I would only do this through stripe (or your payment gateway) so they can see the refunds if he initiates a chargeback for charges.

Send him a polite email that you have refunded two months which goes beyond the terms of service of 30 day refunds and thank him for trying out your app.

If you can see what type of card he used you could call their customer service and try to find out how long they have to make a chargeback and then refund back to that date if it's 120 days, refunding three payments might cover it or 90 days two payments might cover it depending on how long this discussion has been going on.

On the other hand if $1000 won't make or break your cash flow just refund the whole amount so he'll go on his merry way and maybe you can avoid a negative evangelist for your app. Plus chargebacks are going to cost you fees and time/hassle.

Sometimes you just run in to problem clients as a consultant and SaaS owner.

Good luck closing things out with him.
People who use ad blockers, it's your fault
https://www.facebook.com/techprepprogram/videos/938666319504... - posted this month, but it's a fluff piece "follow your dreams [in programming]" type piece rather than a synopsis of his current work efforts.

https://www.facebook.com/ms has links to Michael Sayman's website which has all his social links, bet all you'd like to know is in there?
Honestly, I think it's because the auto makers are completely out of their depth when it comes to machine learning, and are either pretending they're not while they get their act together, or pretending they're not while the ship slowly sinks…
A grown-up wouldn't get sympathy from the enterprise sales team at Parse.