July 18, 2010

MAGNETS, HOW DO THEY WORK?

Let this be a myriad post with some of the trends that currently come up in this blog:

Music. This was shown to me by a former roommate, and while acapella isn't normally my thing, I found this pretty hip:



Internet lulz. I never really cared much for Insane Clown Posse (see this lame interview, where they manage to make Bill O'Reilly look like the slightly saner party). I had never been exposed to this, a 2009 release that compares to Brokencyde in claw-your-facedness:



What makes this more notable is the meme arising from the line "Fucking magnets, how do they work? And I don’t wanna talk to a scientist; Y’all motherfuckers lying, and getting me pissed."

Murrrrrrrrr.

(edit: Madly Brilliant throws me the link to an SNL parody of the video, which I found sufficiently lulzy).

Programming languages. I like the tone and content of Mozilla's "A re-introduction to Javascript." While I don't love everything Douglas Crockford writes, but I agree with him in that there's a beautiful language trapped deep inside Javascript trying to get out. This helps us get there.

Also, reddit has started a mini-course on programming language math and formal specification/semantics. While it's too early to tell how successful it will be, I'm rooting for it!

----

I have lots more to write about in the coming days: soon I move to San Francisco, and I just took a trip to the Midwest. Now though, I have to pack!

July 8, 2010

On Freedom of Speech

Back in DC, my family is hosting an international student for a few days as part of a summer program, and she had a wonderful conversation with us regarding her faith and country. She's a Muslim, and her progressiveness, eloquence, and intelligence really gives a jaded, disillusioned person like myself hope for the future.

That being said, she brought up Everyone Draw Mohammed Day, clearly unhappy with it, and attributing it to Muslim hatred, as this came up in the context of post-9/11 hatred in the United States.

I attribute her reaction mostly to the press in her country, which was inaccurate and unfavorable (her description of it had factual errors, and she didn't really address the cause). It wasn't the time or place for me to defend it in person. But as a participant, allow me to go into detail.

First, watch this 1:25 video of Phillip Pullman, author of His Dark Materials, discussing the offense caused by the title of his new book The Good Man Jesus and the Scoundrel Christ:



Yes, it was a shocking thing to say, and I knew it was a shocking thing to say. But no one has the right to live without being shocked. No one has the right to spend their life without being offended. Nobody has to read this book. Nobody has to pick it up. Nobody has to open it.

And if they open it and read it, they don't have to like it. And if you read it and dislike it you don't have to remain silent about it; you can write to me, you can complain about it, you can write to the publisher, you can write to the papers, you can write your own book.

You can do all those things, but there your rights stop. No one has the right to stop me writing this book, no one has the right to stop it being published, or sold, or bought, or read. And that's all I have to say on that subject.


I participated to condemn acts of violence upon those who were exercising their rights to free speech. Again, if you don't like what I produce, you can choose not to consume it, and you can choose to argue with me about it, you can post rebuttals, and we can have a free exchange of ideas.

Victims of violence get no such choice. This professor of Mayalayam, a language of India, did not choose to have his hand cut off when in a simple language exam ("find the grammar errors in this passage") he used the name Mohammed for a character.

Theo van Gogh did not choose to get killed. Lars Vilks didn't choose to get attacked.

To any who say or believe these victims "chose their fates by their actions": you are agreeing with murderers and barbarians on the tactics used, and wish to stifle free speech. It is comparable to blaming rape victims for their rapes. That is not an opinion, it is a fact. In what twisted world is the appropriate punishment for saying something, drawing something, or singing something death and/or mutilation? No, these victims didn't choose this in the way someone offended by the content of a blog can just choose not to look at it. If the appropriate response to a question or an idea is aggression, than your ideas are weak, you have the mind of an 8-year old, and you live in the 12th century.

On a larger point, no topic of discussion should be off the table because some arbitrary group of people doesn't want it discussed. By this (lack of) logic, suppose I have billions of followers and I demand and order the killing of anybody who uses the letter "v". Suppose you used "v". Better, suppose I just thought you used "v," when you feel like you didn't. Would you actually deserve death?

While the arbitrary selection of a letter in the alphabet is ridiculous to almost everyone, to a large number of people in the world like myself it's just as ridiculous as depictions of a man who lived over a thousand years ago.

To be clear, our student does not agree with any of the violence propagated by murderers, barbarians, and extremists, and is as quick to condemn them as I am. But she (like many progressive, modern Muslims) was still angered by Everyone Draw Mohammed Day.

To her, and the rest: take back your religion. It's easy to pass the buck by calling the perpetrators "not real Muslims," and mentioning that Islam is primarily about Peace and Tolerance, etc., but it is cold comfort to those of us who feel threatened (not offended, mind you, which we can deal with) by people justifying their actions by citing hadith and the Koran. As long as a bunch of idiots are going to threaten me and my peers in the name of your religion, I and others will do what we can to point out the absurdity. Please, fight them, don't fight me.

My choice to participate was not because "I hate Muslims," it was because "I hate those people calling themselves Muslims who are threatening me for exercising free speech."

Also, remember I'm an equal-opportunity blasphemer. See this post on Christianity in the news, with this favorite video of mine (language NSFW):



I'll close with a buddy, Bill Maher, who states it simply: Freedom of Speech is non-negotiable. This isn't uniquely Muslim hatred; if it were Buddhists we'd be pissing off Buddhists, if it was McDonalds we'd be protesting McDonalds.



(Also, for those who missed it, Boobquake!).

July 6, 2010

Languages to describe Languages

We're in a beautiful, exciting, and unsustainable time in programming languages. For any combination of features you could want, someone's made or making an interpreter/VM for you. Want dynamic message passing and objects (but Objective-C doesn't give you enough functional features)? Try Newspeak. Want Ruby syntaxed immutable objects with Erlang's concurrency model? Try Reia. Hell, did you Perl programmers feel left out of the JVM after the success of Jython and JRuby? Someone made a JVM-styled Perl called Sleep.

I remember wondering what my contribution could be and thinking I love Ruby programming, with true object-orientation, but miss ML/Haskell type systems and inference. What if I could make a concise, type-inferred Object-Oriented language? Then I found Scala had already been made.

Reading so many new language pages, I notice that lots of older languages getting referenced to describe the current one. Carlos Fuentes pointed out that Guatemala used to be called "The Paris of the Americas" (he also pointed out that France did not return the favor and call Paris "The Guatemala of Europe"), and there are a few specific languages that get to be Paris most often.

The ones I see most are...

  • Smalltalk. When you see this it normally means the referencing language has dynamic message passing, or actual object-oriented programming where everything is an object (Recall C++/Java/Objective-C have primitives).

    What they don't mean, which is a major part of Smalltalk culture, is programming in 'an image.' Newspeak, mentioned above, runs on Squeak, the open-source image-based Smalltalk development environment. I've never developed in an image so I can't really speak for it, but for those more comfortable with files, there's GNU Smalltalk, which I finally got running.

  • Self. It's kind of funny seeing this get so much love, after Javascript got so much hate. But apparently prototypical objects are all the rage, with projects like Io, Neko, and Slate. This usually means supporting Prototype-based objects.

  • Lua. This seems to mean "will be well-executed, lightweight, and hopes to get used in industry!" Feels like name-dropping when I see it.

  • Lisp. I think this just means "feels flexible," since the defining feature of the myriad of Lisp languages is homoiconic syntax, allowing for rich macro programming. Using "Lisp" as a signpost is a little lame since, if you had it homoiconic syntax, it would make your language a Lisp. Using "Lisp" in place of better terms reminds me of terms like "strong typing." Murrrrrr...

    To go with the flexible vibe, they probably also mean dynamic types + garbage collection, which Lisps did pioneer way back when. But those features are everywhere now.

What languages do you never see anymore? Prolog, Forth (except the very nice-looking Factor), or Eiffel. That's too bad, these had some fun ideas.

What language feature/system do I feel needs to make a resurgence? Proper module systems, like SML. I find most module systems a royal pain, and SML is no exception. But once you figure it out, you really can (provably!) 'program in the large.'

Finally, what hope is there for us polyglots to do development in these languages? Aside from LLVM, maybe there's a good graduate research project-in-waiting trying to bridge the gap between these guys.

That's enough bloviation for now. Now let's write some code.

July 5, 2010

I WANT AN IPHONE 4!!!!

This was done by a Best Buy employee, who almost certainly got fired afterwards. I lolled.



It's not just the sentiments about the iPhone in particular, but the "Facts vs. Stupid" frustration that makes this a winner.

July 1, 2010

Link Aggregation - Paul Edition

I don't get much feedback on the blog, but the little I get is usually something along the lines of I would read it more, but you don't write about anything interesting...

What is usually meant by this is that the blog isn't very personal: I don't write much about my feelings, my ups-and-downs, my relationships or my struggles. Most of my writing is either esoteric (code, old video games, etc) or at arms length from my actual life.

I try to make up for this by introducing snippets of internet culture here, since only a few people I've ever met trawl the internet as much and as eagerly as I do. On a typical day I view dozens of images and read a bunch of articles, here's a small sampling of the fun and/or interesting things I've seen today:



Tea Party Jesus:The words of proselytizing, proud Christians coming from Jesus himself. Nothing I've seen so humorously and clearly demonstrates the disconnect between most Christians and the teachings of Jesus. Do you know who said the one above? (answer at the bottom, click to enlarge)



Catalog Living Wherein funny captions are giving to home catalog pictures as if someone were living in them. The one above is "Elaine wasn’t about to let some hot flashes get in the way of balancing the checkbook with the abacus.".



Turtles Eating Things. Awesome.


I know very little about Twilight, but this article on why Jacob has to lose was more interesting than it deserved to be (and highlights some of Twilight's out-of-control traditionalist undertones).

Reddit is the source of so much fun and humor, images especially. How to troll your baby. Apple awesomeness in what I do in my lunch hour. An epic clean joke thread.

Meanwhile, a NFSW paragraph: an equally epic dirty joke thread. A NSFW "I wish I were Mario" image that I really, really enjoyed. This YouTube video, also on Sullivan:



There's more, but those were some of the cream from today. This doesn't include coding articles, etc. Hopefully these posts containing lots of internets keep this more entertaining ^_^

Jesus answer: Who else? Glenn Beck.

June 28, 2010

Coding socially

My gravatar for ALL these sites I decided to finally get a GitHub account, since I've downloaded countless great software from it, and think it's about time I joined/gave back. So check out my profile, feel free to be my friend (or follow my project[s], whatever it is...), and check out my first "release" of a side project, a program to help you cheat in Scrabble!

Many other Scrabble cheaters have been written, but mine is in a silly functional language! Also, I have plans to make it more than just an anagram/word generator, even though that's all this release contains. You'll need an Erlang VM to run it.

I'll also mention I have a BitBucket account, but no public repositories. My video games group used Mercurial, so now that two of us have graduated we moved our project to BitBucket. I put Rat Race and FlipTile on there as private repos. If you'd like to friend, follow, or want access to those codebases, let me know ^_^

Finally, though this is on the sidebar, I'm also on Stack Overflow.

(the pic is my Gravatar, used in all these sites; a picture taken when I was in Guatemala last year, with much longer hair and a budding beard. I think it's one of the few pictures that's not unflattering with that style. I look a bit different now.)

June 27, 2010

Video Games, and the failure of the word "Art" Redux

UPDATE (7/20/10): A little old, but Ebert closes the book by saying that, while he still thinks he's right, he shouldn't have brought it up in the first place. He essentially says "I'm not wrong, but I can't explain why I feel that I'm right." It's actually a pretty nice piece.

---

I wrote about Ebert et. al. being naive and/or lame when they don't allow games to be art. This great little reddit thread "Saddest moment in a game?" shows that, like the NYT summarizes rather well, it's more a generational misunderstanding of what 'art' should mean rather than one rooted in any actual thinking. See how many you've encountered yourself!

At the very least, I see how deficient I am for not having played any Metal Gear Solid beyond the first (which was excellent). Also glad Majora's Mask is getting a fair bit of love in that thread; it's the masterpiece nobody's played, like Skies of Arcadia.