"The politics of division"

I just got an email from Equality California, one of the big gay-rights groups in California. I'm getting increasingly frustrated with them, and the other groups that fought against prop 8 this year. The latest scandal is that Barack Obama has asked Rick Warren to give the invocation at his inauguration, and this has gotten the gay community into one of their big hissy fits, because he was a vocal proponent of proposition 8.

The email is actually from Geoff Kors, the director of EQCA, who apparently was invited to attend Obama's inauguration...
It is extremely disappointing and hurtful that President-elect Obama has chosen California Rev. Rick Warren, who actively supported Prop 8 and the elimination of existing civil rights for LGBT Californians, to give the invocation at his inauguration.

Accordingly, I have decided to decline the invitation to attend the inauguration as I cannot be part of a celebration that highlights and gives voice to someone who advocated repealing rights from me and millions of other Californians.

I was looking forward to hearing a speech by the new President about his vision of a new America and an end to the politics of division where one group is pitted against another.

I can't say that I'm particularly happy with Obama's choice, but I would definitely call this an overreaction, which represents my biggest problem with the gay-rights movement right now. People seem to be absolutely unable to see that just because someone disagrees with us, doesn't mean they hate us. I'm sure the accusations against Warren have some truth to them, and I'm sure if I did some research, I could find several things he's said which are extremely offensive to the gay community, and are probably flat-out lies. But if we want to end "the politics of division," how do we do it? Refuse to attend an event where someone who disagrees with us is going to speak? Accuse our opponents of "actively working to divide Americans"?

and Biden were both on our side on the issue of prop 8. Let's not forget how meaningful that is. I doubt any politician could afford to oppose prop 22, and that was only 8 years ago. Now Obama is trying to demonstrate that he understands where the other side was coming from. He's trying to make those opposed to same-sex marriage feel like Obama is not their enemy. As hard as it is to hear, the people who are against same-sex marriage are people too. They're not stupid, or hateful, they just have differing opinions. And by the way, they also represent some 52% of California voters. The only way they're going to go away is if we can convince them to change their minds. For many people, this may impossible. Rick Warren may be one such person. But for the director of one of the biggest gay rights groups in the state to make a refusal like this... to me, it just seems like a huge step in the wrong direction.

Here's my prediction. Warren's invocation will include something like, "Let us unite as Americans" or "Let us put aside our differences, as we welcome a new era in American politics" or something like that, urging Americans to come together. That clip will be posted on youtube, and GLBT people will post the link over and over on their blogs, facebooks, etc., with comments like "Oh, how ironic. He wants us to be united, after he used his church to divide us," followed by some kind of insulting, divisive comment about Warren, his church, or Christianity in general.


Science TV

I feel like I've talked about this before, but I wish there was more TV out there for science-minded people. I'm a physics major, which of course means I'm more knowledgeable about physics and the terminology it uses than most people. But I'm no more knowledgeable than anyone else about, say, biology, chemistry, neuroscience, or any number of other disciplines. It would be nice to see some TV shows about those things that were aimed at a "science-minded" audience.

I was watching Discovery Science channel the other day (which, when I first heard about it, I thought might be the kind of sciencey TV I was hoping for) and they were talking about how a microwave works. They said something like, "the transformer and the capacitor cause the electricity to become supercharged before sending it along to the magnetron." I guess because "supercharged" supposedly sounds cooler than "high voltage" (if that is in fact what they meant). It's just imprecise and uninformative.

Not to mention the point later on where they talked about electrons moving back and forth in a circuit at "nearly the speed of light." (It turns out this is one area where Wikipedia appears to be weak, but see here for at least some kind of explanation.)

Americans are dumb, and I don't think Discovery Science is helping as much as it could be.


How they see us

Arianna Huffington was on the Daily Show last night talking about blogging and how great it is and how she has this new book out which is all about blogging. And one of the things she said is that blogging should be all about the first thought that comes to your head, rather than the conclusion you come to after lots of pondering.

I don't know how much I agree with that, but here's a thought I had today.

We get a lot of mail that's not for us, or at least that we didn't ask for, because of all the previous residents that have lived in our apartment. So today we got an envelope. The first thing I noticed was: "Your opinion matters!" and the fact that the return address was somewhere in Pennsylvania. The next thing I noticed was who it was addressed to: "Current resident"

I think that pretty well sums up the way that companies look at us. They want to know a lot about us: what we eat, what we buy, how often we buy it, what kind of stores we like. Basically, our opinion matters. But of course, what doesn't matter is our name. We don't want to know WHO you are, we just want to reduce you to a bunch of useful marketing data.

I feel so needed.


Daily Trojan: "Pro-gay rights and pro-proposition 8"

