skysight-inc/HackerNews huggingface dataset:
I developed a "general purpose" JSON-based CRDT[1] as a part of my content addressing system project. The idea was to have an "append-only tree", where subtrees could be used by individual applications for different purposes, for example as counters or mutable sets.

In retrospect, it didn't need to support recursion. A single-level append-only set is enough to be fully general and easier to perform indexing on. Using JSON was also overkill, since too much flexibility is bad for content-addressing.

[1] https://github.com/btrask/stronglink/blob/master/client/READ...
> Google is famously more selective than Harvard (both places have self-selected applicant pools, but Harvard admits 5% while Google has "millions" of applications and only tens of thousands of programmers hired over multiple years)

That is very debatable. You could argue that a large portion of high school grads in the world would be interested in going to Harvard, but they don't bother to apply because they know they have no chance of getting in. In contrast, one's chances of getting hired by Google aren't that easy to assess (there are no standardized tests for example) and also it's easier to apply, so proportionally way more people do IMO.
I mean, I hear where you're coming from and I'm not going to say you're wrong, but this is like saying that endurance training is unnecessary because humans are innately able to run marathons.
>the refresh cycle for PCs/Laptops is going to very soon be transitioning from the traditional 2-year cycle to 3-years, and, in the case of desktops, we're going to be seeing people run their systems for 4, even 5 years before considering upgrading.

We have been on a 3/5 cycle for the last 10 or so years. (3 year laptop/5year desktop)

We are likely moving to a 5/8 cycle with our current hardware.

> their dominant computer is their smart phone/phablet, which is being refreshed every two-years,

I am seeing less and less people willing to replace their phones on the 18-24 month cycle. The primary reason this occurred originally was cell phone carriers used the "upgrade" to lock people in to an additional 24mo contract. As we see less and less contracts and more people paying for their phones out of pocket or in installments, the replacement window is increasing, I expect by the end of 2017 to see the replacement be 36-48 mos for Cell Phones. This is especially true for any phone priced over ~$350.

Most of this comes down to how long the OEM will continue to issue OS Updates for the hardware, if your phone is getting updates to the OS 36mos after you bought it there is likely very little reason to spend another $400 on a phone. We will likely see some Manufacturers/Carries taking the opportunity to screw over their customers by refusing updates after 24 months in order to extort them into a replacement. Hopefully the market responds to these companies by pushing them to bankruptcy but...
This is nonsense, years of scientific evidence and argument have overturned a lot of 'denialist' canards and made acceptance of the science much more widespread, including getting most western governments on board with it to various extents.

Those with a religious zeal (in either direction) are a minority.
Thank you for the correction, but that was not the point I was trying to make. I was referring to his statement:

> [...] before switching to Docker (even though I do love Docker).

This seems like a very drastic solution to problems he does not yet have. I've been responsible for similar thoughts before, but shortly after realized just how damn stupid I was.
Not really although you probably need to use quite a bit of traffic before it becomes a problem. Your example of personal use only seems fine.

There was a post here a while ago (that I cannot find anymore) about the devs of a package manager of sorts who were asked kindly by Github to do something about their excessive data usage. So it's probably not a good idea to build a company on it.
I wrote it without the dash for most of my childhood, until I found out the dash was a possible way to write it. From then on, nobody ever mistook my 7's for 1's anymore. It was great, since I have really bad handwriting and I'd take all the help I could get not to get things wrong on tests. Zeroes get slashes, too, just for safety.
Musings from making a Golang-powered Geofence API server in 10 days from scratch
From website-locker to DDoS: Rex
The six levels suggested in the article could also serve as a guide for speakers.

If you're trying to convey important information and the listener just doesn't seem to get it, ask yourself whether you are expecting them to engage in a higher, more demanding level of listening than they are currently able to.

