skysight-inc/HackerNews huggingface dataset:
I'd say there are a few ways to think about blockchain's utility in private contexts (public chains are pretty different because of their ability to allow for anonymous participation). The two best ones are the intra- and inter-organization use cases.

For intra-organization, one way to view private blockchains is to look back to the days of mainframes and the shift to databases. While you technically never need a DB and can get things done with code, DB's are incredibly useful as a general utility because of the baseline features you get by using one. Private blockchains are similar, in that they give you some new features (e.g. sharable DBs) and are much easier to build with as they raise the baseline on how bad a solution can be that is built with them.

While you can have a pretty messed up DB schema, bespoke mainframe solutions can be much worse. Private blockchains are like that (especially when they have smart contracts) -- sure you can really mess up the systems setup but issues that DB's can have like high availability and disaster recovery are 100% commoditized. Also, they demand a higher bar for authorization making them generally as more robust the most hardened DB by default.

That isn't to say that a private blockchain will replace the DB as blockchains can be wild overkill for many domains. A small company that needs a DB doesn't need a blockchain's feature set, but a large company that needs a globally distributed DB for holding a ledger (of anything) would be well served by one. When you're working with a system that by default is BFT, incredibly paranoid about authorization, perfectly replicated and highly available then build a solution gets much easier.

As for the specific problem that they solve, it's the settlement problem: organizations currently hold internal ledgers of truth about what they own but they can't inherently trust other organizations' ledgers of truth about what they own, so we need 3rd parties to settle cross-ledger. Currently, institutions handle this role but private blockchains represent an algorithmic solution.
Did not know the limit had been increased, and agree about checkout staff having no clue when the pin does not work (happens a fair amount with foreign cards).

I've seen a lot of people in the US not sign their card and instead write "ask for ID", which seems like a much smarter move!
Ask HN: Anyone from Facebook infra/email around?
It seems that Page notification emails do not have any signature data (DKIM), while regular notifications do.

This, coupled with strict DMARC email policy (reject) means I cannot receive those emails.

Straight from the email logs:

# Pages

2CA922BC00EE: 66-220-155-162.outcampmail.facebook.com [66.220.155.162] not internal
2CA922BC00EE: not authenticated
2CA922BC00EE: no signature data

# Regular

46E8B2BC08FD: 66-220-155-157.outmail.facebook.com [66.220.155.157] not internal
46E8B2BC08FD: not authenticated
46E8B2BC08FD: DKIM verification successful
46E8B2BC08FD: s=s1024-2013-q3 d=facebookmail.com SSL

I've tried going through the regular channels, but no response.

Is anyone else seeing this or is something really wrong with my setup?
Don't you think spammers will react like antibiotics? Getting better at it while we're building better bots?
> I wonder what this means for animation studios, or edit houses.

It means nothing

> A library for converting Adobe AE shape based animations to a data format and play it back on Android and iOS devices.

You still need to be able to produce the animation at first place.
ANDi's Guide to Mobile Gaming (for Beginners)
Yes there is: http://services.parliament.uk/bills/2015-16/psychoactivesubs...
The NIO EP9 is the world’s fastest electric car
> If a program satisfies a property but the compiler cannot prove it, can we still rely on it?

It's very simple: You can rely on what you can prove. This applies both to compiler authors and compiler users. That sometimes one can prove things the other can't shouldn't come off as a surprise. Neither party has all the information: The compiler author doesn't know the intended meaning of the program submitted to the compiler by the user. The user doesn't (need to) know the internal details of how the compiler works.
I forwarded an email and got a response, but https://spa.mnesty.com/ doesn't load for me
Yes but don't go with the one that gets random people to drive customers around in their carriage, it'll never work.
How do you directly render SVG in your mobile apps currently?

Have you tried font-iconification services like http://fontastic.me/ ?
Rider: A Cross-Platform .NET IDE Based on the IntelliJ Platform and ReSharper
>In the US, ex post facto laws cannot be made.

