LIGO black hole echoes hint at general-relativity breakdown - <AUTHOR> http://www.nature.com/news/ligo-black-hole-echoes-hint-at-general-relativity-breakdown-1.21135 <comment><USER2> > _The echoes could be a statistical fluke, and if random noise is behind the > patterns, says Afshordi, then the chance of seeing such echoes is about 1 in > 270, or 2.9 sigma. To be sure that they are not noise, such echoes will have > to be spotted in future black-hole mergers. "The good thing is that new LIGO > data with improved sensitivity will be coming in, so we should be able to > confirm this or rule it out within the next two years."_

Can I take a moment to commend the level-headed non-hype of this paragraph? It gives the impression that their first priority is finding the "truth" (I know, I know; I'm using it as a shorthand), not whatever they _want_ to be confirmed. Gives the research much more credibility.

I mean, I know it's Nature so we should expect it, but it's still nice to see.

<comment><USER3> It's actually a bit hyped for particle physics. It ignores the fact that you're very likely to see a lot of "significant" effects in physics because there are tens of thousands of data analyses performed every year, so we're bound to find some chance occurrences at this significance level. See the diphoton excess a few years ago.

This is why the particle physics community has a very strict unofficial standard of 5 sigma for significance. People don't generally publish "serious" papers at 3 sigma.

<comment><USER4> We've only observed a small handful of black hole collisions though so seeing something at 2.9 sigma would be somewhat more surprising, right? Definitely not rising to the level of a discovery yet of course.

<comment><USER5> Only a small handful of observations (only one, last I heard, but I may be out of date), but lots and lots of _analyses._ And for every scientist that has their own model and does their own data processing, there's a chance that the model lines up with some arbitrary noise in the data.

<comment><USER6> You also have to add in that once these experimental results were released that a hundred or so theoretical physicists immediately started working on massaging the data into supporting their pet theories. After every anomalous result there's immediately hundreds of published papers by someone trying to simply be the first to publish in case their idea happens to pan out. It is a kind of shotgun approach to winding up being the next Dirac discovering the positron from math or whatever.

Since there's 99 other PhDs who probably looked at this data and found their pet theories didn't match the data and haven't been able to publish you have to account for that filtering effect that this was the 1-in-100 paper that managed to match the data. Adding that "Look Elsewhere Effect" to the 2.9 sigma would push the global significance (in the literal sense of global -- meaning all the research teams across the whole world) of this result down into meaninglessness.

Of course its likely that any discovery would start out looking like something on the edge of significance exactly like this. The safe bet is that this disappears, but all we can do is wait for more data to come in and see if the significance improves or disappears.

And I do really hope that someone finds something like this via the LIGO data. I'm convinced there's something very interesting out there to find, and sooner or later it should pop up experimentally and shake up our model of the universe.

<comment><USER7> Yes, this is basically a distributed version of the issues discussed in psychology regarding researcher degrees of freedom with a single data set. If you throw enough models at the data, one of them is bound to stick, whether it is predictive or not.

</comment></comment></comment></comment></comment></comment><comment><USER8> This is super exciting stuff! We know that the two most accurate models of the physical world, Quantum Mechanics and General Relativity, contradict each other so at least one, and probably both, are approximations to the real laws that govern our universe. Since the QM and GR disagree about what happens for small massive objects, and in particular black hole event horizons, this is a place to look for divergence to existing theories. If these echos holds up under repeated measurements, it could be one of the most consequential measurements of this century. This is another example of how taking measurements to verify a theory you think you know can lead you in completely unexpected directions.

Though, for now, the LIGO team is apparently saying that these results could be the result of noise which would occur 1 out of 270 times. That's not strong enough evidence (in my mind) to overcome the overwhelmingly likely prior that General Relativity is correct. In time, we'll see.

Also, the article mentions that LIGO has witnessed 3 black hole mergers. Last I heard LIGO had only witnessed 2.

<comment><USER9> >"Quantum Mechanics and General Relativity, contradict each other so at least one, and probably both, are approximations to the real laws that govern our universe. [...] overwhelmingly likely prior that General Relativity is correct"

If you think both QM and GR are likely incorrect, then why do you use "a overwhelmingly likely prior" that GR is correct?

<comment><USER10> Neither is "incorrect"; the Standard Model and General Relativity are two of our best physical theories in that they both accord entirely with observational and experimental evidence to date.

Either or both may be _incomplete_ , however. Correctness and completeness of any theory in mathematical physics are esentially orthogonal. You can have a complete theory that is just wrong, for example.

As I wrote a bit earlier in this thread, the most straightforward approach to quantizing General Relativity fails in strong gravity. Additionally, the classical field theory that is General Relativity is defined on a smooth manifold and yet so far we have been unable to escape the conclusion that some systems of mass-energy inevitably produce a non-smooth discontinuity. A completion of classical General Relativity requires the smoothing of these regions. Sharpening this, the problem with GR is the prediction of a gravitational singularity; if singularities are physical at all (even if they are in a region of spacetime that is inaccessible outside event horizons), then General Relativity is incomplete in its own terms.

The Standard Model as a paradigm of quantum field theory, on the other hand, is defined against a flat spacetime and thus relies on the result from General Relativity that the flat spacetime metric is induced on the tangent space of every point in a smooth spacetime. So if GR is incomplete, so is the Standard Model, in its own terms. (This is not just an academic point; any theory of gravity that does not reproduce the Poincaré invariance of flat spacetime in the energy scales of the Standard Model has a terrible _correctness_ problem.) Additionally, the Standard Model is not especially well-defined at GUT energy scales. Additionally, the Standard Model does not describe the whole of the non-gravitational content of the universe; for example, it is silent on dark matter.

The Standard Model is highly correct, however, in the limits where it is effectively complete. It's a pity it has so many free parameters that have to be determined by experiment.

Likewise, General Relativity is both highly correct in the limits of present observability, and it is complete in its own terms _if_ one admits the possibility that gravitational singularities only arise in our idealized models and that, for example, there are no exactly Schwarzschild black holes anywhere in the past, present or future of our universe. (One have to show that, and also that there are no other physically realizable systems of matter that can generate non-smoothness in our spacetime. That's not an easy ask. Although General Relativity has only one of the free paramaters complained about in the previous paragraph, it doesn't offer much guidance about how to show that you can't actually generate a low-Q Kerr-Newman metric in reality, and worse, some of that guidance must come from the high-energy behaviour of matter fields -- we can only be as complete as the Standard Model right now.)

<comment><USER11> Posts like this is why I read HN. Thanks a lot! :)

</comment></comment></comment></comment><comment><USER12> Personally, I would not be surprised if we discover that our understanding of general relativity is wrong for extreme values (i.e. very high mass densities). The whole problem of dark energy and dark matter -which has failed to show up in any conceivable form so far- also gives reason to doubt the validity of our current theory of gravitation.

I think we're in a similar situation like at the end of the 19th century, were many physicists thought that everything that could be discovered already was, apart from some "edge phenomena" that would need to be resolved somehow using the current theories. In the end, these edge cases turned out to be the first hints of some completely new theories that dramatically improved our understanding of nature. I think that gravity and quantum mechanics are due for a similar change, and in the coming decades we might just get the data that we need to make this change happpen.

I also have difficulties "buying" the current theory of black hole physics, especially the concepts of an event horizon and the infinite mass density, as well as the problems which arise from them (e.g. black hole energy evaporation through virtual particle generation at the horizon). And as previous theories of gravitation have broken down at points of extreme value (high energy, high speed), I think black holes are a hot candidate for breaking general relativity.

<comment><USER10> There's plenty of hot dark matter coursing right through you right now !

Fermi -> Wang Ganchang -> Harrison, Kruse & McGuire took a while. I wouldn't expect a quick detection of something with the properties of a WIMP, as I would expect any such particle to be even harder to detect than a neutrino, especially if it doesn't feel the weak nuclear force.

I don't know why you think that dark energy has failed to show up in any conceivable form -- how do you explain the cosmological redshift without it? Dark energy in its simplest form is just the cosmological constant, and can be an inertial effect.

In any case, even if the concordance cosmology is simply _wrong_ , that does not mean that GR is incorrect as much as we are wrong about the mechanisms that generate the metric (Afshordi, one of the authors of the paper at the top, has proposed non-universal coupling to the single metric of GR), or alternatively we are wrong about the way we choose and stitch together metrics (i.e., we're misusing GR in a way that introduces serious errors at long length scales).

Do you really think there are working scientists who think that there's nothing more to discover? Conversely, are there many who deny that the huge preponderance of evidence we have so far favours the Standard Model and General Relativity? Even if we "demote" SM and GR to effective field theories, the effective limit of each is very nearly everywhere readily accessible, isn't it?

Buying the BH singularity would be, I think, a pretty extreme position. Every viable post-GR effort I know about is to some extent focused on abolishing singularities somehow. (You could alternatively keep them always hidden and resolve things like BH thermodynamics; if you always keep information locked up in another region of spacetime -- behind a horizon -- there's no information loss problem to consider, and you can "cut" singularities out of the manifold recovering everywhere-smoothness. But black holes might evaporate completely in the far de Sitter like future.)

Not buying an event horizon in a system of local physics with a maximum propagation of local state from one point to another seems even more extreme. The existence of a maximum local speed -- whatever it is, it could be much faster than light -- sets the slope of a nonempty open convex cone of tangent vectors (a causal cone at each point for the field-values at that point) which in turn lets us fix a first order quasilinear system of PDEs admitting a hyperbolization, and in that you can always find an observer that sees an event horizon.

The formation of the BH creates a dynamical spacetime with an acceleration between observers before and after the collapse, and that alone is sufficient to produce an event horizon.

Abolishing 'c' (as a general free parameter defined at every point; the definition can even vary by location in spacetime) seems a lot harder to swallow than abolishing event horizons. If you accept 'c', then while Schwarzschild event horizons is pretty easy (nonzero J or not-always-zero Q at all physical compact dense objects, for example), abolishing _all_ event horizons requires a lot of contortions to avoid immediate conflict with local experiment, much less astrophysical observation.

<comment><USER12> > There's plenty of hot dark matter coursing right through you right now !

That statement is exactly the problem as I see it, as dark matter is an attempt to save an existing paradigm using a trick that makes use of unknown but conceptually understandable matter.

The same was and is true for Einstein's cosmological constant: It's a hack that was necessary to make a theory match with the observations.

Introducing hypothetical/imvisible matter to make a theory fit observations does not mean that this matter really exists.

I did not say that scientists think that there is nothing more to discover, just that there is a tendency to try to fix up existing theories instead of accepting that they might be wrong. I'm no expert in particle physics or relativity (my field is quantum mechanics), so I'm not able to judge the merit of different theories involving dark matter, I'm just not convinced that dark matter / dark energy is real. If anyone shows me compelling experimental evidence I'll be happy to change my mind.

So far we haven't seen any convincing arguments for the existence of dark energy or dark matter though, and I think there's a chance that they end up as the 21st century equivalent of the "ether".

<comment><USER13> I'm pretty sure raattgift was referring to neutrinos when he said hot dark matter was "coursing right through you". He wasn't assuming the existence of any speculative form of dark matter.

<comment><USER10> Yes. "Hot" because neutrinos move quickly compared to the speed of light, "dark" because they do not feel electromagnetism, and "matter" because they couple to the metric.

They explain the anomalous momentum in beta decays, among other things, and are still difficult to detect.

To explain the anomalous momentum we infer around large scale structures at z << 1, it's pretty reasonable to consider neutrinos or neutrino-like particles that are "cold" \-- moving slowly compared to the speed of light, thus more likely to "hang around" in a region of spacetime instead of quickly running away to infinity. Although they interact very weakly with matter, they still impart momentum, so hot dark matter would tend to smear apart gas clouds rather than encouraging them to collapse into denser objects like stars. Likewise, it is perfectly reasonable to search for them in ways analogous to how the neutrino itself was searched for experimentally and observationally, and like with the first detection of the neutrino, it is liable to take time to detect or let various non-detections exclude all the regions of the particle mass vs nucleon cross-section parameter space.

Moreover, the search for this sort of cold dark matter does not preclude concurrent searches for other possibilities.

So I can't agree with ThePhysicist that there is a problem here, other than that there is apparently a communications gap that affects even people with backgrounds in quantum mechanics.

</comment></comment></comment></comment></comment><comment><USER6> The breathlessness of this article is fairly annoying.

LIGO wasn't really setup to confirm GR around black holes. It was designed to study highly energetic, high-curvature gravitational phenomena where it would be expected that there might be deviations from GR. Measuring deviations from GR predictions is exactly why you'd built the experiment and isn't "ironic" at all (and not even in the Alanis Morrissette sense since finding something new would be more like having a party on your wedding day rather than raining on it).

GR is also fully expected to break down at the central singularity of a black hole. The curvature of space-time become infinite there with infinite force. At the very least its expected that quantum gravity would smear this out.

The problem of black hole entropy at the event horizon of the black hole has also been known for decades and is one of the drivers behind doing research like LIGO. The "firewall" problem is recently all the rage in the west coast theoretical community, but its been known for some time that we can't make sense of black hole entropy entirely classically with GR, so that finding non- GR effects near the event horizon is at least hoped-for, if not expected, and LIGO is precisely the kind of experiment that could shed light on that.

Its legitimately very exciting, but its the result of methodically grinding away at a very hard problem for decades.

</comment><comment><USER14> 2.9 sigma is hardly evidence of anything in fundamental physics. There was a 4 sigma evidence of diphoton excess from ATLAS and CMS last year which went away this year. 3-4 sigma discrepancies come and go. It's not for nothing that physicists have the discovery criteria set at 5 sigma.

What's more, one should be extremely skeptical when observations seem to violate long held physical theories. The superluminal neutrinos from OPERA ostensibly had >5 sigma evidence but nobody (correctly) took it seriously as it violated special relativity. Unsurprisingly, it was ultimately traced to a loose GPS cable.

</comment><comment><USER15> Minor comment from another physicist here, not in this field but from what my friends from this field say, most people expected hints of quantum gravity to come specifically from black holes, so if there is anything new to be learned about GR's limits, looking at black holes is the right place to look.

</comment><comment><USER16> I've had this idea in my mind how Black Holes could be connected to universe generation. It came about when I learned that the known universe would be a black hole if its mass was concentrated in the center, i.e. its size is about the same as the event horizon for such a mass.

Thinking backwards, obviously the universe at some point would have been described as a black hole by GR. Then of course spacetime expansion comes into play, that somehow makes it into not-a-black hole.

So here is the idea: What if a Big Bang is exactly what happens when matter falls into itself until the original spacetime continuum breaks? I.e. the energy of the original structure forms and gets linked into a new spacetime continuum - part of it as dark energy that expands the new spacetime, part of it as normal energy and matter.

Is there anything we know makes my idea impossible? If it were true, would there be a chance that we could combine our empirical knowledge of the Big Bang with this new empirical knowledge of gravitational waves to come up with a testable unified theory (i.e. Quantum Gravity)?

<comment><USER17> _> the known universe would be a black hole if its mass was concentrated in the center_

The universe doesn't have a "center". The universe did have a much higher density right after the Big Bang, but it was expanding rapidly; that's why it was (and is) not a black hole.

 _> Is there anything we know makes my idea impossible?_

Yes, the fact that it's based on a misconception about the universe's spacetime geometry. See above.

There are certainly "bounce" models being considered for what preceded the Big Bang (although they're by no means the only models being considered). But they don't work like what you are describing.

<comment><USER16> My point is that the way the universe works, i.e. spacetime expansion, inflation and acceleration (dark energy) could all be governed by processes inside a black hole's singularity - something we afaik don't have a good model yet. It's only a black hole from the reference point of the parent universe. I don't mean the old bounce model, more like bubbles around a water hose that get smaller the farther away from the source - i.e a stellar black hole creates a mini universe through its own spacetime rip.

<comment><USER17> _> My point is that the way the universe works, i.e. spacetime expansion, inflation and acceleration (dark energy) could all be governed by processes inside a black hole's singularity_

The singularity doesn't have an "inside". See below.

 _> something we afaik don't have a good model yet_

The models that are being looked at get rid of the singularity altogether. They don't try to model it as being made up of internal parts.

 _> a stellar black hole creates a mini universe through its own spacetime rip._

Some physicists have considered models in which black holes give birth to "baby universes" (Hawking and Lee Smolin are two that come to mind). But these models don't "rip" spacetime; they remove the singularity, which in the standard classical GR model is just a spacelike surface--a moment of time-- that represents a boundary of spacetime, and instead just extend the spacetime further on, into the spacetime of the new universe.

</comment></comment></comment></comment><comment><USER18> Going quickly through the awesomely titled paper [1], they fit a template to the data and obtain something like 2.9 sigma for their best value, without a obvious way how they deal with the look elsewhere effect. On the other hand, this is probably the window on nature that is worst understood, we understand gravity at solar system field strength and distances very well, we have great data from particle physics, but until last year our only evidence for the high field regime of gravity came from pointing telescopes toward astronomical objects - and note that telescopes work with the electro-magnetically, they are using the wrong force.

I think this is exciting, but only the first step. With this, one can deal with the look elsewhere effect by pointing to this paper and using their analysis, but I wouldn't think of this by itself as a hint towards deviations from general relativity.

[1] Abedi &al. "Echoes from the Abyss: Evidence for Planck-scale structure at black hole horizons" [https://arxiv.org/abs/1612.00266](https://arxiv.org/abs/1612.00266)

</comment><comment><USER9> >"if random noise is behind the patterns, says Afshordi, then the chance of seeing such echoes is about 1 in 270, or 2.9 sigma. To be sure that they are not noise, such echoes will have to be spotted in future black-hole mergers."

We are getting closer and closer... So finally we see a correct interpretation of a p-value in the media, but the connection to the following sentence is not clear so I am not sure the meaning was really understood.

How does spotting more such echos allow us to "be sure they are not noise", and how does this relate to that 1/270 number?

If the probability of such an observation was 1/1.7 million assuming a random noise model (rather than 1/270), would that mean we could "be sure it was not noise"? Shouldn't that depend on how well the observations could be fit by alternative models?

<comment><USER19> You throw a dice 3 times. It always show 6. How do you know the dice is loaded, and that it wasn't a fluke? Repeat the experiment, and see if it starts looking random (pattern disappears) or if the pattern is strengthened (always saying 6).

<comment><USER9> Also, I couldn't get the original documents at the time, but you reminded me of this:

>'The simplest assumption about dice as random-number generators is that each face is equally likely, and therefore the event "five or six" will occur with probability 1/3 and the number of successes out of 12 will be distributed according to the binomial distribution. When the data are compared to this "fair binomial" hypothesis using Pearson's 2 test without any binning, Pearson found a p-value of 0.000016, or "the odds are 62,499 to 1 against such a system of deviations on a random selection."' [https://galton.uchicago.edu/about/docs/2009/2009_dice_zac_la...](https://galton.uchicago.edu/about/docs/2009/2009_dice_zac_labby.pdf)

The point is you will always find deviations (with extremely low p-values) if you look hard enough. It is about collecting data as carefully as possible, and determining which model fits best, not which fits perfectly.

<comment><USER20> > The point is you will always find deviations (with extremely low p-values) > if you look hard enough

I don't know how you can get that point from the article instead of 'an 1894-era die is biased but you need a lot of statistical power in order to see that'.

<comment><USER9> I think the lesson is clear... the more messed up your methods the easier to see the deviation (ie the historical vs modern experiment). Also, where do you get this:

>"you need a lot of statistical power in order to see that"

</comment></comment></comment></comment></comment><comment><USER21> "The most exciting phrase to hear in science, the one that heralds new discoveries, is not 'Eureka!' but 'That's funny...' " \-- Isaac Asimov

</comment><comment><USER22> Does any layman expect GR _NOT_ to break down? To me it's intuitively only correctly describing emergent phenomena in the limiting case of large scales; it's bound to be less accurate than something that is correct on small scales.

</comment><comment><USER23> They're hopelessly out of their depth. This kind of talk makes zero sense

</comment><comment><USER24> No aspersions here. I'm keeping the faith, but can anyone recall what these allude to?

1) Utah has solved the energy crisis on a table top with deuterium

2) That bump in the collider data is looking pretty odd

3) Remind your child to chelate if the autism acts up

4) Wow those neutrinos are moving so fast

5) Bigotry can stop if we'd go door to door and talk about it