For example, the article says that 80% of what most people try to communicate occur at Level 4: body language. But if you can convey at least some of that information verbally, you'll be able to achieve similar results even if the listener is only at Level 3. This is especially useful if the listener is on the other side of a phone call or an internet forum.
It doesn't work that way. Climate change is so politicised that pretty much every source of information is biased. It is impossible to get a clear picture. Politics is absolutely toxic to science. Many people would like to establish something like a world government by leveraging issues like climate change. Even though we really have no idea about the severity and magnitude of the problems ahead of us. I personally think scientists are exaggerating massively; here we have climatologists who cannot even predict correctly whether it rains next week, yet they make predictions about how in 20 years the climate is such and such.
Microservices is a technology. IMO, like any other tech, it should be used when there are clear benefits expected in the near future, not as a blanket "always microservices" policies.

Although I personally had to deal with some monolithic monsters that I wished were split into smaller services.
Moore’s Proof
If by unconsidered you mean "yeah we could mix X, Y and Z in different ratios to make an alloy with different performance characteristics but it's not worth doing because there's currently no market for an alloy like that" then there's s lot.
How to Set Up and Deploy to a 1000-Node Docker Swarm
People who argue we should do nothing though have a sticky moral quandry: if you can show evidence of something bad happening (and there's a lot, and plenty more to come) then you have to argue that these are all acceptable losses.

Which tends to open more sticky questions like refugee policy, or just how many you're willing to let die in famine from drought, and so where should the aid budget of the biggest, highest emitting countries be allocated.

EDIT: For example, what should our policy on disappearing pacific island nations be? What should our military posture be if we can expect more divergence from established geopolitical norms by extremized climate conditions? How much should be banked to deal with the increased major climate events per decade, compared to historical norms (aka how frequently is a katrina scale hurricane expected to make landfall going forward?)

Turns out, once you start adding up those costs, we don't really want to pay for any of them, but it would also just be morally repugnant to suggest that, really, abandoning the poor of coastal cities is what we want to do. Don't worry, we'll pray really hard and donate far less then <10% of our yearly incomes to help when it happens. But only while it's in the news.
What about the standard of "I'm young and this is a side project I'm doing in a couple of hours at the weekends"? Of course once you have a real company with more than two customers $75 is nothing. But version 0.1 is often a tool that's only useful to you.
How the brain develops
Seriously, the text colour is so light that it is very hard to read.
www.whattagged.com - A tool that shows all tagged items in Instagram. Currently only Instagram posts are shown in future other social media integration and few useful idea to implement. Not strongly looking to sell, open to talk.
mail : mistrypar[at]gmail.com
Wait a minute, this sounds familiar. looks at username Oh.
Why Funding can Kill Your Startup Fast – Emerging Market
Found the marketing guy. (Or, in the alternate versions I was thinking of, "Bard.")
There is no such thing as "universally accepted evidence" on anything, and it's more about people than the evidence. There are still folks challenging relativist physics, theory of evolution or basic geography facts.
"Here's a problem"
"Lies!"
"Huh? Here's my data"
"Lies!"

20 years later...

"Ok, I agree there's a problem"
"Cool, so how about we try to stop making it worse"
"You're insane!"
Please also read the followup (https://circleci.com/blog/it-really-is-the-future/).

I read both articles a year ago and it really helped me grasp the whole container movement.
Climate change is an ideology. Terms like 'denialist' and 'warmist' indicate the ideological nature of the climate change issue. When people say: "global temperatures are rising" they usually mean they advocate certain state intervention, such as higher taxes on fuels. On the other side, most denialists advocate a free-market economy, less immigration, and a strong traditional national identity. None of these issues are related to the temperature of sea water, or the extent of ice-caps, or any other natural phenomena.

If you look at what is in fact done with the climate change issue, you see it primarily used to promote 'green' products. So it is not a 'left-wing' or 'progressive' factor, except in the eyes of right-wing conspiracy theorists. Its most specific use is to promote the nuclear power industry, which is hardly a leftist plot. It is not used to reduce carbon emissions, because no government has a policy to do that. They say they do, at the Copenhagen conference for instance - but then western leaders also regularly say that they will give hundreds of billions to the poor in Africa. Easy, if you never have to pay.

Absolute cynicism is the only way to treat the whole climate circus - the scientists, the politicians, the so-called environmental groups who seek nothing but finance for their own existence, the denialists. The right thing to do is to turn your back on all of them.
The problem with microservices is that your state is spread over multiple systems. You completely lose the concept of transactional integrity, so you will have to work around that from the start.

The advantage though is that APIs (system boundaries) are usually better defined.

Perhaps one should use the best of both worlds, and run microservices on a common database, and somehow allow to pass transactions between services (so multiple services can act within the same transaction).
Although you should also bear in mind that the IPCC reports have been considerably "watered down" in response to governmental pressure.

Talk to a climatologist, and they'll tell you all sorts of things you don't want to hear.

https://www.theguardian.com/environment/earth-insight/2014/m...
Thanks for providing that - I just notices that your shell instructions don't include completion. I use the following in zsh: https://gist.github.com/lorenzhs/ad6c009f5748d333b73376e07ae...
With that, I can do "gi <tab>" to get a list of all possibilities.
“Optimism” in the context of “Learned Optimism” is a term describing the way people explain past events to themselves, not their expectation of whether good things will happen to them in the future.

In my case, I was dropping my line where the fish were biting.
The Ultimate AngularCamp summary – with videos
Lowercasing of acronyms is a common stylistic choice made by UK media to aid readability.

"Where you would normally pronounce the abbreviation as a string of letters - an initialism - use all capitals with no full stops or spaces (eg FA, UNHCR, NUT). However, our style is to use lower case with an initial cap for acronyms where you would normally pronounce the set of letters as a word (eg Aids, Farc, Eta, Nafta, Nasa, Opec, Apec)."
Interesting how your comment exemplifies perfectly a valid and common style that refutes your point: Abbreviations that are pronounced as words are written in title/inline case (e.g., Nasa, radar, etc.), whereas those that are read letter-by-letter are written in capitals.
Aerospace would be a big one. The few steel parts in aircraft are usually highly critical like landing gear attachment stuff and similar. Part of the reason they're steel is because they're spec'd to outlive the rest of the airframe by a huge margin and doing that with aluminum is impossible/impractical depending on the part and the safety margin.
I guess I used complexity as a proxy for involvement. And of course the brain isn't a sequential machine - reaction times, voxel fMRI analysis, and lesion or connector studies show that consciousness is a network phenomenon. That said holding in one's mind the illusion (value as determined by observer..) of a list of instructions isn't so far off from how I imagine many would choose to describe the mind-feel of their particular process when it comes to listening? And if the illusion breaks down because the brain has lower lower bounds than whatever non-materialist a priori wishful thinking one might expect from mental algorithms, then, that's nice I guess or something?

I think I just wrote it to induce my intuition in others, but you're right in saying that there's no proof that a brain operates with the same atomic instructions or architecture as I've pulled out of thin air above..
They can go eat at McDonald's.

I think about theology too and I see kosher/halal as giving respect to the animal like (1) indigenous hunters do, and (2) a bit like Christians saying grace. You might say Roman style animal sacrifice is barbaric and it is but offering something people will consume is not.
"By who? NASA? The people the… Hang on a minute. No, no, see this is quite serious. But can I just – just one thing. NASA, NASA… The people that landed men on the moon?"

Can anyone explain to me what is happening in this bit?

It's either:

a) Brain Cox doesn't know that NASA is responsible for GISTEMP and is completely incredulous at the mention of NASA (The people that landed men on the moon?), as if they aren't relevant to the discussion.

or

b) Brian Cox is aware that NASA maintains one of the major surface temperature datasets, but thinks that it is completely beyond the pale to question any of the decisions (adjustments, station selection) that go into the construction of GISTEMP, because they are NASA (The people that landed men on the moon!!!).