Yeah, well, in the UK the government is trying to justify sweeping constitutional and case law changes based on a non-binding referendum barely passing.
> The synthesizer is now what rules pop music these days

Now? It's been like that since the 80s!
Yes, I played guitar a lot 15-20 years ago. But these days I listen to very little guitar-based music at all, and it's a big reason I don't play anymore.
> knows precisely what his/her role is and is capable of fulfilling it

I also like Agile when it works, but I'm of the opinion that not following it is a symptom and not a disease. If you're fortunate enough to be on a team of people who know precisely what their role is and how to fulfill it, they'll tend toward Agile by virtue of being able to work quickly and having time to help each other. If you're not that fortunate, then it no longer becomes feasible to divide the work into semi-predictable chunks. The problem is in thinking that Agile is a suitable substitute for skill coverage in a team.
To make Caldwell's accomplishment more impressive, he is missing one of his index fingers. He lost it in a table saw quite a while ago.
I wonder how that affects creating a fork of it. At what point does it become different enough that you can safely distribute it
A big part of the point of "agile" is that process is something that you hack/adjust/tune. If you're trying to do agile by dogmatically following a process, expect to fail.

When you can say, "Let's tweak our process in this way for the next two sprints, and see if it works better than what we've been doing", that's agile.

But you're right, it's fragile. The reason it's fragile is because, as you go up the management tree, eventually agile runs into big-process management. And big-process management wants their reports so that "they know what is going on". Real agile looks sloppy, out of control, even though it delivers more value to the business faster than big-process development does. So real agile scares big-process management, and eventually gets killed by a layer of management that can't deal with it.
That would suck hard for me:-)

I have a tmpfs on / and mount a ro-snapshot onto /usr. Fresh system in every reboot:-)
Ask HN: G Suite: Google couldn't verify it's you – anybody faced this before?
Hi,

We are facing a strange problem with Google's Business Email and other G Suite products. My partner (and co-founder) is not able to login to company email from last 4 days. He changed his iPhone on that day. He has 2-factor authentication enabled. During the change, something happened and now he is not able to login to any of his G Suite services.

The first couple of days were during the weekend, so he took it lightly. Then, we changed his password from the G Suite Admin Console and tried to log in from multiple devices and machines. Still, he was not able to log in. We contacted Google support today, they said that this was unusual and the console team is looking at this but there is no estimated time of resolution.

Did any of you face anything similar? Yesterday, there was a case being discussed of a regular Gmail user locked out of this account. On that thread [1], I said I would be willing to pay $40-50 to resolve such problem on priority. In another thread [2], I mentioned Google and G-suite in connection with reliability and now I am personally experiencing this for a paid Google service. Just to note, we pay for 100+ users to Google (India). How ironic!

I had that image of 100% dependable Google for a long time. I guess no company is 100% dependable ever! To be fair to them, it has been only 6-7 hours since we have had the last response from them. Hopefully, this gets resolved quickly.

[1] https://news.ycombinator.com/item?id=13006639
[2] https://news.ycombinator.com/item?id=12994627
Could they also be repurposed for electroencephalogy?
Why can't this just be MIT licensed?
Computer Information and Technology
I know meet-up organizers and members are going to want to post about their meet-ups here! Reply back with a meet-up and what is cool about it, we can get a list going.
the way I read it is, I can't put a new name on it under my name and then redistribute it. But I can use it in a library or app and then open source and distribute that
For the non-climbers, conquer is much easier to understand than send.
As another poster said here, I've seen Agile work well one time out of many organizations. I think the worst is when individual teams don't choose to use Agile and it instead comes from somewhere high up on the organization: "We are now Agile".

I've not been a part of but I've heard of horrors like SAFe. I've seen the diagrams [0] and I can't believe someone was sold on that.

I guess BigCorp needs to use something as a software delivery methodology. If they don't use Agile what else would they use?

