Erdős number - <AUTHOR> http://en.wikipedia.org/wiki/Erd%C5%91s_number <comment><USER2> A former professor of mine grew up with Paul Erdös frequently living at her house. Her father is a prominent graph theorist and has 50 papers with Paul Erdös. Ordinarily she would have Erdös number 2 through several papers with her dad, but has been granted an honorary 1.5 because she also washed his clothes.

<comment><USER3> Interestingly, there are three people who have co-authored 50 or more papers with Erdos. The most prolific is not a graph theorist, the next is also not thought of as a graph theorist.

The third is listed as having published exactly 50 papers with Erdos, and _is_ a graph theorist. More, there is a female math professor with the same surname, also in combinatorics and graph theory.

Now I can guess where you did your university work.

Fun game to play ...

<comment><USER2> Excellent detective work Watson, but there are more direct ways.

</comment></comment></comment><comment><USER3> That link didn't work for me - locale problems - but this one does:

<http://en.wikipedia.org/wiki/Erd%25C5%2591s_number>

I have an Erdos number of 2, and remember being unreasonably delighted to discover I have an Edros number of the second type of only 3. I thought it would be much bigger.

Not that it really means anything, but it would now be cool to appear as an extra in a Kevin Bacon movie ...

<comment><USER4> Lucky you -- my Erdos number is 3, in part because I didn't start publishing until after Erdos died. I do have independent length-3 paths through four different people, though.

Amusingly, my Erdos number of the second kind is infinite: I've written single-author papers and three-author papers, but no two-author papers!

<comment><USER3> It's still easy enough to get a number of the first kind of 2, there are hundreds of active mathematicians with EN=1. You need to find one who shares an interest and then publish something serious with them.

Ditto the type 2. If we found something that was worth getting into a journal at least you'd get EN(2)=4.

<comment><USER4> _there are hundreds of active mathematicians with EN=1_

True, but the ones who are still active are generally quite senior, and wouldn't be interested in working with a nobody like me.

<comment><USER3> Depends (almost) entirely on what you're choosing to do. If you find something in the area of interest of one of them, then make a substantial contribution, then ask if they can help tidy of the details, it's plausible that it could happen. You'd need to make it a goal, and it's not clear that it's really worth it.

John Brillhart, Richard Guy, Robin Wilson, Peter Winkler and Ron Graham all come to mind, mind you'd need time, effort, math and social engineering.

<comment><USER4> That's way too much work to do just to reduce my Erdos number. :-)

<comment><USER3> Absolutely. Not impossible, just not really worth the effort.

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> For those of you unfamiliar with Paul Erdős and who are interested in learning more, I highly recommend the biography "The Man Who Loved Only Numbers", by Paul Hoffman. He was such a quirky and unique character that his story makes a great read (even for non-mathematicians).

<comment><USER6> an interesting and much lighter source of information is the movie/documentary from 1993 called "N Is a Number: A Portrait of Paul Erdős" though IMDB seems to have it with a short accent :)

</comment></comment><comment><USER7> Ha. I know Grossman, the guy who runs the The Erdös Number Project. He used to publish with my friend's father.

</comment><comment><USER8> If there were similar named numbers for co-founders or co-investors who should be given a number of zero?

</comment><comment><USER9> Knowing of the Erdős number is the requirement for understanding <http://xkcd.com/599/>

<comment><USER10> Conversely, I learned about Erdős from that comic, initially.

</comment></comment><comment><USER11> I'm a 3, but totally by luck.

</comment><comment><USER12> Also see <http://spikedmath.com/056.html> .

</comment><comment><USER13> For all his brilliance, Erdos was unable to answer the Monty Hall Problem correctly: <http://en.wikipedia.org/wiki/Monty_Hall_problem>.

For those who don't know it, the problem requires no math except a _very_ basic grasp of probability. Personally, I find it somewhat absurd that you can be considered a mathematical legend but still miss that problem. I think it even took Erdos some time (months) to accept the solution, but I don't have a citation for that.

He's not alone, either. Lots of mathematicians miss that problem, which makes me wonder about the fundamentals of a Math education.

<comment><USER14> I really hate to start yet another Monty Hall Problem discussion, but it's worth noting that the Monty Hall Problem is often ambiguously phrased -- it's not specified whether the host _has_ to open a door to show a goat or not. If Erdos got confused, it's probably because he heard an ambiguous version.</comment></comment>


Huawei MateBook X Pro - <AUTHOR> https://consumer.huawei.com/en/tablets/matebook-x-pro/ <comment><USER2> Love this: "The data is a theoretical value obtained by HUAWEI internal _labouratories_ through tests carried out under specific conditions. Actual data may vary."</comment>


Software Freedom Conservancy Launches 2015 Fundraiser - <AUTHOR> https://lwn.net/Articles/665739/ <comment><USER2> What happened:

Some time between May 15[1] and September 5[2], the Linux Foundation was removed from the list of sponsors on the SFC's website.

On November 24, Karen Sandler wrote on the SFC blog[3]

        > since we launched the VMware suit some of our corporate funding
        > has been pulled because we tackle important but controversial
        > issues, like GPL compliance. We have even have had talks
        > blocked or canceled at conferences.

OP is implying that these 2 things are related. Maybe they are, maybe they aren't; but that's all we know.