So which is it? Is he clueless, or just a dick?
That doesn't work. You haven't mentioned anything about how much CO2 there is in the atmosphere and how it got there, and when.

Just because CO2 is a greenhouse gas, it doesn't mean it is _the_ greenhouse gas, or even the main climate change culprit.

Some climate change deniers are specifically anthropogenic climate change deniers. They don't argue against climate change happening, just against the idea that it has anything to do with human activity.

Given that CO2 is soluble, the Ocean absorption question remains. One could still also claim that data on the atmospheric concentration of CO2 has been fabricated to fit the temperature data (or the other way around).

Historic values can't be independently measured and verified. The closest you can get to that is looking at a variety of independent sources, and checking whether they correspond. That won't convince someone who believes that the so-called independent sources are in cahoots, or innocently republishing one another's results.
Nice hand-wave
Can you suggest any resources to freshen up on big o notation and fundamental data structures & algorithms that are not academically dense (i.e CLRS)?

I'm currently working through Cracking the coding interview & Elements of programming interviews but I really need to revisit the fundamentals, specially recurrence relations and calculating the order of complexity for an algorithm but I can't find any resources that are not too academically verbose, I have a really hard time reading mathematical notation.
> Always interrupt if you have something constructive to say...

This is dangerous advice. Being perceived as someone who frequently interrupts is socially detrimental. As another commenter said, save it for when someone really makes it necessary, and converse with grace at all other times.
Why not use Python instead? Shellscript is so... chaotic.
> if you're a CTO with a startup with 10+ server-side developers and plan to hire at least as much in near future, suddenly all these dockers and microservices actually make sense

As a consultant, I often get asked those kinds of questions: "Should we use X?"

Whether it's programming languages, databases, operating systems, whether it's Chef vs Puppet vs Ansible vs Docker vs Whatever, it's a question that comes up a lot.

I generally answer it with "What are your team good at? What have they used, what do they know well?"

There are always exceptions to the rule, but in general I encourage people to play to the strengths of their team, rather than recommending Technology X because it's shiny and bang on-trend.
I interviewed with them a half-year year ago and I didn't get the position because of a "hiring freeze" in the department.

This is the third major "dodge" of my career and I feel somewhat lucky to miss out on opportunities before they cause potential harm.
The problem is that the user's data itself needs to be conflict-free. For example, no programming language models its source code as a CRDT, so DVCSes will always produce merge conflicts (or worse, silently broken merges).

CRDTs are a fundamentally leaky abstraction. That doesn't mean they're bad, and the payoff of offline modification is very tempting. It just means they're hard to use.
I worry when I can't tell if a comment like this is based on fact or just trying to be funny.

Because I've seen my share of nasty "legacy" automation but, surprisingly, I still think a good set of well thought-out shell scripts written by someone that understands what's being automated still beat modern tools, even when the person doing the automation is the same.

I don't quite know why this is, but there's something timeless about shell scripts. I've also seen shell script automation survive for a long time unattended and with zero issues. Not so with some of the modern tools that are supposed to be all unicorns and rainbows.
The problem with presenting data is that you have to be an expert (e.g. a climate scientist in this case) to thoroughly understand the techniques and assumptions used in the models. The average citizen, who is no doubt quite intelligent, isn't going to understand that stuff and certainly isn't going to put their life on hold to learn it. We need to look at the big picture here: society needs to trust science to get this stuff right. Or at the very least, we should all be asking ourselves "who benefits from the policy that this person is advocating?". The answer that we should accept for that question is "everyone", not "energy company shareholders".
This is absolutely brilliant! One thing what I would love to see, next to the timezone info is the actual timezone in UTC+2, etc. format. That way you could for example immediately see why does Portugal and Spain have a one difference in sunsets the western parts, for example.
What do you mean? I'm just running bytecode on a virtual machine ontop of a virtualized container on top of virtualized hardware on a CPU where the instruction set is virtualized in microcode...
Climate change is science. What we do about it is a scientific, engineering and political problem.

