News for hackers. Stuff that matters.

wnewman

Re:The cost of parsing JSON on Wednesday September 18, 2019 @02:21PM (#21008354)
This hack is supposed to be for huge data: 10kb or more, thus comfortably more than a page. If the >10kb wall o' code was wrapped in a parse-as-JSON-at-runtime function call which was was preceded by a three-line comment describing a quick and dirty benchmark showing that it saves a useful number of milliseconds on page load in a fairly typical use case, and if the web resource was intended to be loaded many millions of times, I would nod and approve when reviewing the code. The way the original objector writes, it sounds as though nothing would suffice to justify this hack, and certainly not a mere benchmark and 3 lines of comments preceding it. That attitude seems like unreasonable blinkered zealotry, or some other kind of tunnel vision, e.g. someone who has just never thought seriously about the appropriate tradeoffs in maintaining a web resource which gets loaded millions of times a month.
Re:The Feynman Lectures on Physics: Algebra (1963) on Wednesday August 14, 2019 @11:32AM (#20696607)
Both proof and explanation seem to be important. Two experiences with explanation made a particular impression on me.

First I found it hard to get much out of a Real Analysis course when I was a grad student. Only partly because of lack of explanations, admittedly. Probably even more of a problem was another kind of cultural mismatch between physical scientist me and the math prof that taught the course. My interest was mostly that I was actually doing path integral Monte Carlo calculations (for my Chemistry thesis) and wanted to make sure I understood the fundamentals. The prof, like many (most?) mathematicians seemed to be more interested in investigating ingeniously weird boundary cases. So the course didn't seem to teach me much about the gotchas that might come up in actual statistics or numerical analysis, and instead more about the ingenuity of mathematicians in constructing absurdly farfetched abuses of e.g. the axiom of choice. But besides that cultural mismatch, lack of an explanatory framework sure didn't help. Thus, I was very happy decades later when I ran across Terence Tao's book on measure theory (available as a free manuscript online), which had a lot of the same kind of material with quite a good framework of motivation and explanation wrapped around its proofs.

I also like Vapnik's _The Nature of Statistical Learning Theory_ which as I understand it is highly parallel to a much longer proof-heavy version of most of the same material. I much preferred this book to the approach in my undergraduate course in statistics. Again, the difference wasn't only lack of explanations (also, e.g., not enough enough grounding in proof or plausibly provable propositions, and too narrowly based in a frequentist worldview assumed without any explicit justification), but the lack of explanatory framework sure didn't help, so later I welcomed Vapnik's explanations of his approach. I have never been motivated to read the proof-heavy parallel book by Vapnik, but I do find it reassuring that it exists in case I ever work with problems that were weird enough to start raising red flags about breaking the comfortable assumptions in my informal understanding of the statistics.

"For no particular reason" may not be quite right. One candidate for a particular reason is the same grouchiness about orthodox[] technology that shows up in many double standards. E.g., chemicals that fail the Ames Test are alarmingly sinister if they are synthetic pesticides, vs. so perfectly fine that only a pedant would ever consider the issue if they are pesticidal toxins present at elevated levels in pest-resistant breeds of crops. Any given number of people killed in a coal mine or nuclear accident is a very big deal compared to the same number killed by bacterial infection related to organic farming. Low-tech paintlike or gluelike goo and gunk is not generally subject to witch hunt standards for sinister toxicity when used to caulk or paint charming fishing boats, but is fair game when used in fracking a formation which contains oil. Microquakes are so irrelevant that only a pedant would ask about them when the facility in question is geothermal, but scary as hell for an oil fracking facility. Bird kills are absolutely intolerable ecological atrocities for oil spills, irrelevant pedantry for wind farms.

[] I don't know a word for the distinction I'm trying to get at here with "orthodox". I mean the way that various important technological niches seem to get a pass: e.g. optics (eyeglasses, cameras), and selective breeding of crop species. It's hard for me to imagine persistent enthusiasm for rumors that eyeglasses cause brain cancer in the way that rumors about low-intensity low-frequency EM radiation (from power lines to cell phones) persist. The distinction seems to be roughly "stuff descended from the early Industrial Revolution, the Scottish Enlightenment, and/or sufficiently hardcore scientific method that the Royal Society would be respectfully impressed."

(responding not to what is in the article, but only to your comment on how difficult it is to study what is more nearly "advanced mathematics")

I got 800 on the 1980s-era math SATs, came in third in the Portland OR area in a math contest in high school, and did OK at Caltech (not in a math major), but I'm no Terry Tao, and I very much doubt I'd've been anything very special in a good math undergrad program. Some years after graduation, I found it challenging but doable to get my mind around a fair fraction of an abstract-algebra-for-math-sophomores textbook, including a reasonable amount of group theory (enough to formalize a significant amount of the proof of Solow theorem as an exercise in HOL Light, and also various parts of the basics of how to get to the famous result on impossibility of a closed-form solution for roots of a quintic).

From what I've seen of real analysis and measure theory (a real analysis course in grad school motivated by practical path integral Monte Carlo calculations, plus various skimming of texts over the years), it'd be similarly manageable to self-learn it.

One problem is that some math topics tend to be poorly treated for self-learning, not because they are insanely difficult but because the author seems never to have stepped back and carefully figured out how to express what is going on in a precise self-contained way, just relying (I guess) on a lot of informal backup from a teaching assistant explaining things behind the scenes. On a small scale, some important bit of notation or terminology can be left undefined, which is usually not too bad with modern search engines but was a potential PITA before that. On a larger scale, I found the treatment of basic category theory in several introductory abstract algebra texts seemed prone to this kind of sloppiness, not taking adequate care to ground definitions and concepts in terms of definitions and concepts that a self-studying student could be expected to know, and that's harder to solve with a search engine, tending to lead into a tangle of much more category theory and abstraction than one needs to know for the purpose at hand. My impression is that mathematicians are worse at this than they need to be, in particular worse than physicists: various things in quantum mechanics seem as nontrivial and slippery as category theory to me, but the physicists seem to be better at introducing it and grounding it. (Admittedly, though, physicists can ground it in a series of motivating concrete experiments, which is an aid to keeping their arguments straight which the mathematicians have to do without.)

I have been much more motivated to study CS-related and machine-learning-related stuff than pure math, and I have been about as motivated to self-study other things (like electronics and history) as pure math, so I have probably put only a handful of man-months into math over the years. If I had put several man-years into it, it seems possible that I could have made progress at a useful fraction of the speed of progress I'd expect from taking college math courses in the usual way.

I think it would be particularly manageable to get up to speed on particular applications by self-study: not an overview of group theory in the abstract, but learning the part of group theory needed to understand the famous proof about roots of the quintic, or something hairier like (some manageable-size fraction of) the proof of the classification of finite simple groups. Still not easy, likely a level harder than teaching oneself programming, but not an incredible intellectual tour de force.

"Myself, only after 5 years of mathematics I'm somehow comfortable to study subjects by myself, and it's still hard."

Serious math seems to be reasonably difficult, self-study or not. Even people taking college courses in the ordinary way are seldom able to coast, right?

Re:Deconstructing the DAO Attack: A Brief Code Tour on Sunday June 19, 2016 @11:42AM (#11933323)
I have used all-uppercase to make a distinction like class vs. instance in variables (in case-sensitive languages in which the class might be an ordinary held-in-a-variable value, like Javascript), and I might do it again. But it's very unusual, and it's also the kind of practice that is more suitable for a 1KLOC project that will receive 100 hours of effort from a single maintainer over its lifetime than for a bigger project with many maintainers and a highly motivated community of attackers.

I don't think there was ever a case when I was tempted to name two functions with different cases, but if I ever had to write a modest-sized 1-maintainer system in which many functions came in exactly two different flavors, I might be tempted. (Perhaps threadsafe locked vs. raw? or some C++-like distinction between raw functions and closure-like class instances which can be used in a function-call context? or raw functions vs. wrappers with the extra plumbing required to let them be invoked from a scripting language?)

afterthought: And now that I think of it, in old C code I think I vaguely remember working with macro vs. function implementations of the same operation distinguished by capitalizing the name, and I don't think the name convention was an urgent problem. C macros can breed various errors, but I think bitbang_macro vs. bitbang would breed pretty much the same errors as BITBANG vs. bitbang.

Re:Grading Trudeau on quantum computing on Sunday April 17, 2016 @12:36PM (#11515129)
Why would Carter know about QM? As far as I know, little in a nuclear reactor can be usefully analyzed at the quantum level even today. (And FWIW, even if some things in flight can be usefully analyzed in terms of simple limiting cases of the Navier-Stokes equations, I'd be surprised to hear someone assuming that a Republican president "knows a fair bit about fluid mechanics" just because he was an officer and pilot.)

Most of the nuclear fission stuff that is simple enough that you might hope to analyze with back-of-the-envelope QM has so much energy that it tends to act like a classical particle of negligibly short wavelength (but not enough energy to bring QM back into the picture by QED creating new particles upon collision). And while there is probably various quantum mechanical stuff deeply involved in a power reactor in one way or another --- e.g., electrical conductivity tends to involve band theory, and water is often used as a working fluid and at a fundamental level its thermal properties depend on stuff like hydrogen bonds --- I doubt it was helpful for a naval nuclear reactors guy to try to analyze things at that level in the middle of the last century.

Re:No U.S. tech company went public in Q1 2016 on Monday April 04, 2016 @05:36PM (#11425888)
"gov't taxes corporations' profits and individuals' revenues"

Say what? As I understand it, a basic theme of income taxation for me as an individual in the USA, and indeed most (perhaps all?) western countries is that if I buy something for B and sell it for S, I get taxed for S-B income. And as I understand it, that basic theme really is the way that it works for a lot of businesspeople, though they may need to be quite careful to jump through certain hoops (particular kinds of recordkeeping e.g.) to ensure that it works that way reliably. And it is roughly the way it works for individuals not ordinarily considered businesspeople when they buy and sell things like residences and securities, although it's sometimes wrapped up in extra weirdness like special real estate tax categories and short term vs. long term security capital gains.

What country or countries are you referring to?

Or are you just referring to the fact that employees employment expenses are not as eligible for deduction as many business expenses, securities transactions, and real estate transactions? (And, um, bringing in "corporations" for some rhetorical reason that I can't fathom?) That would make it roughly true to say "taxes business profits but taxes labor revenues." But to characterize that as "gov't taxes corporations' profits and individuals' revenues" seems more nearly false.

Also, that is a radically different tax treatment of labor revenues and business revenues, but you don't explain what you find particularly curious about that. For good or for ill, radically different economic policy treatment of labor revenues and business revenues is pretty widespread, not limited to tax policy. E.g., consider how business monopolistic collusion to restrict supply is broadly forbidden even when the collusion is wholly voluntary, while labor unions are not just allowed to collude voluntarily to restrict the supply of labor but supported in actively preventing rivals from providing a supply of labor.

Re:U.S. army developing encrypted radar waveform on Thursday March 17, 2016 @01:42PM (#11306085)
At a guess, it includes things like the tricks in

http://dtic.mil/dtic/tr/fulltext/u2/a456960.pdf ("DETECTION AND JAMMING LOW PROBABILITY OF INTERCEPT (LPI) RADARS")

but (1) it's obviously not a very precise term and (2) it would be surprising if all of the relevant techniques were available in an unclassified review from 2006.

Re:What's Really Warming the World? on Wednesday June 24, 2015 @01:41PM (#9773171)
No, it was a thought experiment I made up, not an exercise I've ever seen performed: how abbreviated a description of quantum mechanics could I get away with and still convey the idea to on-the-eve-of-QM scientists?

The QM equations are naturally very short, the stuff that I would worry about expressing concisely are concepts like what probability amplitude is, how it connects to prior-to-QM concepts of probability, the interpretation of what it means to make an ideal measurement, stuff like that. I don't know of any bright concise formulation of that stuff, and I'm not sure how I'd do it. I am fairly sure, though, that 5 pages could get the job done well enough to connect to spectroscopic observations.

Note also in the original story it was intended to be given to Einstein and Planck, deeply knowledgeable in classical physics, so it'd be natural to use analogies that would be more meaningful to them than to the typical CS/EE-oriented HN reader. For example, I'd probably try to motivate the probability amplitude by detailed mathematical analogy to the wave amplitudes described by the classical wave PDEs that E. and P. knew backwards and forwards, and I don't think a concise version written that way would work as well for a typical member of the HN audience.

Re:What's Really Warming the World? on Wednesday June 24, 2015 @11:29AM (#9772254)
I think http://judithcurry.com/2013/10/30/implications-for-climate-m... is a reasonably representative informed article on this.
Re:What's Really Warming the World? on Wednesday June 24, 2015 @11:03AM (#9772063)
"The real trick is to see how well your model extrapolates from the data you have out into the future."

That is the most common way to show the modeller is not shamelessly overfitting.:-| Another way, though, is less common but not vanishingly uncommon: the model may be so much simpler than the data it fits that overfitting is not a plausible explanation. (Roughly there are too many bits of entropy in the match to the data to have been packed into the model no matter how careless or dishonest you might have been about overfitting.) E.g., quantum mechanics is fundamentally pretty simple --- I can't quantify it exactly, but I think 5 pages of LaTeX output, in a sort of telegraphic elevator pitch cheat sheet style, would suffice to explain it to 1903 Einstein or Planck well enough that they could quickly figure out how to do calculations. Indeed, one page might suffice. And there are only a few adjustable parameters (particle/nucleus masses, Planck's constant, and less than a dozen others). And it matches sizable tables of spectroscopic data to more than six significant figures. (Though admittedly I dunno whether the non-hydrogen calculations would have been practical in 1903.) For the usual information-theoretical reasons, overfitting is not a real possibility: even if you don't check QM with spectroscopic measurements on previously unstudied substances, you can be pretty sure that QM is a good model. (Of course you still have to worry about it potentially breaking down in areas you haven't investigated yet, but at least it impressively captures regularities in the area you have investigated.)

Re:Profile of Linus Torvalds on Tuesday June 16, 2015 @03:48PM (#9728304)
"It's weird that a person who can come off as a real grouch has managed to be such a supremely effective dictator."

It's weird that a writer at the level of Bloomberg would be so weirdly dogmatic about this. To the best of my knowledge there is nothing weird about capable people being attracted to a leader who is good at identifying actual problems and is grouchily intolerant of those actual problems attracting capable people. Nor anything weird about such a leader motivating the people who are attracted; nor anything weird about such a leader getting high performance out of the organization. Supposed examples are not exactly scarce in business, military, scientific, sports, and entertainment off the top of my head, and as far as I know they're mostly true, not misleading legends. In most cases I only know second-hand, and I could be mistaken or misled. But the most straightforward interpretation of the evidence seems to be that successful doesn't-suffer-fools-lightly leadership is a pretty common pattern in sharp results-oriented endeavours.

In contrast, it would make much more sense if a sentence like that in a profile ended with "...has managed to be such a supremely effective automobile salesman;" as far as I know retail sales is not full of examples of grouchy doesn't-suffer-fools-lightly successes. But managing sharply goal-oriented organizations? Who would think that's inconsistent with what's reported about Linus here?

Even the prima donna antipattern of being a loose cannon who is flakily grouchy can be somewhat consistent with success --- people will put up with irritating inefficient prima donna stuff if there are enough compensating advantages. But I don't think the article establishes that's what's going on, and as far as I know it's uncommon for knowledgeable people to think that's going on. Success always breeds some level of resentment, and some fraction of people will jump to unusual conclusions, and many thousands of knowledgeable people know of Linus, so I assume there are some knowledgeable people out there who believe that he's an unreasonable prima donna. But I can't think of any individual to nominate as particularly likely to believe this.

Re:Ask HN: Where to start on creating AI for games? on Thursday December 11, 2014 @12:05PM (#8735812)
"I'd also add that while everyone suggesting AI resources is helpful, the best thing to do is just jump in and start coding."

I'd modify that slightly: skim (an hour per chapter? something like that) one or more comprehensive books (for this subject, Russell and Norvig is good) enough to get some idea what is known, then jump in and hack seriously, then interrupt your hacking when appropriate by going back to study the particularly relevant stuff that you know is already known. Jumping in is good and important, but it tends to be a lot more efficient when you have some idea about the outlines of what has already been worked out for you.

The times I haven't been able to follow this advice --- notably not having physical access to university libraries when I was trying to write a C compiler for a Z-80 as a teen back in the 1980s, hence having no very practical way to learn about existing work on parsers and stuff --- have been better than nothing, interesting and educational but not as efficient as doing stuff when I had a lot of stuff to study as needed.

Incidentally, a similar strategy can be very helpful for formal study of nontrivial subjects, e.g. various college-level engineering courses. Skim the text, and maybe another text from the library too, and/or an online Wikipedia-level survey/tutorial/whatever before the course starts. Then you have a much better chance of seeing how things fit together and of finding ways to clarify things you're puzzled by.

Re:Lisp in Small Pieces: Table of Contents and Code on Thursday November 13, 2014 @11:10AM (#8602257)
Also, the language syntax is (basically) designed to be parsed in a trivially obvious way into the internal "list" (really tree, with lists as a common special case) data structure. This lets the friction of writing macros which work with code (or with structured data) be very low: the macro logic that you write is fed that parsed list and works with it directly, skipping the usual glue logic for telling a parser how to cope with syntax for a language extension.

(The "basically" caveat above is because some Lisps honor this code-is-a-list principle more than others. E.g., I have seen remarks about how modern Schemes have moved away from it at least a little bit, with syntax which is importantly not quite a list, though I don't know any of the details. And CL has other kinds of reader magic --- like one-character "reader macros" and like the implicit package which is used as a default for symbols at read time when no explicit package is given --- that can in principle complicate the obvious 1-1 correspondence between source and parsed-as-list representation, although in practice that magic is very seldom used in such a way that you need to think about it.)

Re:A fast HTTP request/response parser for Common Lisp on Friday October 31, 2014 @09:52AM (#8538693)
The old book _Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp_ contains a number of nontrivial programs (like an Othello player and a little symbolic math program). AFAIK, most people think the code is unusually clear, both a good example of how to write clear CL programs and a good example of clear programming period (independent of language). If you are seriously interested in clarity of CL programs, I recommend taking a look at that book.
Re:Career planning: Where do old devs go to? on Monday October 20, 2014 @10:53AM (#8482391)
(I've never worked at a bank, but I've talked with people who do.)

It can also be work with too many grotty doesn't-teach-you-anything-technical challenges. For example, a bank that has acquired multiple companies with incompatible, archaic, poorly maintained systems, and struggles to keep them interoperating while stitching them together under some ill-considered technical policies and bizarre regulatory side constraints. Struggling with medium-scale technical challenges that only exist because larger-scale technical best practices aren't followed isn't as productive as it could be. You do learn things but it's akin to learning how to develop code in a dysfunctional language in the absence of specifications and source code control systems and testing: too many of the things you learn tend to be kinda messed up. And by the Anna Karenina principle they may not generalize well to your next job, even if that job also has more than its share of screwed-up challenges.

All businesses tend to have some proportion of work that is too idiosyncratic and ill-conceived to be satisfying or to be a good long-term career choice, and it's dangerous to overgeneralize from anecdotes. But I don't know any way to sharpen up a claim about the proportion of idiosyncratic ill-conceived work so that we could test the claim with proper statistical sampling. Falling back to anecdotal evidence then because it's all I have, there might really be a tendency for some parts of banking have more than their share of this.

Re:Always bet on text on Tuesday October 14, 2014 @02:55PM (#8455060)
"You can easily diff text. Text works with version control systems."

Yes, yes, a thousand times yes.

It is very strange to me how hard it seems to be to convey this to almost anyone who has not experienced it in serious computer programming. E.g., a few times I talked about it with lawyers who work on complex documents, and got nowhere. And occasionally I have even run into subcultures of programmers who didn't get it (and/or, relatedly, the power of build-automation tools like "make").

Re:Always bet on text on Tuesday October 14, 2014 @02:46PM (#8455008)
"If you look at a detailed diagram of a complex design, it is even worse than text."

Not necessarily. (Or horses for courses, or YMMV, or however you want to put it.) For some kinds of things, diagrams seem to do awfully well. Not all kinds of things, there are plenty of people who overuse diagrams, but some kinds of things.

E.g., consider the success of Feynman diagrams. They're at the edge of my expertise (I did a Ph. D. thesis on QM calculations, but not the kind that uses them) so I'm not 100% confident of this, but I have the strong impression that no one has developed a textual form that represents those relationships in a way that most people find comparably clear.

Or consider the humble "graph" (in the common usage, not the math "graph theory" usage). I do not want to deal with the text replacement of a nontrivial scatter plot in a typical experimental paper, or a diagram of a clever waveform in an radar ECM monograph.

Or consider the humble map (again in ordinary usage, not math usage) of e.g. Florida or the US interstate highway system.

Electronic circuit diagrams, medium-complexity Venn diagrams, and probabilistic inference networks also seem to be cases where diagrams can be hard to beat.

Re:Insects and Entropy on Thursday August 21, 2014 @11:35AM (#8207839)
I do not deny the importance of the KISS moral of this story. However, there is also an important meta-moral from putting this story in a larger context: what lessons about feasible complexity you draw from your insect-themed programming contests may depend strongly on whether people like the dunkosmiloomump team happen to be participating.

(See https://alliance.seas.upenn.edu/~plclub/cgi-bin/contest/resu... .)

(The winning entry was elegant, complicated, and effective. I was Busman Holiday Club in that contest. I was reasonably pleased with my moderately complicated moderately effective entry, but even allowing for small team and shorter lightning-division timescale, the performance of my design falls rather short of theirs, and the junkyard rat design aesthetic of my entry falls rather short of the ballerina-by-day-ninja-by-night polish of that team's work.)

Re:A Digital Atlas of the Roman Empire on Thursday August 07, 2014 @10:51AM (#8147977)
"Transporting goods inland was hard because..."

I think it should be something like "was even harder than you would think because..." Sure it was harder before efficient harnesses, but even after efficient harnesses were invented, indeed even in good terrain, horses and carts were very expensive. Note that not only were railroads and trucks a lasting revolution in commerce, they were a radical improvement on another (less enduring) radical improvement before that, extensive artificial canals (very famously the Erie Canal, but there were many others, some successful). Rivers and canals were central to inland commerce in Europe and America because even with good harnesses, enthusiastic breeding of suitable strains of horses, and various other refinements horses and carts are still expensive per ton per mile.

Re:Simpson's Paradox on Thursday September 19, 2013 @09:39AM (#6411501)
It is not necessarily true that just because they are called scientists, real people with real motives, funded by organizations of real people with real motives, operating in a political regime controlled by real people with real motives, will act that way. (By "that way" I mean "your work will have a low impact factor- this is largely measured in how many of your fellow researchers cite your work" and "If your colleagues can easily see that your statistical analysis is flawed, they won't waste their own time doing work that builds off of yours.")

See e.g. Chan and Boliver "The Grandparents Effect in Social Mobility", http://asr.sagepub.com/content/78/4/662 (HT http://www.arnoldkling.com/blog/a-grandparent-effect/) and many of the works that it cites. There seems to be a sizable mutually-citing "scientific" literature devoted to studying correlation in biological descent while dogmatically not controlling for ordinary DNA-based inheritance of psychological traits from parent to child. (Indeed, not even controlling for DNA-based inheritance of physical traits. Health and height and attractiveness are correlated with income, and are significantly physically heritable.) By not controlling for the properties which are transmitted by sperm meeting egg, your can find all sorts of fascinating possibilities to investigate to explain the correlation. (E.g. Chan and Boliver carefully note that "well-connected grandparents could also use their social contacts to help grandchildren with job searches." Good, good, carefully investigate all the possibilities.)

Re:How To Take Exceptional Notes and Be Productive with Paper on Wednesday September 18, 2013 @07:09PM (#6408779)
I like the Pilot "Precise V5" rollerball pens, and I use them a lot, and they hardly ever leak --- except they do seem to leak with significant probability if I carry them on an airplane. Possibly that's the source of your disagreement about leaks.
Re:The code culture problem on Thursday September 05, 2013 @01:10PM (#6335381)
"rather than bringing negativity"

That seems like a false dichotomy. Someone who's a pollyanna even about horrendous abominations is a problem in one way, someone who's indiscriminately contemptuous of reasonably useful code is a problem in another way. Software projects (or teams, or companies) can bog down or die in more than one way. Driving off people who are doing reasonably good work is one way, tolerating unreasonably low standards is another.

And also, correct criticism is not particularly "bringing" negativity. If there is something unacceptably technically bad, and you want to point to the person or people who brought the negativity, you'd do better to point to the original creators and/or the chain of people who have signed off on it since then, rather than pointing to the person who criticizes the problem. The irreverent child did not bring the negativity to the Emperor's famous tailoring fiasco.

Someone who reasonably reliably distinguishes between good and bad is useful. Making the distinction correctly is generally much more important than the style of expression. It's easy to hire pollyannas (or, indeed, to err in the opposite direction by hiring hard-driving abrasive jerks) who don't have the tech skills to make the distinction correctly and just fall back to emoting in their preferred style. It works better to hire the smaller fraction of people who can do a good job, and who can recognize a good job. When you do that, it doesn't solve all style-related abrasiveness problems, but it does help mitigate them. By the time you've worked with someone for a while you learn to translate A's "this is unacceptable" as synonymous with B's "this is flaming rancid goat barf". (And axiomatic though it seems to be to you, in my experience saying "flaming rancid goat barf" is not useful evidence of unwillingness to learn and teach.) Both A and B are useful as long as they're reasonably reliably correct. Much bigger problems are C who says "this is a good effort" about everything, and D who flips between praise and condemnation based on issues other than technical quality (randomness, politics, mood swings, whatever).

That the South Korean school system would do this is discouraging, no question. But I am also discouraged by how, when reading academic scientists and academic journals (_Nature_ in this case), it seems considerably easier to find concern about unscientific nonsense beloved of the right than about unscientific nonsense beloved of the left.

E.g., individual genetic heritability is even more fundamental and even more loudly supported by obvious evidence than evolution by natural selection. Yet not only is this sometimes slighted in the high school curriculum, one can find academic work from prestigious institutions that pretends heritability does not exist (or is at least, for some unexplained reason, absolutely negligible). See, e.g., Chan and Boliver "The Grandparents Effect in Social Mobility", http://users.ox.ac.uk/~sfos0006/papers/asronline.pdf (HT http://www.arnoldkling.com/blog/a-grandparent-effect/). It is not easy (for this reader with a BS in Biology) to see why it's scientifically OK to assume that heritability is negligible at the level of detail considered by Chan and Boliver ("if mobility follows a first-order Markovian process"; "well-connected grandparents could also use their social contacts to help grandchildren with job searches"; citations into a more than a decade of research on multigenerational issues, e.g. the cite to Bengtson). It's easy to see how this taboo can help produce useful political soundbites, and why the BBC would take it and run with it http://www.bbc.co.uk/news/education-23101446 . It's just hard to see why scientists wouldn't be concerned about this behavior by the BBC and by the academic research community.

In general, it's sensible for a scientific journal to worry about unscientific claptrap. However, specifically skipping over the unscientific claptrap beloved of their faction in the BBC, in academic science, and in academic journals in order to zero in on the unscientific claptrap of rival factions is unbecoming in an organization that claims to be scientific. It doesn't resemble science as much as it resembles sleazy-think-tank-style selective invocation of research in order to advance a political agenda.

Well, even he probably has only an imprecise idea how many hundreds of hours he spent on it, but I'll speculate it's comparable to how many hours he'd spend getting a master's degree in CS (at night, while working full time during the day). I don't know how the job market works in his specialty in his country, but in some job markets in the US, I estimate that being able to list that game and its sales performance on a resume is worth rather more than a master's degree. So from that side effect alone, this sounds at least as good as him taking a generous fellowship to get an exceedingly good master's degree. It's not vast wealth in one fell swoop, but it doesn't seem like a failure. And if he wants never to send out another resume in his life, instead writing and selling his own software, it's harder to quantify the benefits of business and tech experience on a first app, but ramen profitability on one's first less-than-a-year-in-development app sounds OK to me. The title oversells the achievement (top 25 ... in some smaller countries) but your term "failure" undersells it even more.
Re:Linus on "acting professionally" on Tuesday July 16, 2013 @01:36PM (#6053363)
Like? I think it's more nearly that serious programmers tend to be very impressed with Linus's results, and his critics have tried to attack him in ways that don't properly acknowledge that. If a critic had said upfront "I don't much care whether a project can build a useful piece of software, what I care about is that people don't lose their temper" then we'd agree to disagree. But instead the critics seem to be arguing that getting angry interferes with projects working well, for some value of "working well" presumably related to the stated purpose. Linux works awfully well...

I kinda like Linus, but I don't particularly care for most sports coaches. I don't follow any spectator sports, but even I know that a nontrivial fraction of highly successful sports coaches lose their temper. I think the people who are arguing for more restraint or care or kabuki wrapped around expression of justified anger should face some burden of proof to show that their way works better, rather than just demanding that organizations be run their way while implying that Linus's way works worse.

I think it's very important for a leader to make technical decisions correctly, including the technical decision whether something is screwed up enough to get angry about. (And my strong impression is that Linus is unusually good at this.) I have some preference for leaders trying to be careful and dispassionate and clear about expressing their anger (e.g., full sentences with constructs "this is unacceptable", followed any detail that might be needed to be easily understood). But judging by results, it's not clear that my preference works any better than Linus's. And in long-term interactions with serious people, any difference may naturally tend to be small: most conversations between people are more about "what does he really mean" than about what was literally said, and you can quickly learn if A generally means the same thing by "what the F*CK" as B means by "this is unacceptable".

Re:Why I don't touch crypto on Thursday July 11, 2013 @03:23PM (#6028511)
There exist test suites which look for some typical problems. The http://en.wikipedia.org/wiki/Diehard_tests were well-known long ago when I last thought seriously about randomness, and a few minutes with wikipedia told me about http://www.phy.duke.edu/~rgb/General/dieharder.php too. But your dream of software that can truly automatically "tell you if the output is random-looking enough [for crypto]" is deep unrealistic, akin to the deep confusedness sometimes exhibited by business majors dreaming up copy protection features. Merely defining the notion of "random enough for crypto" is a cornucopia of interesting technical problems, and the useful definitions naturally tend to involve the boundaries of complexity classes and thus a bunch of open conjectures, and it gets worse from there. (Things like: Even if you could prove the conjecture that this complexity class is good enough, how are you going to test for nonmembership in it faster than your adversary can break it? Most people are not very interested in crypto which can be broken by an adversary in a month of CPU time, and most people are not interested in tests that take a month of CPU time to run.)
Re:The 4 AM Army on Tuesday July 02, 2013 @06:32PM (#5981162)
Remember that it's not a good idea to equate "didn't have thousands of times the taxable income [in the 1950s]" with "didn't make thousands of times more" except for the purpose of misleading people. Comparing taxable income then to taxable income now is a mistake, because it was a time of 90% tax rates and not coincidentally a time of people moving heaven and earth to get their compensation in any form other than taxable income.
Not just his enemies. For me, a number of the most memorable flourishes of the book are how formidable it makes some of the other people, at least in some respects --- the defense professor especially, but at various points in the story he turns the formidability firehose on people like Hermione and Aurors and the prankster brothers. It's a bit of a dramatic problem, actually, because it leaves people who haven't been sprayed looking so ineffectual that it's hard to understand why they take up so much dramatic space. E.g., I think the story would work better if Draco got more formidability to justify his apparent importance. At least Draco could have gotten a chance to win big by applying some of the applied organization theory tips from his father, perhaps by being the one to deploy effective staff/delegation/incentive techniques in the war games. Or the unimpressive frontline support security provided by his father could be backed by a second-line security specialist chosen by his father who shows up on call and gets some of the formidability and formidabilitytrainer love that the story gives to Aurors and defense professors.
Re:The 4 AM Army on Tuesday July 02, 2013 @12:06PM (#5978758)
Insignificant price controls don't make much difference, so it's basically a wash. Significant price controls tend to have predictable perverse effects. It seems to be impolite to report them: for some years, every time I read a story about long gas lines somewhere, I go searching for information to verify that yes, it was under a system of gas price controls, and generally I can verify it with enough poking around in search engines. But it seems very uncommon for it to be reported in the news story about gas lines. Because gas lines just happen, like sunspots, you know?

If you think modern levels of intervention in the labor market --- not just minimum wage, but mandatory benefits and a host of other things --- have been imposed with such a marvellously deft touch that they shouldn't cause persistent failure of labor markets to clear, it is possible to dream up other reasons that might conceivably explain the observed outcome of historically high long term unemployment. Not everyone finds those explanations convincing, though.

Older »