HN user

notb

99 karma
Posts5
Comments38
View on HN

Google does the same kind of software interviews as anywhere else. They aren't special. You code on a whiteboard and it's supposed to be compilable in C or Java. The process beyond that is just as subjective as anywhere else and is largely based on gut. They depend largely on employee references/friends.

The data they collect is really only to make the process more efficient, not more effective. They reward employees that process the most phone screens in a month. The strangest thing, in my opinion, is that the interviewers usually don't make a decision at all, they just give a rating. Then, a group of people who've never even met the candidate decide whether to hire them based on forms that were filled out.

There's a whole spectrum of users, as well. Programmers can be Python users, wherein the python implementation takes complexity hits to simplify it for the user.

It's all subjective, and the design of the high level concepts (maybe mechanics?) influence the complexity at every level below it. The idea of a 'file' goes from the GUI down to the hard disc format.

Seems like a disadvantage to me. It's mostly just confusing and the only thing it affords is the ability to use :keywords as functions (:like so) which is just sugar for property access, so["like"]. This is broken, though.

The coolest thing about :keywords in Clojure is that they really are functions and you can do things like (map :keywords ontoSomething) to extract the same property out of many things. It don't work in Wisp.

This has been my experience with recruiters but once you get past the wall of pleasantries and fake attitudes, they usually talk with more sense.

Edit: Sibling comments are talking a lot about the author's personal motivating factors but are ignoring the bigger message of poor hiring tactics like repeating talking points and marginalizing personal goals. I got you, though, op.

I think he's asking how it got so obfuscated in the first place. Seemingly, the spammers could just pilot a standard up to date client with a bot, rather than try and figure out the protocol.

I'm sure it's more complicated than that however, like client side rate limiting or something.

The whole aesthetic seems wrong. The perfect circles and even lines seriously clash with the naturally drawn clefs. In the example music, they adopt a new font for the time signature to blend in better, I guess, but the clefs are still out of place. There's an appealing naturalness to traditional notation that this system abandons and ends up looking like a schematic or alien code. Should really work the style into a more natural feel. There's potential here, but it's falling a bit flat (a pun and also literally the lines are too flat).

The sharps look like a guy flipping the bird. And the flats look a guy with a fist, ready to fight. Funny but a bit distracting.

The focus on pitch letters (abcdefg) and lack of key signatures reveals a weak music theory foundations. The key says what scale to use and then you think about the relative positions, you don't think about the letters.

It feels a bit like training wheels for reading music. Maybe thats the real purpose?

I don't understand these questions:

“Is optimization of speed premature while productivity languishes?”; “Are semantic elegance and lexical simplicity just means by which to further our productive capacity?”

The flowery language is confusing me. Is there any real content here? I've never heard anyone talk about programming languages like this. Writing like this just makes it harder to understand and seems like putting on airs

Agreed, it is unwieldy. However, because of it, eta-reduction is not as important because equivalent terms look the same, and name collisions can't happen. It made it a bit simpler.

And, that is definitely a bug, thanks. I think I could solve it by lazy evaluation (it wouldn't reduce that term) but I think I just need to correctly change vars when they move scope.

In honor of the Y-Combinator, here's a nearly equivalent fixed-point combinator named Gordan.

  An eater, Ditto
    who becomes Ditto's food eating
      Ditto's food
  
  An eater, Gordon
    who becomes Ditto eating
      an eater, Freeman
        who becomes
        Gordon's food eating
          Freeman's food eating
            Freeman's food.

I dont think so... c() would be evaluated first which is inconsistent with the other examples

Edit: I realize vemv's examples are inconsistent as well

I agree with you somewhat. Turing machines are difficult to abstract into sensible 'commands' or functions without some kind of compiler or intermediate step. The trouble here is that kids get no exposure to abstraction and functions, which I'd argue is more important and fundamental than conditionals and loops, which are really just specialized functions at heart.

You aren't following me. 'Learnable Progamming' is 'built on' Khan Academy in that it is a response to it and it works from the JavaScript/Processing environment that Khan Academy put out. There are obviously questionable assumptions being made about it being a good environment in the first place, but it is simply used to make a point. Zed makes some straw man arguments by conflating these concepts.

Zed has got it twisted. Khan Academy's environment was 'inspired' by Victor's 'Inventing on Principle' talk which encompassed much more than what's discussed here. Resig did not implement Victor's 'Learnable Programming' article, because the article was, in fact, a response to the Khan Academy implementation. I imagine Victor built upon Resig's work to make those little demos in the article. Victor explicitly states JavaScript is a poor educational language, and the demos are just the simplest examples of his principles, by extending the Khan Academy model. [1]

[1] http://worrydream.com/LearnableProgramming/ (the bottom)

Flynn’s IQ 14 years ago

Crunching numbers is most definitely abstract. What is a number? Why does it matter? What does it represent? What is zero? Why is zero important? Think about how long it took for humans to actually start doing math. And then think about how difficult it used to be for people to grasp negative numbers. Sure, schools teach things with M&Ms and counting other concrete things, but you still have to think abstractly to apply the same concepts to other concrete things.

Flynn’s IQ 14 years ago

My impression is that IQ seems to be a measurement of a person's capacity to think abstractly, which is something you learn through the world around you. Perhaps those who fail at math have simply never experienced anything that requires abstract thought. Therefore, it seems like there is a skill that even basic arithmetic is dependent upon, basic abstractions. I can see how an otherwise able person would be hopeless at math if they never learned abstract thought.