[1]: [https://web.archive.org/web/20150515144759/http://sfconserva...](https://web.archive.org/web/20150515144759/http://sfconservancy.org/sponsors)

[2]: [https://web.archive.org/web/20150905143819/http://sfconserva...](https://web.archive.org/web/20150905143819/http://sfconservancy.org/sponsors/)

[3]: [https://sfconservancy.org/blog/2015/nov/24/faif-carols- fundr...](https://sfconservancy.org/blog/2015/nov/24/faif-carols-fundraiser/)

<comment><AUTHOR> Since VMware is a member of the Linux Foundation, this makes some sort of weird sense. I wonder why they didn't just terminate VMware's membership though.</comment></comment>


Putting Text in Window Title Bars - <AUTHOR> http://www.itworld.com/operating-systems/80121/putting-text-window-title-bars <comment><USER2> The article mentions that the OS and shell matter, but I think this is mainly due to differences in the behavior of "echo". The "printf" program is at least consistent.

What actually matters for this is the declared terminal type, and the terminal program you're using.

In this case, the article uses sequences I don't recognize and doesn't specify what terminal is supposed to support them. None of their echoes work for me.

But perhaps a more common and supported approach is xterm:

\- use a terminal program that supports and declares the right type, e.g. "xterm-color"

\- use xterm-style title sequences, and "printf" to print them, such as:

      printf "\033]; `pwd` \007"

</comment><comment><USER3> I use a little perl script, because it works everywhere I need it (and I suck at shell scripting ;))

        > cat `which title`
        #!/usr/bin/perl
        print(
            "\x1b",
            "]2;",
            join(' ', @ARGV),
            "\x7",
        );</comment>


How the Curiosity Rover's Nuclear Battery Works - <AUTHOR> http://www.about-robots.com/curiosity-rover-nuclear-battery.html <comment><USER2> Many people here in the far north have extensive solar setups and live completely off-grid. Unfortunately in winter, we only get ~4 hours of sunlight, and it's a pain to sweep snow off the panels every day at ~ -30C to -40C

We don't get much wind, and rivers are only liquid for ~4-5 months, so wind and hydro are not popular.

I've been investigating commercial thermoelectric couplings as a source in the winter. Everyone has a BIG wood stove burning 24x7 for ~6 months. My best research shows it shouldn't be hard to see +400C on the top surface of the stove. My plan is to have a radiator outside, run anti-freeze in the system and get an approx 400 deg C temperature drop.

Now, my interest is peaked in this approach from NASA. I wonder how long it will be until I can buy or build such a thing?

<comment><USER3> This might interest you. [http://www.biolitestove.com/campstove/camp- overview/features...](http://www.biolitestove.com/campstove/camp- overview/features/)

<comment><USER2> Thanks.

I looked into that a while ago (and a similar one), and it looks like any power produced from the TEC is considered a bonus, and is in the range of 1-5W, probably only enough to charge a phone, etc.

I'm looking to produce a sustained 150W + to charge deep cycle batteries.

<comment><AUTHOR> Tech specs show the biolite to have about a 2.5in radius and (approx) 6.5in high fuel compartment, which is about 2.1L ([http://www.wolframalpha.com/input/?i=volume+of+a+vertical+cy...](http://www.wolframalpha.com/input/?i=volume+of+a+vertical+cylinder+with+a+radius+of+2.5+inches+and+height+of+6.5+inches)). Using its design you can get about 2W _continuous_ power at 5V.

Scaling this up, roughly, you would need about 157.5 liters of fuel space, though probably much less if your fuel was more compact (obv you don't fill up exactly 2L of space in the canister while burning twigs). The realistic output of heat/power based on space is probably much more efficient than something this large, considering they say 46 grams of fuel can boil 1 liter of water, and 46 grams is approx 0.046 liters (based on water density).

Somebody please correct my horrible assumptions, but basically, fill an oil drum up most of the way with wood and build a thermoelectric generator and you should be good to go.

(Also, if you're charging deep-cycle batteries, i'm assuming you're not going camping? Maybe solar would be simpler? <http://www.mdpub.com/SolarPanel/index.html>) (Edit again: I forgot your original post, no solar)

More edit: Check this page for an adaptable thermoelectric generator: <http://www.tegpower.com/>

And more edit: <https://www.youtube.com/watch?v=bUH1HA3EnZE> (i'll stop posting links now!)

</comment></comment></comment></comment><comment><USER4> This concept was also used in russian lighthouses because it would be cold enough in siberia to create the delta difference needed. [http://en.wikipedia.org/wiki/Radioisotope_thermoelectric_gen...](http://en.wikipedia.org/wiki/Radioisotope_thermoelectric_generator#cite_ref- Ref__4-0)

<comment><USER5> Some interesting info about safety on this one: [http://bellona.no/bellona.org/english_import_area/internatio...](http://bellona.no/bellona.org/english_import_area/international/russia/navy/northern_fleet/incidents/37598) (from Wikipedia citation)

<comment><USER4> I'd disagree with the article and say the biggest threat of the RTG's is not being used by terrorists because a dirty bomb isn't all that effective with that amount of material, however, a bystander digging into one and having fun with the material could be a serious problem. Like the Goinia Incident [0].

Then again. It's kind of a funny thing to worry about with all the unexploded ordinance that's around most countries, even the U.S. I was just out sailing in the long island sound last week and my girlfriend thought it extremely odd how many unexploded bombs pockmark the navigation charts.

0: <http://en.wikipedia.org/wiki/Goi%C3%A2nia_accident>

</comment></comment></comment><comment><USER6> NASA has almost run out of U238: [http://www.popsci.com/military-aviation-amp- space/article/20...](http://www.popsci.com/military-aviation-amp- space/article/2009-09/nasas-plutonium-shortage-threatens-deep-space- exploration)

People promoting liquid thorium reactors have been pointing out that they could supply it: <http://flibe-energy.com/products/>

<comment><USER7> Plutonium 238 is NOT Uranium 238.

There's shitloads of U238 in the world.

<comment><USER6> Crap, that's what I meant. Thanks.

</comment></comment></comment><comment><USER8> How much power does the device generate? How much will it generate in 14 years when it is "expended"?

Edit: Initially 2 kW of thermal power and 125W of electrical power, falling by only 20% after 14 years. [https://en.wikipedia.org/wiki/MMRTG#Design_and_specification...](https://en.wikipedia.org/wiki/MMRTG#Design_and_specifications)

<comment><USER9> According to Wikipedia, 125 watts when it was launched, down to about 100 watts in 14 years.

The JPL guys claim that the RTG is really just a trickle charger for the batteries that actually handle the load -- which likely has transients that the thermocouple in the RTG couldn't handle.

I don't know the lifetime of the lithium-ion battery pack but I'm guessing it'll degrade way before the RTG power decreases below the point where it can effectively charge the battery.

<comment><USER10> There's a LiPo technology called "thin film lithium" which is claimed good for 10,000 cycles - assuming one charge/discharge cycle per day (and incorrectly using earth-days for simplicity), that'd give you ~27 years lifetime from the battery. (I wonder if this'll end up with the same "over engineered" reliability that let the Spirit rover last over 6 years when intended for a 90 day mission?)

<comment><USER11> The Opportunity rover is still up and running, which means it has exceeded its planned duration of activity more than thirty times over.

</comment></comment></comment></comment><comment><USER12> [In the voice of old "Gauntlet" game] "About-robots.com needs editing badly!"

 _> The first time I heard about the Curiosity Rover nuclear battery, I was thinking this must be top notch technology. What a surprised I had when I saw it has been used for more that 40 years already._

Évariste Galois came up with mathematics in the early 1800's which only in just the past several decades had widespread applications in cryptography. Carbon electric arcs were developed right at the start of the 1800's, and not only have we been finding new applications for them ever since, we'll probably keep doing so!

Also note that the mid-90's trappings of the digital office were running at Xerox PARC in the early 1970's.

As is often said: "The future is here, it just hasn't been evenly distributed yet." There is a lot of "top-notch technology" that the general public doesn't know about yet, and may not for a decade.

<comment><USER13> e-ink is another good example. The technology was originally developed in the 70's.

</comment></comment><comment><USER14> this article is wrong on many things.

one being that the rover can drive during night.

the small power output of the "nuclear battery" is not used to drive the rover. it used to recharge batteries during day and night so that the rover can operate on the batteries during the day.

<comment><USER15> That's a good point... while in theory is probably _could_ drive at night, it probably isn't a good idea to have a rover on a different planet driving around in the dark.

<comment><USER16> Is radio communication with the rover even possible at night? We only have line of sight to mars during the martian daytime.

<comment><USER17> Our line of sight to Mars is independent from Mars seeing the sun.

<comment><USER18> Not really. If the rover is on the side of Mars facing away from the Sun, it's almost always facing away from the Earth, too, since the Earth is deeper inside the solar system.

Facing the Earth and facing the sun are highly correlated. Seeing one xor the other is possible, but unusual.

<comment><USER19> He's still right in a very technical, strict sense. I'm too lazy to look up numbers and do the math, but I expect there's a window near the Martian sunrise/sunset when the sun isn't visible over the horizon and we have line of sight.

I expect that window is small to the point where no one actually cares. It would be an interesting applied-math problem for a grade-schooler, though.

<comment> T-hawk The geometry of viewing Earth in the Martian sky is the same as viewing Venus in our own Terran sky. The interior planet periodically approaches a certain maximum angular separation from the Sun. Just as we see Venus but not the Sun sometimes in the early morning or evening twilight, Martians (and rovers on Mars) could see Earth but not the Sun at corresponding intervals of Mars' rotation. It's a significant amount of time, up to several hours per day at maximum separation.

The angular separation between the Sun and the Earth as seen from a space probe is significant as far out as Cassini at Saturn. The probe can receive commands from Earth without the signal being overwhelmed by solar radiation, except for a few days each (Earth) year when Earth is too close to the Sun as seen from the spacecraft. (Earth doesn't literally go behind the sun often, thanks to inclination of the planetary orbits plus Cassini's own inclined orbit at Saturn.)

> _Our line of sight to Mars is independent from Mars seeing the sun._

Our line of sight to Mars _as an entire body_ is independent, but our line of sight to a _particular point_ on Mars is indeed correlated with that point facing the Sun.

<comment><USER19> Do you happen to have illustrations and/or numbers? I was planning to actually look everything up and work it out when I got home from work, but it'd be nice to have confirmation of my results, too.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER20> Relevant: INL helps power mission to Mars [http://www.idahostatesman.com/2012/08/06/2219647/inl- helps-p...](http://www.idahostatesman.com/2012/08/06/2219647/inl-helps-power- mission-to-mars.html)

"In simple terms, Curiosity runs, in part, on a $100 million nuclear battery developed at the lab, said Stephen Johnson, division director of Space Nuclear Systems and Technology.

The 2-foot-tall, 2-foot in diameter cylinder aboard Curiosity is packed with radioactive isotopes generating heat. That thermal energy is converted into the electricity fueling Curiosity's wheels, arms and other gadgets, as well as recharging its bank of lithium-ion batteries."

"Fuel cells in the energy source are 1 inch tall and 1-inch diameter cylinders. Each puts out a mind-boggling 9,000 to 10,000 degrees of heat, shift supervisor Dave Hendricks said."

</comment><comment><USER21> Wow, that's super cool. I wonder if this technology is being used on any earth-based applications? If not, I'm assuming there are harmful side effects that don't necessarily affect the space missions. I'd like to learn more about the negatives of this technology basically.

<comment><USER22> If this is the same tech I remember, Soviet Russia used them a lot for far- flung lighthouses that couldn't be easily refueled. Many of them are still out there, or have been stolen, vandalized, stripped of metal by unwitting thieves, spreading hazard all around. One was even found underwater.

edit: links:

[http://bellona.no/bellona.org/english_import_area/internatio...](http://bellona.no/bellona.org/english_import_area/international/russia/navy/northern_fleet/incidents/37598)

[http://englishrussia.com/2009/01/06/abandoned-russian- polar-...](http://englishrussia.com/2009/01/06/abandoned-russian-polar- nuclear-lighthouses/)

<comment><USER23> There is a movie on Netflix streaming that has some small plot feature tied to one of these these nuclear batteries in a far North Russian weather station:

<http://www.imdb.com/title/tt1588875/>

</comment></comment></comment><comment><USER24> Calling it a "battery" is disingenuous. An RTG doesn't fit the typical definition of a battery -- it doesn't store electrical energy. A better name would be "power supply". _< /pedant>_

<comment><USER25> Well it does - it stores nuclear binding energy that's unstable enough to be extracted and stable enough to last for x years. It's a nuclear battery just like convential ones are chemical batteries.

<comment><USER24> You're not clipping leads to the ends of it and getting current, though -- you're using thermocouples. It's more of a "heat battery", I suppose.

<comment><USER25> And now draw a black box around that whole system. What do you get? A voltage source, right?

Engineers usually don't care much about the principles of how something is made. As long as it can be abstracted to a known concept you're all good and you can integrate it with your given tools, e.g. a combinational circuit plan.

</comment></comment></comment></comment><comment><USER26> Is a thermocouple more efficient than a Sterling engine, or just more reliable because of the lack of moving parts?

<comment><USER27> Don't forget more compact. A sterling engine would require a generator, which in turn means a regulator and a rectifier. Plus, R&R's aren't very reliable either. When the alternator in your car dies, it's usually the R&R that failed.

The main disadvantages of thermocouples are cost and efficiency, but cost isn't a big deal for mega government projects and efficiency isn't a big deal when the goals are modest (i.e. not flying about like a helicopter) and the power source is amazing (i.e. nuclear decay)

</comment></comment><comment><USER28> Given the MSL has a constant power source does that mean it can operate 24hrs and 40 minutes a day? Do they have driving lights or can drive with IR or other sensors? If so they could get a lot more science done than the MER mission. Or do they have to channel the power into heaters each evening?

<comment><USER29> > _does that mean it can operate 24hrs and 40 minutes a day?_

Not if it consumes electrical energy from the batteries faster than the MMRTG replenishes it. Then it needs to "rest" to give the MMRTG a chance to recharge the batteries.

> _Or do they have to channel the power into heaters each evening?_

Besides 125 watts electric, the MMRTG also continuously outputs 2000 watts of heat. Heat can be pumped around the rover (either for cooling or heating) to keep the instruments at optimal temperature [1][2]

[1] <https://www.youtube.com/watch?v=fBtXnug-rgM#t=89s>

[2] [http://www1.nasa.gov/mission_pages/mars/images/20081209_msl....](http://www1.nasa.gov/mission_pages/mars/images/20081209_msl.html)

</comment></comment><comment><USER30> What are the safety implications of launching 10 pounds of plutonium-238 on a rocket that could malfunction or explode before gaining escape velocity? The article says the plutonium would not explode, but what about plutonium particles or radiation entering the atmosphere and ocean?

<comment><USER31> The same safety implications as launching 10 pounds of _anything_ twenty miles in the air, over an ocean, and subjecting it to an explosion. 10 pounds divided by any realistic footprint is negligible.

Plutonium is dangerous stuff, sure, but it isn't 10 orders of magnitude more dangerous than anything else the way some people act like it is. It's just dangerous, not imbued with an evil malevolent spirit that wants to irradiate your soul.

Bear in mind the Earth is covered in radioactives; it doesn't take all that much division before you've got less radioactivity per acre than already exists naturally, which contrary to apparently popular belief is not 0.

<comment><USER32> Per wikipedia[1]:

      A commonly cited quote by Ralph Nader, states that a pound of plutonium dust spread into the atmosphere would be enough to kill 8 billion people. However, the math shows that one pound of plutonium could kill no more than 2 million people by inhalation.

So no need to worry.

[1]<https://en.wikipedia.org/wiki/Plutonium#Toxicity>

<comment><USER31> You know what the problem with pulling something from Wikipedia is? It has citations. Specifically, for your pulled quote it cites this: <http://www.phyast.pitt.edu/~blc/book/chapter13.html> , and the section on "Plutonium Toxicity" about halfway down the page.

In particular, I commend to you the paragraphs starting with "In response, I offered to inhale publicly many times as much plutonium as he said was lethal." But more to my point:

"In summary, a pound of plutonium dispersed in a large city in the most effective way would cause an average of 19 deaths due to inhaling from the dust cloud during the first hour or so, with 7 additional deaths due to resuspension during the first year, and perhaps 1 more death over the remaining tens of thousands of years it remains in the top layers of soil. This gives and ultimate total of 27 eventual fatalities per pound of plutonium dispersed."

I can't quite get a direct cite, but I'm pretty sure the claim that a pound of plutonium dust can kill two million people is for a pound of plutonium dust being carefully doled out to two million people in precisely the quantities that will just barely kill them, because the previous paragraph is the description of what happens if you just sort of fling it at a city.

And an explosion from a rocket would actually be dispersed over a much larger area than merely a large city if it were going to hit anybody at all, because we don't launch anything immediately upwind of large cities. Think state-sized dispersal and you'd be closer.

"There have been fears expressed that we might contaminate the world with plutonium. However, a simple calculation show [26] that even if all the world's electric power were generated by plutonium-fueled reactors, and all of the plutonium ended up in the top layers of soil, it would not nearly double the radioactivity already there from natural sources, adding only a tiny fraction of 1% to the health hazard from that radioactivity."

"I have been closely associated professionally with questions of plutonium toxicity for several years, and the one thing that mystifies me is why the antinuclear movement has devoted so much energy to trying to convince the public that it is an important public health hazard. Those with scientific background among them must realize that it is a phony issue. There is nothing in the scientific literature to support their claims. There is nothing scientifically special about plutonium that would make it more toxic than many other radioactive elements. Its long half life makes it less dangerous rather than more dangerous, as is often implied; each radioactive atom can shoot off only one salvo of radiation, so, for example, if half of them do so within 25 years, as for a material with a 25-year half life, there is a thousand times more radiation per minute than emissions spread over 25,000 years, as in the case of plutonium.

"No other element has had its behavior so carefully studied, with innumerable animal and plant experiments, copious chemical research, careful observation of exposed humans, environmental monitoring of fallout from bomb tests, and so on. Lack of information can therefore hardly be an issue. I can only conclude that the campaign to frighten the public about plutonium toxicity must be political to the core. Considering the fact that plutonium toxicity is a strictly scientific question, this is a most reprehensible situation."

And thanks for leading me to the _awesome_ link to post next time this comes up.

<comment><USER32> The quote was pulled to put the "same risk as 10 pound of anything" claim into perspective, not to give an exhaustive treatment of plutonium ( and specifically Pu 238) dispersement.

The claim of 2 million cancers per pound of Pu is sketched out just at the start of the subchapter "Plutonium Toxicity" in your reference, it depends on a model how long the Pu remains in the lung. ( I suspect Naders number of 8e+9 death is obtained by dividing 1 Pound by an estimate of the lethal dose.)

Additionally the source talks presumably of Pu 239 (at least the numbers in the appendix are for Pu 239) while the activity ( and therefore the dosage) of Pu 238 is about a factor of 200 higher. So we can estimate 4000 death per pound of Pu 238 dispersed in the atmosphere over an city. ( Dispersing over an Ocean instead of a city would lower this estimate of course considerably. What could possibly go wrong ...)

And you are welcome, this seems to be one of the better texts one can cite about the dangers of Pu. (I will be happy to point out the several best case estimates the text makes.)

</comment></comment></comment></comment></comment><comment><USER33> >> The Curiosity Rover Nuclear Battery will supply the system with constant power, allowing it to work as much as needed, all year long for as long as 14 years.

Very cool. Massive improvement over the solar panels that only worked during the day and non-winter times.

</comment><comment><USER34> Burning question... can a miniature version of this ever be ported to consumer electronics devices? :-/

<comment><USER35> There's a prototype betavoltaic battery which can sustain 50 microwatts on 20 Curies of tritium [1] -- an efficiency of about 2%. Scaling linearly by 10^4, current technology could get 500 milliwatts on 200 kCi, or 20 grams, enough to charge a 5 watt-hour phone battery in 10 hours. The tritium cost would be on the order of $600,000 today [2]. If you could do this, the battery charge time would be a few decades.

[1] [http://www.citylabs.net/index.php?option=com_content&vie...](http://www.citylabs.net/index.php?option=com_content&view=article&id=10&Itemid=25)

[2] <http://fire.pppl.gov/fesac_dp_ts_willms.pdf>

</comment></comment><comment><USER36> So, when can I get a nuclear car? And what's the insurance gonna cost?

<comment><USER37> when we start building "breeder" reactors again. Plutonium is a byproduct of the breeder reactors when they create the type of uranium that can be used for nuclear bombs (this is one of the reasons that breeder reactors aren't popular). I was talking with one of the scientists at Ames last night, and apparently this is pretty much the last of NASA supply, since the US has significantly cut down on their production of weaponizeable uranium.

<comment><USER38> That's not really accurate, but rather than explaining why, I'll just give the abbreviated rundown on plutonium:

Plutonium 238 is a powerful alpha emitter with a half-life of 87.7 years, making it a great element for powering mars rovers. It's produced by exposing Neptunium 237 to neutron flux. You can get Np-237 out of nuclear waste from ordinary reactors. The US has mostly been buying Pu-238 from Russia, but we're running out, and starting up our own production again is kind of expensive. We can do it, though.

Plutonium 239 is the kind that gets used in bombs. It's fissile. It's produced by exposing Uranium 238 ("depleted uranium") to neutron flux in a nuclear reactor. It's tricky to make weapons-grade Pu-239, because it tends to be contaminated with Pu-240.

Plutonium 240 is annoying and nobody likes it.

<comment><USER37> well, i guess i learned not to blindly trust NASA scientists today. thanks for the info; that was pretty interesting.</comment></comment></comment></comment>


Ask HN: How do you find experts at work? - <AUTHOR> When organisations get large and distributed how do you find experts at work? Either people who can help you with a problem or give you some advice? I find it hard enough knowing what the person in the same 50 person office is working on and what he could help me with. <comment><USER2> Ah this is interesting, I often find it quite difficult theres company guilds where I try to network. But its hard to keep going to these when I'm always so busy. Often I look through github and org charts and try to work out who could potentially help me based on the code they've written but it's a bit of nightmare. I'd be interested to hear how other people do it. I know in some companies they have a skill matrix, but not sure how this scales.</comment>


Forget Pi, here comes Tau - <AUTHOR> http://math-blog.com/2010/06/28/forget-pi-here-comes-tau/ <comment><USER2> The original is here: <http://news.ycombinator.com/item?id=1468341>

Although it doesn't say so clearly, this was intended as a summary of the (rather long) original, and was submitted before the author realised the original had been submitted.</comment>


Rick Dyer and a Team of Bigfoot Believers - <AUTHOR> http://www.texasmonthly.com/articles/rick-dyers-believe-it-or-not/ <comment><USER2> Bigfoot hunting in montana: [https://www.youtube.com/watch?v=gtfD7_J6lZY](https://www.youtube.com/watch?v=gtfD7_J6lZY)

The believers are everywhere...

</comment><comment><USER3> I am firmly convinced, based on the overwhelming evidence I have seen, that Bigfoot exists. However, Dyer is well known in the community as a hoaxer, and that picture in the article looks way fake.

If you are interested, most Bigfoot-related news can be found at this forum:

[http://bigfootforums.com/](http://bigfootforums.com/)

<comment><USER4> I'm curious about this. I've never totally discounted the possibility but I've always been highly skeptical mostly due to the number of reports that come from places that just don't seem isolated enough to conceal a breeding population of such large creatures. I'd be more inclined to believe if all the sightings were in, say, Northern Canada, but Oregon, Northern California, and Alabama seem far too heavily traveled.

One very intriguing idea I heard once was that Bigfoot is not an animal at all but essentially an ethnic group of human with a different enough physiology to look very odd and with a unique isolationist culture. Think of Pygmies, who are just an ethnic group but who in their native culture seem very unlike other human beings. This would explain the lack of a Bigfoot body, since any remains would be considered unidentified human remains. The intelligence of humans would also explain how they stay so aloof. Pretty remote possibility but interesting nonetheless.

<comment><USER5> The only remaining isolated groups of hominids are tribes deep in the Amazon, and on a few remote islands. We know about every one of them, yet, these giant apes can roam the woods, just outside of town, and they've never been scientifically documented. Who always finds them? Profiteers and mystics. Hrmmm.

A tiny teapot orbits the Sun, somewhere in space between the Earth and Mars. Let me be the first to say that bigfoot threw Russell's teapot into space. You can't prove me wrong, so it must be true.

Now for the big question: Why is this conversation happening on Hacker News?</comment></comment></comment>


IP Address Geolocation Javascript API : JSON Response - <AUTHOR> http://www.nitinh.com/2009/04/ip-address-geolocation-javascript-api-json/ <comment><USER2> Well, it gets my _country_ correctly :)

Wonder how it fares in different countries (For me, it shows me as London, UK whereas I'm actually a hundred or so miles outside London).

<comment><USER3> Well, it's going to give location of your IP, not your body (or even your CPU). I, for example, am in the middle of a cow paddy. But correctly offers the name of the _town_ where my IP is based (not the _city_ to which _my body_ is geographically closer). Such are the relativities of "locating" a person according to IP.

<comment><USER4> this is what the name suggest "IP Address Geolocation"

</comment></comment></comment><comment><USER4> doesn't even show location of microsoft.com IP correctly

<comment><USER5> Quick comment but a disclaimer first - I have a prejudice on this subject since I founded Digital Envoy which was the first IP geotargeting company. I no longer work there and the company was acquired back in 2007.

In general services that are on the cheaper end or free end of the spectrum rely heavily on whois data parsing and analysis. This is a highly inaccurate method of targeting. Companies that are specifically seeking to provide high quality and highly accurate data, like Digital Envoy, do a lot more analysis than just parsing public information. That said, the service is a lot more expensive than these cheap/free service. In the end, you get what you pay for. A lot of people start on these services and then graduate to more expensive services as their needs for accuracy increase.

<comment><USER6> May be you are correct, but I am pretty sure that in this opensource world soon there will be a good free option available

<comment><USER7> ya you(yourock) are 100% correct, even same way i believe ...in upcoming days we will surly get a better free option.

<comment><USER5> Honestly, it doesn't really matter to me since I've already had my exit from my company but unfortunately I don't think this is true. Given how much data collection and analysis has to go into good IP geotargeting technology, this really is something that a for-profit company has to do. Otherwise at some point in the last 10 years that Digital Envoy has been around, the company would have been crushed by an open source or cheaper alternative. That isn't true and this is the main reason why, IMHO.

<comment><USER8> I imagine skyhook should have enormous leverage here. They business is normally the opposite, but it's foolish for them not to use their databases in the reverse. Same applies to large skyhok users such as Google and Apple, as they should have access to all of the same data.

Next, there is Amazon - they know where you live and they know your IP address. _Everybody_ shops at Amazon.

Now, I can't think of an open & free way to collect exact information yet... ideas?

<comment><USER5> Good ideas but there are issues with this approach. But to explain them here would probably cause me to run out of characters and bore 99% of HN readers. But you're absolutely right that some of these sources could help augment the accuracy of any IP geotargeting system. Unfortunately this type of data has been hard to get a hold of because of either privacy policy issues or some strange beliefe that this was proprietary/trade secret information.

Trust me, I've tried this in the past and came up empty most of the time. That said, it is a really good idea.</comment></comment></comment></comment></comment></comment></comment>


Names for your next JS plugin - <AUTHOR> http://www.leandomainsearch.com/search?q=js <comment><USER2> There are some nice, short names available: How about pinjs for a Pinterest widget? And websitejs.com is just begging to be made into a HTML5Boilerplate clone for javascripts.

LeanDomainSearch remains my number one resource for domain discovery.

</comment><comment><USER3> Wow first time seeing this site. A very awesome discovery engine indeed.

</comment><comment><USER4> I call jsexchange.net</comment>


Why Egypt's Military Won't Attack Protesters - <AUTHOR> http://www.npr.org/blogs/money/2011/02/04/133501837/why-egypts-military-cares-about-home-appliances

<comment><USER2> Not sure what a better title would be, but I was thinking last night that Egypt's Military isn't just not attacking protesters, they aren't attacking the incumbents either.

From what I've seen, the Egyptian Military should be commended for their role as protectors of the peace.

If this article is correct, wouldn't that mean that Egypt is a strongly socialist country? My question if the military has been absorbing businesses to counter unemployment, etc. why does Egypt have such high unemployment now? and why is the military no longer able to absorb the unemployed?</comment>


Why Quora Will Never Be as Big as Twitter - <AUTHOR> http://mashable.com/2011/01/06/quora-growth-not-twitter/ <comment><USER2> "Why apples will never be as tasty as oranges."

</comment><comment><USER3> I'm personally not sure if Quora will ever be bigger than Twitter, but I do think they have a potential advantage in the fact that user who ask questions are looking for answers when using their service. It's similar to the difference in value of search ads vs display ads. Getting an ad in front of someone who's searching for something specific is a hell of a lot more valuable than putting that same ad in front of someone while they're browsing. Most usage of Twitter is browsing, while Quora users (at least the ones asking or researching questions) seem similar to searchers, so that portion of their traffic may be much more valuable, depending on how successful they are at monetizing it.

One problem with this theory is that some of Quora's traffic right now (don't know the proportion, but I'd assume it's high in terms of page views) is users answering questions or browsing updates from friends, who fit more into the browsers mold than searchers. I think they're going to have the same difficulty monetizing that portion that Twitter is.

</comment><comment><USER4> The whole premises of this article is that in-depth Q&A can't have mainstream appeal, which is just wrong.

Look at the magazine racks at your local store to see what's mainstream. Look at what people pay money to read.

Now tell me there's no market for Celebrity Q&A or Music industry Q&A.

</comment><comment><USER5> Comparing Quora to Twitter is massively premature. Quora's not even better than Stack Overflow, or even Answers.com. Riddled with annoyances, the only thing I ever hear about Quora on Twitter is something that drives someone crazy.

<comment><USER6> I agree. I'm not sure what the whole buzz about Q&A is right now.

Stack Overflow certainly fills a niche that had, before, been filled by lots of independent "specialist" forums. Having that community under one roof is great, there are a lot of subjects with strong similarities. The badges system appears to allow good self moderation.

The value in Quora was the presence of an unusually large number of "over achievers". Most of the people on there are doing very well for themselves in the technology world, and found the questions interesting.

Now Quora is expanding, I don't see the added value any more. Really, how is this different to all of the other q&a services on the internet.

The Stack Overflow approach of creating separate communities will probably work better than Quora, whose original community is being diluted, not expanded.

</comment></comment><comment><USER7> Twitter can be useful (or at least they want to use it) to billions of people, the service is what you make of it. The same can be said of Facebook or Tumblr, but Quora? Not so much. It has no mainstream appeal. The fact that this article needed to be written is surely enough evidence that everyone is clamouring to find the next social media _darling_ that they'll grasp at anything that shows a hint of being popular and try and force it.

</comment><comment><USER8> The author makes that sound like a criticism. A site or service can be valuable without being "big". The thing that I like about Quora is that its easy to identify notable people, which is lacking from other sites. I think Quora could actually become a pay service and do OK.

<comment><USER9> I agree. I don't really want Quora to become as big as Twitter, because then it would become filled with garbage just like Twitter. (Weird, that sounds crankier than I want it to.) I'd gladly pay to keep Quora a bit more "exclusive" for lack of a better term.

</comment></comment><comment><USER10> Comments like this are common for most any website/product. Remember everyone including tc mentioned that twitter was pointless. Wait for few years, as long as they stick to their game, people will find use cases.

<comment><USER11> Twitter was something new though, Quora's pretty late to the q&a party.

</comment></comment><comment><USER12> (yahoo_answers || answers_dot_com) + follow == fail

<comment><USER13> (concentric elite growth strategy || answers filtered by my friends) + email notifications == win

Quora has so many respected tech industry people using it that I want to use it. That's similar to how Facebook was first Harvard only, then Ivy League, etc. - you want to be where your perceived social betters are.

My Quora feed shows the topics that my friends are interested in. This is super valuable for finding information slightly outside what I would search for myself.

Their email notifications keep me clicking back to the site so that I stay engaged.

<comment><USER12> yeah, it's cool right now. but, to get big they are going to have to let the 'unwashed masses' in. Expect more questions like, "why is paris hilton such a sloot?" and less about interesting topics with interesting answers.

Once that happens, and it will have to happen for them to have the number of users that twitter or facebook has it will descend into yahoo answer hell. I don't see how they avoid that and get mass user adoption.

<comment><USER13> That's very much a risk for Quora. But if they're still showing me my friends' activity that could ameliorate the problem. My friends are still going to be asking/answering questions that I am likely to be interested in.</comment></comment></comment></comment>


Ask HN: How do I know if I'm building something only myself find useful? - <AUTHOR> I have this "organic" idea that myself find very useful. But I have shared my idea with a number of friends who I think can be my target users, but most of them are not thrilled, how do I know if I'm building something only useful to myself but not a group of people like me? <comment><USER2> "How do I know.."

Short answer: You don't know. There is no shortcut. But if you want to give it a shot, you have to go all the way:

1\. Build it for yourself.

2\. Start using it for yourself.

3\. After a fairly stable release for yourself, start putting it out there for others to try.

4\. Work on marketing it (Hardest step. Most people give up at this step). For marketing, learn how to do "inbound" marketing vs "outbound" marketing.

5\. Get a professional looking website, let clients signup for a trial. Talk to them on the phone. From this step on, it is hopefully no longer a pet project.

6\. Provide support to customers and take their feedback for improvements.

7\. Keep making changes to the app based on client feedback. Rinse repeat

There is no fixed timeline to try this out. Depends on your market and

<comment><USER3> 0\. Talk to people and potencial customers about it.

<comment><USER2> but it may not be step 0 necessarily in this particular case because the OP wants to build it for him/herself first.

</comment></comment></comment><comment><USER4> You have started the process already. And, you have already hit your first roadblock. The question is how to interpret their lack of enthusiasm.

> Do they not share the 'difficulty' that bugs you enough to create a > solution?

> Did your explanation suck? Some ideas are hard to describe in the abstract > or we are just poor at articulating problem, approach, solution and > benefits.

> Is this one of those things that doesn't resonate when talking about it but > actually trying the tech would hook people?

> This might be reflective of future market reaction and even a well executed > implementation will still only appeal to a very small subset of the people > who could reasonably benefit.

</comment><comment><USER5> Other posts are right that you may never know for certain until you actually make it, but there is plenty you can do to mitigate the risk. If you are going to build something with the goal of helping other people and not just yourself, you should be building and researching iteratively to prevent wasted time.

Asking friends in your likely target audience is a good approach. There could be a few reasons why they aren't excited: \- you are describing features rather than benefits \- you haven't identified compelling benefits \- you aren't successfully communicating compelling benefits \- they aren't actually your target audience \- the product idea actually is not very useful

Don't worry - this is a much more challenging process than many people realize. Many potentially great products are shelved due to the challenges of identifying and communicating value. If you are very motivated to work on this, think a little harder on the problem you are solving and the benefits you want to provide. Value can in many cases be boiled down to providing an improvement in the experience of using the idea itself, and/or providing an improvement in helping get to a future state that the user wants to achieve. Hope this helps.

</comment><comment><USER6> If one thing is useful, then it will be used. The main problem is you can say that only after this thing is done. The way i work with my customers is using a mockup. A graphical interface that simulates interaction and use case. Explain your ideas creating a context, an environment (mobile o pc) and satisfying one need at the time. You'll be successful on defining what is useful or not. You can use Balsamiq as tool.

</comment><comment><USER7> Why is it a problem if it's only useful to you? Build the thing you want, and if it really is useful it will have been worth the effort. Really though you aren't a unique snow flake, none of us are, we're mostly predictable carbon copies of each and if you truly have made something useful for yourself, then you've probably made something useful for others as well.

</comment><comment><USER8> You won't. I've built pretty intricate front-end stuff and presented at local front-end meetups only to be met with a whimper. Like other forms of art, it's pretty much impossible to know whether or not your project or product is going to be a hit. Make it for yourself first and if it's meant to be that it takes off it will.

</comment><comment><USER9> I am more than half way through this book Will It Fly by Pat Flynn. He lays out this pretty easy to use method to help you build a market map and do customer development for free. I would say give this a try and you may get more data to make a better idea if your building something that solve an existing problem people would pay for.

</comment><comment><USER10> I agree with everyone else, you don't know. Microsoft fails often. Google fails often. Everyone fails often.

I think the best solution is to strip your idea down to the very core, and launch it asap to gauge user interest. That way, you'll get your answer, and waste the the smallest amount of time and resources.

</comment><comment><USER11> I think it's more useful to know if they have the problem you have (not whether they think the idea is good). Then, if they do -- what they think about how important it is and if they have tried to solve it.

If they have the problem, think it's important, tried to look for solutions (maybe even tried one), then you can find out more about the criteria of the solution they are looking for and the progress they are trying to make in their lives.

If they don't have the problem, or if they do, but it's not a big deal to them, then whatever solution you have isn't going to be interesting (so, what they say about it doesn't matter) -- move on to find people with the problem.

If no one has the problem, it may be interesting to solve it for yourself (if it is meaningful to you).

</comment><comment><USER12> Even if you talk to people about your idea and they love it that doesn't mean that they'll actually buy it. You can increase your likelihood of success by finding a problem first and then making a product that solves that problem. This takes a lot of research.

In my opinion you should build this for yourself if you'll find it useful but don't get too fixated on selling it to others if it doesn't get traction. If your goal is to build a business do your research first and then produce the product, not the other way around.

</comment><comment><AUTHOR> Thank you everyone, these are some most useful advices I ever got from HN.

I think the people I talked to so far doesn't have exactly the same problem I have, or they don't know they have the problem yet. And I definitely suck at describing my ideas in words.

I have already started building the prototype, in the end even if it's just useful to myself, I would still end up with a useful tool and a lot of knowledge gained developing it.

</comment><comment><USER13> > how do I know if I'm building something only useful to myself but not a > group of people like me?

Get true market validation-- can you target and find more individuals (outside your circle of friends) who can give you impartial feedback on components of your product/service? If you find a buyer that's usually a good indicator.</comment>


Ask HN: Will you stop Googling now, that it removed URLs and added favicons? - <AUTHOR> I am seriously considering moving away from Google (or writing a browser addon) which will revert search results back to clean and readable form.<p>It seems "ad blending" made a final step towards morphing into organic results. It was distinct background first, ads count limited, then it went further and further and now it's just a favicon saying 'Ad' which distinguish sponsored content from the organic. <comment><USER3> Ugh, I only noticed the favicons today. It's such a clear attempt to blur the lines between the regular results (now with favicons) and the ads (now with something that looks very like a favicon, particularly when scrolling).

I've also noticed recently that the first search result page is absolutely filled with nonsense: "People also ask" "Refined by Brand" Map results, Sponsered banner etc. I did a search recently where there were only 3 actual results on the first page, the rest were peripheral items.

It's such a mess. Unfortunately no matter how many times I try to switch to DDG, the results just don't hold up. Particularly for localised results.

<comment><USER4> Startpage recently got acquired, and is now (at least partially) owned by an advertising company. As a privacy advocate, I don't trust them. I use DuckDuckGo, I don't use Startpage.

 _However_ , you have to think of privacy and consumer hostile behavior as a continuum. Even though I don't trust Startpage as a private search engine, I also don't trust Google as a private search engine. The question is, "is Startpage still better than Google?"

I think it is. I think if you're in the position of saying, "I can't use DDG, I get the privacy issues, I get the monopoly issues, but I just don't like their results", then Startpage is still going to be a pretty big step up in privacy over Google search. Startpage is still going to be a good way to fragment your data so one company doesn't know everything about you. It's still going to be a good way of getting around the worst user-hostile UI changes to blend ads into search results.

If you disable Javascript and run a Google search, every single link you click on gets wrapped in a Google URL to record that click -- there is no way around that without some kind of browser extension. If you disable Javascript and run a Startpage search, you get direct links to the website.

So I heavily encourage people in your position to use Startpage if the alternative is continuing to use Google Search directly.

<comment><USER5> > Startpage recently got acquired, and is now (at least partially) owned by an > advertising company. As a privacy advocate, I don't trust them. I use > DuckDuckGo, I don't use Startpage.

Not following the logic there. How is DuckDuckGo not an (entirely) advertising company? Do they make money off anything else other than ads and injecting affiliate links?

<comment><USER4> Yeah, I should have clarified more.

DuckDuckGo and Startpage always made money with advertising. The problem with Startpage's acquisition is the introduction of System1/Privacy One, which is not just focused on advertising, but on advertising based on consumer intent/interested, calculated by large-scale collection of consumer data.[0]

> "In our business," Blend adds, "if we can gather as much data as possible, > give it off to our engineers and data scientists, and then manage the two > effectively, the business can quickly scale."

Again, even though I don't trust System 1/Privacy One as much as I trust DuckDuckGo, I do still trust them more than Google.

[0]: [https://csq.com/2018/01/system-1-silicon-beach-sleeping- gian...](https://csq.com/2018/01/system-1-silicon-beach-sleeping-giant/)

<comment><USER5> That makes sense. I would still argue that Google back in the day when it only had 30M queries/day (like DDG has today) was no worse than DDG today, and that is the only fair comparison. Increased popularity together with influx of advertising money caused it to adopt product features and policies that allowed those advertisers to convert better, and make more money.

So basically what you are saying is "I trust that Weinberg & co are immune to that kind of pressure" or that their primary motives are altruistic in nature and will always stay such.

For me personally that is a hard sell. The elephant in the room is advertising based business models for search engines, and any company adopting it will be tempted to follow the path of Google if such opportunity is presented to it.

<comment><USER4> > "I trust that Weinberg & co are immune to that kind of pressure" or that > their primary motives are altruistic in nature and will always stay such.

No, not at all. I trust that _right now_ Weinberg & co are less likely to be actively caving to that pressure or actively exploiting my information.

Trust is always a moving target, but right now I know that Google logs literally everything I click on associated to an IP address, and uses that for targeted ads. As far as I know, Startpage doesn't currently do that, though I expect them to get more aggressive about data in the future. DuckDuckGo (most likely) also doesn't do that, and I expect it to take them some time and have additional warning signs before they start doing it.

The link wrapping is a good example of something measurable that matters at this moment. You can use Startpage without Javascript and with a few browser- level features toggled and be pretty certain that the actual link you click on will be impossible for them to log. With Google search, today, there's no way to do that.

<comment><USER5> Fair enough. Btw I find link wrapping is annoying, you could do it also with javascript, but it is necessary to improve the quality of search results. I would also want to know what results work for which queries.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> It makes me wonder whether Google is now "too big to fall" in regards to search.

I switched to DDG a few months ago, and quite frankly I can probably count the number of times I've needed to switch to Google on one hand, and nearly every time it's been related to looking up directions via web search and expecting Google Maps to open up. DDG and Bing are largely good enough already for standard web search. The standard has probably been there for a while, so I would argue that web search is largely down to experience right now - <USER2> DDG/Bing have Google beat here.

With that being said, I doubt the average person has even heard of DDG, and probably never uses Bing unless it's set up by default. If there was ever a time to market Bing and DDG as viable Google alternatives to the public, it's now.

<comment><USER7> You can pretend !g to your search and DDG will forward you to Google search. Just FYI

</comment></comment><comment><USER8> It just _looks_ awful. It's incredibly unaesthetically pleasing that they've replaced the green URLs with the black breadcrumb things.

<comment><USER9> You can make some of the pain go away, for now at least..

[https://greasyfork.org/en/scripts/395257-better- google](https://greasyfork.org/en/scripts/395257-better-google)

</comment></comment><comment><USER10> Gah. That new design is horribly ugly. One other thing I've always hated about Google: if you just want the URL for a page, you can't right-click on it in the search results and copy the URL -- because Google will instead give you some Google-riffic hybrid URL that first refers you through a Google address so they can capture your clickthrough.

I've tried to steer most of my searching away from Google. (Of course, that's easy if you're already using a search keyword to skip the part where you go to the search engine's home page first.)

<comment><USER11> >copy the URL -- because Google will instead give you some Google-riffic hybrid URL

Google no longer does that! because they switched to dedicated feature for just this very purpose :D [https://www.w3schools.com/tags/att_a_ping.asp](https://www.w3schools.com/tags/att_a_ping.asp)

"When the user clicks on the hyperlink, the ping attribute will send a short HTTP POST request to the specified URL.

This attribute is useful for monitoring/tracking."

Was introduced into HTML5 drafts as early as 2005, removed by 2010 due to obvious user spying connotations. Chrome and Safari fully support it, uBlock Origin strips it automatically (but wont be able to after manifest v3 goes thru).

</comment></comment><comment><USER12> What is worse is that most of the advanced queries aren't working anymore

<comment><USER13> Yup. Putting things in quotes is no longer "find this exact term" but a best match for most things.

And on top of that you can't find specific information on actual data if it anyway correlates to businesses that advertise. It's gotten painfully difficult to research markets that I'm casually interested in (e.g. tonight I wanted to compare a few cities by how many hotels they had - this is impossible on google and duck duck go with simple queries).

They really aren't doing a great job of cataloging data and making it useful to anyone but advertisers.

</comment></comment><comment><USER14> Google search has become less user unfriendly, turned their back on their old business model. It seems they've deliberately blurred the lines between ads and relevance.

Bing is now easier to use.

</comment><comment><USER15> The more shady stuff Google pulls the less inclined I am to even consider using them.

</comment><comment><USER16> I looked at it, was confused, then downloaded the duckduckgo search for Firefox.

</comment><comment><USER17> I would, yes, if I hadn't given up on Google already.

</comment><comment><USER18> The biggest issue for me is that github issues in the results don't have the issue title as title anymore but the name of the project. Makes it much harder to find an issue in all that noise.

</comment><comment><USER19> No. The favicons are cool. The ads are no worse for content than the other links so it's not a big deal. Often it just makes something that is already in the top 3 have a duplicate.

</comment><comment><USER20> As a business owner that relies on organic traffic, this is a huge hit

<comment><USER21> If you don't mind my asking, why?

</comment></comment><comment><USER22> I won't I stopped using Chrome / Google long time ago (> 1 year) I started to dislike Google since AMP introduced

</comment><comment><USER23> What do you mean? I don't see difference, can any1 take a screenshoot?

<comment><USER24> At the risk your joking;

[http://prntscr.com/qp1cs6](http://prntscr.com/qp1cs6)

Note: I scrolled past the top result and twitter to show you the listed results.

<comment><USER25> Partial rollout. They started doing these fugly icons months ago for selected users.

</comment></comment></comment><comment><USER26> Me too. The recent change is really disappointing.

</comment><comment><USER27> not at all. Every search engine I've tried has paled in comparison to Google's results.

</comment><comment><USER11> nah, I just whipped 10 line userscript to fix it back

<comment><USER28> I don't suppose you'd be so kind as to share it?

<comment><USER11> a part of a bigger script:

        let resultLinks = e ? e.querySelectorAll('.r>a:not([class])') : document.querySelectorAll('div#search .r>a:not([class])');
        for (let link of resultLinks)
        {
          //LC20lb yWc32e iUh30 B6fmyf
          link.removeAttribute("ping");
          link.querySelector('a>div>cite.iUh30').innerText = link.querySelector('a>.LC20lb').innerText;
          let div = document.createElement('span');
          div.innerText = link.href;
          div.className = 'LC20lb';
          link.querySelector('a>.LC20lb').parentNode.insertBefore(div, link.querySelector('a>.LC20lb').nextSibling);
          link.querySelector('a>.LC20lb').parentNode.removeChild(link.querySelector('a>.LC20lb'));
        }

It was just a quick fix to get urls back, still needs fixing the cache/translation links etc, havent gotten around to making it look 100% like the old search page [http://i.imgur.com/RoTJ5vG.png](http://i.imgur.com/RoTJ5vG.png)</comment></comment></comment>


Improving Connectomics by an Order of Magnitude - <AUTHOR> https://ai.googleblog.com/2018/07/improving-connectomics-by-order-of.html <comment><USER2> For those of you who would like to learn more about the field, I highly recommend this 3 part lecture by Jeff Lichtman, one of the leaders in this field

Part 1 is about the history of brain imaging and general info about how the brain is wired: [https://www.youtube.com/watch?v=MtTOg0mzRJc](https://www.youtube.com/watch?v=MtTOg0mzRJc)

Part 2 is about how the brain is connected to muscles through the central nervous system: [https://www.youtube.com/watch?v=r1qwQ3Qrzhs](https://www.youtube.com/watch?v=r1qwQ3Qrzhs)

Part 3 is pretty mindblowing, it talks about the imagine technique Google discusses here and about the machinery and microscopes that have to be developed to image a brain and the enormous challenge it posses. [https://www.youtube.com/watch?v=2QVy0n_rdBI&t=10s](https://www.youtube.com/watch?v=2QVy0n_rdBI&t=10s)

</comment><comment><USER3> This post introduced me to the field of connectomics. I must admit I am extremely fascinated by this field and the technology that characterizes it. Can anyone suggest me a few introductory resources, such as books and introductory papers, that they consider reliable?

<comment><USER4> Check out Sebastian Seung's lectures online

Connectome: How The Brain's Wiring Makes Us Who We Are

[https://www.youtube.com/watch?v=qS6nTA3DUuY](https://www.youtube.com/watch?v=qS6nTA3DUuY)

As well as the MIT Seung Lab's Eyewire Game. It's a kind of citizen science interface. Observing images of the neural structures behind the human eyeball. You can assist in untangling the dense jumble of wiring that leads to image processing in the brain ;)

</comment></comment><comment><USER3> This, to me, seems incredible stuff. Can someone with some knowledge of the field point out if this is really ground-breaking?

<comment><USER5> Yes, this is an important advance in the field. Google's been working on this for the past few years after convincing Viren Jain ([https://www.janelia.org/our-research/former-labs/jain- lab](https://www.janelia.org/our-research/former-labs/jain-lab)) to leave Janelia and perfect this technology. Very cool stuff! Even as early as two years ago, it generally took a grad student months to years of work to manually reconstruct 50-100 neurons (see [https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4844839/);](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4844839/\);) now this same process can be done in virtually no time at all. Expect to see several more papers in the future involving reconstructions of thousands to tens of thousands of neurons, instead of the hundreds we've been seeing. Exciting times!

<comment><USER3> Thanks for the response! I think the link you provided includes the ");" at the end, leading to an error page. Removing ");" leads to the article I think you wanted to mention. Anyway am I correct in saying this may allow research to analyze bigger and bigger neural networks (the biological ones)? I remember OpenWorm ([http://openworm.org/science.html](http://openworm.org/science.html)) which was able to recreate virtually the nematode's brain thanks to a few "maps" of its brain. Could this technology (coupled with the improvements that will come in the next years) allow something of the OpenWorm kind with more and more complex organisms?

<comment><USER6> To really extract networks, you would need to either image synapses (very, very difficult since they are sub-micron sizes) to determine how cells connect, or image something like calcium potential to infer a circuit of active neurons as a very sparse subset of a larger set of observed cells during a particular kind of neural activity.

<comment><USER3> The paper (available at [https://sci- hub.tw/https://www.nature.com/articles/s41592-01...](https://sci- hub.tw/https://www.nature.com/articles/s41592-018-0049-4)) says that the part of the zebra finch brain analyzed had a resolution of 9 x 9 x 20 nanometers. If I'm reading it correctly, should they not be able to analyze synapses, too? At that resolution, shouldn't synapses have been imaged too?

<comment><USER7> That's correct - I imaged the volume and we extracted the synapses before ([https://www.nature.com/articles/nmeth.4206](https://www.nature.com/articles/nmeth.4206)).

</comment></comment></comment></comment></comment></comment><comment><USER8> > Due to the high resolution of the imaging, even a cubic millimeter of brain > tissue can generate over 1,000 terabytes of data

This is so insanely unimaginable to me, wow

<comment><USER9> It sounds like a lot, but in 10 years it might be pretty manageble.

<comment><USER10> Serious question: As we near the end of Moore's Law, how much advancement in storage can we really expect from the next 10 years?

<comment><USER9> Moore's Law is merely a side effect of a larger law of accelerated return. You can see it with solar power, CPU's, disc storage, etc.

Every aspect of human technology is growing exponentially and the rate of growth itself is growing exponentially.

Population, overall education level of people, scientific inter-connectivity, the mere fact that entire new scientific disciplines can appear overnight pretty much indicate that we will face enormous advancement everywhere.

</comment></comment></comment></comment><comment><USER11> For a semester project in grad school, I once interviewed Ken Hayworth while he was at the Lichtman Lab at Harvard working on FIB-SEM tissue slicing and imaging technology to create extremely high-res imagery of slices of mouse brains.

The most interesting idea he discussed with me was the idea that getting to the point of pragmatic whole-brain imaging for purposes of connectomics-like neural reconstruction (and perhaps actual brain emulation) looked like it would be so hard that he expected there would be a funding model similar to the way astronomy labs handle expensive telescope time.

With telescope time, it's not economical for any specific lab to totally own the entire observatory, as the equipment is really expensive to create and maintain, and any given project may only utilize the equipment for a tiny fraction of the time. So instead, you get a model similar to cloud computing: some consortium will build and operate the infrastructure and different labs would bid on actual scope time to dedicate some devices for their specific research needs. The more urgent or promising the research project is, the more they might be willing to pay to get priority scope time, and this would drive what types of astronomical discoveries are made.

With connectomics / neural reconstruction, it could be similar. Someone might propose a certain section of the brain to map out because of a promising connection to a certain disease or development in cognitive science or an understanding of behavioral patterns. And over time we would get some piecemeal, patchwork "planetarium" map of an imaged brain where we have highly resolved detail about some regions, but have almost not information about others.

Incidentally, the project for which I conducted this interview was a semester project to try to pin down tight estimates on how long it would take using known technology to fully image a whole brain. There are several different physical techniques, but the FIB-SEM and ultramicrotome stuff was by far the most promising and most efficient.

To give some idea of the time scale involved in imaging a human brain, putting aside data storage, retrieval costs and the setup and preprocessing time to prepare the tissue into small enough column slides to be operated on by the particular device (FIB-SEM), a single 20 by 20 by 20 micron tissue cube can be imaged into 5 by 5 by 10 nm voxels in roughly 2 hours, assuming a 10 MHz optimized FIB-SEM device (which is a reasonable extrapolation from current technology).

It would take 30 years for one such FIB-SEM device to image a single cubic millimeter volume of tissue. The human brain is roughly 10^6 mm^3 in volume (it's between 10^5 and 10^6, just using an upper bound here), and so even if we parallelized a set of 100 such FIB-SEM devices and set them running continuously for 10 years, we would only have imaged 0.003% of the human brain at this resolution!

I'm sure other technological advances can speed this up, but it is really hard to predict by how much.

In my thinking, this is one of the main remaining reasons why someone might feel that strong AI is unlikely to be developed via first emulating human brains in software (e.g. like Robin Hanson's primary argument), compared with being developed through algorithmic research in machine learning and AI (the stuff that Friendly AI researchers are often more directly concerned about).

<comment><USER12> The Allen Institute for Brain Science is in the process of imaging 1 cubic mm of mouse visual cortex using TEM at a resolution of 4nm per pixel. The goal is to complete this in about 4 months running in parallel on 5 scopes. [https://www.youtube.com/watch?v=LO8xCLBv6j0&t=70s](https://www.youtube.com/watch?v=LO8xCLBv6j0&t=70s)

<comment><USER11> That's very cool. It looks like this was enabled by extremely recent advances in the FIB-SEM devices [0].

I'd say 20 total device-months is a bit optimistic, but maybe they will hit it, and even if they are anywhere close it will be impressive.

20 device-months for 1 mm^3 compared with 360 device-months with the devices I studied in 2012-14 is impressive. I hope they do it!

FWIW, my belief is that this line of research is probably more promising for strong AI than straight development of AI from e.g. meta-reinforcement learning, although in the end it probably will be a mix of these things.

[0]: < [https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5476429/#!po=3....](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5476429/#!po=3.23529) >

<comment><USER11> Just following-up on this, it's still staggering how long it would take to image the entire 10^6 cubic mm of the whole brain. If it took 20 device-months to image 1 cubic mm, it means we would need 20 _million_ device-months to image the whole brain.

With 10,000 devices running in parallel, and assuming no failure rate (though with a device count this high, failures would happen constantly), that would still require _2000 months_ (or about _167 years_ ) to image a whole brain.

Let's imagine the technology can undergo some type of Moore's Law (I don't know enough about the underlying SEM physics to know whether there is a clear ceiling on speedups achievable) and the time to image 1 cubic mm halves every two years. This might predict that in ~20 years, we could image a whole brain in about 4 months time (still requiring 10,000 parallel devices).

If you keep going past 20 years and continue the trend, but assume you would halve the device count but keep the 4-month timeline the same, then it would be about 42 years before a set of 5 devices could image the whole brain in 4 months time, or going on ~50 years until 5 devices could do it in less than one month, ~60 years before one device can do it in less than one month. Obviously, hugely gigantic error bars around such estimates.

</comment></comment></comment></comment><comment><USER13> Why are all of jmrko's links dead? They seem to be putting out useful information.

<comment><USER7> I just signed up for this, maybe that's the reason?

<comment><USER13> I guess that was the case, it all looks unflagged now. I'm really impressed with your work, one question, though. What do you believe are the biggest bottlenecks to speeding up your work? How soon could we see this applied to say, millimeter sized brains?

<comment><USER14> The Allen institute (see e.g. [https://twitter.com/danbumbarger?lang=de](https://twitter.com/danbumbarger?lang=de)) and also Jeff Lichtman ([https://lichtmanlab.fas.harvard.edu/](https://lichtmanlab.fas.harvard.edu/)) are very close to having solved the data acquisition problem (using very fast TEMs or multi-beam SEM) for cubic mm sized volumes, and we ([http://www.neuro.mpg.de/denk](http://www.neuro.mpg.de/denk)) are also working hard on it. On the analysis side (i.e. automatic reconstruction), I am actually optimistic that it is mainly a software engineering problem (scalability to Petabyte-sized volumes, use tailored machine learning for remaining problems, e.g. to identify reconstructions that make no sense) and not so much a fundamental algorithmic limitation problem anymore. So 2 years from now, we should see the first cubic mm reconstructions.

<comment><USER13> Just today they came out with the full image set of a fruit fly brain ([http://temca2data.org/](http://temca2data.org/)). Is the output of this something that could be fed through you algorithm, and if so, how long would that take?

</comment></comment></comment></comment></comment><comment><USER15> Wow, I knew connectomics was starting from behind, but I didn't realize the state-of-the-art was so bad they can't even reliably find neurons in pictures of neurons.

<comment><USER16> Take a look at the images in the paper...

It's rather a squiggly mess of lines... I can understand why it's hard!

Personally, I think we need even higher resolution imaging. We need to be able to do 5nm thick layers.

Obviously at that kind of resolution, we won't be able to store all the output data, so we're going to need to run this kind of segmentation and connector analysis in real-time as the data is generated.</comment></comment>


Future Directions for Optimizing Compilers - <AUTHOR> https://arxiv.org/abs/1809.02161 <comment><USER2> > For these we don't really need optimizations.

While it's true that many sites with high volume are written in high level languages, it's still true that these will require more CPU and memory than something which is highly optimized written in a lower level language. The trade-off is that it takes less developer time to write code in the high level language and the savings there are enough to invest in more computing power.

However, if you can optimize code for high level languages even further, you're still reducing the hardware requirements and ultimately saving costs. If you can build a stable Ruby VM that runs with 10% fewer resources and is compatible with existing applications, I think you'll find people willing to throw money your way.

<comment><USER3> _The trade-off is that it takes less developer time to write code in the high level language and the savings there are enough to invest in more computing power._

Not if your application is being used by many users; optimising exclusively for development time is only for rarely-used/one-off things or if you don't value your user's time --- some of whom may be themselves developers. The more users you have, the more it matters.

We've somehow gotten ourselves into a situation where relatively few developers are making countless more users waste time and hardware resources for their own selfish benefit, and I think that's a very bad thing.

<comment><USER4> I think it is a matter of saving resources on language design until it matters, not always a good decision.

Take Java for example.

When it came into scene we had Oberon and its variants, Ada, Modula-3 and Eiffel.

All supported JIT/AOT compilation, value types, and with exception of Oberon, generics.

Most of the last changes at the JVM level, and the upcoming ones on Java's roadmap are basically catching up with what was already possible in the mid-90's.

So how much money could Sun, Oracle and IBM have saved if those features were there from the beginning?

We will never know, but we will know how much the bill is going to be, given that it is 10+ year process currently.

All because the current hardware changes make it impossible for Java to continue to ignore those features, if it is to stay relevant against other languages.

Same applies to other languages in different ways.

<comment><USER5> So the question becomes: If Java is today still catching up with a list of 90s languages, why is it used instead of them?

Part of the answer is that Java still advance the state of the art for most people: It got safety and garbage collection accepted by the mainstream.

Oberon etc were not in reach for the average Joe, the tooling was too expensive and the cheap, resource constrained PCs couldn't run it. The language required sophistication from the programmers. Nobody was available to answer questions, the ecosystem wasn't there.

Java, o.t.o.h. had something for everybody. It was safer than C, important if you wanted a stable web server. It was faster than perl or shell scripting, so you also had a cheap web server. The browser got nicer graphics from applets. Enterprise architecture got a way forward from CORBA to JEE without having to admit something was wrong. Hardware vendors got a way to stay relevant in the face of Windows. Tooling vendors and consulting companies got a reason to sell. Managers got cogweel replaceable programmers. Schools got a reasonable and vendor-neutral language. Even if none of promises was completely fulfilled, it was close enough long enough.

So basically the language design resources for Oberon were in the end more wasted than those on Java. 'Worse is better' once again.

<comment><USER6> > Oberon etc were not in reach for the average Joe, the tooling was too > expensive and the cheap, resource constrained PCs couldn't run it.

I'm sorry, but that's just nonsense. You can argue lack of documentation and user community, but Oberon is about as resource economic as it gets, and was originally designed for mid-80s hardware.

[https://en.wikipedia.org/wiki/Ceres_(workstation)](https://en.wikipedia.org/wiki/Ceres_\(workstation\))

<comment><USER5> And where was the oberon tooling for x86 dos or win98. Im not saying it was impossible to create, but nobody seems to have cared enought to do it, to get it in the hands of the user at an affordable price

<comment><USER4> It was available for free on Linux, SunOS, Windows, with the source code documented on the "Project Oberon" book, affordable enough for you?

<comment><USER5> It's a good start but:

* It wasnt very visible in the ICT media. Sun did a full steam ahead Java Campaign

* Open source at the time was not seen as trustworthy. I did run Linux at the time. SO did you, probably. Corporations would not touch it with a 10 feet pole. I presume oberon was seen in the same light.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> While the suggestions are definitely interesting, and the fact that compilation times are given proper attention is positive, it does seem to me that this is still pushing in the wrong direction, overall, of fully automatic optimization.

We now have machines that are fast enough for many/most activities, as evidenced by production code that's written in Ruby, Python, JS, etc. For these we don't really need optimizations.

On the other hand, performance critical routines tend to require human attention, and for these the approach of having the optimizations fully automated is generally less than helpful.

As Knuth put it, in 1974 nonetheless:

"For some reason we all (especially me) had a mental block about optimization, namely that we always regarded it a behind-the-scenes activity, to be done in the machine language, which the programmer isn't supposed to know. This veil was first lifted from my eyes in the Fall of 1973. when I ran across a remark by Hoare [42] that, ideally, a language should be designed so that an optimizing compiler can describe its optimizations in the source language. Of course! Why hadn't I ever thought of it?

Once we have a suitable language, we will be able to have what seems to be emerging as the programming system of the future: an interactive program- manipulation system ..." \-- [http://www.cs.sjsu.edu/~mak/CS185C/KnuthStructuredProgrammin...](http://www.cs.sjsu.edu/~mak/CS185C/KnuthStructuredProgrammingGoTo.pdf)

So let's have systems/languages that allow us to express performance constraints and performance-oriented transformations, and let the compiler/language assist us in doing this.

<comment><USER8> That seems interesting in theory but I have a hard time imagining what it would look like in practice. In my experience micro-optimizing C code looks like what you describe: when you write your algorithm you have a pretty clear idea about what the machine code should look like. You compile it and check the assembly output to see if the compiler understood what you were going for. If it doesn't look like what you were expecting you need to make sure that the compiler didn't manage to actually generate better code than you exepected (because it might know things about the underlying architecture that you don't) and if it turns out that it's genuinely sub-optimal then you refactor your code a bit until you manage to get the compiler to do what you want. It can be a frustrating process.

Now we do have a few language constructs to help us here, although sometimes it's not enough. We have inline, restrict, register as well, although that one is not really used a lot in practice in my experience (at least not for its original purpose). We have compiler extensions for computed GOTOs, alignment constraints etc...

In this context what would "an interactive program-manipulation system" look like? Personally I think we could use more standardized constraints in languages like C to be able to annotate code in a way that could be useful to optimizer, such as tagging "cold" code, having control of the prefetcher and being able to write SIMD code without using intrinsics (a very complex problem admittedly). Standardizing computed gotos would be nice as well.

Beyond that, in my experience a big problem with modern architectures is that it's very much non-trivial to figure out what's the fastest way to implement an algorithm. You have to consider which CPU model you're using, the cache architecture, RAM speed ... Second-guessing the compiler is pretty hard if you don't have a lot of experience optimizing for a particular architecture.

<comment><USER9> It seems pretty clear that Knuth was not talking about instruction-level optimization, but about those activities/features that came to be known as metaprogramming, reflection, refactoring etc.

I imagine he was thinking about human-directed program transformations that are almost language and machine-independent, implicitly high-level, whole- program stuff, rather than aimed at writing "idiomatic" fast machine code. So I guess not the kind of optimization you have in mind.

What sounds more applicable for your use case would be profile-directed optimization, maybe based on mutating an initial fragment of assembler in ways that preserve its semantics but might improve performance. Like [https://en.wikipedia.org/wiki/Superoptimization](https://en.wikipedia.org/wiki/Superoptimization). But unless you wanted to create an instruction set that included reflection as a feature, this would most conveniently be written in another language.

Edit: I should clarify, obviously self-modifying code written in assembler is in some sense reflective, but it's hard work.

</comment></comment></comment><comment><USER10> A friend recently defended his doctoral thesis on using constraint-based optimization in compiler backends (reg alloc and instr shed).

<comment><USER10> Link to thesis: [http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-232192](http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-232192)

<comment><USER11> Lazano did the Unison combined RA + scheduler. Cool that he followed through and got his PhD.

 _Register Allocation and Instruction Scheduling in Unison_

[http://llvm.org/devmtg/2017-03//assets/slides/register_alloc...](http://llvm.org/devmtg/2017-03//assets/slides/register_allocation_and_instruction_scheduling_in_unison.pdf)

</comment></comment></comment><comment><USER12> A bit off topic, but how does one frame the difference between "compiler level optimisation" and "high level optimisation" ? I can sure make a difference between optimising for CPU cycles and optimizing a QuickSort pivot search, but I have hard times generalizing/formalizing that idea. It seems important to me because it would be needed to set realistic/measurable objectives on compilers.

<comment><USER11> I think that _high level optimization_ is a synonym for _machine independent optimization_. The classic example would be common subexpression elimination. Similarly _compiler level_ is a synonym for _low level, machine dependent code generation_. An example would be peephole optimization.

Front end vs back end.

<comment><USER13> I don't know, HLO could also be language-level optimisations (specific based on known language semantics), while LLO would be IR-level optimisations (more generic and reusable).

</comment></comment></comment><comment><USER14> I think something like BOLT[1] has more promise. Now that I think about it, I'm curious if I take my unoptimized executable, generate the profile for BOLT, then apply BOLT's optimizations, is it possible to come out ahead of the Compiler+BOLT optimizations?

1 - [https://github.com/facebookincubator/BOLT](https://github.com/facebookincubator/BOLT)

<comment><USER15> Correct me if I'm wrong, but that architectually seems to be a conventional (profile-guided/feedback-driven) optimizing compiler, except the input "language" is machine code.

For instance, it's peephole optimizations are also a chunk of hand-written C++ code ([https://github.com/facebookincubator/BOLT/blob/2ed436a6d3b17...](https://github.com/facebookincubator/BOLT/blob/2ed436a6d3b17044a8d230af7a73eaf7b7249e8c/src/Passes/BinaryPasses.cpp#L1047-L1147)), and thus could benefit just as much from the more declarative (and possibly SMT-driven) ideas in this paper.

Finally, there's all sorts of optimizations that are only possible because of high-level information from the source language. For instance, removing unnecessary loads & stores requires knowing pointers don't alias, which is very difficult to deduce given unannotated integers (most of this is driven by language rules, such as the (controversial) TBAA in C). Additionally, even the BOLT paper itself mentions things that can be understood (and optimized for) from a higher-level language, but are much harder to deduce from a raw binary (Section 8):

> Indirect tail calls are more challenging for static binary rewriters because > it is difficult to guess if the target is another function or another basic > block of the same function, which could affect the CFG

And, the paper touches on your curiosity in the conclusion:

 _> Nevertheless, a post-link optimizer has fewer optimizations than a compiler. We show that the strengths of both strategies combine instead of purely overlapping_

(Oh, one more post-finally thing, there's probably an argument to be had that BOLT fits into the (backend) superoptimizer category of the paper.)

<comment><USER14> BOLT's input is machine code and a profile from running the executable in production. This definitely puts it outside the conventional optimizing compiler because the conventional compiler has no information about how the code will actually be executed.

<comment><USER15> That is how profile-guided optimisation (PGO) aka feedback-directed optimisation (FDO) works.

</comment></comment></comment></comment><comment><USER16> Am I missing something, or is their example at the start of section 3 (bottom of page 7) plain wrong? If x is an uint32_t, then ((x << 31) >> 31) + 1 returns either 1 or 2; while the "optimized" version ~x&1 reutrns 1 or 0 (which matches the semantics they describe, while the initial code does not).

<comment><USER17> If you look at the llvm IR, it is using ashr (arithmetic shift), so you can probably assume this isn't targeting unsigned types

<comment><USER18> The text also explicitly states this is about signed integers: _"let's look at taking ((x << 31) >> 31) + 1, an inefficient idiom for isolating and flipping the low bit of a signed 32-bit integer"_

I think there is an error on page 9, though: _"Second, −a+−b can be rewritten as −(a − b)"_. I think that should be either a left-hand side of _"-a--b"_ or a right-hand side of _"-(a + b)"_.

</comment></comment></comment><comment><USER19> One thing I've been wondering about recently, is if we should have a compile- time vs. runtime distinction? What if the language was running on a tracing JIT, where the JIT output and runtime tracing from last time was cached and available immediately?

</comment><comment><USER20> I've been working with compilation using Prolog (after Warren 1980 went by here on HN a month or so ago.[1])

Two things:

1) If you are writing a compiler and NOT using Prolog you are almost certainly working way too hard.

2) I think I can see an alternate reality where compiler-like software exists but high-level programming languages as such do not.

[1] [https://news.ycombinator.com/item?id=17674859](https://news.ycombinator.com/item?id=17674859)

<comment><USER21> Anything publicly available?

<comment><USER20> I'm afraid my own work is yet inchoate, but there are decades of research. Here are some papers I've been looking at recently:

"Logic Programming and Compiler Writing" David H. D. Warren (this is the kickoff.)

"Parsing and Compiling Using Prolog" Jacques Cohen and Timothy J. Hickey

"Provably Correct Code Generation: A Case Study" Qian Wang, Gopal Gupta

"From Programs to Object Code and back again using Logic Programming: Compilation and Decompilation" Jonathan Peter Bowen

"Automatic Derivation of Code Generators from Machine Descriptions" R. G. G. Cattell</comment></comment></comment>


Ash HN: How you avoid butt-dialing? - <AUTHOR>

I just dialed a friend 3 times in a row by accident in the period of 10 minutes. What is your way to avoid butt-dialing, and how well does it work?
Suggestions I've read about are "just lock your phone", for Android: unlock pattern, Call Confirm app, Tiny Call Confirm + app, iPhone and others: pin lock.
I still think having a clamshell phone was the best way to avoid butt-dialing, though. <comment><USER2> Put it in a pocket that isn't full of day-to-day stuff like coins, keys, etc., and doesn't suffer random, potentially damaging physical intrusions? Inside jacket for me.

PS: The fact there are apps for this 'problem' makes me chuckle.</comment>


Wrestling with the Security Trilemma - <AUTHOR> https://medium.com/@SaitoOfficial/wrestling-with-the-scalability-trilemma-1eef0426673 <comment><USER2> Any suggestions on how Bitcoin can deal with that fee-recycling attack? The 2200 scenario given as an example halfway through the piece?

<comment><AUTHOR> Currently Bitcoin has a delay of something like 50 blocks before the block reward is spendable. This imposes a minimum size on the amount of float needed to pull off the attack.

One strategy any proof-of-work chain can use is to just increase the delay. This doesn't mitigate the attack vector though so much as just make it a bit more expensive to get started. It also has imposes some extra costs on miners and may discourage smaller miners from even joining the network.</comment></comment>


Ask HN: What database lesson did you learn too late? - <AUTHOR> I teach database classes, and I'm always curious to know: what were some of the biggest lessons you felt you learned too late? Things that bit you, and you wish someone would have distilled down to a very short, clear lesson that you could have absorbed earlier to prevent pain later? <comment><USER2> You taught me that there's more than one type of DBA. It took me 6 years to learn that. Until that point I thought there was only one type of DBA and they did ALL the DBA things. I now use the chart you showed in the Senior DBA class to help guide the structure of our company in a way that makes sense for everyone. Seriously, a non-technical thing!

\- Chris

</comment><comment><USER3> Being able to copy entire databases within a single database before performing operations. Obvious in hindsight. It's faster, safer and HIPAA compliant. Also at [https://harrymoreno.com/2017/06/14/Backing-up-sql-data- witho...](https://harrymoreno.com/2017/06/14/Backing-up-sql-data-without- transfer.html)

</comment><comment><USER4> Seperating disk for different db files, as well as moving them out from C:/</comment>