[0] http://torak.com/wp-content/uploads/2015/11/SAFe-3.jpg
I agree, stack traces are a good thing.

For the time being, make a helper function:

ixWithString :: String -> Int -> Array a -> a

check the bounds inside and error out with a custom message when the index is outside the array bounds.
that's true, it's a bit of a gray area.
Open Whisper Systems – The XEdDSA and VXEdDSA Signature Schemes
Whenever this topic comes up someone with a very engineering-centric attitude jumps on the opportunity to downplay the complexity of the concept of "creativity". Often using the word "just".. I would argue that something like creativity is far too difficult to even define, let alone model and synthesize, to ever be adorned with the modifier "just".

While this is a highly philosophical topic, I can say, on the difficulty of defining creativity from a scientific point of view, is that more and more what I think is considered "true creativity" is fundamentally a social concept, and as such, even though computers are good at reproducing patters and variations on patterns, they will never be "truly creative" until they become independent members of society, whatever that means. So as cool as machine learning is getting these days, this would require a leap in AI that is still rather far away (imho).

That's why I think it's a little optimistic to label something as complex as creativity as being "just" anything. Creativity is social, insofar as it is defined and recognized by human society, and machines are.. not. Yet.
> The good news is that this doesn't have to be a dichotomy. You can have GC for in-memory data structures and deterministic destruction for everything else

That's very interesting. Please correct me if I'm wrong, but I think this is not the final solution, either, because you still have the GC running, which prevents strict proofs about performance e.g. for real-time systems. Here, the Rust approach has benefits as it enables you to get very far without a GC.
I think that a lot of what you are saying is only true if you don't understand American football all that well. Blocking schemes are far more complex than just "smash whoever is in front". WR's run much more complex routes than just a single route as well (option routes depending upon the coverage and coverage technique).

His analogy is limited (as all analogies are, at some level), but it works for its intended purpose, IMO.
I'm missing CNN's headlines running on my Touch Bar.
Scrolling up, you seem to be exceedingly concerned for this guy and his backpack, almost to the point of an obsession. Maybe you should try to contact him directly to offer your insights?
tar is a utility for creating and extracting .tar and .tgz files.
Announcing Video Hack Day 3
Yes definitely an interesting topic. Next follow up article is probably around testing though.
missed VSTi
>I don't have particularly strong nails

How much sunlight exposure do you get? My fingernails were also very weak until I started supplementing vitamin D, which made them grow noticeably thicker and stronger. I think a lot of people here spend most of their time indoors so they're at higher risk of vitamin D deficiency.
Index Fund Bans and Hedge Fund Data
"Agile" has become a meaningless term I feel like. It used to denote the four values of the manifesto for agile software development and devolved into an entire industry of gimmicky practices sold by mediocre engineers who can't even make the simplest of CRUD apps.

I'm still very much in favor of these four values. But in and of themselves they require a lot of thought and analysis in a recursive feedback loop to be used properly.

What we have instead are mindlessly rigid processes for the sake of having a methodology and a huge track record of epic failures in Agile projects. It has become like a drug - people chase that initial high they will never, ever get back.
Despite never being a smoker, I know that my willpower is much too weak for that to work.
The answer to the problem can be found in the comments, but not in a single place:

X<T>{{}};

will:

for T = DefCtor call the initializer_list constructor with a single default constructed element. The outer brakets are for the initalizer list and the inner ones are for the DefCtor constructor. The brackets for T constructor itself are allowed to be elided.

for T = NoDefCtor, the previous overload resolution is not valid as NoDefCtor has its default constructor disabled, so the inner brackets match an empty initializer_list, while the outer ones the X constructor.