6) Arsenic can kill but it enables growth for at least one family

7) This theory will be perfect if we get rid of Λ

In all fairness, this topic is a little different because we know for sure something big has to happen eventually to reconcile QM/Gravity.

</comment><comment> guard-of-terra It's weird that they had the idea of firewall just in 2012. I had this exact idea maybe ten years prior while being a school student. A fairly obvious one if you think of that - some photons will orbit the black hole.

<comment><USER25> It's potentially more complicated than that.

Someone on Reddit asked a brilliant question a while back - what happens to quantum fields at the event horizon?

In QFT, fields are everywhere. But to support a field, you need a mechanism that allows causal propagation - which is exactly what isn't allowed across an event horizon.

So at the very least you have a discontinuity where three and possibly all four fundamental forces stop working, and which is separate to any hypothetical relativistic singularity.

Whatever is left is going to be some kind of unimaginably weird sub-quantum soup.

I don't know if that's the same firewall that was invented in 2012. But the takeaway is that relativity isn't complete enough to model black holes. You absolutely need to include quantum effects - and when you do, things get very strange indeed.

<comment><USER26> _In QFT, fields are everywhere._

The fields in quantum field theory are mathematical tools, they are not physical entities.

 _But to support a field, you need a mechanism that allows causal propagation - which is exactly what isn 't allowed across an event horizon._

