skysight-inc/HackerNews huggingface dataset:
> more often than never you also multi-threading

This is a Windows-ism that's crept into Unix-likes over the years, and it's not a good trend. Just don't do it. Especially since sharing direct access to state makes it harder to decouple components to scale them further.
This book specifically argues to pass state via IPC for a reason.

> And I am pretty sure I am not the only coder thinking this book is full of pedantism and of advices not to be followed and it is empty.

Maybe, but iMatix has been a successful company for more than two decades, and delivered impressive open source applications (e.g. Xitami web server) and code-generation tools (Libero ec.) as well as cross-plaform utility libraries for C (SFL etc.) already two decades ago, and have gone on to develop large-scale C-based distribued systems and in the process developed things like AMQ and 0MQ that's been incredibly successful, so I for one tend to at least pay careful attention as they actually do have a track record.
Use and Modify, my open source font selection
> Sorry but you sound like you don't know what you're talking about.

I ran a drupal based business for years and I know the platform - and it's shortcomings - very well.

>> I don't think drupal had any actual design goals

> You dont THINK? Well maybe you should LEARN and then you will KNOW.

Well, I could have used stronger language there but I see no need. Because whatever I would have said you'd have found fault with the form rather than with the content. Believe me, I've spent enough time repairing and porting installations of drupal from one release to the next to know for a fact that their design goals are about as flexible as a rubber band and that they fail to deliver on the most basic ones (performance, ease of maintenance, backward compatibility and ease of upgrade).

> Actually Drupal is very good (the best framework I know) for migration and interoperating with other software.

Well, let's say our experiences probably are not identical.

> But you don't do that by connecting DBs directly like you seems to want to do... (which is wrong with any framework/cms)

For better or worse, DBs tend to be a relatively standard item and of course there is a 'right' way to do things (which is different for every platform), but having done several re-builds of large platforms we could probably agree on having a sane database schema and reasonable naming scheme to be a plus in such situations.

So from a pragmatic point of view this 'wrong' way is often the only way to achieve certain goals, and with drupal this way is nailed shut to the point that you are not only locked in to drupal, you are most likely going to end up being locked in to a specific drupal version (due to their modules usually not making it past an upgrade).

