Live data from Hacker News

"Algorithm" is not a four letter word

jamisbuck.org

41–50 of 67 posts

Re: "Algorithm" is not a four letter word

#41
post #31
post #26

"Play" is boring if it isn't challenging. I completely disagree with the dichotomy presented at the start of this presentation. It seems to imply that improving is painful, and is something you need to force yourself to do. (Furthermore, I've never found learning about new algorithms to be taxing, and certainly never regarded it as a four-letter word.)

My intent was definitely not to portray learning as painful. Learning is a joyful thing. But it's not something you can acquire by passively staring at the world. You need to exert yourself if you want to do more than gain a passing acquaintance with things.

Yes; but playing is not passively staring at the world, nor does it involve a lack of exertion, nor yet again lack of a "passing acquaintance". The point of play is that you can exert yourself without having much hard work of willing it. A child with a new toy is highly engrossed, focused, and certainly not passive nor satisfied with a "passing acquaintance".

I guess I reacted to the screwed-up faces in particular; they looked like they were in pain.

Re: "Algorithm" is not a four letter word

#42
post #37

There's some good stuff here, but a lot of the psychology is ill-founded. Flow, for example, is probably the most effective form of practice, and play often creates flow. Jamis recommends practicing constantly, but it's extremely well established that spacing your practice out gives you more bang for the buck, more improvement per hour of practice. (This is called "massed practice vs. spaced practice", and it's been…

That's a neat generator, but it occasionally generates almost entirely-blocked mazes. The density is impressive, but at that point you might as well just start reading IOCCC entries.

Re: "Algorithm" is not a four letter word

#43
post #41
post #31

Earlier quoted context omitted.

My intent was definitely not to portray learning as painful. Learning is a joyful thing. But it's not something you can acquire by passively staring at the world. You need to exert yourself if you want to do more than gain a passing acquaintance with things.

Yes; but playing is not passively staring at the world, nor does it involve a lack of exertion, nor yet again lack of a "passing acquaintance". The point of play is that you can exert yourself without having much hard work of willing it. A child with a new toy is highly engrossed, focused, and certainly not passive nor satisfied with a "passing acquaintance". I guess I reacted to the screwed-up faces in particular; t…

Our problem here is the overloaded nature of the word "play". I do not disagree that children learn through play. But I'm using the word differently in my presentation: I'm using it to refer to activities that you (as an adult) pursue casually, as a way to relax or enjoy yourself. If you play the guitar very well, for instance, you might take an hour in the evening to just "play", singing along, etc. This serves many purposes, and is definitely valuable, well-spent time, but it does not serve to improve your guitar playing. To accomplish that, you'd need to spend some time working on guitar techniques that you are less accomplished at.

You can see my problem, hopefully. Ambiguity in language has been the downfall of more than one well-intentioned presenter!

Re: "Algorithm" is not a four letter word

#44
acquainting yourself with theory is acquainting yourself with new concepts. It gives you building blocks and labels that you can build on, and hang later concepts on. Without the scaffolding that theory gives you, you'll miss many opportunities for insight later.

So very true. The difference between the me one year back and the me now is that I know how and why certain things are the way they are. Understanding is enlightening.

Ultimately, it is that resistance you need to seek out. Look for things that will challenge you consistely (sic). Work at them until the resistance goes away, and then look for something new. That's how you'll grow your craft. That's what will make you better than you are today.

Amen.

Re: "Algorithm" is not a four letter word

#45
I think the author did a great job and took quite some time to share his knowledge with us. Pity the average response on HN tends to be a compliment followed by a but.... I guess we feel we are always smarter than the next guy, he just happens to put in the effort :-)

Well done, loved it all the way!

Re: "Algorithm" is not a four letter word

#47

Earlier quoted context omitted.

The problem is that you are arguing the analogy. What you are saying neither fits the point or spirit of his slide show.

I am just pointing out that the start of the slideshow is a little unnecessary and potentially off-putting, I quite enjoyed the concise diagrams and animations which followed. I think those with a CS degree and a good understanding of graph theory should still sit and enjoy it!

I don't think you need a CS degree to enjoy this. I'm a CS student, and I did. :)

Re: "Algorithm" is not a four letter word

#48
post #43
post #41

Earlier quoted context omitted.

Yes; but playing is not passively staring at the world, nor does it involve a lack of exertion, nor yet again lack of a "passing acquaintance". The point of play is that you can exert yourself without having much hard work of willing it. A child with a new toy is highly engrossed, focused, and certainly not passive nor satisfied with a "passing acquaintance". I guess I reacted to the screwed-up faces in particular; t…

Our problem here is the overloaded nature of the word "play". I do not disagree that children learn through play. But I'm using the word differently in my presentation: I'm using it to refer to activities that you (as an adult) pursue casually, as a way to relax or enjoy yourself. If you play the guitar very well, for instance, you might take an hour in the evening to just "play", singing along, etc. This serves many…

You have overloaded play in a very specific way in your response; playing an instrument. I'd have preferred it if you'd chosen something else, because I think it introduces a third meaning for play (specific to instruments) apart from both the focused play like that of a child and something an adult pursues casually (which I doubt should be called play).

My hobby (as well as my only form of transport) is motorbikes. I do it for over an hour every day. I'm definitely getting better at it, because of an iterative process of analysis and experimentation. If I just looked at it as a means of transport, I wouldn't be so eager to stretch myself; I'd be content with getting from A to B in a safe and not very efficient manner.

It's completely different to programming, so in some ways it is relaxing; it's certainly highly enjoyable; but it is also simultaneously energizing and tiring. It uses a completely different part of my brain, and gets the adrenaline going.

I think if guitar-playing was my hobby, I'd be focused on improving and having an iterative experimentation / analysis cycle. But if guitar-playing was something I did to make music, perhaps to entertain other people, then the focus is elsewhere. It would no longer be play; it would merely be doing.

What I'm getting at is that play (my definition of it, at least) necessarily implies stretch goals, doing things that you have room to improve at, because without challenge it's boring. What makes it different from work is intrinsic motivation, and hence the lack of a need for application of will.

But you're right in another respect, this is all coming down to a disagreement over the use of words, rather than a disagreement in concepts etc. The start of the presentation just rubbed me the wrong way, and I've made far too much out of this small thing...

Re: "Algorithm" is not a four letter word

#49

Warning: severe pollution of "history" links in your browser ahead.

Depending on the browser there is no problem, as in some browsers it is completely impossible to navigate to the next slide at all. When exactly did accessibility and standards conformance become unfashionable round here?

Re: "Algorithm" is not a four letter word

#50
post #35

I like the visualizations for the maze generation a lot. I actually used (yet another) maze generation algorithm for an xbox360 game I worked on as a school project. The constraints were slightly different because we wanted cycles and no dead ends. You put all the cells in a list and take them out at random. If there are 3 or more walls, tear down walls until there are less than 3. When you are done you cannot have a…

A point P is inside triangle ABC iif the angles add up to 2pi. (APB + BPC + CPA == 2pi) Thought I'd share too, don't have a point. :) graphics programming / dot product is neat. Actually, there are some pretty fun graphics algorithms. I could ramble on about some, but don't want to intrude / doubt anyone cares but me, heh.

You've got a 'carer' right here. I'd love to read more on 'traditional' algorithms applied on CG.
Post reply on HN