The Beautiful Thing About An Idea

Listening to my favourite podcast (Roderick on The Line) this morning, I came across a small segment I had to take ten minutes and attempt to transcribe.

John Roderick was discussing the nature of modern identity politics, after a reader of an article he wrote pointed out that he'd used the phrase "guitarists and their girlfriends" in a way that the reader found exclusionary of the notion of female guitarists.

Only when we arrive at a place where no voice has pride of priviledge, when no voice is heard more loudly than any other, can we fully know ourselves, or be close to achieving a human understandign or a collective wisdom. It's what I think is the undergirding idea of this quasi-marxist move on the part of the intellectual world -- the American Left's intellectual life --- to always be attacking priviledge, second guessing language, equaling voices. The only premise, an unspoken premise no one ever discusses it openly, is "Only when all voices are heard and once all voices are heard equally can we know what are project is".

Because, as you see, any time someone stands up, and says "I have an opinon", the first question is "What right do you have to speak, who are you. Are you just another middle-class white person, because we've heard what you have to say". It's a blanket dismissal -- and the reality is what any one person has to say is in a lot of ways irrespective of what their race or their class is. Right?

I mean, the world of ideas is-- the whole premise of it is that it can exist in one's mind. That, Yes, it's influenced by it's culture, Yes is influenced by it's culture, also that's the beautiful thing about an idea: You can have an idea that's in conflict with how you were raised, your culture. It's how ideas advertise themselves: I can think opposite me. To argue that all my thoughts are waterstamped with my race and culture is to be anti-intellectual (I guess) at it's core.

That's what's insane about this notion; ultimately it's anti-thinking and it becomes-- seeking to kill this idea that there's something being French, or an American, that's worth preserving, or that's an identity that has responsibility as well as rights attendent to it. That every right has a concomittant responsibility that goes along with it.

I dunno.

-- Roderick On The Line, Episode 96 “The Beautiful Thing About An Idea” (1h02m - 1h05m approximately)

All transcription errors are my fault.

It's a great discussion, start to finish, and yet another reason I listen to the podcast -- beyond the amazing and disturbing stories of eating meatball sub-sandwiches in a bathtub.

I think it blends well into recent discussions about the toxicity of progressive discussions. Language policing is something I've been guilty of [1], but Roderick makes the point that we can't be doctrinarian about this. Sometimes language is harmful and ought to be corrected, and sometimes it's just language we don't love.


[1] I feel a little better about my particular tiny foray into language policing. I was particularly concerned by a sexist turn of phrase in a technical oriented discussion, intended partially as a recruitment tool. My justification is centred largely on the petrie multiplier, which everyone in tech needs to read about.

What Caught My Eye - Week 5

Arts

  • A fantastically interesting hypothesis on the development of consciousness: The origin of consciousness in the breakdown of the bicameral mind. A taste:

    Julian Jaynes proposes a radical answer to these questions: until a few thousand years ago human beings did not ‘view themselves’. They did not have the ability: they had no introspection and no concept of ‘self’ that they could reflect upon. In other words: they had no subjective consciousness. Jaynes calls their mental world the bicameral mind. It is a mind with two chambers, the mind that is divided in a god part and a human part. The human part heard voices and experienced these as coming from gods. These gods were no judging, moral or transcendent gods, but were more like each person's personal problem solvers. They were hallucinated voices that provided the answers when a person entered a stressful situation which couldn't be solved by routine.

  • On a different note: Stormtroopers twerking. Could it get any better?

  • I've also been enjoying Big Boi's Vicious Lies and Dangerous Rumors. Goes a little sideways in places, but by and large, a pretty good album.

Tech

  • Eugene Wallingford on one reason we need computer programs, to bridge the gap between theory and data. Programming a solution forces a codification of how we handle edge cases, missing values, etc.

A quote

From a letter my grandfather wrote to me, after I questioned my reach a little bit:

Your reach was, and is greater than your grasp. That must always be your motto. If you reach for the stars, you will see and touch the moon.

It's a lovely sentiment, you see everwhere, but one I love-- even more so since it comes from my grandfather.

I also made this:

Reach.jpeg

What Caught My Eye - Week 4

Bit of a single topic this week. Still, some interesting things.

Technology

  • Caught Like Insects

    [...] for many, it was liberating to find that, on the web, you could explore your true nature and find fellow travelers without shame.

    But as paranoia grows about the NSA reading our emails and Google tapping into our home thermostats, it’s increasingly clear that — rather than providing an identity-free playground — the web can just as easily capture and preserve aspects of our identities we would have preferred to keep hidden. What started as a metaphor to describe the complexly interconnected network has come to suggest a spider’s sticky trap.

  • Code is not Literature: An interesting disucssion of the notion of 'reading code', and how 'reading' is really the wrong way to look at it.

    It was sometime after that presentation that I finally realized the obvious: code is not literature. We don’t read code, we decode it. We examine it. A piece of code is not literature; it is a specimen.

    I've always been very curious about the idea of sitting down and reading code, since it's a common exhortation to those trying to improve their skills. However, my brief forays have always been fruitless, largely because I did try to understand the challenge as reading, not examination.

    My most successful and rewarding instances of 'reading code' have been delving deep into systems I don't understand with a debugger and a notebook. Debugging problems in code I've never seen before is often a part of my day-to-day, and lately, part of my leisure time too!

  • On the Matter of Why Bitcoin Matters: An interesting and measured take on bitcoin from Glenn Fleishman.

    Bitcoin shows a path for massively more secure, reliable, and sensible ways to store value and move it around. As a currency, I have little faith that it will become a replacement for dollars, euros, or renminbi. As a model for a future payment and transaction system, I believe it’s already shown its value.

  • The CS Mindset: A discussion on why we teach CS, and what we hope students will learn from their CS courses.

    With this skill comes something else, something even more important: a discipline of thinking and a clarity of thought that are hard to attain when you learn "how to think more methodically and how to solve problems more effectively" in the abstract or while doing almost any other activity.

Fixing Tradebeans and Tradesoap on 64 bit JVMs

Edit: March 10, 2014: It seems this may not be the panacea I thought it is. Will update if I can figure out more on what's going on, but be aware for now: YMMV.


Imagine you're trying to run the tradebeans or tradesoap benchmarks from the Dacapo Benchmark suite with a 64 bit JVM.

If you, like me, just downloaded the dacapo-9.12-bach.jar you'll likely see a huge stack trace failure like the below:

java -jar dacapo-9.12-bach.jar tradesoap -t 1 
Using scaled threading model. 8 processors detected, 1 threads used to drive the workload, in a possible range of [1,128]
11:08:54,419 ERROR [GBeanInstanceState] Error while starting; GBean is now in the FAILED state: abstractName="org.apache.geronimo.framework/j2ee-system/2.1.4/car?ServiceModule=org.apache.geronimo.framework/j2ee-system/2.1.4/car,j2eeType=AttributeStore,name=AttributeManager"
java.lang.ArrayIndexOutOfBoundsException: Array index out of range: -2
    at com.sun.xml.bind.v2.util.CollisionCheckStack.findDuplicate(CollisionCheckStack.java:112)
    at com.sun.xml.bind.v2.util.CollisionCheckStack.push(CollisionCheckStack.java:53)
    at com.sun.xml.bind.v2.runtime.XMLSerializer.pushObject(XMLSerializer.java:471)
    at com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType(XMLSerializer.java:574)
org.apache.geronimo.gbean.InvalidConfigurationException: Configuration org.apache.geronimo.framework/j2ee-system/2.1.4/car failed to start due to the following reasons:
  The service ServiceModule=org.apache.geronimo.framework/j2ee-system/2.1.4/car,j2eeType=AttributeStore,name=AttributeManager did not start because Array index out of range: -1
  The service ServiceModule=org.apache.geronimo.framework/j2ee-system/2.1.4/car,j2eeType=ConfigurationManager,name=ConfigurationManager did not start because org.apache.geronimo.framework/j2ee-system/2.1.4/car?ServiceModule=org.apache.geronimo.framework/j2ee-system/2.1.4/car,j2eeType=AttributeStore,name=AttributeManager did not start.

    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:485)

This bug report is the hint you need.

Essentially the report points out that jaxb fails on 64 bit systems because it indexes an array using a hash code which can be negative.

Following that report, you can get Tradebeans and Tradesoap working by replacing the jaxb jars inside the dacapo jar.

Because the aforementioned bug report specificaly points out that they resolved the problem with 2.1.13, I also used JAXB 2.1.13.

After you unzip the dacapo jar, you'll need to unzip dat/daytrader.zip as well. Inside of that, the files you'll replace are geronimo-jetty6-minimal-2.1.4/repository/com/sun/xml/bind/jaxb-impl/2.0.5/jaxb-impl-2.0.5.jar, with the obtained jaxb-ri-20100511/lib/jaxb-impl.jar and ./repository/javax/xml/bind/jaxb-api/2.0/jaxb-api-2.0.jar with jaxb-ri-20100511/lib/jaxb-api.jar (keeping the same names)

Seems to work now!

Surviving Discouragement as a graduate student.

This thread at the Academia Stack Exchange is marvellous, and full of sage advice, some of which I already have internalized, some of it not so much.

I'm just going to harvest the page for some quotes:

The fact is research is hard. It appears to consist primarily of staring at a problem for days and days and days without getting anywhere. Sometimes, rarely, I do figure something out and that feels wonderful, but the overwhelming majority of my time appears to be spent banging my head against a mostly figurative wall.

Yes. This. And it wouldn't be so damn tempting if those bricks didn't wiggle just a little bit every time I slammed my forehead into them. Sometimes I think my eyes must be playing tricks on me, what with the repeated cranial trauma and all. But then I remember how good it felt the last time my head actually went through the wall, and so I keep plugging away.

-- JeffE

The metaphor is apt, and the sentiment very true.

But it's the small sublime moments of joy when you realize that you've discovered something that no one else knows that make it fun. And the feeling, as time goes on, that you're immersed in a wonderful lake of , with beautiful new ideas around you as far as you can see.

p.s the advice you were given is very sound. Take breaks, find fulfilling things to do outside of work, and realize that everyone (even seasoned researchers) feel the same frustrations and highs that you do.

-- Suresh

A reminder that even successful people have struggled, and the reason why.

  • Failure is normal—and even to be expected. Just about nothing works exactly as you predicted it would. More importantly, if something doesn't go wrong, then your project has been badly designed, and in fact, I would argue that you're only doing development, not research!
  • Don't be afraid to fail! Failure teaches you lessons that you will never learn from success. I needed a few really abysmal grades in college to get me on the right track—the proverbial kick in the pants that allowed me to realize I couldn't coast through college the way I did through high school.

-- aeismail

This is one of the lessons I need to take more to heart.