FWIW at some point in time I hosted thousands of drupal sites so I think (see, I'm doing it again, so feel free to take another cheap shot at me) that I have enough experience and familiarity with drupal to see it for what it is.
I think the measurement aspect is only part of the interest. The other is there might be previously unknown physics at work. We don't get too many chances to experiment on things in space, so surprises mean there's an understanding gap.

At one point, the motion of Mercury didn't fit into the rules of mechanics, which we thought we understood. It turns out we didn't, and general relativity filled that gap.

It's far more likely the explanation is a mundane force not considered before, than new physics. But we have to look.
The laptop form factor is an odd choice, but the equivalent for a media centre (or similar) would be popular in some niches.
Crawling and Scraping Php Tookit, and command line to run them all
It existed, but if you wanted interoperate with your older code, or wanted to run on various platforms, it often would not be available, or bugfree enough or fast enough. It was well after 2000 before everyone started trusting that they'd have a reasonably conformant C++98 environment. You'd still find people start new std::string alternatives up until then, for seemingly good reasons. Some of them valid, some of hem not so much.

Today I don't think anyone would redefine std::string, but I haven't written much C++ for years.
Start up India: Webcast [video]
That's actually precisely my point. Voted immediately after 9/11, it's a prime example of a law titled "anti-terrorism" which actually has a much broader range and provides powers in domains that have nothing to do whatsoever with terrorism.
That's also a good point. You can't use zlist* functions in recursive algorithms in single-threaded code.

Whether such recursive code would be an artificial contrivance or a real-world misuse is something left to the reader's imagination.

I notice that the zlist_copy() function was deprecated so you'd have to do something else if you wanted to pass a copy of a new "list" to subsequent recursive calls. I didn't dig deeper into the czmq documentation to find out what the recommended guidelines would be. (Although we'd guess that any copy operation would be O(n) and therefore thinking in terms of recursion would be an antipattern for czmq.)
On a related note, dogs can be trained to detect (smell) cancer cells from patients' breath.
Looks like McCoys medical tricorder should have a nose.
I agree regarding solving problems especially on the real world problem for yourself or your own immediate pain points. I got sucked into a small side project for one of my spouse's clients and although I learned a lot from it, my desire to take my time and really learn and apply deeper aspects of design affected delivery. Not a huge deal since the client is getting it for free and I will eventually find a maintainer, but when I want to swap techA with techB just for the sake of self-interest, I have to think twice since I would be doing so at someone else's expense. Perhaps I should be more cautious when my spouse pimps me out! :)
> Hearn said in his post on blog-publishing platform Medium.

https://medium.com/@octskyward/the-resolution-of-the-bitcoin...
The standard was finalized in 1998 but the implementations on a wide variety of necessary platforms didn't happen until later. Qt's QString predated 1998.

Also, this SO q&a has more tidbits: http://stackoverflow.com/questions/1618798/why-is-there-a-di...
Makes sense (other than the awkward "Defangs" word in the title; I guess using "Makes" was too clear and boring).

Reminds me a bit (just in terms of having an explicit process) of Andy Grove's Ideal Decision Model: Free Discussion, Clear Decision, Full Support.

In particular, I liked the Full Support stage of Andy Grove's process. Granted, could devolve into "fall in line or you're output" in weak cultures, but in stronger cultures I think it makes sense to acknowledge that everyone needs to accept/support a decision, whether it was their pick/favorite/etc., for the decision to be successful.

That tangent aside, I also liked the Square notes@ email list.
It was all part of my dastardly plan to get inappropriate advice by misrepresenting the way I learn! But I have failed miserably, because all these people gave me really helpful advice... Seriously, though - yeah, I am definitely someone that sometimes overthinks things, but that's actually worked out pretty well for me in life, so I'm quite relaxed about it. So, yes, I do basically much prefer the idea of getting a tutorial that's perfect for someone with my mindset by trying to find other likeminded people online before I get stuck in rather than just going for the first tutorial I find on Google. Sounds like that's not how you would do things, which is fine. Different people work in different ways, I guess!
Windows 95 was pretty uninteresting to me. The only thing it had over the Amiga was memory isolation, which wasn't seen as a big deal by most Amiga users at the time. In most other respects AmigaOS still beat the pants of Windows95, with things like Datatypes, deep Arexx integration in most applications etc. There are parts of AmigaOS I still miss.

What killed the Amiga apart from the Commodore bankruptcy was hardware costs and lack of viable 3D support on the low end far more than Windows 95.
Ceramics and glassware can and do last generations. They're functional too but use is likely inverse proportional to longevity.

Leather goods last well, I have my father's belt but it's not in a state to pass down further.
Ask HN: How to evolve the levels of a game while maintaining progress integrity?
How can I evolve the levels of a game in app updates while maintaining the integrity of player progress in some theoretically sound way? Levels may be added, changed, reordered, and/or removed in each update.

Suppose it is a game like Candy Crush Saga.
Have you seen https://projecteuler.net/?
The reason phones can do that is because they throttle heavily after a couple minutes of heavy CPU usage. That wouldn't be very good for a laptop.
> plenty of libraries that are designed to be thread safe aren't because it is hard to do this right.

Is it? Are we talking about fully thread-safe or only being reentrant?

For the most part, being reentrant is sufficient -- i think there are few cases where it makes sense to be really thread-safe (i.e., lock mutexes on every access as opposed to let the client do the locking as needed) since that forbids composability.

Making a function reentrant is mostly very easy. It's not trivial to assert that external dependencies are also reentrant, but most libraries don't have external dependencies.
I think what I didn't like is that while it required lot of training to be Jedi in the past, Rey seemed to have miraculously acquired congenitally. Or did I not notice/heard how she got trained?
Followed by a link to a Plankalkül web framework on GitHub.
those three points in the bullet list near the start all seem to miss the mark for me.
Unfortunately this is very slow.
Compared to proper native implementation of course.
thats not entirely what i was getting at... but i take the criticism. i don't know very much. mainly because of all the hype putting me off...
/personal/other-services
Origin Access is EA's new PC gaming subscription service
Entry Level Positions – 3 Years Experience
In 95, I ran X on 486's w/16MB RAM, and an Amiga 3000 with a Picasso II and an Apollo (?) accelerator. While I still held on to the Amiga 3000 and loved it, I don't agree Linux was that painful hen.

And of course it would be worse than BeBox, SGI, NeXT. SGI and NeXT were high end work stations (or above). We had SGI Indy's at uni that they'd gotten at near cost from the distributor at about 3x the cost of the my souped up Amiga 3000... BeBox was a PPC SMP box - it was where many of us had hoped the Amiga was headed.

I held on to the Amiga 3000 for 2-3 more years, but mostly out of loyalty and nostalgia at that point. I still loved (and love) the OS, but already in '95 it was on borrowed time and it cost a fortune to tack on enough third party add ons to make it viable. And the lack of software was becoming a problem - a colleague and I even spoke o Escom at the time about writing a browser for them, because the available Amiga web browsers were already then lagging behind he times.

And in '95 people did care about the "remote networking case no one cares about". At university, we also had old Sun servers that served up apps for dozens of dumb X11 terminals each. At work, by '96 5 of us ran all our applications off a single 120MHz Pentium w/128MB RAM, using our 486's as terminals.
It means our understanding of physics is incomplete. The answer to the anomaly could have wide ranging impact across everything we do (as pretty much everything we do is ruled by physics). Or maybe it's something very simple. We don't know until we figure it out.
The other really suspicious thing about this is the timing 48 hours after a class action lawsuit was filed against the company in FL by angry customers who can't withdraw money. Seemingly to telegraph the signal there is no money here to go after. On the other hand they are also outright admitting to fraud by saying they knew about this for over a year and continued to let customers deposit new funds.
You don't need recursion to hit the wall - how about comparing all pairs of elements? I.e. inner loop that iterates over all elements once again.
Good article. If the limitations of the web platform are taken into account from the beginning when writing multi-platform C or C++ code, and one doesn't go crazy with C++ templates, it actually is not too bad. Porting a huge existing code base with many external dependencies is quite another topic.

I found the performance of asm.js in current JS engines the least limiting factor, instead it's the higher level APIs like WebGL, WebAudio that become the limiting factor.

Also, existing (game development) middleware hardly focused on reducing code bloat so far, which then results in huge Javascript blobs (but also huge native executables).

I've started a little while ago writing a low-level C++ engine from scratch with all of this taken into account (here: http://floooh.github.io/oryol/) where the size of the Javascript blob is (roughly) in the same ballpark as a three.js demo (minified and compressed three.js is around 100kByte, Oryol 3D samples start around 90 kByte.

So basically: asm.js and WebAssembly yay, HTML5 APIs nay :)
I say start with Processing. It's a simplified superset of Java. With strong visual feedback, you'll get up to speed in no time. Very simple IDE. All Java is valid Processing. Also, you can make Android apps with it. It's very closely related to Arduino development, too. www.processing.org. Daniel Shiffman's books are great. Nature of Code is free online.
I'd drop the word "advising", e.g.,

"Where to go next, based on where you are now"

Or just

"Where to go next from where you are now"

That, however, makes it sound like navigation, which it isn't--it's similarity ranking, leaving

"Places like where you're at"

Or

"Seven places like where I am"

Note the pronoun change; seems more conversational too.

I dunno; none of these strike me as right, but I don't think what's there is going to grab anyone by the face.

I'd make the text below the fold more conversational, e.g., it's a pretty rare occasion I hear anybody say "venue":

"You're at an amazing place"

"You want places like it"
JavaScript is a single-threaded, prototype-based language with no real concept of scoped variables and the like.

Is this true?

Webworkers is a multithread concept and as far as I know all variables are scoped but maybe not like they are in C.
> will live through the next well beyond humans.

Why so pessimistic? We're clearly better at survival than tardigrades which can't build space stations or sequence their own DNA...
The big box Amiga's did get graphics cards with decent specs. The problem wasn't so much that, but that the vast majority of the Amiga volume was the low end machines. You'd never get an Amiga500 or A1200 style machine with card slots usable like that at the time. The big box Amigas sold too little, and the accelerator cards were equivalently high priced niche products.

That, and of course that Commodore management consistently messed up and delayed the better options.

What is a real shame is that Hombre didn't get finished before he bankruptcy [1]: A 64 bit 3D graphics chipset with an integrated PA-RISC and DSP, coupled with an AGA-Amiga-on-a-chip for backwards compatibility, and with Windows NT compatibility (back in the days when NT ran on multiple hardware architectures; though at that time I probably would have thought Commodore had sold it's soul to the devil if I'd seen the Win NT compatibility).