In today's Daily Trojan, Kartik Sreepada, a student who voted yes on 8 tries to explain why. I recommend you read the whole thing, but I want to address some of the main points. First, though, I want to stress again that I fully respect the views of nearly everyone who voted yes on 8, because I know they did so for genuinely good reasons. I think they made the wrong choice, of course, but I do not want to label them as bigots or imply that they think of me as a second class citizen or any such thing. Anyway, here we go:

I recalled the succinct words of Vice President-elect Joe Biden during the vice presidential debate.

“Barack Obama nor I support redefining from a civil side what constitutes marriage... That is basically the decision to be able to be left to faiths and people who practice their faiths,” he said.

First, by voting yes on 8, you redefined marriage. Admittedly, the existing definition had only been in place for a few months, but by voting yes, you are taking a stand on the issue and redefining marriage. I would also like to point out that Obama and Biden both supported NO on 8. (Biden: "If I lived in California, I'd clearly vote against prop 8. ... I think it's regressive, I think it's unfair."; Obama: When you start playing around with constitutions, just to prohibit somebody who cares about another person, it just seems to me that's not what America's about."

I think there is a misunderstanding going on here. Civil marriage--marriage as recognized by the state of California--is not a religious institution. A couple may be both legally married and married in a religious ceremony, but the two do not have to go together. The CA Supreme Court decision in May made it very clear that the ruling only affected civil marriage. It had no effect on the marriages of any individual church, just as a change in any church's definition of marriage would have no effect on civil marriages. Of course the official definition of marriage as recognized by any particular church is up to the leadership of that church. There is no reason this should be the same as the definition the state offers, and of course it's not the same in many cases.

I truly do not understand how allowing same-sex couples to marry violates separation of church and state. The only explanation I can think of is that Sreepada seriously misunderstood the way our state handled same-sex marriages between June and November this year. Going on:

While the California Supreme Court’s acceptance of gay marriage appeared to grant complete equality to gays, it undemocratically undermined another pillar of our Constitution: the separation of church and state. The decision could have led to a dangerous rift between religious institutions and our government, possibly putting patriots at odds with the religiously faithful.

First of all, there seems to be a very common sentiment that any time a court overturns an existing law, it is undemocratic, simply because that law itself was created through democratic means (either a legislature, or a ballot measure). The foundation of our government is "by the people, for the people" but it is also a system of checks and balances. And a very important part of that is the ability for courts to rule that a law is unconstitutional. You may disagree with their decision, but striking down laws is part of their job--it's not unconstitutional for them to do it.

But to address the real point being made, I fail to see how the decision undermined the separation of church and state. I can only imagine that this view resulted from a misunderstanding of what allowing same-sex couples to marry (again, I'm talking about civil marriage, not marriage in the eyes of any specific religion) did and didn't do. It did indeed create a "rift" (to put it nicely) between several groups and individuals, as did prop 8 being on the ballot, as did its passage. I don't see how that makes it wrong or right. It just means this is a controversial issue.

After this, Sreepada tries to elaborate on how same-sex marriage undermines the separation of church and state. There is an argument about religious leaders being "forced to act against their faiths," which did not happen during the period when same-sex marriage was legal here, and would have continued not to happen, regardless of the outcome of prop 8. Then it is claimed that marriage is "not a legal concept." Certainly, religious marriage is probably older than civil marriage, but then the idea of trading goods for money has existed much longer than any California laws regulating businesses. Does that mean that a business is not a legal concept? No, it just means that it may have different meanings in different contexts. And one of those is a legal definition. Marriage is most certainly a legal concept.

In time, maybe the Supreme Court will declare the term “marriage” unconstitutional. When that moment comes, it will be a victory not just for equality, but the separation between church and state.

Perhaps this sheds some light on what was really meant. It's not that marriage isn't a legal concept, but rather that it shouldn't be one. That is, it is a religious concept which the government has become involved in, so its become a legal concept. Maybe it would be better left to the churches, and the government should just stay out of it. While the idea of eliminating civil marriage altogether is a bit radical, it would certainly be equal. All couples would have the same rights under the law.

Basically, this person seems simply misled or misinformed. If you think you understood him better than I did, please tell me.


Looking Forward

Okay, so we lost. We're all angry about it. If it's going to take you a while to stop being angry, I understand. In fact, you probably shouldn't plan on ever "getting over it." So write angry facebook notes, take to the streets, unfriend the people who voted yes, whatever you need to do.

But I'm going to try to do what I can to look forward. Right now there are already lawsuits being filed, and whether anything comes from those or not, it's not clear what the next step will be. Whether it will come through the courts, the legislature, or another proposition showing up on the ballot, we don't know. But regardless of what it is, proposition 8 has started a long conversation on same-sex marriage, and I think it's important that we allow this conversation to move in a new direction.

To the "yes on 8" voters:

Marriage has always been between a man and a woman in this state, up until this past June, and I understand that kind of change is difficult for you, in the same way that anything new or unfamiliar is always difficult. The Supreme Court of California recognized a new right that had never been legally considered a right before (at least not here). Of course there will be at least some part of you that objects to that kind of change. I realize that, despite what you heard from the protesters on the streets of West Hollywood on Wednesday night, your vote was not intended to be bigoted or hateful, or to treat anyone as a second-class citizen. Change is hard, and we will never get any closer to reaching any kind of agreement or understanding on this issue if we don't recognize that fact.

That said, many of you were tricked into voting yes. You bear much of the responsibility for that, and of course, so does the official "yes on 8" campaign. The campaign consistently misled and lied to voters, in an effort to move the conversation away from the real issue (same-sex marriage) and scare people into voting yes. No church has ever been denied their tax-exempt status for refusing to marry any particular couple. If topics like marriage are taught in California public schools, they have to give parents the right to opt out. Barack Obama stated very clearly that he was against prop 8. Nearly all the official material that came from the yes on 8 campaign was absolute lies or at least implied false statements. It is your responsibility as a voter to be smart enough not to fall for such things, and to call out your own campaign when you see it happening. If you want to use the electoral process to prove that a majority of Californians are on your side, then you need to actually get out there and convince people. As it stands now, all you've proven is that people are very susceptible to emotional advertising.

To the "no on 8" voters:

First of all, next time, get angry before the election. And then channel your anger into volunteering or donating, or at least making sure all your friends will vote our way. And if they say they're not going to, then talk to them about it (see below). In any case, get angry and take action before the election. I'll only say it one more time. Get involved BEFORE the election.

When I was volunteering for the No On 8 campaign over the summer, trying to recruit new volunteers to join us, I would explain briefly how the campaign needed so many thousands of volunteers in order to win. Often, they would then assure me that such a proposition would never pass, not here in California. I don't think anything more needs to be said about those people.

I want to stress again that I understand how frustrated and disappointed everyone is right now. However, slogans like "Stop the hate, no on 8," referring to your opponents as bigots, saying they've treated you as a second class citizen, insulting an entire religious group: None of that helps us very much. Changing the minds of millions of people is not easy, but insulting them is a sure way not to do it. I think we did a great job in this campaign of making sure our messages were always positive and truthful. Next time around, we need to do exactly the same thing, and work even harder to combat the lies that we now know the other side will probably tell.

To people on both sides of this issue:

Even though this fight is over, the conversation that will lead us to the next fight has to continue. So keep talking about this issue, not just with your friends on your side, but with anyone you know who voted the other way. This can be a somewhat painful experience, but we all have to live in this state together, so let's at least try to understand each other a little bit. We will never all agree on everything, and there are people on both sides who will never be swayed. But if we don't start talking to each other soon, trying to understand where the "other side" is coming from, then the "yes" voters will always be "hateful homophobic bigots" and "no" voters will always be "in league with activist judges trying to redefine marriage for us all." This is California. We should be better than that. All of us.


Finally, an update

Since the last time I posted anything of substance:

* I turned 21. That went pretty much how it should have gone.
* Classes have started again. I have two Physics classes, both of which started off kinda slowish, one much more than the other, but are now starting to become legitimately challenging and fun.
* I'm an SI Leader for Physics 152. I don't think I'm doing so well with that, but it's hard to know. I think I'm slowly improving.
* I've been working hard on the no on 8 campaign, which now has a small but mighty corps of volunteers here at USC, with phonebanks two days a week.
* I did the USC Programming Contest again, but I didn't really prepare for it at all, like I did last year. Did very badly, but it was also a tougher contest than the last one. And we all got t-shirts!
* I've agreed to help Elizabeth with a journalism project that will require some programming. I'm not even sure how I want to do it. It's the kind of thing that would be web-based in real life but Javascript is meh and other web programming languages I don't know at all. So I'm going to see if I can build up a proof-of-concept in Python. I guess.

Next post will be something about prop 8 I think.



Fuck yes.

Actual informative post coming soon. Hopefully.


Prisoners and Lightbulbs

I've been chatting on IRC a little bit, after discovering that, yes, people still use IRC sometimes. I really had no idea. Anyone, someone there posted this problem called One Hundred Prisoners and a Lightbulb, and it was driving me insane trying to figure out the answer. Unfortunately, the paper they linked to also had the answer, so I looked after a little while. Still, a fun problem, and it might be interesting to derive the details of the solution just using the basic outline.


Python Challenge

I've been learning Python lately, both for my job and just for fun. After all, all the cool kids are learning Python, aren't they? Best of all, I found a great puzzle called Python Challenge, which consists of several cryptic puzzles that require programming to solve.

If you're learning programming, or want to learn, or you already know some and want to expand your realm of expertise, I highly recommend it. Out of the levels I've done so far, there is one that requires Python. The others were designed to be solved in Python, but could probably be done in any other language.

If you get stuck, there is a help forum, but they usually help you more with the concepts rather than how to write the code, so I wouldn't necessarily think of it as "cheating"--but try to do them on your own. It's more fun that way.



I never intended for this blog to be political in any way, and I'm not trying to change that now. But I do have one question. Here are some quotes from 365gay.com's article on today's historic California Supreme Court decision:

The dissenting opinion to Thursday's ruling was penned by Justice Marvin Baxter.

While he agreed with many arguments of the majority he said that any changes to the state marriage law should be decided by voters.


Schwarzenegger has previously vetoed bills that would have legalized gay marriage. Both times Schwarzenegger said that the courts or the people through a plebiscite should decide the issue.

I'm not an expert on how government works, but these two people, a California Supreme Court justice, and an actor-slash-governor, should both know a little something about how it works. If I'm not mistaken, we have three branches of government, just like the federal government does. One of them, the legislative branch, is responsible for making laws. We, the people of the state, are responsible for, among other things, electing the members of the legislative branch. The only reason for having the voters decide an issue directly is if the legislative branch is not responding to a pressing issue for some reason, and the citizens need to take things into their own hands. Now, it may be that the legislature is unwilling or unable to act on some issue, and in that case, it might be a good idea to have a ballot initiative. However, this is not that issue. The legislature has tried to make a decision, and, as it says in the article, Schwarzenegger vetoed their decision twice. I see no reason that this issue ought to be decided by the voters directly. Except perhaps that Schwarzenegger doesn't want to have a bunch of conservative anti-SSM people mad at him.

I'm not even looking at this from a gay rights point of view. I'm just saying, there are people in Sacramento whose job it is to make laws, and while there are other ways of doing that, I see no reason those other ways should be invoked now.


Writing "code"?

My friend from freshman year, Elliot, has recently started a new blog, Anyone Can Code. I guess he's going to teach some programming courses over the summer, partly because he, like me, doesn't like the way most of the courses he's taken at USC have been taught. And because he believes that, well, anyone can code.

His first post on the Anyone Can Code blog lamented the people who are somewhat interested in computer science, but think they can't code. I've always thought that "people who can't do math" were just people who had terrible math teachers and never took them time to learn any math on their own. There isn't really anything wrong with this, but it's now become relatively socially acceptable to know almost no math. It's also socially acceptable to know literally no coding, since most people never take any computer science classes.

I've digressed a little, but the point I wanted to make here is that perhaps referring to programming as "coding" is not good for making it accessible to the general public. Code, in everyday language, is a message which is unreadable until a person or machine performs some kind of operation on it to decode it, so that humans can read it. Back in the days of punchcards, that may have been somewhat accurate, but now writing computer programs is (or at least should be) almost the opposite. You write down what you want the computer to do, in as clear and straightforward a way as possible. Then the computer compiles or interprets it, which is when it becomes completely unreadable. But the programmer isn't writing "code". They're just writing down a set of instructions, in another language. So maybe instead of "coding," we should look at programming as writing in another language. Because that's all programming languages are--they're just languages, where the rules of grammar must be followed much more strictly than in languages like English or Spanish.

Oh great, you say, so coding is just like learning a language, except with even more emphasis on grammar? Sounds lovely. Well yes, but there's very little emphasis on learning new vocabulary. In fact, most of the important words in most languages are actually words you already know. And the grammar rules are much clearer and completely unambiguous, especially in languages like Ruby and (from what I hear, although I haven't used it myself) Python, which were deliberately intended to be easier to use. I think Elliot is right that anyone can code. It doesn't mean everyone will find it fun. But if we stop thinking of code as "code," perhaps everyone will be able to do it.


USC Programming Contest: 6th Place!

This past Saturday, I participated in the USC Programming Contest. As you can see here, they used my code as one of the sample solutions. More importantly, as you can see here, I slipped in just two minutes shy of 5th place! I would have gotten to choose a video game as a prize, but since I had to leave early to volunteer at the GLAAD awards, I had someone grab one for me. I realize now that since my taste in video games differs so much from most people's, I probably could have just asked the contest organizers to give me whatever was left, and it would have been something I really liked. Instead, I ended up with an FPS from the Medal of Honor series, which Andy assures me is badly designed, badly coded, and generally just not a good series of games. So I'll probably sell it. It's more about the glory anyway.

In any case, I'm pretty excited, and the GLAAD awards were fun too. We got to watch the show for a few minutes, including seeing Kathy Griffin win for best reality show. The GLAAD people were so grateful for our help, they let us take gift bags with all kinds of swag in them. One paper, one programming project, and three big dance performances away from the end of classes! Then finals, then commencement (playing, not graduating), and then Brazil!


Star shapes

So I skipped Philosophy today and went to my CSCI 101 midterm pretty early. Before it started, I was talking to Ashley and Rollerblades Kid (I call him that because I don't know his name, but he uses rollerblades as his primary mode of transportation) about the impending midterm, and computer programming in general. Ashley has no programming experience other than this class, and she was telling me how she had been having trouble on a recent assignment with opening an input file. The relevant code would go something like:

ifstream fin;
string filename;
/* ... */
cout<<"Please enter filename: "; cin>>filename;

I don't think I ever figured out, based on her description, what she had done wrong, but she said she contacted a friend who works at Google, and her friend had told suggested some sort of modification using character arrays in place of strings. It makes you wonder why, when C++ was designed, they didn't rewrite ifstream::open() to accept strings. I mean, you could just do:

void ifstream::open(string filename) {

C++ just seems so user-unfriendly after playing around with things like Javascript and Ruby. It would be interesting to learn the history of various languages, because programming languages do grow and evolve like spoken languages, but there are also some clear differences between the way they evolve. In any case, I suppose they use C++ for the 101 class because it's well established, and the people running the department probably aren't familiar with a lot of the newer languages anyway. Plus, C++ forces you to think a little bit about the way the computer deals with data, internally, when you pass things by reference, or try to access an array value that's out of range. I suppose that would be helpful when you get to classes on data structures. (One of many classes, by the way, that I should be taking this fall, but can't because it conflicts with a required physics class.)

However, Ashley is a chemical engineer. Many of the people who take this class are business majors. They're not taking a data structures class, and have no desire to become programmers of any kind. There really ought to be another class for such people. In fact, sometimes I think a few basic programming skills ought to be required of all students. However, I would never wish this particular class upon the student body at large. This other class would be like Physics 100, which I gather is a physics class for people who really don't like physics. It would probably be taught in some version of BASIC, maybe VBA since it's infinitely more useful for many people than any other language. Ideally, it would be something where students can type things in at a command line, rather than having to write, compile, fix compiler errors, recompile, test, fix runtime errors, recompile, etc. There would probably be no need to deal with OOP, but maybe they'd touch on it at the very end.

As it is, no one is going to learn anything from a single class like CSCI 101, especially when we spend more time worrying about things like header files than we do actually writing code. I guess that's the whole point of Ruby. The programmer's job is to write code, and the interpreter takes care of everything else, like memory allocation. Anyway, I have a few problems with the way our class is taught, as well, but I'm sure I'll post about that another day.

What I wanted to post about was actually an exchange with Rollerblades Kid. I was complaining about what I called "bullshit" on the test. I tried to reproduce one from today's test from memory, but Blogger tried to interpret the << operator as the beginning of an HTML tag and it got all messed up. In any case, we have a couple of functions that have a more or less random assortment of +'s, -'s, switch statements, if statements, arguments being passed by value/reference, etc. They don't correspond to anything real at all, it's just arbitrary data manipulation. We have to trace through the program, then write down the output it would generate. Admittedly, these problems are pretty simple, and I guess they're okay for test questions, but it completely goes against the principles of good code writing. You can't use descriptive variable names when your variables do not in fact describe anything.

In any case, Rollerblades Kid didn't seem that concerned with this type of problem, because he was used to them from the AP Computer Science test (which I didn't take), but he and Ashley both objected strongly to "Star shapes" problems. The kind which are supposed to print output like:




I must admit that, in modern times, when we have the ability to use "real" graphics, there is no need to learn this particular skill. Yet for some reason, I find it much less like a pointless busywork assignment than the "bullshit" trace problems. I think that's because it solves a real problem. Not real as in real-world. Just real as in, there's an actual problem with a non-trivial solution, and the code is that solution. Yes, it's a problem you may never face, but the same could be said of so many problems you're asked to solve as classwork. Still, it's hard to explain just what it is that, to me, makes Star Shapes problems seem not to be completely worthless. You can actually learn something about good programming style from such problems. But of course, there is absolutely no guarantee that will actually happen.


Just in case you weren't sure how big a nerd I was: Song Chart

I discovered new meme, via the SDMB, where you take the lyrics of a song, and represent it as some sort of chart or graph. These range from scatterplots to bar graphs, pie charts to flow charts, and represent all kinds of songs. Some of the best ones, in my opinion, are An Analysis of Our Discussion, I don't care too much for money..., Jay-Z's current problems, Test Results, deepness of cuts, class DancingQueen, kung fu fighting.



There is extreme comfort in cyclical patterns. When you know exactly what will happen next because you've seen it before, far from being boring or irritating, it is actually quite comforting. When times are good, we kick back and talk about how great it was the last time around, or about the times when things were a complete disaster, but it's funny now, in retrospect. And no matter what happens at practice, or on the bus, or in an airport, we all know that the cycle will complete itself and everything will be as it was soon enough.



I think part of the reason I'm always up late is that I like being alone. When I'm in my room, even though I'm not necessarily doing anything particularly unusual or secretive, I just feel weird that my roommate is there, as if he's watching me. Maybe it's because I'm often watching him, not judging, just curious what he's doing. Usually watching something, but what is he watching? For some reason I often have a desire to know the answer. Out in the living room, late at night after everyone has gone to sleep, is one of the few times I can feel like I'm alone. I keep meaning to spend some time in the "backyard" of Century, particularly since I won't have one next year. Maybe I should also do some studying in one of those closed-off rooms in the library. Or in Doheny somewhere, since Leavey is too bright and everything. I'm just really bad at making plans and sticking to them.


Pet Peeve

When people mix up dates and days of the week. For example, my next math assignment is due on "Monday, March 11" but March 11 is a Tuesday. How do you fuck this up? Look at a calendar.

Philosophy class is just starting to get interesting again after a couple weeks of being kind of tedious. I think the idea that a complex enough computer can be, at least for all intents and purposes, conscious, is really fascinating.

I'm going to Northrop Grumman on Monday for an interview for a summer internship. It'll be something software-related but I don't really know anything else. I feel like my strategy needs to be to prove that while I don't know a whole lot, I can learn new things really quickly. Also I'm totally a team player.


Google All-Nighter (or, I am so tired I feel like I'm about to die)

Well, I decided to go ahead and enter the contest, and I'm glad I did because we ended up winning some prizes! We mashed up the data from Citysearch Los Angeles (screen-scraped... shhhhh!) and Google maps, so that users could find restaurants in their area, and find out how much money they would spend in gasoline to drive there from their house, as well as how much CO2 they would be releasing into the atmosphere over the course of the drive, which is how we tied it into the theme of the contest, "Think Green." We ended up with a really good team. Ben pulled the data from Citysearch, I did the mapping stuff, Josh did the HTML, CSS, and processed the data so that I could use it, and David designed some awesome icons to use as map markers. In the end, we won "most useful" and I got a beanbag chair and a sweet Google lava lamp. Now I'm extremely tired, and I still have philosophy homework due in about 13 hours.


Google All-Nighter

There's a contest this Sunday and Monday, taking advantage of the long weekend, called the Google All-Nighter. You have 24 hours to write an application that uses one of Google's APIs in some way, and fits the theme, which will be announced at the start of the competition. It looks like I'll probably team up with this kid Ben I met, and I'll have to leave in the middle of it for the big ucla game, but it should be pretty fun. All this week, Google and USC UPE have been holding workshops on the various Google APIs and other technologies that may be useful in the contest, like Javascript. On Tuesday, we learned how to use the Google Maps API, so I made a little USC trivia game, where a marker appears, pointing at a building on the USC campus, and the user is supposed to guess the name of the building. I'll post a link once I get it working better. Luckily, a lot of the data I need, including a couple of really nice USC map overlays, already exists, but I didn't realize that when I started writing, so when I get some time, I'm going to rewrite my code to deal with that data, and it will be awesome. Perhaps the hardest part will be making it forgiving, so that if the user misspells something, or adds a tiny bit of extra whitespace, the game will still count it as right. I guess I could make it multiple choice instead. What I really want to do is learn the Google Calendar API since I could probably make things that are actually useful, rather than just fun, with that.

In other news, the white-space-phobically named LetMePracticeAtUSC system could be improved so much by a couple of tiny changes, and I have a feeling that, given several hours to understand the code, I could fix it. It appears I would have to learn ASP, and the source code isn't publically available, AFAIK. Which makes it a lot easier to say that kind of thing, I guess.


Sidewalk Chalk

I wasn't sure who I was going to vote for in the primary, coming up this Tuesday. I guess it's basically between Obama and Clinton at this point, but they both make such good points in their debates, I really can't decide between them. Luckily, someone at USC decided to make it easy for me. They wrote, in big sidewalk-chalked letters, multiple times, on the corner of Jefferson and McClintock, "Vote for Barack Obama," "Vote Obama Feb. 4th," etc. I guess now I don't have to worry about their voting records in the Senate, their policies on gay rights, immigration, the war in Iraq, etc. Someone has made the decision for me, and informed me of this service, via sidewalk chalk. Thanks guys.


Spring Semester 2008

There's no better way to celebrate surviving the first week of class than going directly into the first three-day-weekend of the semester. And no better way to spend a Sunday afternoon on such a weekend than to blog about that week. These are my classes for the semester:

MATH 445: This class is going to be all about partial differential equations and such, but so far all we've done is Fourier analysis, which allegedly is an important step towards solving PDEs. My favorite parts of this class are the professor telling us that the required textbook kinda sucks, but we have to buy it anyway, and the fact that we spent almost no time on boring administrative stuff, instead diving right into Fourier series, deriving the formula for it, and then proving it converges, all in three lectures. For the first time in a USC math class, the homework is actually required, but there's none assigned yet.

EE 101: Very low-level digital logic stuff. Binary representations of numbers, and gates, or gates, etc. The "textbook" for this class is a course reader that only cost about $18, and since everything so far is fairly trivial, I've been reading ahead about how to build multiplexers and adders and such. Seems like this is going to be an easy A.

MUEN 308: Men's choir. I did this last spring, but I've never done it in the fall. I guess this is a pattern that could continue to work: Band in the fall, choir in the spring. Anyway, the director is redoing some pieces from last semester, which puts the new people (there are about five of us) a little behind. This was fun last year and it's looking like it will be fun again this year.

PHIL 262: This is my category I GE. The title is something about "Mind and Self." Since this is a philosophy class, I was worried it would be a little like this. And it might be, but I'm very optimistic about it, at this point. The professor told us we can call him Jake. "You do NOT need to call me Professor Ross. My father was Professor Ross. Well, my father wasn't a professor, but if he had been, then he would have been Professor Ross." What's more amazing, he actually listens when students ask questions, instead of assuming he knows what they're going to ask, then going on and on about something unrelated. Again, it's only the first week, and we've already examined five alleged "proofs" for the existence of God. Not an easy A, but it should be interesting.

CSCI 101: I had already heard from my friend Greg, who took this class last semester from the same professor, that the professor wouldn't be all that great, and it's looking like it's going to be a few weeks before we get into anything remotely challenging. Eventually, I might learn something, and it looks like another easy A.

Basketball Band: Another semester of Tony Fox. Joy. This week, we recorded this Foo Fighters song for some youtube contest. Every other week is going to be pretty lame in contrast.

Concert Band: This year's show is all Broadway songs, so I couldn't really pass this up. Still, I feel like the music is way over my head, so I'm going to have to practice a lot. Apparently, I'm allowed to reserve PIC rooms since I'm officially in this class, even though I'm not a music major. This could end up being a really rewarding experience.

Overall, I'm pretty excited about this semester, and I'm fairly confident that my GPA will go up when it's all over.


Cloud Appreciation Society

Through my youtube subscription to AtGoogleTalks, I found this talk by Gavin Pretor-Pinney, a man who started the Cloud Appreciation Society. From their website:

You love lying in the park on a summer’s day and looking for shapes in the cumulus clouds. You think a mackerel sky of puffy altocumulus stretching off towards the setting sun is one of the most beautiful sights in the world. In short, you love clouds. And yet everyone else just seems to complain about them. Are you the only one who thinks life would be poorer without these glorious ‘patron goddesses of idle fellows’?

No, you’re not. There are others like you. And together we’ll fight the sun fascists and their obsessions with ‘blue-sky thinking’. As a member of The Cloud Appreciation Society, you’ll receive a free membership certificate and a badge (as shown to the right).

The badge is a little pin, and the certificate says:
The Cloud Appreciation Society

We do hereby certify that [name] was elected as a member of this society on [date] and will henceforth seek to persuade all who'll listen on the wonder and beauty of clouds.
I don't want to get in the habit of just posting links without adding my own insight or comments, but the main reason I want to post this is that I think it's extremely amusing that this exists. It's not a joke either. Mr. Pretor-Pinney seems completely aware that this is a rather whimsical idea, but he also seems completely serious about the goals of the society, and fighting the sun facsists. As I'm typing this, I'm almost halfway through his hour-long talk at Google, at which he apparently just talked about clouds, showed pictures of clouds, waxed poetic about clouds, on and on, in his British accent.

But if you think about it, why shouldn't there be such a society? Clouds are amazing if you don't know how they form, and arguably even moreso if you do. Why should we think of it as childish to appreciate them? It's no weirder than birdwatching, or mountain climbing, is it? Why aren't there millions of societies out there for the appreciation of each different natural phenomenon or flower or animal? (I realize there probably are such societies, actually.) I probably won't actually join, even though that pin is kind of awesome. I have a tendency to lose pins, anyway. But it's great that this website exists and everything.

Okay, what's my point in posting this? Besides just saying, "Hey look at this. Look at how silly this is." I suppose my point is this: Clouds are easy to see, it only takes a little bit of imagination to enjoy them, and if you take the time to enjoy them, you can see all kinds of different shapes. Maybe this guy is really onto something important, or at least something fun and obvious that everyone has forgotten.


Portal Physics

I really want to post with some consistency, even if I'm just rambling. So tonight, I will be rambling about the physics of the popular video game Portal. In case you're unfamiliar, you can read about it online, but basically, you're in an enclosed room, armed with nothing but a special portal gun. Shoot it at a wall to create a bluish portal, and at another wall to create an orangish portal. As if by magic, the two portals will be connected, so that you can send any object, including light, or yourself, through one portal, and it will come out the other. You use this to transport yourself or other objects to places that would otherwise be unreachable. It looks kind of like an FPS, but it's actually more of a puzzle game, which is why I like it. Of course, teleportation in video games isn't new, but what's unique about Portal is that the momentum of objects is also transferred through the portal, which leads to some very interesting solving techniques. For example, if you're on a high "cliff" next to a wide, deep chasm, and you need to get across the chasm, but can't create a portal on the other side (some walls resist the portal gun), you can shoot one portal in the wall next to you, so that it faces across the chasm, then shoot another on the ground of the chasm, way below you. Then jump into the lower portal, and you will soon find yourself shooting out of the wall portal, across the chasm. Of course, almost as much fun as actually completing the game is running through some interesting hypothetical scenarios. I really am just rambling here.

Put one portal on the ceiling, and another on the floor, directly below it. Jump into the floor one, and you'll fall out of the ceiling and into the floor, infinitely many times, moving faster and faster each time. (You can actually do this in the game, and there is apparently some kind of randomization built in that causes you to slightly miss the floor portal after a few iterations. Suppose that didn't happen though.) Suppose you keep your body oriented the normal way. If you look up or down, you see an infinite tunnel of portals, similar to the infinite "hall of mirrors" effect if you stand between two parallel mirrors. Clearly, each time you go through the portal, your kinetic energy is unchanged, but your potential energy increases by your weight times the height of the ceiling. So yes, conservation of energy is being violated, but don't worry about that for now.

As the person goes faster and faster, they measure the distance between the floor and the ceiling to be shrinking, according to special relativity. Eventually, this effect should be so pronounced that, according to the person, two or more parts of the body are at the same place relative to "the" floor. For example, suppose the room has contracted enough that its height is half that of the person. Just as the person's feet are entering the floor portal, his waist is also entering the "previous" floor portal. The person might cite this as evidence that there truly are an infinite number of portals. Meanwhile, an observer sitting quietly in the room would see the portal traveller shrunk to about half his normal height.

I can see that having a basic understanding of special relativity, and almost no understanding of general relativity, is going to be a problem. Still, let's go on. What if the falling portal traveller starts feeling sick, and shoots a portal onto the floor nearby, with the same color as the current floor portal, so they will instantly stop? Putting aside the broken bones and bruises that will likely result, we now have a paradox. If the portal traveller and the stationary observer were both wearing watches, each would have said the other's was running slow. Now that both are in the same frame of reference, which watch has the earlier time, assuming the traveller's watch miraculously didn't break upon impact? Admittedly, no real physical theory should be required to answer this question, as we've already violated conservation of energy, but it's still an interesting thought.

One thing that is completely absent in the game (and probably for good reason) is any significant quantity of liquid. Suppose you have two large tanks. Tank A is full of water, and sits on the ground. Tank B is elevated somewhat, and initially empty. A portal is created that connects the bottom of both tanks. What happens? My first thought is that it works like a siphon, with water "seeking its own level" -- that is, water will flow through the portal, filling tank B, until both tanks have exactly the same water level, relative to the ground. By this logic, if tank A is lifted up after equilibrium is reached, water will again flow from A to B. I can't see why this would happen, so I think a new hypothesis is needed.

One of the first things we learned in PHYS 162 last semester is that electric field lines always diverge from positive charges and converge to negative charges. They never form closed loops, and can only start and end on charges or go out to infinity. Suppose a room contains a single positive charge. If you can trace a field line through a portal, it should come out the corresponding portal, potentially at a different angle. Assume the portals are as in the first situation: one on the ceiling, one on the floor. It seems to me the only way to draw the field lines accurately would have to be by modeling the setup as an infinite set of rooms, stacked one on top of the other, each containing a single positive charge. Further evidence that the portals really do create "copies" of the room, rather than simply connecting two parts of the room which are normally separate.

What if you dropped the positive charge into the portal, the same way we dropped a person through it originally? You would have a moving positive charge, i.e. a current. I suppose this would set up a magnetic field in the room, which would be constantly increasing. If you used two floor portals, instead of a floor and ceiling portal, you would effectively have two nearby AC currents, thus instead of infinite kinetic energy, you could create infinite electromagnetic energy.

I think that's enough for now.