Wednesday, October 28, 2009

Something about the real world: Bagels at Finagle-a-Bagel suck

Please pardon my commenting on reality (or my view of it) but... Bagels at Finagle-a-Bagel suck Or to be more politic about it, in my view, the bagels at said convenience are shaped like bagels, but the composition is much sweeter and well the texture is different enough from, let's say, Bruegger's Bagels bagels (to compare with another commercial establishment rather than, say, the heaven of a NJ bagel, it is so different that I don't think the things served at F-a-B should be called 'bagels'.

And I mean it to sting.

To make this much more than what is a simple complaint (that Finagle-a-Bagel bagels suck and get to that out on the web), let me continue. I now see the arbitrary authoritarian desire for an appellation committee that decides what is what. To mix many philosophies, word meanings are totally a social construction (to be useful, people have to 'agree' and act like they agree) but with a necessary private language (internal theory). Humpty Dumpty can't go around saying 'those things you get at Finagle-a-Bagel with the hole in them that taste sorta muffin-like'...well, actually, yes he can, but it just won't catch on, not because of semantics but because people aren't time-wasting idiots. If everybody calls them bagels, then that's what you'll call them, even if that label doesn't evoke the properties (in your head) that you normally associate with things that you call by that label.

Like how 'white chocolate' might be liked by many people, but... it ain't chocolate.

In a completely different way, I don't get bagels at Dunkin' Donuts. I don't expect them to have good ones. I don't go to FaB for muffins ...

Which is all to say... Finagle-a-Bagel bagels suck.

Now if only I could direct all this energy to the positive....

Tuesday, August 11, 2009

Cycles of length greater than 1 are not recognized by Translation Party

Translation Party looks for translation fixed points in the English-to-Japanese-to-English transformation.

curious green ideas sleep furiously gets to a cycle of length 3 after 3 steps.

Tuesday, July 21, 2009

Another Math Error, still inexcusable

Actually I noticed this error first (before the SciAm error).

In the July 20 New Yorker in an article about Sarah Palin they said

It may be inferred from this that Palin sees a certain parallel between the events of July 3, 2009, and those of July 4, 1776. And, indeed, her speech had echoes of the document signed in Philadelphia two hundred and thirty-three years and one day earlier.
Notice anything? Let's totally oversimplify. Suppose it were last year that the D of I was signed, July 4, 2008. How long ago was that? A year and a day?

Obviously not. It was a year minus a day.

Well, as far as complicated thinking goes, let's just say i was definitly not a year -plus- a day ago from July 3rd, 2009. In simplified but as correct-as-it-gets math, a year -and- a day ago from July 3rd should land on something like July July 2nd.

I hedge with all this 'simplified' and 'correct-as-it-gets' because calendars are not so simple. First and foremost, there are leap years, an extra day in there. But then what would a 'year' mean as far as days? Sometimes 365, sometimes 365? or always 365. Are we counting in exact days, then converting to years? Then you'd have to do a bit of fancy arithmetic 2009 - 1776 + floor((2009-1776)/4) blah blah blah (yes, I'm almost -certain- that I'm missing a and then you'd have to present it in decimal. Oh, did I forget the Gregorian correction for centuries? And, pow, the exception to that exception for the year 2000 (years divisible by 400)?

What's the point? If you're oversimplifying, at least you can follow those simple rules: change in year, you can subtract -years-, then from that milestone correct in the right direction.

Yes, I sent email to the New Yorker ending with:

Curse you, fact checker

Math Error in Scientific American Math article

Look, I'm only doing this because it is 'so obvious'. In the August 2009 issue of Scientific American there was an article about some longstanding unsolved problem in topology having been solved. The intro paragraph said:
Relax. Until recently, lurking in the dark recesses of mathematical existence, there might have been a really weird sphere of 254 dimensions, or 510, or 1,026. In fact, for all you knew, you might have had to worry about weird spheres when visiting any space with numbers of dimensions of the type 2^k - 2.
Any thing strike you here? 2^10-2 = 1022, not 1026. Easy mistake to make. Doing a calc of a sequence in your head, plus or minus one error. But fercrissakes...it's a math article. The only reason I bother to post this is because I can't find a record of it any where on the web (with a simple google search). I hold Scientific American in the highest regard. I can't seem to find a 'corrections' page though. Obligatory relevant link: Mathematicians celebrate baffling new proof

Friday, June 13, 2008

The invisible character bug

Computers suck. In this case... I have a file that ostensibly has really long lines, or rather the original data has really long lines, but what I have the lines are split, with a '-' to show that the line was split, plus a new line.

e.g. a file like this:

dfasdfasdfaasdfsregaregeagrerg242342423ytuyutuy
qqweqweqweqsdadsasdasdasdzxczcxzcx
I get it like this:
dfasdfasdfaasdf-
sregaregeagrerg-
242342423-
ytuyutuy
qqweqweqweq-
sdadsasdasdasd-
zxczcxzcx-
Fine. So I can't just remove newlines, so a simple sed oneliner won't work. But a little looking on the web gets me a summary of quick sed oneliners which has exactly what I'm looking for but would never in a million years have figured out on my own:
# if a line ends with a backslash, append the next line to it
 sed -e :a -e '/-$/N; s/-\n//; ta'
It looks for the dash followed by the end of line (in sed fashion, the new line character is not part of a line), and if found appends that line -and- an actual new line character to the search space, which is then searched for by the next 's/...' and removed (and then a little 'goto'ing' which I never new existed in sed before).

Great. Except it doesn't work. Why not? because..well, before the explanation, I have to complain about the hours and hours (well, 3) that I spent doing the 'debugging by permutation', trying all the possibilities of small changes, maybe it's for a different shell or slightly different sed version, or whatever. OK, that's enough...on with the solution...

Like all the Sherlock Holmes stories, there's always a tiny bit of information that the author doesn't tell you until the very end, which of course if anybody knew already would have solved the problem...the file I received was in -MSDOS- format, meaning simply that new lines are denoted by -2- characters, carriage return -and- line feed (or \r \n, or \x0d \x0a).

So the sed was correctly finding '-' at the end of a line, and appending the next line, but it couldn't find '-\n' and remove it because it really needed to look for '-\r\n'.

That is, an invisible character. You can't see it but you have to know about it to correctly solve the problem. In my very dim memory of the far past, it seems like this used to be a 'joke' bug, a possibility to blame something unknowable on (because you can't -see- it), when the bug is probably really a thinko.

Anyway, hours wasted on trivialities.

That is all.

Monday, October 29, 2007

Wolfram's 2-3 Turing Machine is universal... 'Maybe.' and 'Congratulations' and 'So?'

Here's my official opinion on the subject after a cursory review of blogs (Computational Complexity, google for em...), newsgroups (sci.logic, sci.math), the FOM mailing list, and (BTW) the paper itself)

First my prejudices about Wolfram. A New Kind of Science (ANKS), the book by Wolfram, is a mixed message. It is not new at all, the text is filled with intellectual arrogance (even the copyright legalese is full of itself), it is a thinly veiled advertisement for Mathematica. I'm mostly in agreement with reviewers of the book (just google for them). But those reviews tended to be entirely negative and really do not say anything at all positive about it of which there certainly is something when the negative is removed (but of course that positive remainder is nowhere near what I think Wolfram thinks it is). There's a lot of pictures (mostly cellular automata) which I think is a good thing. It is a popularization that has substantive math (but just to put in a dig to ANKS, it is no Goedel, Escher, Bach which even then has its own problems). Wolfram gives in print a number of mappings (in Mathematica) among the Church-Turing complete formalisms, which, though not particularly earth shattering, is a nice thing to see in print (as is said in one of the options for reviewing TCS papers, it is workman-like (not toward the top of the goodness rating)). I'll stop there, I could go on and on...

As to the 2,3 proof:

  • the automaton is not a Turing Machine. It's in a formalization, (cellular) that is -similar- but not the same. So, without knowing well the mapping between the two, I can't say if the number of states and symbols is preserved, and even if so, if the mapping preserves the appropriate relevant properties that I haven't thought of.
  • The proof seems to use Mathematica to generate and test cases. Excellent! I'm totally on board with this as a proof method (I suspect that others might have problems with it).
  • The proof was submitted, not to a journal for peer review, but directly to Wolfram's company. And it seems that though a committee of 'names': Lenore Blum, Greg Chaitin, Martin Davis, Ron Graham, Yuri Matiyasevich, Marvin Minsky, Dana Scott, Stephen Wolfram, (-all- gods, even Wolfram) is supposedly the review committee, it doesn't seem as though that anybody on the committee actually reviewed the paper (at least that is the impression I got from the FOM thread, of which Davis and Minsky (the two leader of the gods for this subject) are members).
  • To add sarcastic comment, big deal. Yes it's cool, in the sense that optimization of results is always cool, but again, it's not a big theoretical advance (it's not a small one) it's just engineering a more efficient example. "I can name that tune in 5 notes", "I can name it in 4". Big deal, just -naming- it is what counts, all the rest is shaving off constants. Yes, there is a one rule TRS that is universal (Dauchet (ugly proof by the way)), and there is a single axiom that defines 'group' (rather than the usual 3), and there is a diophantine equation with blah variables of degree blahdiblahblah that sniggertiflibbet. All good details to know about (and to know that they are optimal, rather than just an improvement), but hardly important by any means (frankly I'd be happy myself to prove something of that nature, but I'd still realize the lack of importance.
  • Wolfram, in his msg to FOM says: I remember that when I first heard about universality in the Game of Life in the early 1970s, I didn't think it particularly significant; it seemed like just a clever hack. But a few decades later---after building up the whole framework in A New Kind of Science (http://www.wolframscience.com), I have a quite different view. I now think that it's extremely significant just how widespread---or not---computational ability is. My thinking has gone in quite the opposite direction, at least for this particular problem (that is, it's not a general application to proofs that constants are just 'icing' (it might be, I don't know, I'm allowing the possibility), just for this problem can I justify my own opinion against Wolfram's) Somehow, figuring out constants (like a machine that has 1 less state than yours, used to seem doable to me, and reasoning by meta knowledge (I believe I know more than I did), I figure that is a simpler type of problem). For example, there's one hour of your average automata class that is spent on pages blah blh blah of Hopcroft and Ullman (not 'and Motwani' because it was removed in the later edition, for reasons probably of -unimportantness-) where in extremely dense mathprose, it is proved that a PDA can be converted into a PDA recognizing the same language but requiring only a -single- state. At which one can reasonably remark 'cool, but so what?', with the natural response 'What do you mean 'so what?' ?'. Well the answer (to which 'so what?' I'm having trouble figuring out) is 'ok, that might simplify representations but it happens not to result in a more efficent parser (though of course it might have resulted in something useful, it just happens that it didn't)
  • just to be cynical about the whole thing some more, it just seems like some big ploy, more self-aggrandizement (no, Wolfram didn't prove anything (if anybody did!) but he had the intuition that his example of a 2,3 'turing machine' (lower case but with scare quotes) was universal (and so he's a genius because he can 'see' what others have to prove). This is another conversation about hoaxes, Sokal, post-modernism and Stolzenberg's defense (that gibberish may be your fault, not the speaker's).
  • In some sense, I hope I'm wrong, I hope that the proof is right and that Wolfram's claims are on target and his new philosphy is both useful and accepted...but, it just doesn't have the right taste for that, it all seems like delusions of grandeur crankery.
  • anyway, congratulations to Alex Smith, $25K ain't nothing.
  • like all conscientious mathematicians, I've skimmed the article twice, looked at one or two pages a little closer, looked for misspellings and found none, noted Vaughan Pratt's FOM comment about an egregious logical solecism, looked at the table of contents again (the pages don't really have page numbers), read the epilog (excellent idea..every proof should have a summary of how the proof was found), looked at the conclusion paragraph which was more technical than conclusive, and then went to lunch and haven't looked back at it yet with a totally committal 'looks like a proof to me' hoping someone else will actually care about the details (the technical differences put me off, that is, it's in cellular automaton notation rather turing machine notation, and getting past that (little, tiny, I don't know) but is just that little bit too much to be worth it.
  • Arghh. Update (there's always something left to say).Wolfram also said: One thing that's come out of my efforts in this direction is what I call the Principle of Computational Equivalence. It's a fairly bold hypothesis about which there's much to say (e.g. http://www.wolframscience.com/nksonline/chapter-12 ). This 'PCE' bears some superficial comparison with the Church-Turing Thesis, either as similar but essentially different or as a poor attempt at rewriting it. It comes out sounding rather...trivial, another 'so what?', a 'didn't-Douglas-Adams-make-fun-of-this-years-ago?' idea. So 'fairly bold'? Sure, mind blowing if you're fifteen years old (I apologize to all fifteen years olds with mind blowing ideas that turn out to be disparaged by some old guys who think they've seen it all). And (another) frankly, all that this really -explains- is some patterns on some sea shells? at least DNA has some vague correspondence with a TM tape.
  • Another update. more FOM comments, one from Hector Zenli, the lead of the '2-3 TM' contest team: Concerning the prize committee, we did not expect them to go through the details of the proof but to support the reviewers on technical issues related to their fields of expertise. We would have been delighted to have had them spend more time on the proof but that wasn't our expectation. OK, so far kinda weak...isn't review of truth supposed to be impartial? Isn't this playing with concept names (and authorities' names)? The prize committee with the 'gods' (the expert authorities) aren't the actual reviewers. And 'delighted' sounds like its covering up lack of participation. How many submissions were there? What was the workload? What was the 'prize' committee really expected to do (I want to hear it from the prize committee). But it was Wolfram staff (my's emphasis) who did the hard work to achieve a satisfactory level of verification (between revisions and revision requests) Oh. And I mean it to sting.
Do I have any expert knowledge on this subject matter from which you can put even the slightest bit of trust that my opinions have some basis? Sort of...if credentials matter, I have a PhD in computer science, where my concentration was in theoretical computer science (algorithms/complexity/logic), where I TA'd the automata/language class (the closest relevant curriculum to the subject at hand; where TMs are designed and proofs made on their properties) and I have have expert knowledge in term rewrite systems. I am not an expert in cellular automata. I tend to do most of my symbolic manipulation/exploration in Mathematica.

Wednesday, October 10, 2007

For the record/crackpot schemes

For the record, I have mentioned the following idea for years (let's say since about 2000).

The following -should- be invented:

The microwave-like cooling-appliance: a machine that fills in the analogical gap of 'oven is to refrigerator as microwave is to ??'.
Purely from a blackbox functional perspective, it is an object that is needed. Some things need to be cooked for health/taste reasons, others need to be cooled/frozen for similar reasons. Simple technology allows heating (fire, burning wood/gas, electrical resistance for an electric oven) and slightly more complicated technology allows cooling/freezing (rapidly expanding gasses (freon as a substance makes this easier) 'removes' heat). Then microwave technology comes along, a little more complicated than 'PV=nRT', which using the resonant frequency of water, vibrates those molecules using microwaves, implemented in a very small appliance. To fill in the functional gap, that is to, say, take a cup of hot tea, and 'reverse the process' making cooler, 'iced' tea, we need a physical process that can quickly (< 1 min) reduce temperature.

I'm not saying I have any idea how to do this, just that it needs to be done.

Which brings up the scientific problem: if a refrigerator just displaces heat (it makes things cold in one spot, but in a sense moves that heat somewhere else), why isn't there a similar operation in reverse, that is, an oven that concentrates heat in one spot -at the expense of making things cooler elsewhere-?

Yes, yes, yes, 2nd law, blah blah blah. Radio exists, work out the theory later.

Monday, March 12, 2007

Yet Another Modest Proposal

Once again, this afternoon I had the strangest feeling, yawning without being tired, hungry at the wrong expected time of day... which reminds me of a proposal I had thought out years ago. To relate...

Daylight Saving Time (DST) is intended to save energy by shifting the labels of the day cycle ("hours") back and forth each spring and fall so that more daylight is available towards the end of the day (when people will tend to be active and use more electricity if the sun is not up). The latest modification of the plan is just minor politcal tweaking, an enactment of a law because it is so easy to do. But there are unintended consequences of the semiannual (not "biannual": see grammar nazi) shift that are not well-known...

The problem with the current shifting method occurs mainly in the spring when clocks are moved forward ("losing an hour", "spring forward"), moving an hour of sleep filled wasted daylight in the early morning to the evening. However, because of this time change, the -whole world- loses an hour of last-minute time, but also they must rise a full hour ahead of normal, inducing a world wide average jet-lag. Though it is only an hour, the fact that it affects the -whole world- (think of how the badly the Australians feel), makes the statistical affect very significant (studies have shown that it costs tax payers billions of dollars every spring in lost productivity and accidents caused by sleep deprivation, and unmet deadlines due to the necessary last-minute lost hour).

In contrast, the fall time shift ("fall backwards") everyone gains an hour; used to catch up on work, sleep, ...just life itself. So in the interests of everyone's well-being, and frankly the world economy, I offer the following...

Proposal: Let there only be a time change in the fall.

-All- the benefits of the time change are realised in the fall, and -none- of the problems from the spring change are incurred. If this proposal is successful, as it is very much expected to do so, we suggest the additional...

Proposal: Also move the clock backwards in the spring.

This would double the benefits over the course of the year.

If you consider all the consequences of this new time-shifting protocol, you will realize all the good of the old protocol and none of the bad.

Tuesday, February 6, 2007

Bullet points from Jeanette Wing: 'Computational Thinking' (CACM, Mar 2006)

An opinion piece by Jeannette Wing (COMMUNICATIONS OF THE ACM March 2006/Vol. 49, No. 3, pp. 33-35) about how 'computational thinking' (whatever that is...well, actually that's what she -does- explain) is really an intellectual skill that is, to oversimplify terribly, good for everybody.

Sort of like humanities for scientists/engineers. She says it would be good for non-majors, but I'm guessing mostly just for scientists (i.e. everybody probably won't include people who study literature or history (well, history does have a 'scientific' component, and this might be useful there). Pardon the following exegesis, but like the Torah (or is it the Talmud, I always get that mixed up), the commentary may require more processing time than the original (which of course should be read along side this to see what few things I removed as, well not exactly fluff, but just more polemic/value judgement (and I'm only analyzing quantifiable things), which I for the most part agree at least in the direction of not the actual implementation)...

Representative quotes:

Thinking like a computer scientist means more than being able to program a computer. It requires thinking at multiple levels of abstraction.
It represents a universally applicable attitude and skill set everyone, not just computer scientists, would be eager to learn and use.
Computational thinking is a fundamental skill for everyone, not just for computer scientists. To reading, writing, and arithmetic, we should add computational thinking to every childs anlyltical ability.
Computational thinking will have become ingrained in everyones vievs when words like algorithm and precondition are part of everyones coacbulary; when nondeterminism and garbage collection take on the meanings used by computer scientists; and when trees are drawn upside down.
This kind of thinking will be part of the skill set of not only other scientists but of everyone else.

Anyway, here's the mapping from classes in the Computer Science undergrad curriculum to her points ("Computational thinking is..."):

  • TCS (algorithm design methods): "In solving a problem efficiently, we might further ask whether an approximate solution is good enough, whether we can use randomization to our advantage"
  • AI (learning): "...and whether false positives or false negatives are allowed."
  • TCS (complexity): "reformulating a seemingly difficult problem into one we know how to solve, perhaps by reduction, embedding, transformation, or simulation."
  • Software (programming paradigms) "Computational thinking is thinking recursively. "
  • Software (systems, architecture): "It is parallel processing."
  • Software (programming, LISP): "It is interpreting code as data and data as code. "
  • Software (programming langs, unification): "It is type checking as the generalization of dimensional analysis."
  • Software (programming langs, pointers): "It is recognizing both the virtues and the dangers of aliasing, or giving someone or something more than one name."
  • Software (programming langs, machine/assembly): "It is recognizing both the cost and power of indirect addressing and procedure call. "
  • TCS (algorithms): "It is judging a program not just for correctness and efficiency" (this quote continues: "... but for aesthetics, and a system's design for simplicity and elegance." which unfortunately is totally absent from the curriculum or from the teacher's within-class comments on the curriculum)
  • Software (systems): "Computational thinking is using abstraction and decomposition when attacking a large complex task or designing a large complex system. "
  • Software (programming, design, modularity) "It is separation of concerns. "
  • general engineering (not mappable to any particular art of the UG curriculum) "It is choosing an appropriate representation for a problem or modeling the relevant aspects of a problem to make it tractable."
  • Software (correctness, theorem proving) "It is using invariants to describe a system's behavior succinctly and declaratively. "
  • Software (software engineering, modularity) "It is having the confidence we can safely use, modify, and influence a large complex system without understanding its every detail. "
  • Software (software engineering): "It is modularizing something in anticipation of multiple users or prefetching and caching in anticipation of future use."
  • Software (software engineering): "Computational thinking is thinking in terms of prevention, protection, and recovery from worst-case scenarios through redundancy, damage containment, and error correction. "
  • Systems(OS)/Software(programming): "It is calling gridlock deadlock and contracts interfaces. "
  • Systems(OS): "It is learning to avoid race conditions when synchronizing meetings with one another."
  • AI/TCS (search space/algorithms): "Computational thinking is using heuristic reasoning to discover a solution. "
  • AI (planning): "It is planning, learning, and scheduling in the presence of uncertainty."
  • AI/TCS (algorithms/constraints): "It is search, search, and more search, resulting in a list of Web pages, a strategy for winning a game, or a counterexample."
  • Systems (software): "Computational thinking is using massive amounts of data to speed up computation."
  • TCS/systems (algorithms, architecture) "It is making trade-offs between time and space and between processing power and storage capacity."
  • Systems/software (architecture, design ): "When your daughter goes to school in the morning, she puts in her backpack the things she needs for the day; that's prefetching and caching. "
  • TCS (algorithms): "When your son loses his mittens, you suggest he retrace his steps; that's backtracking."
  • TCS (algorithms): "At what point do you stop renting skis and buy yourself a pair?; that's online algorithms. "
  • Systems (OS): "Which line do you stand in at the supermarket?; that's performance modeling for multi-server systems. "
  • Systems/software (software engineering): "Why does your telephone still work during a power outage?; that's independence of failure and redundancy in design. "
  • What? never heard of it: "How do Completely Automated Public Turing Test(s) to Tell Computers and Humans Apart, or CAPTCHAs, authenticate humans?; that's exploiting the difficulty of solving hard AI problems to foil computing agents."
Uses of CS thinking in other domains:
  • AI (learning) : "For example, machine learning has transformed statistics. Statistical learning is being used for problems on a scale, in terms of both data size and dimension, unimaginable only a few years ago. Statistics departments in all kinds of organizations are hiring computer scientists. Schools of computer science are embracing existing or starting up new statistics departments."
  • AI/Databases (knowledge structures): "Computer scientists$(B r(Becent interest in biology is driven by their belief that biologists can benefit from computational thinking. Computer science$(Bs (Bcontribution to biology goes beyond the ability to search through vast amounts of sequence data looking for patterns. The hope is that data structures and algorithms, our computational abstractions and methods, can represent the structure of proteins in ways that elucidate their function. Computational biology is changing the way biologists think. "
  • TCS (algorithms) "Similarly, computational game theory is changing the way economists think; "
  • AI/EE (agents): nanocomputing, the way chemists think;
  • TCS (complexity) "... and quantum computing, the way physicists think."
Many of these items are explicitly covered in a traditional CS curriculum (whatever -that- is, I of course consider what I did as traditional because, well, I did it. But some of the items are not exactly traditional text book subjects, but are certainly part of the air you breathe. The taxonomy of CS subject domains goes like this: TCS (theoretical CS: includes, broadly, algorithms, complexity, logic/discrete math/other math applied to CS, data structures), AI (artificial intelligence: learning, cognition, logic, planning, robotics, heuristics that aren't algorithms), software (programming languages, compilers, semantics), architecture and hardware (frankly I don't know the difference here other than, though both involve manipulating actual physical objects, architecture deals with objects that are larger than those in hardware), systems (a grab bag of topics: operating systems, databases, graphics), and NA (numerical analysis, or more recently renamed scientific computing).
WHAT IT IS, AND ISNT
The second half of the article gives more abstract concepts of 'computational thinking'.
Computer science is not computer programming. Thinking like a computer scientist means more than being able to program a computer. It requires thinking at multiple levels of abstraction;

Computational thinking is a way humans solve problems; it is not trying to get humans to think like computers.

Computer science "inherently draws on" mathematical thinking as its formal foundations" and on engineering thinking, "given that we build systems that interact with the real world. "

"The constraints of the underlying computing device force computer scientists to think computationally, not just mathematically. " ... well isn't computational thinking one particular type of mathematical thinking?

For everyone, everywhere. Computational thinking will be a reality when it is so integral to human endeavors it disappears as an explicit philosophy.
A beautiful sentiment... but I disagree with the general (and specific) inference. Consider 'mathematical thinking'...it is very "integral to human endeavors", but has not disappeared as an "explicit philosophy".

CS is really a 'liberal art'. Myth: computer science has been 'solved', only implementation remains. Wing seems to leave the thread of 'computational thinking' here and addresses more things associated with CS as official subject to be followed (she continues to say very important things I agree with, and of course need to be said, and the best place to say them is in an article extolling the virtues of computational thinking, and you should read it... but none of that fits my agenda at the moment so I won't really comment, other than to say that she must be a department head looking at the lowering #'s of CS undergrads, worrying about the great number of asst profs they just hired to take care of teaching the glut of CS UGs that were projected but never materialized).

Extremely abbreviated commentary:

  • There's a difference between things you learn because they were said in class and things you learn because you took the class (but no one ever said).
  • Jeannette Wing has done in three pages what Stephen Wolfram claimed to be doing in 1000; show how computation is a new, useful paradigm for (scientific) thinking (this is intentionally a slam against Wolfram's ANKS).
  • How could one compose a similar 'look at the whole world through these eyes' for a mathematician? And from the other direction, how could non-scientific domains (the humantities) use this (these) worldviews?
  • Psychology (cognitive psychology) has already had the 'information processing' view since the 60's/70's.