[1] https://en.wikipedia.org/wiki/Amiga_Hombre_chipset
A customizable C++ framework
This is awesome, thanks for sharing!

I'll dive into the implementation a little more shortly, but just wondering how easy it is to add additional constraints (for example, that pieces need particular orientations)?

Edit: Oh, I see there's a "Part Rotations" parameter. Excellent!
I took it to mean "a calculus for planning" in the GOFAI sense of "planning".
Chaparral Cars
Is there anything wrong with trying to actively seed the cosmos with these suckers?
That's exactly what put me off the most in this latest movie. They completely trivialized the Force.
Actually it's quite faster to call the DOM API directly, even if the VDOM abstraction is very sophisticated it's still overhead. Facebook has convinced people that it's a necessary evil when it's not.

It doesn't even make sense to standardize VDOM since it's just an implementation detail.
You should make a view that searches some nodes for a custom field. Wow, it hits the database A LOT.
Brief reading suggests that the wrinkle is whether you have a good faith belief that you will be able to make future payments.
It should be pointed out that Pkgin is not installed by default with NetBSD, although you can add it during the installer configuration. The reason I know that is that I manually configure my NetBSD installs, as I do not like the depend on configuration tools.
> Microsoft have picked up the torch

They did it several years before Google with the Lumia UI.
The big thing about Force Awakens I missed was the advances in technological film making. That was always George Lucas most important contribution to film. He always raised the bar.
I'm curious why std::string is badly designed?
For some items they actually only stock one of the larger sizes, but they do generally only stock one size of most things.
I was coming in to mention Ractive actually. Designed by the team at the Guardian for easy data vis by non programmers. I've found that teammates who look at it pick it up in about 30 minutes. All your have to do in a course is teach the HTML and CSS and Ractive pretty much makes the interaction easy
This seems to rely on assuming that the average time taken is the metric to optimize.

Imagine that you have 100 passengers, 25 of which aren't concerned with time taken, 50 of which are indifferent, and 25 of which are concerned with time taken.

With a 'walking lane', it seems to me that everyone is satisfied.

Without a walking lane, average speed improves, but those that would prefer to walk are slowed down.

I can't speak for others but I personally find the system excellent. If I'm in a rush, I can run up the stairs. If I'm not, I can chill.

I would generally be in favour of asking everyone to walk (as the below poster mentions), but that can't be expected of everyone - the disabled, elderly, children, those with suitcases, and likely other groups can't do that.
I have:

Apple LLVM version 7.0.0 (clang-700.1.76)
Target: x86_64-apple-darwin15.0.0
Thread model: posix

