skysight-inc/HackerNews huggingface dataset:
If you were going to use this as a first or second strike kinetic weapon platform (and prepared to tap dance around the "no militarization of space" treaties by claiming it's an aircraft), then your biggest asset is orbital velocity. It's sitting up there doing 7-8 km/s.

Obviously you don't want to do a powered de-orbit for reasons mentioned (you burn fuel & lose kinetic energy). However, if you're flying low enough, couldn't you aerobrake your projectiles after release and have them de-orbit themselves?

For comparison, the X-41/51 scramjet programs appear to be aiming at the mach 5-9 region. So less than 1/2 as fast.

As complicated as the materials science and guidance has to be for any X-71-based projectiles, slowing down and terminal guidance (ablative coatings and sacrificial control surfaces) seem like easier problems than boosting up to ridiculous velocities.

As for tracking, you get the heat bloom as it aerobrakes, but if you manage to keep it coherent through re-entry then the ridiculous speed largely moots that.

At 5 km/s, with a prograde orbit, you're from Istanbul to Beijing about 24 minutes (by my sleepy calculations?). The exercise seems more of a question of "How steep can you dive (aka how much heat can you handle)?" than anything else.

PS: Well, and "How the hell do you communicate-with / sense-from a platform surrounded by air that hot?"
Unless I'm mistaken dual licensing GPL'd code also requires holding the initial copyright. It also adds complications around outside contributions. With BSD they can accept contributions under that license and still license it themselves.
Hi I'm the author for this post.
My general guideline is figure out where your bottleneck is, and optimize on the hotspot first. In your description, I can only try my best to guess where the bottleneck could possibly be...

First of all: "I often need lots of small hash maps". Do you maintain multiple small hash maps at the same time? Then the data structure holding this many hash maps may be your bottleneck instead of the hash map itself. Another possibility is you have some small hash map that get created and dropped rapidly. In this case you might want to hold it in memory so you don't have much allocation overhead.

Other than these, the remaining optimization I can think of would be making your hash table compact (like what I did in this post). Reserving buckets with max load factor should give you a nice control of your hash table size. Reference:
http://www.cplusplus.com/reference/unordered_map/unordered_m...
I don't see how something like intentionally sharpening a stick would not be an innovation over occasionally finding one.
There's use in looking at the testing for industrial strength code e.g. compilers, DirectX, OpenGL conformance (god help you). With that background, I was confused by TDD to put it politely.
Curious as to why you're blaming a language (ruby) for a bad practice (writing layers of useless tests). Excuse my pedantry, but it wouldn't it be more accurate to blame a culture that you feel has grown up around that language?
First I've heard of the "Market for Lemons" concept (https://en.wikipedia.org/wiki/The_Market_for_Lemons)

It seems pretty obvious now that I think about it, and it definitely goes hand-in-hand with the "Confusopoly" concept (https://en.wikipedia.org/wiki/Confusopoly).

Why should companies compete on quality or price when they can put all that effort into advertising and marketing that scares or confuses most people into buying their product
I find it much easier to smoke here than when I lived in Seattle, where everything is smoke free there; vape culture is also much bigger on the West coast. I actually haven't noticed being in a smoke free apartment in NYC, yet.

But certainly right about the black market. Go to any bodega enough for them to remember your face and you'll get the under the counter 7-8 dollar packs imported from Virginia.
And what created the existence of the open internet? Voluntary interaction.
The child is asking a valuable question.

Why all of this working? How can the work be explained, made interesting and relevant. Is there some way of involving the child that is educational rather than abusive? (Also, if a 5 year old can understand how to correctly use the UI for the application, why can't your client?)
Great place to start with Node.js
>Kolton is co-founder and CEO of Gremlin Inc. Previously he was a Chaos Engineer at Netflix improving streaming reliability and operating the Edge services.

Right - this makes sense. I thought this philosophy sounded Netflix-ish. Interesting to see it "spun out" into a product.
Title II s/b retained. No changes needed.
You not being convinced is no excuse for derailing the discussion.

Behavior like this makes people think twice about even trying to engage with the crypto-loving, privacy conscious, free-speech market segment, because even trying to do anything in that direction is met with abuse.
This was one of the fun things about working on Midori, the whole system was available to us, components all communicated through well defined interfaces, you really could (if necessary) mock the interfaces above and below and be sure that your logic was being exercised. The browser team, in particular, pushed hard to be close to 100% coverage. The overall number for the project was (IIRC) in the 85% range.

When I'm writing tests, I'm not so concerned about what the tool tells me about which lines are covered, I like to work through the mental exercise of knowing which basis paths are covered. If a function has too many for me to reason about, that is a problem in itself.

As an aside, while I'm rambling, all the examples in the article appeared to represent unnecessary abstraction, which is the opposite problem. If you have many methods in a class with only one basis path, what purpose does the class serve. These testing concerns may be the code smell that points to deeper problems
Keep title II. I strongly support net neutrality.
Cloudron is really great for a home server. Calling it the first home server is a bit of a stretch.
It puts a smile on my face every time someone refers to 60Mbps as not impressive... I live in a rural area, that is true, but it isn't that under populated or that far from a city. And we can get 6Mbps tops, unless we go to Verizon and pay per gig. Oh wait, actually Verizon service is pretty terrible here too.
Step 2 in this analysis: Would you be able to get any of those accounts with a low credit score? I'm pretty sure when I opened my Schwab checking account they ran a credit check.
Sorry about the assumptions. It did happen, and it was the wrong team :)
I suspect the vast majority of software development organizations do not do code reviews, so you're already in the minority.
There's no "maybe" about it - Prozac is available in Germany, just under a different name.
As much as this world sounds like a treasure, and deserves an audience, might putting it on Steam not be a bit Endless September?
Look up MDBM. I spent a lot of time with a logic analyzer watching the cache misses go across the bus. I'd be pretty surprised if someone has done better.

I can find the code and repost it.
If you're making syscalls on Windows, you're doing it wrong (with the sole exception of drivers, for which the API surface is adequately documented).
I am an OK Civ2 player (can expect to win on Deity without cheating unless I get quite unlucky).

Goto is hopelessly broken, probably an unfortunate limitation of making a game that can run on 1996-era computers.

City walls are too strong. Catapult, cannon, and artillery should be able to penetrate them. They are always literally the last thing diplomats will sabotage.

The computer gangs up on the player. I guess this makes the game fairer but it also makes diplomacy useless.

The simulation is nukes is hopelessly unrealistic and boring. I wouldn't mind it so much if the pollution system wasn't broken as well. I still got global warming even after making an effort to build solar plants and mass transits in all of my cities because of pollution caused by AI nukes. Rage quitted on that one ;-)

Nuclear non-proliferation in a later Civ was a very good idea IMO.
Keep title II, I strongly support net neutrality!!
It seems to me that management is taught that a dependence on expensive experts, is a problem to be optimized. They want to manage the development process in a way that allows them to easily swap out one developer or team for another, or to ramp up production simply by increasing the number of developers assigned to a task.

It is almost as if they see the success that we have had in dev/ops with the "cattle, not pets" philosophy, and want to apply that in their own field. Making the subject behave consistently and predictably, whether it is a machine or a human professional, would be a prerequisite for that.
I know many instances where code reviews didnt catch log statement in huge binaries.
Lecture Notes on General Relativity (1997)
Because IPFS is useless at the moment compared to something like github.
>Walmart sells the card for $1, and Green Dot charges the usual associated fees: $5 a month if your balance is less than $1,000; $2.50 for ATM withdrawals; etc.

This is absolutely not how one should encourage people to save. This is Walmart trying to steal business from local banks/and or provide banking services to people in rural locations. Personally, I think Walmart should offer this at zero-cost to help their customers live with less financial vulnerability (and thus shop more at Walmart).

Full disclosure: I work at a startup that's using prize-linked savings to help encourage people to save money, but we don't charge a monthly-fee and we actually give our users interest on top of what they win.
It is easy to agree.

It is difficult to tell if not-agreeing is due to a difference of opinion or the statement being off topic.

Thus while it may seem natural to cast to two directions the implicit difference between agreeing or not is actually more nuanced. The /reason/ is important in the latter case.
> As an aside, while I'm rambling, all the examples in the article appeared to represent unnecessary abstraction, which is the opposite problem.

One other thing about code coverage, unit testing, and other testing fads is I think they actively affect the architecture, and usually in the overthinking it way.

Instead of having one tight bit of procedural code (which may have some state, or some dependency calls), people split it up into multiple classes, and then test each bit. This allows them to use the class architecture to mock things, but really has just multiplied out the amount of code. And in the end, you're running tests over the golden path probably even less. It's even possible to have 100% of the code covered, and not run the golden path, because you're always mocking out at least one bit.
It may not have been intentional, it could have been someone rubbing it against a rock out of boardom or trying to start a fire with it then realising it was pointy. In that case it was a discovery, not an innovation.

We may have had a very suboptimal way of doing it for centuries while the process evolved. I'm sure a lot of people here have stories of their pets confusing cause and effect.
until they create laws...
Outsourced is probably not going to happen at a full capacity.

I would consider places where you two could have reasonable careers.

For example, sf is good for tech, but ny might be good for both finance and tech. Now might not be the right time, but after her promo might be a better time.
The tragedy of 100% code coverage is that it's a poor ROI. One of things that stuck with me going on twenty years later is something from an IBM study that said 70% is where the biggest bang-for-the-buck is. Now maybe you might convince me that something like Ruby needs 100% coverage, and I'd agree with you since some typing errors (for example) are only going to come up at runtime. But a compiled (for some definition of "compiled") language? Meh, you don't need to check every use of a variable at runtime to make sure the data types didn't go haywire.

The real Real Tragedy of 100% coverage is the number of shops who think they're done testing when they hit 100%. I've heard words to that effect out of the mouth of a test manager at Microsoft, as one example. No, code coverage is a metric, not the metric. Code coverage doesn't catch the bugs caused by the code you didn't write but should have, for example. Merely executing code is a simplistic test at best.
I think it'd be a valuable question if it were asked by someone sincerely interested in the answer, but at that age children are really just complaining.

Could you involve the child? Maybe, but training someone for work is non-trivial. When I'm just starting to train someone, our collective output is usually less than mine working alone, and that's for someone with the requisite skills. How much work could reasonably be assigned to children in a way which isn't just a waste of time? How much are they really going to benefit from that?
Thanks for the reference. I'm collecting a list of embedded key-value store to benchmark against. I'll tryout with this one first!
A comprehensive analysis on diabetes
Is the issue you outline something an out-of-the-box Kops cluster would suffer from?
>>> Chaos Engineering is the discipline of experimenting on a distributed system in order to build confidence in the system’s capability to withstand turbulent conditions in production.

I don't like how they define "Chaos Engineering" as being strictly related to distributed systems.
Whats the company?
So, you like a physical book...buy/check out the book. No one is stopping you. I love my Kindle for a number of reasons, but #1 is probably because I'm out of shelf space. I recently just threw out a number of books during a remodel. They were out of date tech books, so I didn't bother donating them (I didn't want to taint any-one's education with C++ pre standardization or JavaScript from 1996)
I've had most of those accounts since I had virtually no credit (and a low/nonexistent credit score). That being said, if you have a negative Chexsystems report they'll be hard to get.

I'm not trying to say the unbanked don't have barriers. I just didn't like the assertion that free checking is impossible, since that's what leads to even people on HN paying needless maintenance fees.
> The race numbers make a lot more sense when you look at it in context of local base rates. About 50% of engineers in Silicon Valley are white and about 30% are Asian. That's approximately the same as the demographics of San Francisco, San Mateo and Alameda counties.

That probably has more to do with the numbers of people who move to those areas specifically for tech jobs. The demographics you describe did not just occur naturally - they are driven by SV employers hiring from all over the world. According to http://www.washingtonexaminer.com/37-percent-of-silicon-vall... 37% of the population of Silicon Valley isn't even born in the US, much less the urban areas of California.
Title II "Net Neutrality" is a dangerous power grab -- a solution in search of a problem that doesn't exist, with the potential to become an engine of censorship (requiring ISPs to non-preferentially deliver "legal content" invites the FCC and other regulatory and legislative bodies to define some content as "illegal").

Title II "Net Neutrality" is also an instance of regulatory capture through which large consumers of bandwidth (such as Google and Netflix) hope to externalize the costs of network expansions to accommodate their ever-growing bandwidth demands. To put it differently, instead of building those costs into the prices their customers pay, they want to force Internet users who AREN'T their customers to subsidize their bandwidth demands.
Tensorial logic
I'll just leave this here. [plug] https://userify.com
For very small number of elements, an array or a list can be more efficient than hash maps. My rule of thumb is to avoid hash maps if you know you'll never have more than 100 entries, and then try to find the bottleneck later on. Using hash maps for everything isn't always the best solution.
I'd expect the same hash map implementations to work well in both scenarios (many hash maps with few entries and one hash map with many entries). I'd try dense_hash_map, and if you're feeling experimental, this new thing.

A more significant factor may be sizeof(pair<Key, Value>). std::unordered_map has a separate allocation for each entry, which is quite horrible with small values in terms of memory usage and CPU cache effectiveness. With larger values, keep in mind that because of the load factor of these hashes, you end up with more buckets than you have entries. It may be better to have that pointer indirection (either through std::unordered_map or maybe dense_hash_map<Key, std::unique_ptr<Value>>) than have the empty buckets be sizeof(pair<Key, Value>). Or if you can find something like Rust's ordermap which handles that indirection with a 32-bit index (i.e., half the size of a pointer on 64-bit platforms) into an array to be more memory-efficient. Having them be adjacent in the array

Another factor might be the cost of hashing each value. If it's cheap (ints or the like), your ideal hash map class probably doesn't store the hash values. If it's expensive (long strings, for example) and you have the memory to burn, your ideal hash map class probably does store them, so that collisions cost less on lookup and so that resizing on insert costs less.

As an alternative, if you're just holding ints or something, you might be better off with a sorted std::vector<Entry>.
I find that, as I'm building something from scratch, the vast majority of the errors I make are just things I didn't think of. Tests don't help there because I can't test on input that I don't even imagine happening. So I generally write few tests, because, to be honest, most code is trivial and algorithm-light. Sure, if I have to write a parser or something a bit more fiddly, I'll write a unit test to be sure that it's doing what I expect, but that tends to be the exception, not the rule. I do write my code with an eye toward later testability if it turns out to be necessary, but I find that to be fairly easy, and also a good measure of if I'm doing the write thing: most code that isn't testable is probably code that's difficult to read and maintain, anyway, so if I look at something and think "oof, how would I ever write a test for that?" I'll usually delete it and start over.

When I have something that should be working, I test it in a more functional/integrative manner, and move on.

Later, I'll write unit tests when I need to. If I want to refactor something, or drastically change the implementation of something, I'll write out some tests beforehand to be sure that the pre and post behaviors match.

I've always thought that TDD is just premature optimization. You're optimizing for the idea that you -- or someone -- will later need to make large enough changes to your code that you'd worry about breaking it. In my experience that's fairly rare, and you spend less time overall if you just write the tests as you need them, not up-front. Yes, writing a test when the code is fresh in your mind will be faster than writing it much later, but then you're writing a ton of test code that likely won't be necessary.

An objection I hear to this is that you're not just writing tests for yourself, you're writing tests for the others who will need to help maintain your code, perhaps after you're gone. I'm somewhat sympathetic to this, but I would also say that if someone else needs to modify my code, they damn well better first understand it well enough such that they could write tests before changing it (if they deem it necessary). Anything else is just irresponsible.

(Note that I primarily work in strongly statically typed languages. If I were writing anything of complexity in ruby/python/JS/etc., I don't think I'd feel comfortable without testing a lot of things I'd consider trivial in other languages.)

(Also note that some things are just different: if you're writing a crypto library, then you absolutely need to write tests to verify behaviors, in part because you're building something that must conform to a formal spec, or else it's less than worthless.)
In my above original edit, I was going to put "Security" in quotes too, sometimes .. sometimes this aint worth it.
For me, part of it is simply tempering my expectations. I don't attempt to make "authentic" restaurant style pizza. What I can do instead is make a tasty meal that the family enjoys, fairly quickly and cheaply. We have pizza every Saturday, so it also has to be something that we can work into our routine.
My friend and I still use AIM everyday. We don't know why people left! Especially with Macs, there's no excuse if you're already using Messages to send texts.

I never got into Google Talk. Too many of the people in my contacts list were either work connections or college acquaintances. And I loathe Facebook so f#ck FB Chat.
IcculusPlan
There's a good argument that server GPU acceleration is more likely to become mainstream through integrated GPUs than through discrete GPUs.
> Venture capitalists want a piece of just about anything involving artificial intelligence

It sums it up pretty well. AI is the buzzwords these days in VC circles.
3. Don't overtop it. The natural tendency is to want more - more sauce, more cheese, more whatever else. Start off very simply. Scatter little bits.

I think this is important: Sauce and toppings all compete with the crust for heat.
He's said 3.10 more recently than that:

https://twitter.com/gvanrossum/status/583346987925278720
longgame.co according to history
Not to disgrace the author (it's a good article), but I've spent a lot of time studying hashtable performance recently and I groan whenever I see benchmarks against libraries like std::unordered_map or libcuckoo. No shit your hash table performs better; it's like claiming you're good at running because you can beat a crippled child in a race.

For a test to be meaningful it needs to include comparisons to linear probing (both regular, robin-hood variants, and SSE variants), and other low-cost hash tables like coalesced hashing or separate chaining with a memory pool.

Speaking of robin hood hashing, pretty much all of the existing articles about it are missing some crucial facts about it. Don't take what blog authors say for granted.
A point re manufacturing. Still, you get far more economy of scale than a proprietary niche product would have, plus excellent economy of scale re most chip design - where the real expenses are. Runs will be big enough to get most of the manufacturing benefits from scale.
It's important to note that many large banks actively discourage customers from opting out of overdrafts. So much so that they even have scripts they make their tellers recite.

For example, if you attempt to opt out, the teller might say, "but what if you are at the gas pump and can't get gas because you have opted out of overdrafts?" The subtext being, "wouldn't it be better to get enough gas to get home and in the process incur a 40 dollar fee."
Ask HN: How would you improve on the current freelance marketplace model?
Or read the book, if you like framing devices that are flimsy excuses to describe sexy ladies.
List of Async Resources for PHP Developers with Node.js Envy
Distressingly likely. Point taken.
Code Tells You How, Comments Tell You Why (2006)