finally, for T = DeletedDefCtor one would expect the same as NoDefCtor, but there is a quirk in the language: explicitly disabling the default constructor still allows aggregate initialization (which is enabled for any class that doesn't have otherwise a constructor); this allows for the same overload resolution as in DefCtor. This is considered a defect and will be hopefully corrected soon.

While initializer_list allows for some nice syntactic sugar, I think it is now generally considered to be misdesigned, especially as it breaks the otherwise great uniform initialization syntax ({..}) that was added at the same time in C++11. There is an ongoing effort to fix the it, but it is hard to do without breaking backward compatibility.

edit: formatting
But parallel construction is still a thing.

https://www.washingtonpost.com/news/the-watch/wp/2016/03/10/...
At least for me, it's the number one reason I quit learning the guitar
You posted the link to the README, which is different from the link to the repo itself. Since these two aren't really duplicates, I don't think it's a fault of HN's algorithm.
Will it work if I am not in the shower?
https://www.youtube.com/watch?v=neoz092AiCo
That subsidy goes towards Chevy volt as well. And it is turning electic cars from an awkward piece of geek gatery to something a wide public is actually considering. Money well spent, I'd say.
Trump Appoints Two Anti-Net Neutrality Advocates to Oversee FCC Transition
If it's a tape archiver, why is it allowed to write to disk? Check and mate.
You're misunderstanding. The whole point is that nothing slips in, but at the same time, you don't have to force a specific version of something in order to achieve that. The killed feature of Bundler for long term maintenance is the ability to upgrade a single requirement in a minimal fashion.

So you start with a Gemfile that is your minimum requirements with no versions specified, the first time you `bundle install` it generates a Gemfile.lock which is then sticky. Over time your requirements are completely frozen until you decide to update, which you can do piecemeal via `bundle update gem1 gem2 etc...`. If you have a reason to avoid a newer library, then put a soft restriction in the Gemfile, preferably with a comment as to why that restriction is there and you have a very powerful long-term system for managing versions over time.

Just freezing and forgetting is a recipe for disaster when you have to update months or years later, and the transitive dependency updates are overwhelming and conflicted. Similarly exact versions specified make it fiddly to upgrade and hard to tell if there were reasons behind specific versions.
It depends a lot on what you want to specialize in. There are a few entry level classes that are good at preparing you for one of many paths you can take. For the very basics, I've heard good things about harvard's cs50. For an intro to systems, I'm currently going through CMU's 15-213 which I think should be a class in all CS departments.
"add to it very friendly community"

Mmmm, my experience was quite different. I found it very click-ish and there was never a shortage of people saying "you're doing it wrong" based entirely on an incomplete observation from an obstructed vantage, technical differences of opinion or merely vanilla brow-beaters. If lots of testosterone(not exclusively) and competition is what you're after, then my point doesn't apply to you. This does not imply all climbers, but enough times I opted to avoid established routes and crowds. To each their own.

Been exploring remote canyons & game trails solo for 25 years, I find the experience of discovery on 3s and 4s more satisfying than conquering 5+s for the nth time.

edit; addwd an "If"
Yeah, I know my definitions are problematic. Remember that the term "referential transparency" was introduced to computer science by Strachey in his Fundamental Concepts in Programming Languages as a property of procedural, imperative languages. How would you define pure?

---

> An effect is anything that invalidates some equational law that holds for values.

Ah, I can certainly accept that as a definition, except that I'm not sure how different it is from mine, because the equational law you refer to applies to syntactic terms (`foo` in your example) and the language's equality operator (`==` in your example). It's easy to come with an equivalence relation that would hold for `foo`, but not at the syntax level (e.g., equality that takes `foo` to mean `foo`'s definition and the content of the heap, and the value of `foo` would not be its return value but its behavior -- i.e., the behavior of foo for equal heap contents is always the same).
How to Start a Managerial and Catering Business
Sure I agree that offering more than a junior role is unreasonable, but all the HR grads I know moved into senior roles very quickly after being hired. I went to Hack Reactor, got a job, and was considered a senior dev by my manager after one and a half years. I'm in my second year now and I'm a team lead. We have a few other HR grads on our team and they are excellent developers that other engineers look up to for advice. Sure, not everyone is like that, but there are plenty of people like this who I know personally.

