skysight-inc/HackerNews huggingface dataset:
> How does Matrix deal with netsplits and partial-netsplits?

> How are highly diverged histories (e.g. a long netsplit in an active room) supposed to be merged?

So the cool thing with the federation in matrix is that all the messages (and state changes like room memberships) are part of a directed acyclic graph (DAG), so any new messages that are sent reference the previous ones. (Very much like git). That way a server can tell if it is missing any messages as long as it can talk to a server in the room. Since everything is signed by the originating servers, servers can pull in missing messages from third parties! Thus partial-netsplits are fine, as all the messages will eventually propagate through to all servers :)

When a full netsplit happens you effectively get two separate branches in the graph, each group of servers happily talking to each other. When a netsplit is resolved, one of the servers will realise they can talk to one of the other servers, at which point one of the them will send an event that references both branches (in effect merging them). All the other servers will then realise what they are missing and pull the branches in. At that point a certain amount of state resolution needs to happen (e.g. if people joined and left on the different branches) to ensure that all the servers have a consistent view of the state of the room.

The really difficult problem we've found is how you communicate to the clients about the netsplits, and how the clients should display the netsplits (although this is more of a UX issue, but still important). Since the messages in the room are stored as a DAG, the servers can see what messages were part of which netsplit and so that information can be made available to the clients.

> Does the protocol require O(N^2) connections for N users? (The number of users in some IRC rooms is measured in thousands.) Can it be more efficient?

Currently the protocol uses full mesh to distribute the messages to all the servers (which in practice are going to be fewer than the number of users in the channel), though since it uses HTTP the servers don't need to maintain active connections to all other servers. We really want to come up with new distribution models for really large rooms at some point, but we haven't quite gotten that far yet :)

> How are rooms administered?

The user that created the room gets admin rights to the room and given a "power level". The admin can set the power level required to do different things, (e.g. kick, ban, set the name of the room etc), as well as whether you need an invite to join the room or not. They can also grant (and revoke) power levels to other members of the room.
Now, if a remote server intentionally ignores these rules then other servers in the room will simply not accept the dodgy actions. All actions, whether message sending or banning someone requires the server be able to prove that they had permission to do that by supplying a list of events along the lines: "I can ban because I have power level X, which was assigned by Y, who could do that because...".

