Wednesday, November 28, 2012
Monday, November 19, 2012
Warm fuzzy
I'm really moved today.
I'm in Charter Club (one of the eating clubs in Princeton), and honestly, I haven't been super on about it (I miss saying on and having people understand that it also means zealous). But today, we voted on changing the gendered lyrics of the Charter song. To me, using gendered terms isn't offensive, but it sounds unnecessarily antiquated. A portion of the club, about 150 of us, sat down and participated in an open moderated debate for and against changing the lyrics of the song. Each point was well made, good considerations were brought up, and important clarifications were raised. Having 150 people discuss a controversial issue openly, calmly and respectfully is not something I see all the time, and I'm super proud of everyone in the club for making this possible.
Rodrigo, the club president (soon to step down for the next president), cried during his last speech. His term was marked by the changes in the member selection mechanism (between a subjective bicker system and an open points system). He cried when he made the point about how our openness and respect makes us special, and even though it was short and to the point, it's one of the most moving speeches I've ever heard.
-----------------
Also, man, facebook is so cool, I really hope I can get in!!!
I'm in Charter Club (one of the eating clubs in Princeton), and honestly, I haven't been super on about it (I miss saying on and having people understand that it also means zealous). But today, we voted on changing the gendered lyrics of the Charter song. To me, using gendered terms isn't offensive, but it sounds unnecessarily antiquated. A portion of the club, about 150 of us, sat down and participated in an open moderated debate for and against changing the lyrics of the song. Each point was well made, good considerations were brought up, and important clarifications were raised. Having 150 people discuss a controversial issue openly, calmly and respectfully is not something I see all the time, and I'm super proud of everyone in the club for making this possible.
Rodrigo, the club president (soon to step down for the next president), cried during his last speech. His term was marked by the changes in the member selection mechanism (between a subjective bicker system and an open points system). He cried when he made the point about how our openness and respect makes us special, and even though it was short and to the point, it's one of the most moving speeches I've ever heard.
-----------------
Also, man, facebook is so cool, I really hope I can get in!!!
Thursday, November 15, 2012
O hai
So many people have actually serious blogs where they blog about one particular thing. In fact, almost everyone I physically meet now who has a blog keeps one where they talk about a topic others might be interested in, like programming or design or startups or law or non-profits. Hopefully people find whatever random thoughts I have to be interesting enough, because I can't be counted on to write anything else here.
-------------------------------------------------
With the obligatory meta-blogging out of the way, here goes:
Thoughts on virtualization:
So I'm currently learning about OS (Operating Systems). One very important thing that the OS does is to give each program* the illusion that it is the only program running on the computer - each program "thinks" it has all 4GBs (or however much) of RAM and the entire CPU to itself even though it's actually sharing those with all the other programs(except the OS kernel) that are running on the computer. How does the OS do it? Well, it turns out that at any one time, the state of a program's execution(called the context) can be stored in quite a small amount of space. Every once in a while, you can "freeze" the program, save the context, "unfreeze" another program, and repeat. In this way, each program gets to run some of the times, and is never aware of anything that happens when it is not running.
But if we stop there, other programs could also leave stuff lying around, which would break the illusion that each program is the only one running. So the OS kernel does something sneaky: it never exposes the actual space to the program. Each program gets a virtual space, such that anytime it looks at or changes something in its space, the OS kernel would give the program the impression that whatever the program is looking for is where the program thinks it showing the program that the corresponding real location contains. The OS kernel has to do this very carefully, otherwise the program would get confused, or even worse, it might accidentally allow the program to touch something it is not supposed to touch.
The nice thing about this world that if the OS is done right, each program doesn't "feel" that their requests take a long time, even though it might actually have taken 1 million times as long as it had ever existed for the request to be fulfilled (I think about that when I'm lining up at the DMV.) The bad thing is that you're all alone, and the only way to talk to anyone else is by making a phone call to "the system".
So suppose you are someone with the ability to stop time and you never die, you could actually give everyone on earth the illusion that they are alone! Freeze time for everyone, let one guy move once in a while, and then put everyone else in a small place, swapping them around from time to time.
Then truly, "Only through ourlove and friendship system calls can we create the illusion for the moment that we're not alone".
* technically it's a process/thread, but the details are not that important here.
Some notes on entropy, and an interesting consequence
Entropy is a measure of "disorder", but it's also useful to think of it as a measure of how little we know about a system - these are equivalent ways of looking at the same thing.
Suppose you have a room full of stuff. The usual thing to say is that a messy room has more entropy than a neat room, because the messy room is more "disordered". But we can also look at this from the information perspective. Imagine you have a robot that can reconstruct your room item by item. Now you tell your robot, "Construct a messy room." (Assume that the robot also understands what "messy" and "neat" means. This would become important later.) How much would you know about the room that has been reconstructed by the robot if you are not allowed to look at it?
Well, not very much, because the robot has a great deal of freedom in putting things in different places. You have no way to know where any particular thing is going to be, and even after you know where something is, you still don't know where all the other things are. You are, in fact, so clueless about the messy room that the robot would need to give you a lot of information before you really know where everything is. In other words, saying that a room is messy doesn't tell you very much about it - that what it means (at least from an information perspective) by high entropy. In contrast, if you told the robot to construct a neat room, you already know that the books would be on the shelves, and the tables and chairs are going to be some angle not too far from being a right angle before you even look at the room - saying that a room is neat tells you quite a bit about it. That's how it's low entropy. Another way of saying it is that, entropy is a measure of the number of ways you can make up something that agrees with a particular description. "Messy room" is less descriptive than "neat room", so there are more ways you can make a room messy compared to the number of ways you can make a room neat.
This ties in two fundamental ideas in physics and computer science together. It turns out that this sets absolute physical limits to the information density of a chip, or anything at all (though in practice, this density limit is about as relevant to chip designers today as the speed of light limit is to spacecraft builders). Here's the argument: suppose you make a chip that holds a lot of information, let's call it an "uber-chip". When I say, "Here's an uber-chip," I am allowing for many ways to make up an uber-chip. Perhaps I flip the last bit, perhaps I flip the middle two, or perhaps I alternate the bits... and so on. This means that chips of arbitrarily high information density also have arbitrarily high entropy. Now, the entropy of a black hole increases by a certain fixed amount when you drop a mass into it. Suppose you drop an uber-chip into a black hole. Well, so you've started with something to arbitrarily high entropy, and how you've converted it to some fixed amount of entropy - decreasing the total entropy of the universe in the process. You can't do that, so that means no uber-chip is possible.
And I think that's pretty cool.
-------------------------------------------------
With the obligatory meta-blogging out of the way, here goes:
Thoughts on virtualization:
So I'm currently learning about OS (Operating Systems). One very important thing that the OS does is to give each program* the illusion that it is the only program running on the computer - each program "thinks" it has all 4GBs (or however much) of RAM and the entire CPU to itself even though it's actually sharing those with all the other programs(except the OS kernel) that are running on the computer. How does the OS do it? Well, it turns out that at any one time, the state of a program's execution(called the context) can be stored in quite a small amount of space. Every once in a while, you can "freeze" the program, save the context, "unfreeze" another program, and repeat. In this way, each program gets to run some of the times, and is never aware of anything that happens when it is not running.
But if we stop there, other programs could also leave stuff lying around, which would break the illusion that each program is the only one running. So the OS kernel does something sneaky: it never exposes the actual space to the program. Each program gets a virtual space, such that anytime it looks at or changes something in its space, the OS kernel would give the program the impression that whatever the program is looking for is where the program thinks it showing the program that the corresponding real location contains. The OS kernel has to do this very carefully, otherwise the program would get confused, or even worse, it might accidentally allow the program to touch something it is not supposed to touch.
The nice thing about this world that if the OS is done right, each program doesn't "feel" that their requests take a long time, even though it might actually have taken 1 million times as long as it had ever existed for the request to be fulfilled (I think about that when I'm lining up at the DMV.) The bad thing is that you're all alone, and the only way to talk to anyone else is by making a phone call to "the system".
So suppose you are someone with the ability to stop time and you never die, you could actually give everyone on earth the illusion that they are alone! Freeze time for everyone, let one guy move once in a while, and then put everyone else in a small place, swapping them around from time to time.
Then truly, "Only through our
* technically it's a process/thread, but the details are not that important here.
Some notes on entropy, and an interesting consequence
Entropy is a measure of "disorder", but it's also useful to think of it as a measure of how little we know about a system - these are equivalent ways of looking at the same thing.
Suppose you have a room full of stuff. The usual thing to say is that a messy room has more entropy than a neat room, because the messy room is more "disordered". But we can also look at this from the information perspective. Imagine you have a robot that can reconstruct your room item by item. Now you tell your robot, "Construct a messy room." (Assume that the robot also understands what "messy" and "neat" means. This would become important later.) How much would you know about the room that has been reconstructed by the robot if you are not allowed to look at it?
Well, not very much, because the robot has a great deal of freedom in putting things in different places. You have no way to know where any particular thing is going to be, and even after you know where something is, you still don't know where all the other things are. You are, in fact, so clueless about the messy room that the robot would need to give you a lot of information before you really know where everything is. In other words, saying that a room is messy doesn't tell you very much about it - that what it means (at least from an information perspective) by high entropy. In contrast, if you told the robot to construct a neat room, you already know that the books would be on the shelves, and the tables and chairs are going to be some angle not too far from being a right angle before you even look at the room - saying that a room is neat tells you quite a bit about it. That's how it's low entropy. Another way of saying it is that, entropy is a measure of the number of ways you can make up something that agrees with a particular description. "Messy room" is less descriptive than "neat room", so there are more ways you can make a room messy compared to the number of ways you can make a room neat.
This ties in two fundamental ideas in physics and computer science together. It turns out that this sets absolute physical limits to the information density of a chip, or anything at all (though in practice, this density limit is about as relevant to chip designers today as the speed of light limit is to spacecraft builders). Here's the argument: suppose you make a chip that holds a lot of information, let's call it an "uber-chip". When I say, "Here's an uber-chip," I am allowing for many ways to make up an uber-chip. Perhaps I flip the last bit, perhaps I flip the middle two, or perhaps I alternate the bits... and so on. This means that chips of arbitrarily high information density also have arbitrarily high entropy. Now, the entropy of a black hole increases by a certain fixed amount when you drop a mass into it. Suppose you drop an uber-chip into a black hole. Well, so you've started with something to arbitrarily high entropy, and how you've converted it to some fixed amount of entropy - decreasing the total entropy of the universe in the process. You can't do that, so that means no uber-chip is possible.
And I think that's pretty cool.
Friday, September 07, 2012
pen it down
It's sometimes a mystery to me why there are so many problems I can ponder in my head that seem as unsurmountable conundrums, only to seem quite simple to resolve once I write them down(or more likely type them out). According to the extended Church-Turing hypothesis, all computable problems can be solved with a Turing machine. And a human brain is surely Turing complete, right? It can simulate a Turing machine by following the procedure step by step. But aha! The assumption of an infinite memory tape is not held! A normal human brain that doesn't write anything down can't store and retrieve arbitrarily long bit strings at will. So an unassisted human brain is not Turing complete. But armed with a recording device - aha! Then the human is Turing complete, and can solve all kinds of (computable) problems.
So I guess when people argue that writing is the greatest human invention, I could supply another (not particularly intuitive) reason to support that argument.
Thursday, September 06, 2012
double happiness!
I'm really happy for my sister. Both my sister and her now-husband are so amazing! I'm glad that things are moving ahead in their lives. I'm also glad that I can now refer to the amazingly intelligent, considerate and decisive (and lucky) Oliver Wicker as my brother-in-law instead of "just" my sister's boyfriend(which has a somewhat transient feel to it, even though they've been together for so long!). And I can refer to Kitty as "my sister-in-law... sort of" instead of the awkward "my sister's boyfriend's sister" which somehow seems more distant than it feels.
During the wedding reception(which was a high tea), I had the chance to sit with and talk to people around 9 years older than me. It's quite remarkable how... "steady" (forgive my diction) they seem! Conversation flows easily and casually even between strangers - they know what questions to ask to simulate a friendly chat, and how to respond in a witty manner. I wonder if it's because they are in the same age group and they have a better idea of what the concerns of people of that age are? Or perhaps making friendly conversation with people they've just met is a universal skill they've acquired over time? That seems like a really useful thing to learn. Sitting at that table I keep feeling that they know a great deal about life that I don't, but they are all pretty cautious about giving advice.
For a while after the reception I felt like I was the most immature of the bunch of people at the reception (well maybe excepting the one year olds), and wondered: Do all x year-olds talk like x year-olds? I don't want to be sound young and immature! Is there any way around it? And my mom told me: It can only come with experience, through success, failure, or even suffering, and all that will take time. Of two people of the same age, one can sound like old when talking about one thing, but he'll probably sound younger when talking about another, as the time they have will tend to equalize the amount of experience they have, and no experience has greater intrinsic worth over another, be it success or failure.
Oh well, I guess I can only wait then!
Wednesday, September 05, 2012
Brought about by change
I just identified the background music in NLB when they announce "Dear readers, the library will be closing in 15 mins, …) it's moonlight sonata!
--------------------------------
Today, when I received some change from a waitress, I was reminded of this story by my primary school teacher: there was once a student who didn't really know etiquette. So everyday, when the student submitted a notebook containing his homework to his teacher, the teacher would toss it aside and walk away without any explanation. This made the student frustrated yet puzzled. Every day he would greet the teacher, or say something nice before submitting his homework, but the teacher did the same thing: toss it aside, and walk away. It was only one day when he finally, by chance, decided to try handing in his homework with both hands that the teacher finally accepted it. So, according to my teacher, the moral of the story is: it's more polite to hand things over with both hands.
But the obvious thing in the mind of the student would be: Why doesn't the teacher just tell me what I'm doing wrong? Perhaps, the student could also have watched how other students were handing in their homework to try to figure out what he was doing wrongly. That reminds me of an article about reinforcement learning vs imitation vs instruction. The article found reinforcement learning to be less effective than both imitation and instruction for a certain task. It makes me wonder: if machines become conscious, would they get frustrated when we try to train them to do something by reinforcement learning? Would they think, "Yeh right, as if you know how to do it!" or "Why don't you just tell me what you want and not make me do this over and over again?"
But I guess there will always be some amount of reinforcement learning to be done as long as there are unsolved problems - some people need to stay at the forefront to do less inefficient learning task of discovering new methods, while others can help to spread the knowledge in a more efficient way by making more people aware of the method, or by teaching it well. Perhaps the moral of the story is that Nature is kinda like that annoying teacher in that story, and we as students should help to make each others' lives a bit easier.
Monday, August 20, 2012
Subscribe to:
Posts (Atom)