Now what about CS grads? We've interviewed plenty of people with master's degrees in CS who don't know how to code a binary tree because "you know, I wasn't that into the data structures course..." Or if they have lots of experience they demand more money than the manager makes because, apparently, every company has to compete with Google salaries.

I remember my classmates and I staying after class because there was a guest speaker coming in to talk about quad-trees and b-trees and we were SO EXCITED to learn about these things. We've taken more candidates from Hack Reactor than not because they show this passion for their work that I have personally rarely seen in CS majors. They generally require a few months of ramp-up time, but I think it's worth it, and since they are usually coming over from a different field they bring a lot to the table from their other experiences.
> Get ready to learn over 200 illogical "hand positions" :).

Wait when did we start discussing emacs here?
But if it's a pass, and it's a three-step drop throwing a quick out, the tackle (offensive lineman on the outside) wants to guide the rusher to the inside in order to keep him out of the path of the ball (which will be a fairly flat throw, and therefore perhaps within reach of the defensive lineman). So in that case, yes, the offensive lineman has to know what the receiver route is, and to react accordingly.
Great job! I've been thinking of doing a MYOG pack; but my minimum requirement is I have to fit a bear vault; and I think some kind of dedicated frame would be a must. Your idea of using the sleeping-pad as a frame is genius!
You can use Windows on you Linode:

See

https://gist.github.com/EugeneKay/1ff78396b57f25e69f1d

and

https://github.com/ClickSimply/docs/blob/windows-on-linode/d...
That's nice. But if you decide to run for high office 30 years from now it will become known that drew pony porn in college and never really stopped. That's the meaning of kompromat.
Pact[1], the language we've built, has the idea of an `admin keyset` that enables admins with the right number of signatures from the right number of keys to migrate contracts. Our approach is rather different from the EVM's as smart contracts interact with/guard a table in a DB (think stored procedures accessing a table) and the system has modules.

This way, if a bug is found, the admin can update the smart contract module guarding the DB table directly vs having to track down the on-chain contracts for migration (if it's even possible). From a normal user's pov, they don't see a difference (unless the admin decides to change the namespace or something).

It's a subtle but important difference. When someone using Pact sends the transaction `(payments.transfer "me" "you" <amt>)` the transaction (after doing a bunch of auth with ppk-sigs) looks up the `payments.transfer` command from the on-chain smart contract and executes it with the provided args. As such, the admin can update buggy contracts without issue (and roll-back, fix tables that have bad data).

[1]: http://kadena.io/pact/
I think this is also an income effect. People are experiencing flat income with slightly inflating prices. Over time, that forces people to demand fewer and fewer luxury goods. To put it another way, if average income increased then demand for guitars should increase to some extent. It's not linear, of course. People also have very little free time with the current job landscape. As an anecdote, another HN thread is about Microsoft's ad campaign for "working 14 hour days, 7 days a week with pervasive Microsoft technology [surface devices, office 365, etc]." All of that will add up to fewer people spending fewer hours on a guitar and many other things.
What are the benefits of developing in Node.js versus Python?
Correct me if I'm wrong. It sounds like Keyframes is like "Flash runtime", the differences are you author your animation in After Effects, and the output is JSON (instead of SWF).
Try starting out with zero, and having zero income, and zero rich uncles. People talk about these things like they're a given. I'm not saying anything about you personally, but there are different kinds of poor for every "poor student".
I play some instruments, including a semi-hollow electric guitar. I live in an apartment, so I have to carefully control the volume and which hours I play, I think this is a major difficulty for music in general nowadays.

The electric guitar requires an amplifier, and to use an amplifier in a low volume requires strict discipline. Sometimes I use over-ears headphones which while gives me a more clean sound it does not have the same feeling, and you cannot share the music with other people. It's specially bad when I'm playing with other people.

Apartments/Condos in US have paper-thin walls, they are becoming more common, it creates an extra difficultly to learn to play instruments, specially drums, bass and electric guitars.