(I'm part of the matrix team ftr.)
People buy expensive coffee, expensive protein drinks, and expensive smoothies- why not milk? Doesn't surprise me at all.
HN has a timed limiter for nested replies that grows in length depending on nested depth, mainly to stop flame wars. You have to wait a few minutes or take the hint that the thread is getting too deep.
A Presentation on the SAFE / MaidSafe Ecosystem Livestream
From the article:

"The method, which was developed in Newcastle, should help women like Sharon Bernardi, from Sunderland, who lost all seven of her children to mitochondrial disease."

Reasoning:

Sharon Bernardi hasn't been able to reproduce naturally without this "method".

But the UK is going to make this method legal - and because its healthcare system is publicly funded the UK government (and thus the public) will also pay for the implementation of the method.

This represents an example where the state is making a guarantee - a formal promise or assurance - that it will pay for citizens that normally couldn't have children to be able to have them.

From the article:

Prime Minister David Cameron said: "We're not playing god here, we're just making sure that two parents who want a healthy baby can have one."

What's not logical about that?
The Program is the Proof: propositions in type theory
I would love to see threads based on this work (OS support for lightweight threads): http://www.linuxplumbersconf.org/2013/ocw//system/presentati...

It seems this would move most of the heavy lifting into the kernel (and out of the already-very-complicated JVM). Anyone know what happened to that work?
It's quite possible to write a parse method in go such that

foo := json.Parse(os.Stdin)

would work. I'll acknowledge that it would be extremely unidiomatic to ignore errors and not provide the parse call with type hinting information. A more idiomatic version would look like:

var foo SomeType
err := json.NewDecoder(os.Stdin).Decode(&foo)
Okay, what are those changes in pedagogy? Be specific.

Dover prints classic mathematical texts which are wonderful. There is nothing wrong with them. I've learned so much from them.

But, you know, I could be wrong (I'm serious, not trolling). I'm white, was lower middle class but had a great set of schools/teachers, and maybe the books are terrible for ESL students (for example), and I just haven't run into the problem because of my background.

With that said, I don't think the linked book is an example of new pedagogy. I'm eager to stand corrected.
OK, you probably know more than me. I just assumed that most of those libraries are then consumed from something like Python. If you want to develop high-performance libraries themselves, then C++ is probably the way to go. Unless you want to be on the cutting edge with something like Rust :).
"The New Best Recipe" by Cook's Illustrated Magazine is a great cookbook along these lines. Before each recipe (and scattered throughout for niche techniques) the authors spend two-three pages explaining all the different options they tried, what worked, and why some things failed.

I've learned a great deal about technique by reading these recipe forewords.
Local Project SAFE (http://www.maidsafe.net) meetup groups:

San Francisco: http://www.meetup.com/Project-SAFE-San-Francisco/

Montreal: http://www.meetup.com/projectsafemtl/

London: http://www.meetup.com/Project-SAFE-London/

Seattle: http://www.meetup.com/Project-SAFE-Seattle/

Sydney: http://www.meetup.com/Sydney-Project-SAFE/

Berlin: http://www.meetup.com/SafePod-0x0-Berlin/
I tried to use j2objc and I thought it was the biggest POS. The ObjC code it generated was so strange and hacky that debugging it must be a nightmare. I was pretty new to ObjC back then and I knew I wouldn't learn anything using it, or get anything to work. And of course it can't be used for any UI stuff.

Any opinions from anyone else who tried using it?

I checked StackOverflow and there's only 21 questions with the tag (http://stackoverflow.com/questions/tagged/j2objc) so that put in the nail in the coffin for me. As an aside, that's how I make most of my decisions between frameworks and libraries, I just pick the one the highest amount of SO tags!
Or, and this is going way out on a limb, maybe a Windows Phone since the GP is an Exchange user?
Great to see AOT compilation coming to the reference JVM instead of relying on third parties.

Also the desire to go meta-circular and reduce even more the amount of C++ code.

Most likely based on the Graal/SubstrateVM work.

Finally JNI being replaced by something developer friendly.
> Here's where I disagree with other people - software development is special in that it requires focus, relentlessness, intelligence, creativity and I also find it interesting that many software developers tend to suffer conditions from the autistic spectrum. To me that's a clear sign that software development requires the mind to be hardwired in a certain way.

I agree, and I don't think it's a good thing. As Crockford once said, we chose software because there's something wrong with us.
>Would that be 100% retarded or just about 70% retarded?

I'll go with "less than 70%". Or at least I hope, because that's what I did.

Coming from a Economics background (with a minor in Statistics), I took a job as a "data analyst" at a software company out of University. It was fun, but I relied on working with a programmer to get even basic things done.

Then came the "Data Science" wave. I thought, this is right up my alley! Except I needed to learn to program. I tried doing the tutorials and academies online, but was continuously stuck in the hand-holding stage. So I did the opposite of what is often recommended around here: I quit my job and enrolled in a 2 year Computer Programming course at a college. I'll be finishing up this spring. The enforced, formal structure and discipline has been a boon.

I feel great about having done it. I still feel pretty green, but I'm probably somewhere in the middle of the "desert" now. I credit school with having got me that far.
Eugene Wigner's oral history transcript is really interesting to read as it's straight from someone who was in the pre-war physics scene in Europe. If those people had not been able to transfer to Princeton, the world might be a very different place.

http://www.aip.org/history/ohilist/4963_1.html
> they killed Google Calendar Sync

Just FYI, GO Contact Sync Mod[0] works very well for me as a replacement for Calendar Sync.

[0]http://googlesyncmod.sourceforge.net/
That's called "composition over inheritance" and OO languages are perfectly capable of it.
Interesting - Would be keen on hearing more around it's end-to-end encryption and OTR like capabilities though?
It's true my first reaction was against internet regulation. If it ain't broke... However, I read his statement, and his decision seems well considered. And, the regulations are in the direction of ensuring openness. My biggest concern is that now that there is regulation, it can go in any direction in the future.
as long as it's 140 calories of mostly sugar in a can, you know people will buy it from those sadists.
People often hear about govt managed civil engineering projects (like expanding freeway) ending up way over projected cost/schedule.

Some of it is due to not so good management/estimate but often it's due also to bad record keeping by govt also.

Under/near most of major US roads, there's many different pipes/cables/etc for water/electricity/data. Different contractors are adding/modifying something but there's no absolute/good authority on what goes where.

So next time a major project is started, people have to guesstimate where cables/pipes are. And if you happen to run into incorrectly charted (or uncharged) pipes/cables, schedule is thrown off and of course people/equipment that were scheduled (and paid for) end up waiting or doing more work.
Show HN: Like Candy Japan, but for Japanese Tea – Tomotcha.com
I've been sending green tea from Japan to a friend in France for a while, so we decided to give a shot at monetizing this very simple idea. The business model is quite evidently derived from Candy Japan (candyjapan.com).

For now the concept is really really simple: I just pick the best teas I can find, and ship them. Last month it was a Kabusecha from the Kyoto prefecture; next weekend I'll be travelling to Kagoshima to find a great tea for next month shipment.

Ultimately we'd like to offer a bit more choice: amount, organic-only, etc. Feedback and inputs are very much appreciated!
Source maps help a lot with that.
Yea I guess I'm still getting used to the new MSFT (partnerships, open source, ec.)
I'm not a biologist, wouldn't those cells would prefer to copy their own DNA?
He was possibly the first person to ever post about Silk Road. A few months later, that same user is recruiting for a "lead developer in a venture backed bitcoin startup company" conveniently avoiding specifics. If you recall, they also seized a package sent to Ulbricht containing nine fake IDs with different names in July 2013 (he was arrested three months later). Cumulatively, that's probably enough to merit suspicion/the issuance of a warrant to search his e-mail.
I had a look at your Twitter feed but I didn't see where you named the specific supplements you used. Can you list them here? Curious to see what they are. I've only ever found tongkat ali to produce a noticeable effect.
Extradition is a thing too. You don't have to live in the US to break laws in the US, and you can bet that the government would have stopped at nothing to shut him down.
> May I ask why you prefer git? For cloning/forking the project?

Not that it's difficult to break out of the cycle, and download a tarfile and so on but.. Yeah, creature of habit... git's part of the workflow these days.

(for better or worse!)
That is both awesome and slightly scary. This type can literally by MITMd. Maybe we'll see a big push for https-everywhere in F# code?

It is pretty awesome that languages exist that let you do this.
> We are also the only animals that are influenced by advertising.

If that's true then what the hell are peacocks doing?
(that was a typo)

> You're really stretching the truth here

It's a huge stretch of the truth to estimate all values over 2.5 years in real time.

They are retroactively estimating the number of bitcoins that passed through from February 2011 (when bitcoin was worth some $0.10 or something near there) but pricing the net total over 2.5 years as of the 2013 value. (That's already a magnitude of 100, so the difference between 200-130 there is quite little).

You're right I didn't give accurate pricing numbers, I'll double check next time before I specify months and values, but my main point still stands. (Actually prior to Feburary 2013 Bitcoin was under $10 - so again their estimate is several magnitudes off.)
Google doesn't write a lot of C# code, but they do write a lot of Java. This is a case where they looked at Xamarin and said "we want that" and built their own, only for Java.

Another big language at Google is C++, which also has a cool cross-platform client story. Emscripten for web, Android NDK, iOS can use C++ libraries directly.
Getting a job to develop with Rust would be a dream :)
Agreed, cardinality is the key word: it goes with how his example is inappropriate -- if you were just counting the number of people coming in a simple addition (and maybe take a log() ) would cost just as much. I believe the usefulness of HLL is evaluating the cardinality of sets you need to access -- you "sample" the set and get a quick estimate of the cardinality of certain objects.
Where are you getting these prices from? Bitcoin definitely was not $0.10 at any time during the operation of Silk Road. Here's a chart:
https://blockchain.info/charts/market-price?timespan=all&sho...

Most of the time, it seems to be around $10.

Of course, if he kept his earnings in Bitcoins (which he did), then they would fluctuate with the market price.. to about $120, which was about the market price when he was arrested.

And the truth is, Bitcoin's price was above that amount for most of 2013, and all of 2014, and today it stands above that price. So he could have sold his Bitcoins for even more than $120.
Valet Anywhere rides away with $1.35 mln seed
The right way to use your energy
Started learning ReactJS by trying to implement a very simple vim interface. This is my first side project where I've actually gotten somewhere with implementing basic functionality and then committed it to github. The project isn't close to being done (read: I'm kinda aware that it doesn't work ideally), but my goal is to commit code once a week.

http://carise.github.io/reactjsvim
What is with the milk hate? Is it cool to not drink milk now?
How to build your growth machine: Part 1 Hiring the right team
Break it down to small, high level abstractions for properly crafted, high yield components.

It requires experience, vision and talent. It's perceived as very difficult because it's basically the same approach as academic research, but instead of being applied to general problems, it's a general approach for a set of very specific technical constraints.

Oh, and most people screw it up badly on most occasions.
> What happens when microsoft or oracle decline to continue paying for hundreds of very expensive senior compiler/vm/language engineers?

People will move away for something else, while a few will keep on maintaining them.

I remember when the answer for any database related problem was Clipper. Now it is gone.

I remember when no one would question the use of Turbo Pascal for both system programming as application programming.

I remember when using a spreadsheet meant Lotus 1-2-3.

I remember ....
Pretty sure they still are syntactic sugar for prototypes, just like in ES6. But SoundScript enforces that you cannot modify prototypes. There's not really a problem with that, it's doing it for speed. So it's not for your average Javascript app where performance doesn't matter as much.
C# is used a lot in health sciences.
White House drone crash fallout shows who really owns your drones
Obstructive sleep apnea increases cortisol levels which in turn decrease testosterone levels.

Source: I have obstructive sleep apnea and low testosterone, both of which are being treated finally, and my income rose by... triple? quadruple? ever since
I would think he would be breaking taxes laws, if nothing else- how much VAT did the EU collect from Silk Road?
We need to make it trivial for anyone to run their own core infrastructure (mail, contacts and calendar). I'm working towards this using unikernels - http://nymote.org/blog/2013/introducing-nymote/
Allowing corporations to throttle traffic, while forcing them to be public about what they throttle, seems like an idea that would work in theory but at the same time quite taxing on the consumer. Click-through EULAs are all public, but how many people read them? It just seems like a business practice that ISPs will exploit and obfuscate, and most customers will sign on to them not knowing exactly how or why their data gets throttled.
The number of inmates being found innocent by new DNA tests is really frightening.
I've never really browsed the mathematics area of these types of books. I do recall a story of high school teachers developing their own text making news in the past 5-7 years or so. While I don't really have time to at the moment, you'll find the best wikibooks / gitbooks.io are probably on programming. Or topics where less diagram content is involved or required. Also when it's an open source book anybody can extrapolate the content and reformat it in design software suc as indesign, scribus or whatever. The framework and methods exist, but there are gaps in the process that have made it so a professor is gonna make their own book and bind it through the campus copy shop. But we know the divide, we know a way to make it work, just need people to jump in I guess and have a reason to do it well for less cost. It will take a couple entrepreneurial people, but it would make for an attention-getting enterprise. hacker news might breed the right kind of people for this.
>What is with the milk hate? Is it cool to not drink milk now?

Most of the modern "fad" diets are against dairy. Personally, I'm torn. I'm half-convinced that it's "unnatural" for human consumption, but at the same time it's a cheap, tasty way of getting good fats and protein.
" They're sooooooooo much easier to
write than anything for classical languages
because it's so easy to do in JavaScript."

You can do that in a language with classes and even one with optional types e.g. you can use jasmine perfectly well to mock typescript objects (because they are just JavaScript dynamic objects)

" I have to
make classes and meta classes and all kinds of
other indirection just so I can make an Event
system that is generic."

I remember reading Gilad Bracha saying somewhere that enabling exactly this kind of system was exactly one of the use cases for Dart which is class based with optional types. You can have your cake and eat it too!
Cache, cache and cache. Three of the most important things Java gets wrong today. Mostly because Java doesn't have object arrays at all. Only primitive types can be array elements. So you get array of references to objects instead of array of objects.

There are only 512 L1D cache lines in a CPU core. After just 512 references to memory areas covered by different cache lines, L1D entries will start to drop. Or earlier. In Java this happens very easily. Like when just iterating a single, not very large, data structure.

Everything else (except maybe SIMD/GPU related items for compute purposes) are not anywhere near as important as fixing Java's current problems with CPU caches.
Why not just link to the original post rather than a series of extracted quotes?

http://ramiismail.com/2015/02/everything-is-not-fine-and-tha...
I don't know about GWT, but certainly Inbox in Chrome desktop feels much more sluggish than the app on my Android phone.
Does it run on the Web?
It is trendy to say the system is broken.

Perhaps we rely on the system more than people used to.

Hard work and dedication to learning is what created all those breakthroughs you mentioned. The education system contributed here and there.
Alternative view here:

While I don't doubt that your kid was hilariously unappreciated from the school based on one test, I was a relatively lazy middle school student, scoring B-C ranges on most of my classes as well as pretty much failing the first aptitude test (pretty sure it said that I should be a truck driver). As a result, I wound up getting placed into non-honors classes freshman year. After a few weeks of finding the classes mind-numbling boring, I offhandedly mentioned to my advisor that I wanted my classes to be more challenging, and she immediately moved me to honors courses because of the fact that I had taken the prerogative to tell her that I wasn't being sufficiently challenged. Currently I'm studying Computer Science at a large state University.

Because both our examples have an n = 1 sample size, it's definitely not correct to generalize high schools across an entire nation. However, in my experience, high school advisors were more than willing to toss out aptitude test results if the student had taken the prerogative themselves. While I agree with the idea that "Every school is essentially 2 schools", the barrier between them is honestly so low that it's not realistically a problem.
You gotta be a little insane in a particularly good way.
Legalizing weed in CA will destroy an entire industry.
Amp – Your Phone Has Never Sounded Better
Fully agree.

My employer moved away from C++ projects in the enterprise space back in 2005, into more programmer friendly languages.

In spite all the nice C++11/C++14 features, the enterprise hardly cares for C++ nowadays.

And when it does, the code is most likely pre-C++98, written with MFC, Tools.h++ or similar.
I was certainly with you on the taste factor for quite sometime with milk. Then I manage to get some non-homogenized Jersey cow milk and realised milk does not have to taste terrible. The fact is the vast majority of milk these days is from cows selected for quantity over quality, and homogenization removes so much character from the taste.

Edit. Also full cream or why bother.
I'd suggest that it was not advertising but a harsh environment and natural selection that led humans in Northern Europe to develop lactase persistence so they could drink milk after infancy.

http://en.wikipedia.org/wiki/Lactase_persistence
although i agree somewhat, prototypal inheritance does nothing to help solve the taxonomy.

the article below i think explains the situation much better:
https://oleksandrmanzyuk.wordpress.com/2014/06/18/from-objec...
It's not legal to spy on citizens. Assuming the NSA (and likely not the FBI) held illegally seized data, it still wouldn't be admissible as evidence in a trial.
Take the offer you have. Don't work for a company that makes you do coding challenges.