Hacker Newsnew | comments | show | ask | jobs | submit | boxein's comments login

Thumbprint scanners are inaccurate unless you get into the high-end range. If there is a commodity fingerprint scanner for that many students, they could install a single button and get equivalent data.

-----


These lack the subtlety of the koans they are attempting to emulate. It's more like Aesop's Code than Codeless Code.

-----


Agreed. What they inherit from koans appears to be merely the violence that the koans take for granted. My favorite example of this is the story of Gutei's Finger:

    It is said that Master Gutei would always raise a finger wisely when
    teaching about Zen. Now in his monastery there were young boys studying
    to be Zen masters themselves, and one boy, when he was asked questions
    by his teachers, began also to raise his finger when answering Zen
    questions. The teachers told Gutei about this and Gutei summoned him to
    a rare audience with the master! Gutei asked him a simple question which
    the boy could answer confidently, and the boy raised his finger as he
    responded.

    Gutei immediately grabbed the finger and in one motion cut it off with a
    concealed knife. The boy screamed and ran to the far side of the room.
    Gutei called him to stop and return, and the boy recovered his composure
    and plodded back in front of the master. Gutei raised his own finger
    before the boy, and in that moment the boy was enlightened.

    Indeed, on his deathbed Gutei's last words were: "My teacher Tenryu
    taught me the Zen in my finger, and though I used it my whole life, I
    couldn't use it up."
I think the first thing anybody notices about this story is just the violence. When I told it to my brother he asked, "the lesson is, do not f--k with the Master?" But there is a deep set of Zen ideas -- lifting fingers which you do not have, and not getting attached to idiosyncrasy. Perhaps the boy even thought, "I should cut off the Master's finger," as he attained enlightenment.

-----


Violent koans aren't particularly common, they just stand out. However, they do reflect a fundamentally destructive aspect of spiritual practice, namely, that it undermines the conditioning behind cherished identities. The point of the story is that the boy was chasing after validation as a Zen master and had adopted the finger-raising ritual as a part of his identity as a competent Zen practitioner. When Gutei cut it off, he was removing a support for a cherished identity, and this was the basis for the boy's identity at that moment.

-----


s/basis for the boy's identity/led to the boy's enlightenment/. True as written, just a bit redundant, and not what I meant. :)

-----


I think, like almost everything, the Koans are a reflection on the society and the way of thinking at the time of writing. In what is now peacefuller times people would be aghast that someone would do that. I dug around through a few, and a lot of them feel a bit too meta for me, though I did find the Hello World Koan to be an interesting discussion on our flippancy with code: http://thecodelesscode.com/case/14

-----


Isn't this already what a SIMD processor does? Or is it supposed to be like a SIMD hiding in a SISD processor?

-----


SIMD instructions are used to explicitly execute vector operations in parallel. The patent is about rearranging a stream of instructions across a loop at runtime to turn code that was not written with SIMD in mind into parallel code.

The across the loop part is the vaguely new part of it. To simplify it greatly, this can already be made parallel at runtime:

  float a = 5.0;
  float b = 10.0;
  
  //The next two lines are executed in one clock tick
  a*=2;
  b*=2;
This patent deals with a method to turn this into parallel code:

  float[] vals = { 1.0, 2.0, 3.0 }
  
  for ( int i = 0; i < vals.length; i++ ) {
    
    vals[ i ] *= 2;

  }
Obviously it has to detect any data dependencies at runtime, which isn't trivial. This can't be rewritten, for instance, because i depends on i - 1:

  float[] vals = { 1.0, 2.0, 3.0 }
  
  for ( int i = 1; i < vals.length; i++ ) {
    
    vals[ i ] *= vals[ i - 1 ];
  
  }
Now, this is cool. I'd love to be working on stuff like this. But it's an extremely obvious step, once you've cleared the low hanging fruit. It's just that the extra complexity hasn't been worth it until now, because easier and simpler things to do have given enough speed up. That someone would do this was inevitable, which is why I say the patent is ridiculous.

Imagine history turning out completely differently. IBM is the largest CPU design firm in the world, after Shockley Semiconductor and HP who fab chips for the latest Commodore machine. Apple and Dell never existed. Every single person working on CPU design today for whatever reason ended up in another field.

We would still be seeing this technique first being used at the 1 billion transistor mark for CPUs. It's just a consequence of the nature of computation.

-----


In practice the loop would tend to be unrolled at compile-time anyway, so the CPU would see instructions that look like the first case.

-----


The biggest problem in our patent system is that obvious ideas get patents. That said, the current criterion that patent examiners use to decide if an idea is obvious is based on prior art. If an idea is clearly useful but no one is using it (or has publicly disclosed it), then it's considered non-obvious.

-----


Isn't that already done with auto-vectorisation? http://gcc.gnu.org/projects/tree-ssa/vectorization.html It should take chunks of "vals" and automatically process X elements (depending on how many fit in the registers) at the same time via SIMD. It was available since ~2008 too.

-----


Apparently not.

At the gcc page you linked:

Example output using -ftree-vectorizer-verbose=2:

vect-1.c:82: note: not vectorized, possible dependence between data-refs a[i_124] and a[i_83]

Apple's patented method would appear to allow vectorization in this case, whereas gcc fails.

-----


That's also what I understood. I think it is meant to be a software patent though. It reads very similar or equal to what OpenACC, CUDA and OpenCL do.

-----


BUT if we had consistent poor performance for some vendor in a certain category, we could infer that their offerings for that category will also be poor in the future.

-----


If you are willing to accept language as one of the calligrapher's tools I think you will find his workshop to be equally cluttered.

-----


It's not as extreme as that--consider just the case where you want to share things with work friends that might not appeal to college friends. You're not acting different; you'd show the college friends if any of them asked, but you know they're bored by it so you want to keep it out of the timeline/tweets/whatev that they see.

-----


I saw an on-going project recently that was attempting just that. They were using texts from the web to infer relationships from recognizable patterns. Like (the head of X, Y) implies X is an organization, Y is a person, and Y is the leader of X.

It would also try to learn new patterns from facts it already knew, like if it notices Jobs and Apple in a sentence it can hypothesize that sentence pattern is about a leader of a company.

For the life of me I cannot remember the name of the project or even the university, hopefully someone else has heard of this.

-----


Tom Mitchell was talking about his own research. NELL http://rtw.ml.cmu.edu/rtw/

-----


I get poor search results daily, and half of them get "incorrected". "Did you mean UIView?" No, Google, I am working on OSX. I actually did mean NSView, that's an actual thing.

-----


Actually Cyc is panned pretty hard as a complete waste of a perfectly intelligent researcher's time.

-----


There's explicit provision in the law allowing for people without a pilot's license to fly an experimental aircraft. I'm sure you can still get in massive trouble for flying through the upside-down layercake above airports, but it's not flat-out forbidden everywhere.

-----

More

Guidelines | FAQ | Support | API | Lists | Bookmarklet | DMCA | Y Combinator | Apply | Contact

Search: