Which Programming Language Am I?

Which Programming Language are You?

Mike Gravel ‘08

Former Alaska senator Mike Gravel is the little candidate that could in the 2008 Democratic primaries. His compassionate views on the war and civil rights make him my current favorite among those in the Democratic running. At a televised debate among the Democratic runners, Gravel blasted the likes of Obama, Clinton, and Biden over their seeming unwillingness to deny nuclear confrontation as a possibility in dealing with Iran. He also made the case for world diplomacy, claiming the United States’ unilateral policy has deteriorated our world image and polarized both our nation and the international community.


Gliese 581 c

Scientists at the Geneva Observatory in Switzerland discovered the first extrasolar planet in a habitable zone today while observing the Gliese 581 system. Although it is fifty percent larger than our Earth and has a significantly larger sun, 581 c looks to be the most habitable planet in the known Universe to date.

What an exciting time to be alive.

Hildebrands Deutsche Schokolade

Paleo-Future posted a great collection of art from a German chocolate company circa 1900, depicting the technology of the year 2000. These “personal flying machines” are my personal favorite.


Is that a gavel in my uterus?

Yesterday the Supreme Court upheld the Partial-Birth Abortion Ban Act of 2003 by a vote of 5-4, setting precedent for the issue and bringing freedom and democracy to unborn fetuses nationwide.


New York, London, Dundee, Glasgow, Amsterdam

This June I will be traveling to Europe to present a paper I co-authored which will be published at the ITiCSE 2007 conference at the University of Dundee. As I’ve never been to Europe, I am certainly taking this as an opportunity to see all I can. I will be flying out of JFK June 22, landing at Heathrow in London. After remaining there for the weekend, I will take the Eurail to Dundee for the conference June 25-27. Following the conference, I will board a train to Glasgow to speak with Prof. Paul Strachan at the Energy Systems Research Unit at the University of Strathclyde about a possible Ph.D program in the fall of 2008. After that, I will take a personal trip to Stockholm or Amsterdam, and then return to London for my flight home.

Gimme money!

I am in the process of applying for a student bursary sponsored by the British Computer Society which would cover the cost of the conference, as well as travel expenses within the UK. I am finding it best to close my eyes when I make travel accommodation transactions, as the cost is starting to weigh in. I keep telling myself it is an investment in my career, and an all-around cultural experience I should have had years ago.

Nerd alert!

The paper that has been chosen for publication is entitled “Data Structure Visualization with LaTeX and Prefuse.” Effectively, it is a survey of two paradigms for data structure and object-oriented program visualization. In the first, Dr. Ali Erkan shows how LaTeX’s tree packages can be used to create slide presentation “animations” out of Java data structures. He implements the toString() method of various Java data structure implementations in order to generate LaTeX markup at each critical point in execution.

The second method discussed is implemented as j-specter, an application Tim Scaffidi and I developed for our undergraduate senior project. Effectively, it uses AspectJ, an aspect-oriented programming package, to construct a map of object instantiation. From this, it constructs a graph using the Prefuse Visualization Toolkit to illustrate the program’s components at any point in execution.

I am working on a project site for j-specter, and will keep you posted on its status. Cheers!

Accountability: Blaming individuals for worldly problems.

It seems the latest buzzword in politics, especially in Democratic circles, is that of “accountability.” Whether it be holding the Bush Administration accountable for the war in Iraq, holding businesses accountable for their environmentally degrading practices, or holding CEO’s accountable for their insider trading scandals, it seems that accountability is in. As with any buzzword, I like to see what Webster has to say:

ac·count·abil·i·ty : an obligation or willingness to accept responsibility or to account for one’s actions

According to Webster’s, accountability starts where blame leaves off. It is the obligation we have placed upon an individual or group to be responsible for their own actions. So accountability implies a positive right; that is, it imposes a moral obligation upon the individual or group being held accountable. This, in my opinion, is not a constructive means of ensuring social justice.

Critics of the Bush administration’s domestic spying programs cite privacy violations as the chief concern in the issue. They believe that the government is infringing on citizens’ negative rights to privacy. This is true. However, the same critics believe the Bush administration should be held accountable for the war in Iraq, be it by impeachment proceedings or the guillotine. While I do agree that the administration has committed crimes against humanity, removing it from power will not solve the quagmire at hand. Such proceedings will only perpetuate the negative attitude which has plagued the tenure of this administration since its inauguration in 2000.