I did mention that the same source code when compiled with gcc runs faster in a Linux VM than when it is compiled with clang and run in OSX. That means, some of those optimization options either do not mean anything or do not work as well when using clang.
4 Cases Where Examiner Found Ridiculously Awesome Prior Art
She sucked it all out of that rod she found in that basement.
Stasi was the East German secret police during the cold war. Nothing to do with Nazis (but if you read it quick, it does look like "Nazi").
d is the number of digits in 10a + b. Therefore, a and b both have d/2 digits.
Remember, the stuff we want to get rid of by automating is the boring stuff! And we discourage automating it now because our economic model is centered on full employment with abundant labor. What this model has produced is consumer demand that is perpetually shaped by price sensitivity, which encourages bullshit work, bullshit results, and bullshit pay.

We don't need more packaged food with the top ingredients being one or more of "HIGH FRUCTOSE CORN SYRUP, MILK PROTEIN, SOYBEAN OIL". We don't need fashion that falls apart within one season. We don't need pay-to-win video games, or advertorials, or Buzzfeed. Neither do we need gold Apple Watches, $9000 pens, or palatial mansions. Scarcity of our environmental resources is real, but scarcity in manufactured products? Hardly! We can and should shift towards a quality-centric model - practical quality, not slapping gold leaf on everything.

What we have inherited is a way of seeing the world that is not really using our full potential, but is simply insistent that it is the climb to the top that produces the rewards, in spite of ample evidence to the contrary. BI is not the solution to all of that, but it will shift the demand profile towards quality in all sectors and allow consumers the option of choosing quality. If some of those consumers are "wasting their time" noodling on a guitar, so what? They aren't working at McDonald's.
There is something the article seems not to point out: this looks like a failure if bitcoin is the dominant cryptocurrency, but all those conclusions seem to tend toward a success in a ecosystem of altcoins.

If the problem of bitcoin is purely core members deciding about configuration settings, altcoins are not affected.

If the problem is the blockchain not being able to support the massive amount of transactions, here too, having alternative blockchains to divide the load will help.
The current thought is that she had training from Luke as a kid in the school they mention. But then when the school was disbanded they suppressed her memories and left her on that planet. Then when Kylo used the force on her mind, he broke loose the training.
Mas: Mac App Store command line interface
Thanks for the 95% closing stat being stores that are close together. My wife and I live in a small town in the mountains of Central Arizona and we have a Walmart store in the closest big town (60K population) that is just a 20 minute drive. We both like and rely on that store. There are no other Walmart stores within about 60 miles of that one, so hopefully it is safe. This store is a major employer in the area. It would be a bummer if those already marginalized workers lost their jobs.
That's actually std::optional, minus the nothing/just notation? Indeed more people should use things like this. Reminds me of a similar concept I also have wrappers for: instead of manually having to compare the results of std::find etc against range.end() all over the place, the result is basically in a small container which has both the iterator returned and the end of the range. So I write

const auto result = alg::find( range, pred );
if( result )
doStuff( *result ); //*result is reference to found element

instead of typcial

const auto end = range.cend();
const auto result = std::find( range.cbegin(), end, pred );
if( result != end )
doStuff( *result );

Not that much of a gain, but once used to it I could never go back. And I realize now this could actually just be rewritten using your maybe class or std::optional.
But that shouldn't be a problem for tardigrades frozen in a block of ice, because they are not in direct contact with air.
What I found interesting is that in Australia we do the opposite; stand left and let people pass you on the right.
While neat and useful - is it fair to call this a container ? It seems to only partition/isolate the filesystem(perhaps network interface too) - while (arguably) the benefit of containers is being able to also partition and isolate CPU, memory, network, routing, etc.
Show HN: A prototype app based on the StateX architecture
In case you're victim to Forbes' ridiculous attack on users who've installed adblock: http://pastebin.com/raw/wPvNaAGz
StateX (https://github.com/lilac/statex) is a cross platform native application architecture.
7 Ways to Make Time to Exercise
I think they meant to say block scoped variables. In js everything is function scoped or global (until you get to ES 6 "let" and "const" variables).

As far as web workers, they are very restricted/isolated compared to regular shared memory threads In other languages.