But that is only a one-way thing - the future light cones of events inside the event horizon are contained inside the event horizon but the future light cones of events outside the event horizon certainly overlap the inside of the black hole.

<comment><USER2> > The fields in quantum field theory are mathematical tools, they are not > physical entities.

Still, they only maintain physical relevance as long as they are continuous, no? Otherwise you literally have a break in reality.

<comment><USER27> > a break in reality.

Such as a singularity (e.g. gravitational)? I think in Physics (just as when analysing functions), the interesting things happen when you approach such limits.</comment></comment></comment></comment></comment>


Axis of Awesome – 4 Four Chord Song (with song titles) - <AUTHOR> https://www.youtube.com/watch?v=5pidokakU4I <comment><AUTHOR> "All the greatest hits from the past 40 years _just use four chords_..."</comment>


What are your thoughts on the design and functionality of this site? - <AUTHOR> http://www.bakenook.com My attempt at building a web site for my friend's baking business. Done entirely in HTML/CSS/jQuery. Critique, suggestions, etc. much-appreciated.
I'm also ready to do pro-bono work for causes I deem worthy. My contact information is in the footer of the site. I'm happy to hear from you, if you need a site.
Thank you HN readers! <comment><USER2> Good start, but it needs to be better.

A few things off the top of my head: 1\. It took me ten seconds to figure out you are a catering company. It should have only taken me 2 seconds. 2\. Don't like the girl. What is she holding? I just jumped over to istockphoto.com and did a search for "catering" and found a dozen images you could buy for $15 that are better. 3\. Also, I don't mean to keep picking on the girl, but nothing about her says "catering" to me. 4\. Nothing feels connected. The title, mission statement, and the girl, all seem like they are just floating.

Good luck! Hope I helped.

</comment><comment><USER3> Functionality currently seems to be zero - it has no useful information.

The design is not working well for me, if I had to say one thing that would be make it simpler, in every aspect.

</comment><comment><USER2> If you're struggling with design, head over to 99designs.com

</comment><comment><USER4> Think in terms of what actions you'd like your user to take. Perhaps you'd like the user to order something from the catering service?

You have _maybe_ 3 seconds to grab my attention, and fancy screen sliding isn't going to do it.

Don't make me think.

I personally hate the color palette too, but I can't articulate what's wrong with it.

I hope this helps...</comment>


Mexico defense chief says legalizing opium 'way out' of violence - <AUTHOR> https://www.reuters.com/article/us-mexico-drugs/mexico-defense-chief-says-legalizing-opium-way-out-of-violence-idUSKCN1MG03O <comment><USER2> It is the right thing to do, but some politicians profit from not legalizing drugs. They wouldn't personally be middle-men if it's legalized.</comment>


The Pirate Bay to Become a Distributed Storage Cloud? - <AUTHOR> http://www.computernerds.co.uk/blog/?p=3205 <comment><USER2> copy of a /. article, if you want the article it's here:

[http://hardware.slashdot.org/story/09/07/17/1739239/The- Pira...](http://hardware.slashdot.org/story/09/07/17/1739239/The-Pirate-Bay- to-Become-a-Distributed-Storage-Cloud?from=rss)</comment>


Launch HN: We.fo – Smart landing pages for any podcast - <AUTHOR> https://we.fo/?ref=hackernews <comment><USER2> Most landing pages that I've gone to for podcasts are rather dated and not aesthetically pleasing. This seems to kind of remove that for me. Wondering what people with actual podcasts think though.</comment>


Ask HN: Do you think autonomous vehicles = AGI (Artifical General Intelligence)? - <AUTHOR> The hype around the coming of the autonomous car is very strong and it feels like it's just around the corner. Millions of miles driven already with few disengagements etc.
Yet when I think about it while driving I keep noticing situations that seem to me to require intelligence to solve. By intelligence I mean a deep understanding of human behavior and social norms. Something far beyond the capabilities of any AI system I know. This happens often.
One example: If a human standing by the road hold his hand to you with the "stop" gesture, you would stop. But only if you judge that person to have "authority": If they looks stern, have a uniform, do not smile, etc. Otherwise, you would ignore them (e.g a teenage prank, a drunk, a shady character etc). Erring in both directions could have dire consequences. Of course we can theoretically build an AI to measure "authority" and "gestures" but even if we could do that well enough, that's just one out of many.
So to me it seems that real AVs (level 4+) would have to require AGI but if/when we have that, the world would be so so different, that AVs would be the least of our concerns.
It seems though, that I hold the minority opinion, at least among my social circle. I'd be happy to hear what the HN crowd thinks? <comment><USER2> One thing you can bet on is that virtually every carmaker is _over_ -hyping their technology. Expect "Level 5" tech to be more like Level 4, "Level 4" to be more like Level 3, and so on.

I don't even know how they can even claim Level 5 (looking at you Nvidia) when their systems don't involve real-time _training_ , but just do inferencing. I'm talking machine learning training not "it's gathering data as it drives _training_ ". You know what that means - it means the cars's autonomous systems need to have been trained for the roads on which they are driving or at least for those conditions _ahead of time_ , somewhere in the cloud.

But Level 5 is supposed to work on ANY ROAD ANY TIME. I doubt they have already trained their systems for ANY ROAD ANY TIME and anywhere in the world. That seems very unlikely to me. In other words, Nvidia, and Tesla, and whoever else is promising Level 5 autonomy is _lying to you_.

And because of this stupidity and greed, the government will probably have to come up with Level 6 and Level 7 in the future, to designate to Level 7 what Level 5 should have been from the beginning. Think about how the US carriers started abusing the "4G" marketing in the early years. I very much expect the same to happen with self-driving cars, all for the sake of misleading marketing.

I also believe none of these players take software security _that_ seriously. Some will at least implement the best practices, but won't go beyond that, most probably won't even do that (Google how stupid carmakers are being about remotely unlocking their doors over the internet for instance...). Unfortunately, this won't be noticed until maybe 7-10 years after millions of these cars are deployed. And then the hacks will start coming (including terrorist attacks using them).

</comment><comment><USER3> No.</comment>


Ask HN: How do you concentrate when you have non-work things on your mind - J-dawg I'll try to keep this brief. I've always been world-class procrastinator, and struggled with concentration. It's definitely a problem, but somehow I usually manage to get stuff done in the end.
Now I'm going through some personal problems, and it's like my inability to concentrate is amplified x100. My mind just seems fuzzy and I can't get anything started. Even when I force myself to close all distracting web sites, I find myself looking at a blank monitor or staring into space.
Everybody has problems, but work has to go on. What are your "hacks" for getting work done even if something is on your mind? <comment><AUTHOR> It depends on what the problem is. Sometimes you just need to take a day off and recuperate or work through your problems or spend time with loved ones or whatever will help you deal with the stuff that's going on in your life.

Other times, it's just time to move on, or working will distract you in a productive way from something you can't change, or it's not a problem that merits taking time off. So what then?

Here are some things that work for me:

\- start the workday with a 10-15 minute free write (pen and paper, not keyboard) about what's on my mind and distracting me. Sometimes we just need to take some time to acknowledge what we're feeling and think it through in order to be able to set it aside for a few hours.

\- take 5-20 minutes for a short meditation session. It gives you the mental space to be calm and focused and reminds your brain what that feels like.

\- write down a list of 1-3 things that MUST get done that day. If it's not on an actual, meaningful hard deadline or blocking someone else, it's not a must.

\- work out and write down the smallest action that can be taken to get started on each of those tasks: open a blank email and address it; open a specific file of code and add a breakpoint; etc.

\- do a couple small, self-contained tasks to get a quick "win" \- even if they're not important ones. Complete that low-priority ticket about changing a font color, or add an email filter to get that LinkedIn recruiter spam out of your inbox, or find a couple reams of paper to lift your external monitor to a better viewing angle.

\- if all else fails, caffeine is excellent for enhancing focus, especially if you use it infrequently.

</comment><comment><USER2> Sometimes just writing my distracting thoughts down helps signal to my subconscious mind that it's OK to stop flooding my conscious mind with those distracting thoughts.

Or, ask yourself, what is the smallest action you can take to get one thing started? (Action begets motivation for further actions...)

</comment><comment><USER3> When I'm procrastinating (and i'm a pro) I listen to [http://rainymood.com](http://rainymood.com) while working I also did some phenylpiracetam sometimes witch get you a extraordinary focus on your work. But you can get some headache and it's not really a long-term solution.</comment>


Be your own video hoster with Docker and Nginx - <AUTHOR> https://datarhei.github.io/restreamer/ <comment><USER2> This isn't being your own video hoster. This is the input side for feeding the live streaming feature of YouTube, etc. It's not a playout or distribution server, where viewers get their video direct from your server. That takes more bandwidth than you can pump through a Raspberry Pi or up most DSL lines. Also, most ISPs don't like you running a server, and streaming video servers are rather noticeable.

Being your own video hoster usually means renting a server in a data center with serious bandwidth, or buying streaming service from some cloud provider.[1][2]

[1] [http://www.streamingvideoprovider.com/prices.html](http://www.streamingvideoprovider.com/prices.html) [2] [https://aws.amazon.com/cloudfront/streaming/](https://aws.amazon.com/cloudfront/streaming/)

<comment><USER3> I'm streaming from my home plexn box over my internet line even at 1080p the limit is more often than not the internet I have on my portable device at the moment.

Within Europe 1080p is mostly manageable sub 720 is doable even in Asia.

In have 40ish mbit upload capacity.

Never had complaints from my ISP.

<comment><USER4> 40Mbit _upload_ is common?

<comment><USER3> On residential fttc connections these days I would assume so.

<comment><USER5> It's not.

I live in Germany. I think we both can agree that I live in, if not the most technically advanced country in Europe that people claim to have very high- quality living standards.

We have about 81.2M citizens and 12.5M can use FTTC / Bandwith plans with upload speeds of 10Mbit+

So about 15.39% of the population of Europes technically most advanced country have access to FTTC.

To see how bad it is, I uploaded you a picture. The colored marks are cities / parts of the country where citizens can get a connection with the quality you claim as "common."

[http://i.imgur.com/qsAeRez.png](http://i.imgur.com/qsAeRez.png)

Also, keep in mind that those kinds of plans are expensive. A plan with 50Mbits upload costs about 40€ per month.

About 4.3M (5%) of the German population live from the german unemployment benefits called "ALG II / Hartz 4".

That is 404€ a month for food, electricity, clothing, and everything else you need to live from.

Which means for 4.3 Million people they'd need to spend 10% of their monthly income on an FTTC connection.

You can see even over here in Europe 40Mbits upload is not quite common if almost 85% of the population don't have access to it and 5% couldn't even afford it if they wanted to.

<comment><USER3> >if not the most technically advanced country in Europe that people claim to have very high-quality living standards

Germany shares it's place with the UK at the bottom of high speed internet availability in Europe (I actually live in the UK but where i live OpenReach (I'm leasing 2 OR truncated lines through IDnet), Virgin Cable are available at their max speeds and very soon 1gig from hyperoptic will too).

FTTC is available throughout most of the UK [http://maps.thinkbroadband.com/#!lat=50.50176004214942&lng=6...](http://maps.thinkbroadband.com/#!lat=50.50176004214942&lng=6.73187367968751&zoom=6&type=terrain&tbb- fibre-speeds) many other EU countries are far far better off than the UK and apparently Germany.

You only need between 5 and 10mbit upload to being able to stream 1080p, neflix streams 1080p between 4000-5300 kbits based on the profile, Plex has similar profiles depending on if you want to use transcoding or not.

>You can see even over here in Europe 40Mbits upload is not quite common if almost 85% of the population don't have access to it and 5% couldn't even afford it if they wanted to.

That's not exactly the case [http://www.ispreview.co.uk/index.php/2015/10/mixed-uk- result...](http://www.ispreview.co.uk/index.php/2015/10/mixed-uk-results-in- eu-study-of-broadband-speeds-price-and-coverage.html) (these are peak figures so they account for network congestion) most of european FTTx subscribers is getting quite close to 40mbit in some countries, but as I said even 10mbit upload should be sufficient for this purpose. Sure I don't expect people living in remote areas with DSL to be able to stream 1080p but that's not really a surprise.

As for the cost, what do the cost have anything to do with it? people who live on unemployment cannot afford many other things, and if you are not employed and living on social benefits perhaps deploying your own streaming service from home should not be on top of your priorities as the computing power, storage, and multiple client devices that are required for such service will or should be out of your reach in the first place.

</comment></comment></comment></comment></comment></comment><comment><USER6> There's a typo on those links in the FAQ (restreamer is repeated):

[https://datarhei.github.io/restreamer/restreamer/wiki/dynami...](https://datarhei.github.io/restreamer/restreamer/wiki/dynamicdns_en.html)

should be

[https://datarhei.github.io/restreamer/wiki/dynamicdns_en.htm...](https://datarhei.github.io/restreamer/wiki/dynamicdns_en.html)

and

[https://datarhei.github.io/restreamer/restreamer/wiki/guide-...](https://datarhei.github.io/restreamer/restreamer/wiki/guide- buy-hardware.html)

should be

[https://datarhei.github.io/restreamer/wiki/guide-buy- hardwar...](https://datarhei.github.io/restreamer/wiki/guide-buy- hardware.html)

(but on that page, all links point to a 404).

</comment><comment><USER7> Does anyone know if the nginx+Netflix sendfile changes in Freebsd can be ported to Linux at some point?

</comment><comment><USER8> Awesome!

</comment><comment><USER9> Why should one put anything under Docker for production?

<comment><USER9> Perhaps, chrooted environment is required for effeciently serving static files, I don't know.

And of all apps - nginx, which has been designed to be self-contained (process-isolation is good enough) and has almost zero external dependencies (openssl and pcre, which are parts of any modern OS). I could understand the idea to "containerize" that pile of Java crap with its 100500 maven dependencies just in order not to touch it again, but nginx...

BTW, does Docker's "port mapping", which is, of course, has zero overhead, is what one needs in front of nginx in production?

<comment><USER10> Nginx is only one piece of the puzzle for this app, check out the Dockerfile[1].

[1] [https://github.com/datarhei/restreamer/blob/master/Dockerfil...](https://github.com/datarhei/restreamer/blob/master/Dockerfile)

</comment></comment></comment><comment><USER11> Hej, What is the revenue model ?

<comment><USER12> Perhaps its just a cool project not trying to make money?

</comment></comment><comment><USER13> Does docker run on FreeBSD? Because it is crazy to run NGINX on anything other than FreeBSD because of Linux's appalling bad async IO support. For all I know Windows might be a better choice.

<comment><USER14> Aside from the thousands of applications using Nginx on Linux with fantastic results. Yes, yes we know *BSD has a better networking stack than Linux. Now that you're done letting everyone know how smart you are, please sit down.

<comment><USER13> > Aside from the thousands of applications using Nginx on Linux with fantastic > results.

Citation needed. Name a big company using nginx on Linux to serve up lots of static content.

> Yes, yes we know *BSD has a better networking stack than Linux.

Who mentioned anything about a network stack?

> Now that you're done letting everyone know how smart you are

Well given some people like you clearly don't understand the point I was making I think justifies the comment in the first place.

<comment><USER15> _Citation needed. Name a big company using nginx on Linux to serve up lots of static content._

Facebook[1], Reddit[2], Wordpress[3]

[1] [http://venturebeat.com/2012/06/18/nginx-the-web-server- tech-...](http://venturebeat.com/2012/06/18/nginx-the-web-server-tech-youve- never-heard-of-that-powers-netflix-facebook-wordpress-and-more/)

[2] [https://news.ycombinator.com/item?id=8244868](https://news.ycombinator.com/item?id=8244868)

[3] [http://searchdns.netcraft.com/?host=wordpress.com&x=0&y=10](http://searchdns.netcraft.com/?host=wordpress.com&x=0&y=10)</comment></comment></comment></comment>


How To Write Good Log Messages - <AUTHOR> http://www.trottercashion.com/2012/08/12/how-to-write-good-log-messages.html <comment><USER2>
      "08-08-2012-20:27:59"

Which 08 is the day or the month?

      cut -d ' ' -f2- foo.log | sort

Great, now it's sorted by (month, day, year) or (day, month, year). If my logs span multiple years, the sorting is useless.

Please use YYYY-MM-DD. It's sortable and more intuitive for everyone outside of the USA. See also <http://en.wikipedia.org/wiki/ISO_8601>

<comment><USER3> To go one step further...

RFC3339 gives a more tightly defined subset of ISO8601, which is even more useful and lacking things like "week of year" which have little use on modern systems:

<http://tools.ietf.org/html/rfc3339>

</comment></comment><comment><USER4> This may be a bit out of scope for this post, but at Google I used to get a lot of mileage out of a system I worked on called Dapper:

[http://static.googleusercontent.com/external_content/untrust...](http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/en/us/pubs/archive/36356.pdf)

It uses thread-local storage and RPC library instrumentation to thread a fixed request-id through every RPC call and thread handling a particular user request.

Then you can do things like automatically adding the request ID to log messages, transparently to the request-handling code. And when you visualize logged RPCs, you can include (some subset of) the logged messages in your visualization.

<comment><USER5> Dapper looks fantastic. It reminded me somewhat of the ancient ARM (1996) [http://en.wikipedia.org/wiki/Application_Response_Measuremen...](http://en.wikipedia.org/wiki/Application_Response_Measurement) which I thought had died.

I was pleasantly surprised to see that there's a module for Apache in the works.

<comment><USER4> Wow, that's cool. The two systems are very similar, and I wouldn't be shocked if ARM was the inspiration for Dapper.

</comment></comment></comment><comment><USER6> One of the hardest things in ops is trying to see what the app is doing without benefit of the code to review.

I know what the app does, I know the process flows involved but 'failed to covert X at MyClass:44' doesn't have enough context for me.

Also log levels - most developers over use warning and error levels and under uses debug and trace in my experience. It makes filtering out the noise harder.

Rolling log files - roll on an event (new day, process bounced etc.) not on reaching a 10Mb limit or an equally arbitrary 1k lines limit.

Use a header in the logfile, contain at least the version number of the code running, the user and host it is running on.

Lastly stack traces, if they even have a use case at all in production, should not be in the main logfile.

<comment><USER7> _roll on an event (new day, process bounced etc.) not on reaching a 10Mb limit_

Only applicable when you produce a small, predictable volume of logging. Not a good general guideline because often you don't know how big your system may grow in the future.

When logging high volumes then fixed chunk sizes are usually preferable (e.g. so you know how many you can keep around without a disk running full). Large sites produce multiple gigabytes of logs per hour.

 _Use a header in the logfile_

Disagree. Context should be provided directly in each individual line. Logs get sliced and diced in analysis, fetching an arbitrary header from the _right_ file for a given context can be rather painful.

Don't be afraid of long lines. Use field delimited formats (TSV) so they can be easily parsed (either via 'cut' or a small script).

 _stack traces ... should not be in the main logfile_

Wrong. When a serious error occurs then as much context as feasible must be provided. Stack traces are usually very feasible and indispensable.

<comment><USER6> >> Only applicable when you produce a small, predictable volume of logging.

No, It's primarily in the larger log volume systems we run into this problem. Take a FIX session adapter (very common software in the financial services world), baseline is around 5Gb/hour but its susceptible to fairly extreme fluctuation.

When you roll the logs at say 500Mb, there's the chance our monitoring system misses an error in the tail of the previous log as the logs roll (which could in the worst cases mean loosing a couple of million or even more).

Multiple logfiles for a day are harder to search through when handling the most common use case for log files, which is not debugging but ops staff answering questions on 'what happened with X?'

What benefits does a split logfile provide? The one use case is transferring logs across the network. However most log management systems already split large logs up before transferring to the archive silo.

You're loosing a lot, but gaining nothing with split logs.

>> When logging high volumes

It makes no difference, when the market swings you're going to need an extra 200Gb anyway, whether the logs are in chunks or not. In large volume apps deleting to make space is often not an option - you're logging in high volumes for a reason (often regulatory).

>> fetching an arbitrary header from the right file for a given context can be rather painful.

That's been a solved problem for a very long time. Just as recombining a separate trace log with a main app log based on time stamp is a solved problem. I believe this highlights the bigger problem, you can go to university or a.n. other school and learn to be a developer. Where can you go to learn operations? The net result is people come up with the own solutions each time instead of building on work already done. That work is available but its often passed on by word of mouth. Surprisingly hard even in today's world to find decent blogs on ops work (thankfully there are more around now).

>> When a serious error occurs then as much context as feasible must be provided

Yes this is the extraordinarily rare case where stack traces can be useful. They still don't belong in the main app log though.

Push to a separate trace log and recombine on the fly when you need to view. The benefits are to the ops team and the monitoring system.

Another approach not often mentioned is black box logging. Log to a circular buffer in memory, the first bytes of the buffer are set to a pattern that can be searched for in a core dump, the remainder is used as a circular buffer. It's fast to log to, takes no disk space and provides crucial context in the event of a crash.

Im not sure I'll be able to convince you based on your tone, but speaking from experience, you are making the most common mistakes.

<comment><USER7> _When you roll the logs at say 500Mb, there's the chance our monitoring system misses an error_

Sorry but then your monitoring system is broken? Why is its operation tied to log chunking?

 _Multiple logfiles for a day are harder to search_

Not really. Often enough interesting events span multiple days (or cross midnight) anyways. Thus regardless of chunking you have to be prepared for that case.

 _What benefits does a split logfile provide?_

I'll give you that "one file per day" seems easier at first, but I've been bitten by that too often. A script to identify the file-range for a given time-range via binary search is really easy to write, has only to be written once, and the benefits of fixed chunks are:

Easier handling. If you need to offload "50GB" from a given log-host then that's easier to do when you know that will be 50 files.

You don't risk a scratch disk running full (i.e. those small and expensive spindles that take the initial load) when the application decides to have a bad-hair day and put out 10x the normal volume for a while (e.g. interleaved with stack traces).

 _> >fetching an arbitrary header from the right file for a given context can be rather painful._ _That's been a solved problem for a very long time. Just as recombining a separate trace log with a main app log based on time stamp is a solved problem._

I said painful, not impossible. You say you're dealing with 5GB/hour logs, then you must be well aware how long even the simplest merge-job takes on the slice of a single day?

 _> > When a serious error occurs then as much context as feasible must be provided Yes this is the extraordinarily rare case where stack traces can be useful._

We must be living in different worlds then.

When errors pop up in the main logfile, which happens frequently, then the last thing I want is to stitch together context from _other_ files.

A mere grep on a day's worth of logs takes about 10 minutes for us. Any kind of text-processing or "for each line perform lookup in $otherplace" quickly pushes that into the hours.

<comment><USER6> >> Sorry but then your monitoring system is broken? Why is its operation tied to log chunking?

Yours clearly bends some unbendable truths of the known universe ;-)

A monitoring system ordinarily samples the logfile at a given point in time, that is an open followed by a close operation on the logfile (lest you run into phantom disk usage issues caused by holding an open file handle to a compressed / rotated logfile).

If between sample 1 and sample 2 the log file is rolled, your monitoring system never sees the data between sample 1 and the end of the previous log.

Possible workarounds include logfile streaming (say via a pipe on the filesystem) but that introduces much larger problems and would in no way be compatible with the app rolling its log files.

A much simpler fix is to roll only on events (bounced the app etc.)

>> A script to identify the file-range for a given time-range via binary search is really easy to write

Contrast with no script required. No bugs, no maintenance time, no different versions in different regions. Just no script. The benefits don't stop there - when you need to query, there's no waiting for a bunch of disk seeks while the script runs against a busy disk controller - you can just get straight on with parsing the results.

>> Easier handling. If you need to offload "50GB" from a given log-host then that's easier to do when you know that will be 50 files.

Moving 50 items is easier than moving 1? I'm unconvinced but still open to any interesting ideas here.

>> You don't risk a scratch disk running full

There is no change to the risk profile, neither approach is better in this regard, unfortunately.

>> e.g. interleaved with stack traces

Just one of the many excellent reasons not to log them in production.

>> you must be well aware how long even the simplest merge-job takes on the slice of a single day?

Yes - it runs at full disk I/O speed with almost no CPU overhead. Remember we are merging sorted data (already in temporal order).

>> which happens frequently

It's clearly a high profile app you're working on (in my experience the people in charge of the pennies refuse to sign off on the cost of disk space for this amount of logging without solid reasoning) i'm surprised it behaves as badly as you say. Concerning, but then it also appears you don't have an ops team either.

>> stitch together context from other files.

I get the impression you're thinking that you should manually stitch these together? On the very rare occassions you need this data, remember both are already in time order, we just instantly merge on the fly.

>> A mere grep on a day's worth of logs takes about 10 minutes for us.

It sounds like you've got it all in one file, i.e. not splitting your audit.log out from your error.log from your trace.log? - techniques which I couldn't do without to be honest (the monitoring system would have to consume every byte logged otherwise, when it really only needs to see a subset of total log output - thus saving CPU time and disk seeks).

>> Any kind of text-processing or "for each line perform lookup in $otherplace" quickly pushes that into the hours.

 _shakes head_

Would you humour me with some context here. What is your background? From your replies i would say you are non-ops staff[1], self-taught[2] and with limited experience[3].

[1] You don't demonstrate any knowledge of basic tools, e.g. you mentioned writing a script for a problem solved by a 35+ year old command found on any unix host

[2] You haven't volunteered anything more advanced than obvious / first order approaches. Approaches that i'd expect any CompSci university grad could suggest off the cuff with no prior experience.

[3] You mention grepping through a single logfile of at least 35Gb, likely much larger.

<comment><USER7> _Possible workarounds include logfile streaming (say via a pipe on the filesystem) but that introduces much larger problems and would in no way be compatible with the app rolling its log files._

What you call a workaround (streaming to a central location via syslog or scribe) happens to be the standard approach in my corner of the world. Analytics and monitoring operate naturally on the stream because, as you point out, sampling on rolling logfiles is not exactly reasonable, neither is scattering logfiles across application servers.

I'm leaving this discussion at this point because I'm not interested in your condescending tone and insults. It appears you haven't even centralized your logging, yet feel entitled to give ops-advice that is at odds with how the rest of the world operates.

<comment><USER6> >> streaming to a central location via syslog or scribe

Ahh, "man mkpipe", you're mixing up a separate concept - streaming to a remote host vs streaming via a pipe on the filesystem.

>> standard approach in my corner of the world

Syslog streaming has been a common approach since the ~70s i'd guess? Likely before.

>> yet feel entitled to give ops-advice that is at odds with how the rest of the world operates

Hopefully, you see the irony in this.

<comment><USER7> Cut it out already...

 _you're mixing up a separate concept - streaming to a remote host vs streaming via a pipe on the filesystem_

You said above, quote: _but that introduces much larger problems and would in no way be compatible with the app rolling its log files._

Why would you have log-pipes, or log-files on your app-servers to begin with?

 _Syslog streaming has been a common approach since the ~70s i'd guess?_

Then how come you're not doing it?

 _Hopefully, you see the irony in this._

All I'm seeing is a constant stream of arrogance that doesn't seem to be backed up. Also, the command that you wanted to helpfully point out is called "mkfifo" or "mknod".

<comment><USER6> >> Hopefully, you see the irony in this.

>> All I'm seeing is a constant stream of arrogance

Perhaps not...

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> UTC is great for timestamps, but he needs to make his times sortable (YYYY-MM- DD) Tab delimited fields are a problem, unless you escape the tabs inside the data you log.

This format seems VERY similar to the Graylog Extended Log Format (or GELF) <https://github.com/Graylog2/graylog2-docs/wiki/GELF>

I'm a huge fan of JSON logs now, having just finished implementing them on a major work project. Every language out there can take JSON in and do work against it, and there are some really awesome tools for rendering filtered logs to a browser in realtime.

<comment><USER9> > Tab delimited fields are a problem, unless you escape the tabs.

I don't understand this? A tab is a tab?

> JSON

Downside: File size. If you have any appreciable level of traffic/activity this matters.

<comment><USER10> They should compress well.

<comment><USER8> In fact, they compress to about a 3% of their size. Since they really only exist in text file form for a limited period of time before being moved on to a separate logging system, their exploded size isn't much of a concern.

</comment></comment></comment></comment><comment><USER11> time is expressed in seconds? My computer does about 3 billion things every second. I think milliseconds or preferably microseconds would be much better. Different domains have different needs, though, I'm sure. Also, I'd prefer the log specify the time zone it thinks it's in, rather than just convert to UTC automatically.

pid - yes, knowing the process id is good, but knowing the thread is also useful.

version - outputting this on every single log line is probably overkill. Ditto for host name.

<comment><AUTHOR> Thanks for the feedback. I'm with you on the milliseconds and threads bits. As for hostname / version... how are you getting those into your logs? I've found having version in the logs very useful (and wished I had it when it wasn't there).

<comment><USER12> Couldn't you output the host and version at the beginning of the log? Any tool that transforms the logs (splicing together logs from different servers) should include these bits in it's output.

Also, why don't you use a sortable form for time? (With the most significant parts first.)

<comment><AUTHOR> My issue with host and version at the beginning of the log is that they'll roll away when your logs rotate. If you've got a service that's rarely taken down, anything written to the front of the logs is likely long gone by the time you have a problem. That said, there may be a better way to handle these two. I certainly don't like repeating information if it's not necessary.

<comment><USER13> You could just print the version, etc. again when logrotate sends your daemon a SIGHUP.

<comment><AUTHOR> Ahh... never thought of doing that. I like it.

</comment></comment></comment></comment></comment></comment><comment><USER14> Most important point: any log message that doesn't identify some property of the request that originated it (so that you can identify requests leading to erroneous conditions) is cause for immediate defenestration.

<comment><USER15> Agreed. We use mod_unique to add a header to each response and make sure it's included in each error log, back end access log and front end access log as well as being viewable via Charles/fiddler at the client. Being able to tie the various logs from different machines together has been invaluable.

</comment></comment><comment><USER16> This link from a talk by Jordan Sissel has some great information on logging and information that's commonly missed in log files (even in some very large products)

[http://blip.tv/carolinacon/logstash-open-source-log-and- even...](http://blip.tv/carolinacon/logstash-open-source-log-and-event- management-jordan-sissel-5123601)

</comment><comment><USER17> I personally have found a lot of difficulty with JSON-based logs, because tools like `grep` and `cut` don't suffice; I usually have to write a more complex regex with `sed` in order to extract useful information I want.

Anyone have a good utility for managing JSON in log files?

<comment><USER18> Moving away from using regex to parse JSON, you can use Jsawk and Underscore- cli to manipulate JSON like Awk or JavaScript.

<https://github.com/micha/jsawk/> <https://github.com/ddopson/underscore-cli>

<comment><USER19> underscore-cli is utterly brilliant for this, even better — dare I say it? — than traditional log files with cut/grep/awk. Being able to treat logs as a dataset that can be mapped/reduced/flattened/grouped/otherwise analysed is life-changingly good.

About the strongest endorsement I can give is that it makes me wish _more_ of my logs were in JSON format, rather than wishing that less were as I always had before.

</comment></comment></comment><comment><USER20> I reviewed my some of my code and figured out that I'm one of this terrible persons, which haven't spent enough time to show an useful output. I should fix this now ;) A useful log output can be a real time saver. I also seen applications which just showed "an error occurred", so I had still no idea what causes this error message.

</comment><comment><USER21> In my experience the measure of good logging is the ability for someone, either yourself or an operations engineer to be able to easily solve problems using only the logs. They shouldn't have to refer to the source code. Developers should be using this as the yardstick when asking questions about their log output.

</comment><comment><USER22> So how do you implement this? In your Rails apps, what kind of library do you use to write log messages in this format? Is it an open-source library or one you wrote just for your company?

<comment><USER23> Look at the ruby libraries for syslog. Iirc, there is a ruby standard library for syslog.

</comment></comment><comment><USER24> finally! someone needed to write this, if only to have something to point junior devs to. :)</comment>


Please, make our life better and bulid this - <AUTHOR>

you know, i love to use the keyboard - on another side i use chrome and have a lot of bookmark folders so when bookmarking page i use
Ctrl+D / Cmd +D  - but you have to choose the folder ,right - and that is so boring (and sometimes the folder won't be in the list and you have to click "choose another folder" and that open new window and pla pla pla)- why if i have folder called ruby and the title of the page i bookmarking called "10 Useful Tips For Ruby Developers" why chrome doesn't understand that and ---- you know ---- ,so please i you can build an extension can do this please build it <comment><USER2> What if you have two folders, one for "Ruby Development", one for "Ruby in Jewellry". Auto-tagging is not a solved problem.

Also, I use the keyboard for just about anything. You can browse around graphical interfaces using Tab, Shift+Tab, Space and the arrows.

If I want something faster than that, I resort to

        <Ctrl-L><Ctrl-C><Win-R>gvim p:/links.txt<Enter>G"+p:wq<Enter>

It copies the URL bar to the end of an arbitrary file on Windows.

<comment><AUTHOR> What if you have two folders, one for "Ruby Development", one for "Ruby in Jewellry". Auto-tagging is not a solved problem. ---> it can put this two folders on the list so i can choose from them without open the window "choose another folder"</comment></comment>


Recommendations for Javascript payment gateways - <AUTHOR>

I'm a non-US based startup and am looking for a payment gateway. Surely there are AJAX based payment gateways (as opposed to PayPal like which do redirects) that don't suck, and allow non-US merchants... but my googlefu is weak. Any recommendations? <comment><USER2> Braintree is great:

      http://www.braintreepayments.com/

We use them at RapidRollout. They seem to be used by a lot of tech startups.

Braintree offers "transparent" redirects for maximum security. This redirects your users to their site in such a way that they do not ever see Braintree pages like they do with PayPal. The redirect just offers a way to transfer payment data to Braintree servers without going through your servers.

They also expose a RESTful API that you can make calls to from your servers (usually via their open-source client libraries).

      http://www.braintreepayments.com/gateway/api

Anyway, looks like you might be able to use AJAX to access the transparent redirect API. See here:

      http://stackoverflow.com/questions/1776338/signup-form-using-braintree-transparent-redirect

But I got that from a quick search only.

<comment><USER2> Sorry, new around here. Clickable links:

<http://www.braintreepayments.com/> <http://www.braintreepayments.com/gateway/api> [http://stackoverflow.com/questions/1776338/signup-form- using...](http://stackoverflow.com/questions/1776338/signup-form-using- braintree-transparent-redirect)

At least I hope those end up clickable. ;)

</comment></comment><comment><AUTHOR> If there are any US-only ones, let me know too</comment>


Ask HN: Telling my boss about a Headhunter - <AUTHOR> I work for a tech company in Taiwan. My boss is a good friend who I've known for 7 years.
On Sunday night, I got an email from an Engineering Director of a very famous company, asking if I want to meet them to talk about work.
My current job actually doesn't keep me busy enough, so I do many personal projects in addition to my corporate work. I know my skills could be used well at the Famous Company. I wrote back to tell the Famous Company about several personal projects I did that might interest them. They were pleased.
I also said that I want to tell my boss about the conversation. I just signed a contract for all of 2018, but I could ask my boss about doing some part-time work earlier on a contract basis.
The Famous Company says that it would be unusual to introduce my boss, I'll need to sign an NDA if I want to talk about actual projects, and they offered to have a video chat instead of meeting in real life.
I feel uncomfortable "flirting" with a Famous Company if I can't also tell my boss. If a pretty girl tries to seduce me, I will tell my girlfriend about the incident.
This also seems to be a cultural difference. See "Connections and contacts" in Yang Liu's photos.
http://bsix12.com/east-meets-west/
It would be a dream to work for the Famous Company. I know they'd pay at least 10x my current salary. But I want to be loyal and maintain good "關係" (guanxi) with my boss here, and money doesn't buy commitment.
If I tell my boss, he knows I'm under-utilised, and maybe he will want me to go to the Famous Company. But then the Famous Company will be angry because I told him. So then both of them don't want me.
If I reject the Famous Company, I might lose an amazing opportunity. I want to be friends and build 關係 with them too, because I will be available in 2019.
The only person I told about this whole thing is my girlfriend. (not even my parents yet).
Who should I tell, and what should I tell them? <comment><USER2> Your situation/culture sounds so foreign to my American ears that I can't give (good) advice and I would be cautious taking advice from other people with a very different culture from yours.

In the US, we aren't contracted to a company and thus we can be let go, or leave, at any time. We tend to have little loyalty to a company because, with some exceptions, companies generally don't offer us much loyalty. We also (in tech) tend to work for many companies in our careers. Early in our careers we discover that we are responsible for our own careers and frankly, I think a lot of us like this more independent arrangement.

For myself, I always found it easier to just give myself a raise by going to another company that valued me more (or was will to pay the market rate) than to work 20% longer hours just get a 3% raise for my efforts.

<comment><AUTHOR> I agree that this is all about culture.

To make it even more interesting, the Famous Company (multinational) recently expanded their business by buying a local company, and I think that's why they're interested in hiring people who have experience working in both countries (me).

The name of the Famous Company would look amazing on a résumé, and it would be really exciting to work for them.

But I'm not motivated by money or fame. I need years of continuous relevant work experience to help with my visa applications.

I wish I can find a way for everyone to benefit, and maintain trust with all the people involved.

<comment><USER3> "I agree that this is all about culture."

Not just about culture but also legal. In the US, most states have employment at-will which means employers can fire an employee anytime without any notice and vice versa. Of course, exceptions are there for things like discrimination but you still have to prove it. In the US, a lot of states do not require you to provide any benefit to your employees other than a salary if you are a small enough business.

In many parts of the world including Asia/Europe, employers cannot just fire someone (with exceptions in extreme circumstances like a crime) and employees cannot leave immediately either. 90 days advance notice is very common.

</comment></comment></comment><comment><USER4> I think that maybe you have talked to much already. Meet with Famous Company and get a firm offer. Tell them of whatever notification period will be necessary to terminate your 2018 contract. The contract you signed will have the required amount (days) of notification needed before you quit. Your boss is not your friend, he may be friendly and a great guy, but unless you are married (almost in your case) to his daughter, this is work, a job. I know this because I was a Boss for many years, if I liked you then I would have said exactly the same thing as he did, you need to move on, because I can't pay you what you are worth. If you have been there seven years it's time to move up in the world anyway. Tell Boss how great it was working there with him and how you will miss working at the company. I say it this way because you seem to be young. It is difficult to tell when loyalty is due or when self- interest is the best move. Perhaps a better way of looking at this would be to think of this as more of a overdue promotion. So now is the time to go for the glory (and money). Also you will learn many new things, things that will help you later when you move even further up the latter. I read that most people have 3 - 7 jobs (full-time) in their lifetime, so you are right on course.

<comment><AUTHOR> I'm 28 years old. I did a summer job for my boss's startup company in 2010, but then he invited me back to work for his other company in 2014. I've now been here for 3 years, the longest I stayed in any country.

You probably have a country, a home, a stable safety net where you can always go back to. I don't.

My hope is to get the qualifications for Permanent Resident status somewhere. The fastest is New Zealand, which needs only 2 years for the Skilled Migrant Category. But they also need 3 years continuous relevant work experience.

I finally have the work experience, but my girlfriend wants me to stay in Taiwan for one more year, and I want to be with her. I'm also really worried that when I choose to move on, if I burn my bridges, I won't be able to come back. I like my quiet stable life here, and I'm a little disappointed that my boss wants me to leave in 2019, even though I do agree that I should try to settle elsewhere.

Moving to the Famous Company would mean moving city as well, which would affect my relationship with my girlfriend. She's more important than my career.

<comment><USER4> Ah.. you left out a lot of important parameters on the initial query. You nailed me - I do enjoy all the privileges, home, wife, pay checks. My son is two years younger than you are, working on a masters computer engineer. So now the real important things appear, citizenship - girlfriend, Both are very important to you so these are now the determining factors for your decisions. 1\. Forget Famous company, you can't live without the girl. 2\. 2019 go to New Zealand and get your citizenship.(w/girl) This is what you want, right? so now this is the plan, every small and large decision you make should move you toward this outcome. Everything else is noise, twist it and turn it over if it can't be converted to your goal then discard it.

<comment><AUTHOR> Famous Company could help me reach my goal. Having the Famous Company name on my résumé would increase my chances of getting job offers in future, whichever country that would be in.

If they really wanted, Famous Company has a lot of money. They could buy citizenship for me and my girlfriend at a cost of $250,000 USD each. Then I'd be able to work for them anywhere.

These parameters are personal though, not job-interview criteria. It's about relationships, friendships, trust, and life goals. "Networking", in the social sense.

But if Famous Company doesn't want me to tell my boss, I feel like they don't respect that social network. I'm committed to being a good boyfriend, employee, and foreign resident.

I'd like to make friends with the person from the Famous Company, and build a connection with them too! Maybe stay longer in Taiwan to work for the Famous Company in 2019, or apply for their jobs in another country. I just don't want those communications to disrespect my existing commitments.

<comment><USER4> It sounds like you know the life codes pretty good, Maybe the girl will move with you to work at Famous Corp in 2019? It might take a ring to persuade her. I lived in Taiwan 3 years as a teenager, I loved the country, so I know a little about living there. At 27 there is still plenty of time to get everything ready for what will be your future. So as long as there is a plan it will work out for you. I think that maybe Famous Corp doesn't want you to tell the Boss because it is actually their way of saving face for "poaching" you or they don't wish to get entangled with your present employer. It is actually pretty standard procedure, whats different is that you are actual friends with your boss.

The main problem seems to be ,should I tell my boss now... because he is your friend the only answer is yes. anything less will likely haunt you for years. Famous Company does not need to know who you told about their offer, so do not tell them. Tell the boss now, then go get the offer, with a solid offer in hand ask the girl what "we" should do, then ask boss what he thinks. I'm sure that whatever advice they give will be better than anything else you will find.

</comment></comment></comment></comment></comment><comment><USER5> US-centric perspective after 25 years on/off Wall Street often working ridiculous hours and now working for myself overseas for 2+ years. Be a mercenary, all the smarties and C-suiters (senior executives) do it. Companies in the US ask for their pound of flesh so be sure you are paid accordingly. Compensation schemes for elites in companies are heads I win huge, tails I lose and still walk away with a big pay package, enough to live on for years. So learn to play their game fast. Your loyalty is to provide for your family in the best manner possible and not kill yourself in the process. When downturns come due to the global economy, industry issues or company/strategic mis-steps, you can bet loyalty has zero value in the equation.

<comment><AUTHOR> When inflation comes, the money that should last for years is spent within days.

Right now I'm still not married, so I have no obligation to provide for a family. When I do have a family though, then I want that to be a permanent commitment.

"Is cheating in a relationship always wrong?" is a question I asked several women during my single days, and I was very surprised that the answers I received were not all consistent. My opinion is strongly that it's wrong, so I could immediately know that I couldn't trust those women for a relationship.

</comment></comment><comment><USER6> Asian millennial here.

I think you're stuck between two very difficult choices. I had to do a very similar choice before - continue working for a family friend or take the route with career growth. Usually people also feel some loyalty to an old boss because they were also a mentor.

But try not to just think about yourself and your boss. Or even your girlfriend. As this decision also affects your income, it could provide you and your family a better life.

Ask yourself: "Which choice would benefit society more?"

Which of the two choices would benefit more people overall? This is also a good way to estimate which would be more profitable or a better career.

The startup could have the potential to have a very big impact, or it could just remain a really small company that doesn't affect many. Similarly, the Famous Company might be affecting people all over the world, but how much impact would you really have in it? So I would just pick the utilitarian decision as the more moral one.

Your personal projects could also be another factor, as they could be beneficial to society. Which decision would let you work on them more?

<comment><AUTHOR> I'm not yet at the point of a job offer from the Famous Company. It's just the question of meeting them privately, or telling my boss about it also.

The extra income would be nice, but money doesn't solve my citizenship issues. (unless they give me half a million to buy a passport).

Working for the Famous Company would use more of my skills to help a lot more people. I'm also quite confident that as the big multinational completes their acquisition of a local company, there will be cultural issues like this one, and they need people who are aware of both cultures. I could be very helpful to the Famous Company if I maintain my morals and teach colleagues there about them. Compromising my morals in order to get the interview seems like the route where everyone would lose.

My personal projects are things I can talk about freely in any interviews in future. I think the Famous Company would give me time to work on them, but also keep them as their own IP and not let me self-publish. I've tried publishing them here though (see my Show HN) and my biggest issue is marketing - something the Famous Company could help with.

I have another friend at the Famous Company, and I wonder if I should ask him how to proceed. So far I've only told my girlfriend, my mum, and this (anonymised) thread. I don't want to overthink it when I haven't been offered a job yet. But however I proceed, I want it to be with a clean conscience.

</comment></comment><comment><USER7> So hey, what would have happened if you hadn't responded right away on Sunday but waited until Monday, talked to your boss, and then replied to Famous Company?

They wouldn't have known. Their message didn't say "you are obligated to keep this secret". And even if it did, you have no such obligation.

If you want to make the seduction analog - which I don't think is the right one - then Famous Company flirted with you, you responded, and now they are using your response as blackmail to control what you do.

Why do you even need to tell Famous Company that you have talked with your boss?

I think you should say that you just signed a contract for all of 2018 so you need to talk with your boss to get an idea of what free time you have during the 2018 period before taking on other work.

They want to do things under NDA, so your argument might be that you want to figure out your availability before signing the NDA, to help limit needless information disclosure. (Eg, if they have a project which requires 6 months of work but you only have 3, then there's no reason for them to tell you about it.)

BTW, I'm a Westerner. Don't read all that much into those infographics. For example, stereotypical German punctuality ("the West" in those graphics) is not the same as stereotypical Latin punctuality.

In my experience it isn't uncommon for employees to use poaching attempts like this for negotiation power. That is, you could go to your current boss and say that Famous Company is looking to hire you, in hopes that your current boss would raise your pay or promote you. And if that happens, then go back to Famous Company to see if you can get an even higher offer.

This can be done in both good and bad ways. You should be aware that some people play this game, so bosses on either side might be sensitive either to you playing that game, or them thinking that that's what you are doing.

But I don't think that telling your current boss - who already lets you do some part-time work - that you have the opportunity to do more part-time work for Famous Company, is part of playing that game. That won't start until they ask for more time than you have to give them. And you don't know how much time that is unless you talk with your current boss.

<comment><AUTHOR> Thank you for sharing your thoughts!

My boss isn't punctual with his emails. My reply to Famous Company said that I just signed a contract for 2018, but they still wanted to meet during a business trip in January. I'm busy during working hours, obviously, but I'm confident that I can ask my boss and get permission to leave the office to go and meet them. I feel uncomfortable not telling my boss though, because he's a friend.

BTW, I grew up in Geneva and my parents are British, but I've had more work experience in Asia. Ironically, the person pursuing me is an Asian-American.

The Famous Company isn't trying to blackmail. They didn't actually say "NDA", they said "significant legal paperwork... protects both parties". I don't care about a promotion, I just want a stable job. I know that in 2019, my boss wants me to move on (he already told me). I want to make sure I do this honestly, maintaining friendship with my boss, instead of sneaking behind his back and slipping out of the office unannounced.

<comment><USER7> My use of the term "blackmail" was related to them expressing possible negative consequences for you telling your boss about your conversation, and in the context of "seduction".

When they sent their first email, they had no idea of if you would immediately go to your boss/friend to discuss things. Only when you told them of the possibility did they want to control what you did.

It's best not to think of this as seduction, or in the context of a pretty girl flirting with you. It's a company looking to hire your services, when you already have obligations.

Tell your boss. Don't tell Famous Company. If Famous Company asks you if you talked with your boss, say "of course I did - I want to make sure that I could take time off to meet with you without disrupting things at work."

The only reasons I can think of for Famous Company to have you not talk with your boss are 1) they are poaching you so they can compete with your current company, and 2) they don't want your boss to offer a raise.

Yes, you say you don't care about a promotion. But they don't know who you are or what you want. It's to their benefit for someone like you to be left in the dark about what your options are.

<comment><AUTHOR> Thank you. I'm so happy that there's opposite advice coming from you and siamtheman's top-level comment.

Whatever I finally choose to do, I'm pleased that there's a variety of perspectives here on HN. Cultural diversity is a wonderful thing.

</comment></comment></comment></comment><comment><USER4> You have already talked too much, tell current boss goodbye, ask famous company when do you want me to start work . This is how life works, a real friend will tell you now is time to move up in the world. Siam

<comment><AUTHOR> My boss is first and foremost a friend. After knowing him for several years, I started working for him.

I think it would be rude to hurt the friendship by just saying goodbye.

My boss thinks I can do better so he wants me to leave in 2019 anyway. I just don't want to go around interviewing before then, without telling my boss/friend.

<comment><USER8> If he wants you to go do better, then he should be happy for you to go now when you have the opportunity.

I would tell him about it and I'm sure he will have a favorable response. Help him make a good transition and find someone to replace you.

Oh and it's non of the other company's business what you say between you and your friend. Don't tell them anything about it, it's not ok for them to even ask.

</comment></comment></comment><comment><USER9> The cultural differences between working where you are and for a western-style company can be significant, to be sure, and if you choose to pursue a job at a western company you're going to have to find some sort of compromise between the two.

I wouldn't worry too much about Famous Company not wanting you to talk to your current boss about it. Certainly you can't tell your current boss anything FC tells you that is confidential, but merely telling your current boss that you are talking to FC, and any non-confidential bits about the opportunity, is frankly none of their business. I can understand that FC doesn't want your current boss to be involved directly while you talk with FC (that's normal), but I doubt they care who you discuss your opportunities with (again, as long as you don't discuss any of FC's confidential information).

But I'm not sure any of that matters yet; from some of your replies in this post, I think it's pretty clear what you want to do. You want to be with your girlfriend, and that means staying where you are for at least the next year.

So, realistically, you couldn't accept an offer from Famous Company if they were to give you one in the next few weeks, and still do what seems to me is a higher priority to you.

I think it's fine to talk to Famous Company, but don't lead them on: be clear that you're not looking for new employment outside of your current city right now and that you may not be available for work until 2019. If they still want to talk to you, great. If not, I'm sure they'll be pleased that you were straight with them and didn't waste their time. A year from now, you might contact them and they may still be open to talking to you (they might even suggest this to you!). If your work impresses them now, I'm sure it will still impress them a year from now, and maybe more, as you gain more experience.

Regarding not burning bridges, that's a good instinct to have, and I think you have the right idea. Don't force yourself to act toward your existing connections in a way that makes you uncomfortable or makes you feel like it would make them uncomfortable, even if you think it's what a future company will expect. I'm not that much older than you (I'm 36), but I can attribute the majority of success in my life to the connections I've made and maintained over my professional career. Connections can always help lead you to new and better things. If a requirement for pursuing a new opportunity is that you have to treat your connections poorly, maybe it isn't such a great opportunity.

With that in mind, if you _do_ decide you want to pursue something with FC now, absolutely feel free to talk to your current boss. From your description it does seem like he has your interests in mind, and you shouldn't keep things secret from him if you don't feel like that's the right thing to do. FC has no business in how you deal with your current employment; I don't see how they would get angry about you talking to your current boss about the opportunity with FC. You also have no obligation to tell FC that you've talked to your boss about it, at any rate. You shouldn't introduce your current boss to the people you talk to at FC, and your boss should not be involved with your discussions with FC. A western company would indeed find that very strange. But that doesn't keep you from talking to him about it privately.

Regardless of what you end up deciding, best of luck!

<comment><AUTHOR> Regarding the "current city", there is a little flexibility. It's only 50 km to the nearest Famous Company branch in Tainan, like San Francisco to San José. I go there every week anyway to study Chinese.

I think I found a solution, though.

I'll email my boss first. But I won't tell him anything. Instead, I'll ask him a question!

"When should I start looking for jobs for 2019?"

That way I'm not breaching anybody's trust, but I still get an answer that can direct my practical actions. I'll also tell Famous Company whatever he replies. According to you and others, they shouldn't be angry by that. I'm probably overthinking, but I like how it's gone from being a dilemma to a cultural and moral lesson.

<comment><USER9> Yeah, I'm wondering if there was a miscommunication between you and FC on that particular point: I cannot imagine a company caring at all who you are talking to about the fact that you're talking to them. You really don't need to tell FC anything about your conversations with your current boss.</comment></comment></comment>


The Curious Tale of Dual_EC_DRBG - <AUTHOR> http://blog.cryptographyengineering.com/2013/09/the-many-flaws-of-dualecdrbg.html

<comment><USER2> How did "Many Flaws of" become "Curious Tale of"? Are linked posts not entitled to a point of view?</comment>


On a Common Language Messaging Protocol - <AUTHOR> http://www.dekorte.com/blog/blog.cgi?do=item&id=4098 <comment><USER2> I see the Authors point... it would make things easier, but you still have to write the actors. Might as well write the C bindings to your language in that time.

Although the performance wouldn't be noticeable for small applications, the latency can really start adding. I mean using HTTP and Protobufs to pass messages around for a core functionality like image handling.

Now that I think about it, the C bindings are kind of a common theme for almost all the core library functionalities.</comment>


MVC Podcast Ep.20: AlphaGo, SxSW, WebAssembly, Giphy/GIF - <AUTHOR> https://soundcloud.com/mvcthepodcast/episode-20-alphago-vs-lee-sudol-sxsw-webassembly-giphy <comment><AUTHOR> MVC Podcast episode 20 is up! This week Victoria and Marty talk about:

* the Go game matches between champion human player Lee Sudol and Google's AlphaGo computer algorithm;

* the South by Southwest (SxSW) tech/entertainment convention;

* the new WebAssembly feature coming to web browsers;

* the Giphy web site and the animated GIF image format in general.

We also take a user question and update everyone on our lives this week. Enjoy! Please like/follow/share/subscribe as always if you enjoy our podcast.</comment>


ShowHN: Html5 Universal language translator chat - <AUTHOR> http://ashod.me/capish/

<comment><AUTHOR> I wrote this app out of necessity as I am currently backpacking around Australia and have made a good friend who can hardly speak english :) - <USER2> translate was a bit of a headache so I wrote this to better bridge the language divide. I select english as my language and he selects italian, our other friend selects korean and we all can chat to and from our native language.. hope you like it</comment>


Playing Your Hand With Your Cards Turned Up - <AUTHOR> http://avc.blogs.com/a_vc/2007/10/playing-your-ha.html

<comment><USER2> Got one chef, one maid, all I need is a partner

To play spades with the cards up, all trust.</comment>


Find the Bug in my Fizz Buzz Interview (2:47 video) - <AUTHOR> http://edweissman.com/find-the-bug-in-my-fizz-buzz-interview

<comment><USER2> You're checking for a null local variable value in the third conditional, but appending to that same variable in the first two, which would either cause a runtime error in most languages or never pass the third conditional.

<comment><USER3> This was my first thought as well. If he instead initializes:

        var result = "";

and checks for:

        if (result.length === 0) {
        ...

in the third conditional, is there still a bug?

<comment><USER2> Yes, he specifies the conditional is "examine the variable result; if it is still null ..."

</comment></comment></comment><comment><USER4> The bug in the interview is not having a whiteboard or paper or a computer that the interviewee can use.

Forcing anyone to do a coding exercise in their head is ridiculous.

</comment><comment><USER5> It might have been when he initialized the variable result.

He goes on to append strings to this variable which would lead me to believe it has some value that you can append to.

This would make the third conditional where he checks for null to fail, he should check for an empty string.

<comment><USER6> This is my conclusion as well. To wit, an approximate translation of his method into Ruby:

      fizzbuzz = (1..100).to_a.map do |i|
        result = "" # 1:23 initialize a variable
        result += "Fizz" if i % 3 == 0
        result += "Buzz" if i % 5 == 0
        result = i.to_s if result.nil?
        result
      end

The corrected solution would be to change `result.nil?` to `result.empty?`, i.e. checking for "empty string" instead of "null".

</comment></comment><comment><USER7> I see paper and pen/pencil in that office...

He doesn't ever print out result either

</comment><comment><USER8> Hahaha genius. "...What??" Oh, and I have no idea what the bug is.

</comment><comment><USER9> Shouldn't he check the divisibility by both 3 AND 5 first?

<comment><USER10> No, in that case the first two conditionals will both pass and the result will end up as "FizzBuzz".

<comment><USER9> Well, that would depend on the print statement. Generally, all of them have new lines. Even if they don't you would have to generate new lines appropriately otherwise the next number would print right next to Fizz.

PS : My assumption is that you need to print each number or Fizz or Buzz or FizzBuzz in a separate line.

</comment></comment></comment><comment><USER11> That video is so fucking annoying. Why not just show a page with the fucking text?</comment>


Universities' New Freemium Strategy - <AUTHOR> https://blogofjake.com/2020/04/14/universities-new-freemium-strategy/ <comment><USER2> "Schools will give away the product but not the certification, because that is the biggest part of what people have been paying for all long."</comment>


Zero to $5M in 1 Week - <AUTHOR> https://medium.com/@danshapiro/zero-to-5m-in-one-week-7623ceee73e1 <comment><USER2> wow that is a supper cool product. If I had more time I would order one</comment>