While I do believe taking to the streets is necessary to encourage solidarity, there comes a point where the fine line between constructive protest and incessant whining is crossed. Take the labor union movement, for example. Although unions were put in place to protect the working class from its white collar bourgeois, wouldn’t it be more effective for labor unions to assemble their assets and create their own means of production? The amount of red tape unions create for businesses is astronomical. In a market economy, the prospect of a body of workers investing in their own business is not unthinkable. And yet, labor unions continue to lodge complaints against the lords they serve, not thinking to cease economic power for themselves. A lord without peasants is a peasant himself.

Tompkins County March For Peace

This Tuesday, March 20th marks the fourth anniversary of the Iraq War that has claimed over 59,000 civilian lives since 2003 (Iraq Body Count). To mark the anniversary, Ithaca Peace Vigil organized the Tompkins County March for Peace this past Saturday. The occasion was as festive as any Ithaca anti-war gathering despite the unforgiving snow storm that marched through Central New York.

People congregate atop South Hill.

Over 15 communities attended the vigil.

I had the pleasure of speaking with a few dissidents to the movement. The first was an older gentleman who claimed that “Freedom, Liberty, and Justice” were more important than peace. I think he was riding a wave of American nationalism that never subsided after World War II, so I forgave his illogical rhetoric. The second skeptic was a man of my parents’ generation who described himself as a fiscal conservative. He argued that while the war was a quagmire, to impeach the president and end the war immediately would lead the Iraqi people into more sectarian violence and ultimately schism the state that has been established. While I understand his concerns and agree with his philosophy of fiscal conservatism, I disagree that American influence can alter the course of sectarian conflict. In choosing to commit to war, America has chosen a side in the conflict, and its adversaries will be repressed. One point I strongly agreed with however: We have a tendency to simplify extremely complex issues and alter the course of history accordingly. There are innumerable variables which affect the course of these issues and no rigid ideology or doctrine can serve to resolve them.

Javascript Inheritance Diagrams with GraphViz and Base.js

At my office we’re using XULRunner to deploy a large-scale application platform which requires a hefty Javascript class hierarchy. Due to Javascript’s lack of “true” class inheritance, we were forced to make use of one of the many Javascript OO libraries available. When I stumbled upon Dean Edwards’ Base.js, I was in heaven. It makes Javascript inheritance quite painless and ultimately does what you tell it to:

var Vegetable = Base.extend({
	constructor: function() {
		// constructor
var Kale = Vegetable.extend({
	constructor: function() {
		this.base(); // run vegetable constructor
		// ... kale constructor
});  ...

However, as any programmer would, I wanted more. We were evolving a substantially complex class hierarchy and documenting this would prove to be cumbersome. I sought a means of creating inheritance diagrams painlessly. My first thought was code interpretation, but I realized that given my timeframe (I wanted to do it in less than an hour), it simply wasn’t an option. That was when I dug into the Base.js code and made a few modifications…


Free as in Skool

Last night, ABC Cafe hosted a benefit concert and information session for Ithaca Freeskool, a new local collective aiming to start an anarchist learning initiative in Ithaca.

I first heard of this type of collective learning initiative when I found Anarchist Free University in Toronto in a post on Boing Boing. Their website is complete with curricula for each course, including ones on obscure topics like Current Indigenous Movements in the Context of What is Known as Canada and Secret History Of The World. Members are invited to teach anything they have to offer, but courses run as rigid as a normal institution: There are summer, winter, and fall sessions that run for ten weeks each.

The Ithaca Freeskool is loosely modeling itself after Free Skool Santa Cruz. Its website sums up its mission quite succinctly:

Free Skool Santa Cruz is an interactive, decentralized model for learning-without the limitations of hierarchy and the sterile institutional environment of a University or formal school. It is an attempt to de-school ourselves and to learn from one another the skills necessary to transform society and challenge oppressive systems.

I am currently considering teaching a course at Ithaca Freeskool, but am unsure of a topic which is aligned with their mission. Here are a few ideas I’ve been kicking around; maybe you can help me decide:

  • Choose Your Own Text Adventure — Learn how to create your own text adventure computer game using the Ruby programming language. Examine the language from the bottom up and have a lot of fun developing a storyline as well.
  • 21st Century Ethics — A discussion group about ethical issues facing Generation Next. Topics will include the open source software initiative, intellectual property laws, and environmental responsibility.
  • What the F@&K is Ontology? — A discussion group surveying the branch of philosophy known as ontology, the study of being.

For more information on Ithaca Freeskool (including a link to their mailing list), please visit this post from Ithaca Underground.