Other highlights in thread:
Best posts made by MZH
-
RE: In other news today...
@RaceProUK said in In other news today...:
<rant>Goddamn condensed-matter physicists are always putting out news reports that make their work sound like physics-defying magic and hoping nobody notices the weasel words "effective", "virtual", or "quasi". Then readers are disappointed when the magic is completely useless in that you can't do anything with it.
Previously seen:
- "Light going faster than the speed of light": except the velocity that matters for sending signals is group velocity, which is always at most c. Although, in this experiment, the presence of weird materials muddy even the definition of group velocity, so nobody knows what speed anything is traveling at, or even in what direction.
- "Magnetic monopoles discovered": "The [magnetic] charge isn't attached to any physical object, but it behaves just as a monopole would." It's a quasi-particle, not a new fundamental particle, meaning it's a collective effect of many super-cooled particles. Fake
newsparticle!
Bastards!</rant>
Anyway (enough of my fundamental particle physics bias), the key term in this paper is effective mass: a concept used to simplify the models of electrons and other particles moving through condensed matter like semiconductor crystals or, in this case, a Bose-Einstein condensate, so they more closely approximate the simpler motion of particles in a vacuum. This allows calculations that effectively ignore the complicated surrounding structure. Because effective mass is a mathematical trick with a tenuous connection to reality, it can take on arbitrary values, even negative. In this way, it's a bit similar to creating faster-that-light motion by shining a laser pointer at the moon and then flicking your wrist to the side. The spot will move at a speed faster than light, but the spot is not really a physical thing, to relativity is still valid.
The dispersion relation refers to how different wavelengths/energies move through a medium at varying speeds. This can be seen in waves on the surface of water here. Notice how individual waves (red dots) can move faster than the "pulses" (green dots). If the waves were light, that's how you get faster-than-light light. It is primarily a wave concept, and the current experiment is primarily explained in terms of the wave properties of matter, so talking about mass without distinguishing between particle mass and effective mass doesn't serve much purpose in a news article meant for the wider public other than being able to talk about "negative mass" weirdness.
The actually cool result of the paper: Specially shaped particle traps can cause particles to move in the opposite direction of applied forces, hence the "negative" effective mass. Remember that the effective mass concept is meant to allow scientists to ignore the surrounding structure, so the particles are responding to other forces that are left out of the effective mass model. But, the paper (which I have, if anyone is interested) is an experimental demonstration that the effective mass model is accurate. The experiment matches computer simulations, so the negative effective mass was expected. This is still cool since it can help explain the microscopic behavior of semiconductors, where the crystal structure acts similarly to the artificial particle trap. Common descriptions describe the activity inside the semiconductor with moving electrons and positively charged "holes" which are really where electrons have vacated. These holes act like independent particles (quasiparticles) and the negative effective mass of surrounding electrons helps explain their persistence.
Condensed-matter physicists are still marketing-level, double-talking bastards, though.
-
RE: A.I. gone wrong...
This paper has a lot more details behind some of these examples.
Plus, there are videos of the rogue AIs
https://www.youtube.com/playlist?list=PL5278ezwmoxQODgYB0hWnC0-Ob09GZGe2
I got interested in this a while back when I started writing a chess engine that improves itself through a genetic algorithm. Luckily, (or not, depending on the entertainment value) chess is such a simple environment that the weirdest thing I ever saw was when evolved players were deliberately picking bad moves--treating pawns as the most valuable piece and actively trying to get its own queen captured. Turns out I screwed up the minimax algorithm and the players thought they were picking moves for their opponent.
And one more creepy story I liked from the paper:
In research focused on understanding how organisms evolve to deal with high-mutation-rate environments, Ofria sought to disentangle the beneficial effects of performing tasks (which would allow an organism to execute its code faster and thus replicate faster) from evolved robustness to the harmful effect of mutations. To do so, he tried to turn off all mutations that improved an organism’s replication rate (i.e. its fitness). He configured the system to pause every time a mutation occurred, and then measured the mutant’s replication rate in an isolated test environment. If the mutant replicated faster than its parent, then the system eliminated the mutant; otherwise, it let the mutant remain in the population. He thus expected that replication rates could no longer improve, thereby allowing him to study the effect of mutational robustness more directly. Evolution, however, proved him wrong. Replication rates leveled out for a time, but then they started rising again. After much surprise and confusion, Ofria discovered that he was not changing the inputs that the organisms were provided in the test environment. The organisms had evolved to recognize those inputs and halt their replication. Not only did they not reveal their improved replication rates, but they appeared to not replicate at all, in effect “playing dead” in front of what amounted to a predator.
-
RE: The Official Making Fun Of Programming Languages Thread
I've posted this elsewhere, but since this is the OFFICIAL thread:
1801 - Joseph Marie Jacquard uses punch cards to instruct a loom to weave "hello, world" into a tapestry. Redditers of the time are not impressed due to the lack of tail call recursion, concurrency, or proper capitalization.
1842 - Ada Lovelace writes the first program. She is hampered in her efforts by the minor inconvenience that she doesn't have any actual computers to run her code. Enterprise architects will later relearn her techniques in order to program in UML.
1936 - Alan Turing invents every programming language that will ever be but is shanghaied by British Intelligence to be 007 before he can patent them.
1936 - Alonzo Church also invents every language that will ever be but does it better. His lambda calculus is ignored because it is insufficiently C-like. This criticism occurs in spite of the fact that C has not yet been invented.
1940s - Various "computers" are "programmed" using direct wiring and switches. Engineers do this in order to avoid the tabs vs spaces debate.
1957 - John Backus and IBM create FORTRAN. There's nothing funny about IBM or FORTRAN. It is a syntax error to write FORTRAN while not wearing a blue tie.
1958 - John McCarthy and Paul Graham invent LISP. Due to high costs caused by a post-war depletion of the strategic parentheses reserve LISP never becomes popular[1]. In spite of its lack of popularity, LISP (now "Lisp" or sometimes "Arc") remains an influential language in "key algorithmic techniques such as recursion and condescension"[2].
1959 - After losing a bet with L. Ron Hubbard, Grace Hopper and several other sadists invent the Capitalization Of Boilerplate Oriented Language (COBOL) . Years later, in a misguided and sexist retaliation against Adm. Hopper's COBOL work, Ruby conferences frequently feature misogynistic material.
1964 - John Kemeny and Thomas Kurtz create BASIC, an unstructured programming language for non-computer scientists.
1965 - Kemeny and Kurtz go to 1964.
1970 - Guy Steele and Gerald Sussman create Scheme. Their work leads to a series of "Lambda the Ultimate" papers culminating in "Lambda the Ultimate Kitchen Utensil." This paper becomes the basis for a long running, but ultimately unsuccessful run of late night infomercials. Lambdas are relegated to relative obscurity until Java makes them popular by not having them.
1970 - Niklaus Wirth creates Pascal, a procedural language. Critics immediately denounce Pascal because it uses "x := x + y" syntax instead of the more familiar C-like "x = x + y". This criticism happens in spite of the fact that C has not yet been invented.
1972 - Dennis Ritchie invents a powerful gun that shoots both forward and backward simultaneously. Not satisfied with the number of deaths and permanent maimings from that invention he invents C and Unix.
1972 - Alain Colmerauer designs the logic language Prolog. His goal is to create a language with the intelligence of a two year old. He proves he has reached his goal by showing a Prolog session that says "No." to every query.
1973 - Robin Milner creates ML, a language based on the M&M type theory. ML begets SML which has a formally specified semantics. When asked for a formal semantics of the formal semantics Milner's head explodes. Other well known languages in the ML family include OCaml, F#, and Visual Basic.
1980 - Alan Kay creates Smalltalk and invents the term "object oriented." When asked what that means he replies, "Smalltalk programs are just objects." When asked what objects are made of he replies, "objects." When asked again he says "look, it's all objects all the way down. Until you reach turtles."
1983 - In honor of Ada Lovelace's ability to create programs that never ran, Jean Ichbiah and the US Department of Defense create the Ada programming language. In spite of the lack of evidence that any significant Ada program is ever completed historians believe Ada to be a successful public works project that keeps several thousand roving defense contractors out of gangs.
1983 - Bjarne Stroustrup bolts everything he's ever heard of onto C to create C++. The resulting language is so complex that programs must be sent to the future to be compiled by the Skynet artificial intelligence. Build times suffer. Skynet's motives for performing the service remain unclear but spokespeople from the future say "there is nothing to be concerned about, baby," in an Austrian accented monotones. There is some speculation that Skynet is nothing more than a pretentious buffer overrun.
1986 - Brad Cox and Tom Love create Objective-C, announcing "this language has all the memory safety of C combined with all the blazing speed of Smalltalk." Modern historians suspect the two were dyslexic.
1987 - Larry Wall falls asleep and hits Larry Wall's forehead on the keyboard. Upon waking Larry Wall decides that the string of characters on Larry Wall's monitor isn't random but an example program in a programming language that God wants His prophet, Larry Wall, to design. Perl is born.
1990 - A committee formed by Simon Peyton-Jones, Paul Hudak, Philip Wadler, Ashton Kutcher, and People for the Ethical Treatment of Animals creates Haskell, a pure, non-strict, functional language. Haskell gets some resistance due to the complexity of using monads to control side effects. Wadler tries to appease critics by explaining that "a monad is a monoid in the category of endofunctors, what's the problem?"
1991 - Dutch programmer Guido van Rossum travels to Argentina for a mysterious operation. He returns with a large cranial scar, invents Python, is declared Dictator for Life by legions of followers, and announces to the world that "There Is Only One Way to Do It." Poland becomes nervous.
1995 - At a neighborhood Italian restaurant Rasmus Lerdorf realizes that his plate of spaghetti is an excellent model for understanding the World Wide Web and that web applications should mimic their medium. On the back of his napkin he designs Programmable Hyperlinked Pasta (PHP). PHP documentation remains on that napkin to this day.
1995 - Yukihiro "Mad Matz" Matsumoto creates Ruby to avert some vaguely unspecified apocalypse that will leave Australia a desert run by mohawked warriors and Tina Turner. The language is later renamed Ruby on Rails by its real inventor, David Heinemeier Hansson. [The bit about Matsumoto inventing a language called Ruby never happened and better be removed in the next revision of this article - DHH].
1995 - Brendan Eich reads up on every mistake ever made in designing a programming language, invents a few more, and creates LiveScript. Later, in an effort to cash in on the popularity of Java the language is renamed JavaScript. Later still, in an effort to cash in on the popularity of skin diseases the language is renamed ECMAScript.
1996 - James Gosling invents Java. Java is a relatively verbose, garbage collected, class based, statically typed, single dispatch, object oriented language with single implementation inheritance and multiple interface inheritance. Sun loudly heralds Java's novelty.
2001 - Anders Hejlsberg invents C#. C# is a relatively verbose, garbage collected, class based, statically typed, single dispatch, object oriented language with single implementation inheritance and multiple interface inheritance. Microsoft loudly heralds C#'s novelty.
2003 - A drunken Martin Odersky sees a Reese's Peanut Butter Cup ad featuring somebody's peanut butter getting on somebody else's chocolate and has an idea. He creates Scala, a language that unifies constructs from both object oriented and functional languages. This pisses off both groups and each promptly declares jihad.
Footnotes
[1] Fortunately for computer science the supply of curly braces and angle brackets remains high.
[2] Catch as catch can - Verity Stob -
RE: WTF Bites
@cartman82 I think this one is worse:
How has this literal one-line function accumulated 15 commits and 5 bug reports?
-
RE: Enlightened
@gąska said in Enlightened:
I checked on http://isearchfrom.com/ and the first search result for FFI in USA is Foreign Function Interface. Either the site is broken, Google decided you're more of an enterpreneur than a programmer, or you're lying.
Now I'm worried of what Google thinks of me, since the first result I got was fatal familial insomnia.
-
RE: WTF Bites
@hardwaregeek said in WTF Bites:
Conclusion: you guys sucked at inventing original names for geographical things
Settlers wanted to be reminded of places they came from.
-
RE: The 2018 is the year of Linux on a laptop, right?
@timebandit said in The 2018 is the year of Linux on a laptop, right?:
From Wikipedia:
Computer hardware are the physical parts or components of a computer, such as the monitor, keyboard, computer data storage, graphic card, sound card and motherboard. By contrast, software is instructions that can be stored and ran by hardware.
Hardware is directed by the software to execute any command or instruction. A combination of hardware and software forms a usable computing system.
Easier definitions:
Hardware: the part of a computer you can kick.
Software: the part of a computer you can only scream at -
RE: The Official Making Fun Of Programming Languages Thread
@gąska said in The Official Making Fun Of Programming Languages Thread:
@createdtodislikethis Rust has
Cow<T>
type that can wrap nearly any type to give it COW semantics.If this was ported to C++, would the type implement MOOve semantics?
I'm sorry--No I'm not
Latest posts made by MZH
-
RE: Lambdas everywhere!
@topspin said in Lambdas everywhere!:
Although std::for_each is still way inferior to range-based for loops, so there basically was never any time that was usable.
True. The only use I've found for
std::for_each
is operating on a subset of a container delimited by iterators:std::for_each(it1, it2, do_the thing);
-
RE: Lambdas everywhere!
This kind of pattern can be useful for creating
const
variables that require complicated setup. I've written stuff like this:const auto square_hash_values = []() { std::array<std::array<uint64_t, 13>, 64> hash_cache; for(auto& square_indexed_row : hash_cache) { std::generate(square_indexed_row.begin(), square_indexed_row.end(), Random::random_uint64); } return hash_cache; }();
This is part of a Zobrist hash scheme for my chess engine. The example in the OP is simple enough that the lambda function is overkill (even if nested ternaries make my teeth itch). If he's calling named lambdas in a loop, he should probably be using something from
<algorithm>
or<numeric>
. -
RE: I need a box-filling algorithm for a particular set of constraints.
Treat the container like a string with letters coming from
masses
. Start with a container containing nothing, then iterate by creating the next string of the same size in lexicographic order and adding another mass when the container contains nothing but the last element ofmasses
. Stop when the size of the container is greater thancap
. This is similar to @topspin (generate all possible containers and filter), but with a different metaphor.def generate_containers(masses, min_total_mass, max_total_mass, capacity): container = [] while len(container) < capacity: if min_total_mass <= get_total_mass(container) <= max_total_mass: yield container container = next_container(container, masses) yield None # or whatever proper way to terminate a generator def next_container(container, masses): # pythonism: masses[-1] is the last element of masses if all(m == masses[-1] for m in container): return [masses[0]] * (len(container) + 1) # create the next largest container with only first mass for i in range(len(container)): if container[i] == masses[-1]: container[i] = masses[0] else: container[i] = masses[masses.index(container[i]) + 1] return container
-
RE: Music database considerations
@Gurth said in Music database considerations:
The 8 different bands called Live
True Story™
puts on music tape
“Who is this?”
“It’s Live.”
“Sounds good for live.”
…
“You know the band is called ‘Live’, right?”
“Oh! Okay!” -
RE: Leaked Intel
@HardwareGeek said in Leaked Intel:
@error I've also read that that is a myth, and the US military denies that the codes were ever zero.
Also, the OP was in the "In Other News Today" thread.
I think that story is actually true (more complex in reality, but mostly true). Here's a writeup by a professor at the U.S. Naval War College who specializes in nuclear war and Russia:
-
RE: We are all agile, and there is no waterfall anymore
@apapadimoulis said in We are all agile, and there is no waterfall anymore:
@bobjanova said in We are all agile, and there is no waterfall anymore:
Even if done well, you'll end up with a lot of small, disconnected features and components which don't fit into a coherent whole, which will probably be a deployment nightmare
One of my favorite anti patterns, the micro-service based monolith! I need a better name....
The modulith:
-
RE: Foot shooting
@Gąska said in Foot shooting:
30 years ago stupid people were not paying $350 for vagina scented candles.
30 years ago stupid women were not buying expensive magic stones to put in their twats.I'm not going to pollute my Google history with these oddly specific searches, but it's enough to say magic stones have been around since forever, and never lost their popularity. Not even in the 80s. And folk medicine books contain a lot of... interesting things to do with your genitalia.
It glows in the dark! It must be healthy! Science!
-
RE: In other news today...
@dkf said in In other news today...:
@Dragoon said in In other news today...:
That really needs independent reproduction.
This is especially true given the experimental group's history. From three years ago (the first Be-8 announcment):
The Atomki group has produced three previous papers on their beryllium-8 experiments — conference proceedings in 2008, 2012 and 2015. The first paper claimed evidence of a new boson of mass 12 MeV, and the second described an anomaly corresponding to a 13.45-MeV boson. (The third was a preliminary version of the Physical Review Letters paper.) The first two bumps have disappeared in the latest data, collected with an improved experimental setup. “The new claim now is [a] boson with a mass of 16.7 MeV,” Naviliat-Cuncic [a Michigan State University nuclear physicist] said. “But they don’t say anything about what went wrong in their previous claims and why we should not take those claims seriously.” One naturally wonders, he said, “Is this value that they quote now going to change in the next four years?”
What Naviliat-Cuncic finds most astonishing about [leader of the experimental group] Krasznahorkay’s account of the past decade is his group’s failure to report any of their results that did not indicate new bosons; instead, they seemed to view these experiments as failures. “Is it not a rather flagrant (and naive) admission of a bias?” he said. Thaler explained, “The gold standard in particle physics is blind analysis, where you first decide what you are going to measure, you perform all cross-checks without looking at the final result, and you report the results regardless of the outcome.” Not doing so “sounds like cherry-picking evidence,” he said, which “can be a way to manufacture false positives.”
Most weirdly,
whereas the world’s biggest supercollider was needed to produce the heavy Higgs boson, the hypothetical Hungarian boson is so lightweight, with a mass only 34 times that of the electron, that it could have turned up in experiments decades ago. If it really exists, how did it go unnoticed for so long?
-
RE: 💀🔗✏️
Finished it. Letters on the outside of the puzzle should replace the black squares they are next to (I guessed wrong for 1 across).
-
RE: 🔓
https://today.referdex.com.au/?today_entry=1752&today_session=6908b7d18a886f9e750171d32092e913
The first telegraph pole was installed near the Perth jetty by Colonial Secretary, the Honorable Fred Barlee, in 1869, and a 12-mile wire extended to Fremantle. The first telegram was sent on 21 June 1869. The text of the first telegram read:
"To the chairman of the Fremantle Town Trust. His Excellency Colonel Bruce heartily congratulates the inhabitants of fremantle on the annihilation of distance between the Port and the Capital and he requests that this the first message may be publicly known.
Government House 21st June 1869."