Turning your back on multiple groups who are in no way equal - denialists and those with a wider environmental agenda are not the same as those giving us good science - is woeful and willful ignorance.
> How to use fork safely: 1. Only use fork to immediately call exec. 2. Fork a worker at the beginning of your program, before there can be other threads. 3. Only use fork in toy programs.

4. Stop writing broken multithreaded code altogether or if you must at least run an event loop per core/thread and use a wrapper for fork() to put the system into a fork()able state before forking. It's nice and reliable.

Multithreading by itself is just not a high-level concept to be used reliably by programs.
I'm from the Zoho marketing team. Embarrassed at the poor impression we have left you with while trying to use our service. We'd really like to connect with you and learn where we slipped. Will be great if you can reach out to us at support@zohocalendar.com with subject "Ref: Post on HN on issues with your Calendar app".
Yup - this sort of thing has happened before (parasites spreading outside of their natural range - i.e. https://en.wikipedia.org/wiki/Phylloxera), but as far as I'm aware this is the first time we've seen it happening due to climatic shifts, rather than direct human involvement (gee, let's import cane toads to get rid of those pesky beetles).

No amount of biosecurity can defeat threats that travel on the wind.
OK article, but very long read. Does anyone have a short read link summarizing the problems with electronic voting which would be appropriate to share to regular folk on Facebook?
You say you accept the science but are still skeptical due to some vague, ill defined nonsense, and you have the cheek to accuse me of handwaving?

Wow.
"Good listening invariably included some feedback provided in a way others would accept and that opened up alternative paths to consider."

This might be related to why group brainstorming doesn't result in good ideas as often we think:

https://hbr.org/2015/03/why-group-brainstorming-is-a-waste-o...
Scientists have a lot of confidence in the historical surface temperature records, because they have been calculated in several different ways, and the results generally agree with each other.

For instance, the ECMWF (the European weather prediction centre) has a very nice model that uses just barometer readings to calculate historical weather patterns, temperature and all. The results agree remarkably well with actual observed and reported weather. We have those records going back a long time, and because no thermometer readings are used, there is no potential for urban heat islands to bias the results. Because barometer readings generally are consistent over time (as in, sensor technology improvement doesn't really change the bias), there is no potential for a time-specific bias in surface temperature.
That easy explanation put you clearly in the skeptic/denialist field :).

The problem is that the real increase of the temperature is different because the changes in the CO2 level produce changes in other things (like the water vapor concentration, the size of the polar ice shields, ...) So you have to multiply it by a coefficient that is very difficult to calculate analytically and it's only possible to make models and estimate it using simulations.

Something like 3 times the easy model.

From: https://en.wikipedia.org/wiki/Climate_sensitivity

>* As estimated by the IPCC Fifth Assessment Report (AR5) "there is high confidence that ECS is extremely unlikely less than 1°C and medium confidence that the ECS [equilibrium climate sensitivity] is likely between 1.5°C and 4.5°C and very unlikely greater than 6°C."
You mean B.S. written to impress investors and dominate a market segment for 2 or 3 years until the "founders" have a good exit.
> Any positive experiences with micro-services here?

In my experience, any monolith that can be broken up into a queue based system will benefit enormously. This cleans up the pipelines, and adds monitoring and scaling points (the queues). Queues removes run-time dependencies to the other services. It requires that these services are _actually_ independent, of course.

I do, however, avoid RPC based micro-services like the plague. RPC adds run-time dependencies to services. If possible, I limit RPC to other (micro) services to launch/startup/initialization/bootstrap, not run-time. In many cases, though, the RPC can be avoided entirely.