Macbook Pro: STAND BY READY

So in my rash foolishness, I ordered a Macbook Pro just before WWDC and I received it the Friday just before. Luckily, while the new Macbook Pro upgrades were impressive, they weren’t what I was looking for. As it turns out, my primary motivation was to get a computer with a discrete video card, which the new low end 15″ MBP lacks. In the end, all is well.

The thing I was most pleased about was about Snow Leopard. Some people might say that tuning up an OS is a copout way to put out an upgrade, but these people don’t know anything about computers. The upgrades were impressive from a technical standpoint and at $30, a very good deal.

It turns out I don’t have much to say about the new computer, because it works exactly like my old one did. The migration manager is nice because I just told it to migrate, left my house for a few hours, and came back to my exact setup that I had. Nothing broke: documents, settings, apps, all of it.

I guess the other thing is how much I love my iPod touch. Even though it’s not an iPhone and thus, dependent on wifi, it’s a great device to have around. It’s nice to have so much more space for music, but more importantly, the platform is ridiculously useful. For my commutes, I’m able to grab light novel translations off Baka-Tsuki to read. I’ve already read through all of Haruhi and am making my way through Spice and Wolf, both of which are fantastic. I’m also able to write up drafts of blog posts (LIKE THIS ONE) and upload them to my server. All of a sudden, my one hour commute is suddenly productive.

So for the most important part of getting a new computer: naming. If you’ve been following my twitter posts, you’ll know I almost named my MBP Lightning-1, the callsign for Fate T. Harlaown. After I thought it through over the day, I decided to go with Bardiche, Fate’s magical device. My iPod is similarly named The happiest magical tome in the whole world, after Reinforce Zwei, Hayate Yagami’s unison device. Yeah, I guess I really like Nanoha.

Plugging the webs together

So I’ve decided that web development isn’t for me and I can see why everyone has a fairly negative view of web development.

I tried to keep an open mind when applying for jobs last term and ended up working at a web development studio. I went through about a week or two of mindless work, doing tasks that really should be scripted. Then, I went through another week or so of learning new technologies that I’d need to know to work on development. So I managed to finally get around to having a look at Flex, PHP, JSP, and get a better understanding of JavaScript, which was a surprisingly interesting language.

After that I began to get smaller development projects, which consisted of adding some sort of functionality in some existing site. It was at this point that I realized that all web programming was was gluing various objects together and sticking a smidgeon of simple logic in between. In other words, I’d gotten into the type of development I so desperately tried to avoid.

But I guess I understand now what it was that I was so interested in. When I have nothing to do, I like to think about myself all meta-like. I thought that I was interested in web development and it turned out I wasn’t. I was really into web standards though, what with the XHTML and CSS and the whole semantic web and separating structure and view.

It turns out I was interested in languages. I’m far more interested in XHTML and understanding its uses and purpose than actually writing it. The most interesting technology I learned was JavaScript, when I learned that it was a functional programming language and I went off to play around with it and learn more about functional programming. I was far more interested in learning the design philosophy and architecture behind Flex than learning how to throw some buttons on a page.

So, note to self: don’t get a job programming for businesses.

Techmology 2

A while ago, I wrote about the effect of technology on our social interactions and relationships. And now I return with more, sparked with a random thought that entered my head. That thought was that I kind of take for granted the knowledge I have about how all of this crap works. I mean, I’m not good enough at it that I can do anything useful, but I know enough to know that it’s not the result of some sorcelations. And then, at the risk of sounding elitist, what logically follows is the scary thought that most people have no idea how computers or the interwebs work.

This is a problem. It causes an unrealistic expectation of what this thing we have built can and cannot do. This becomes more of a problem now that our society is fairly integrated with it. Ten years ago, people were kind of crawling around and exploring this new-fangled thing. Today, people are participating in it. It has defined our society. We now have this thing sitting around that can reach everyone in the nation that everyone can be a part of.

You may remember that I am a fan of Barack Obama. I have mentioned in passing that one of the reasons why I support him is because of his promise to make government data online in universally accessible formats, which is one of the many things he has included in his technology platform. The thing is, though, this will not be a huge thing to anyone who doesn’t understand how computers work. Most people don’t see why this will help “create a transparent and connected democracy”.

Of course, this ties into the other issue of open formats. People don’t understand why keeping documents as Microsoft Word files is a bad idea. People don’t understand why digital rights management is unnecessary. People don’t question service providers on things like bandwidth caps or network neutrality.

I am a fairly large proponent for using technology to improve our democracy. It stems largely from the same basic argument that I laid out in my last post about social relationships and technology. We’re still not taking technology seriously and using it properly. Again, the same basic problem is the people. Technology is not magic. It doesn’t automatically solve all our problems.

How does our government become corrupt? We let it become corrupt by being uninformed and apathetic. Technology solves one of those problems. Obama’s technology platform gives people the tools to be informed. Making government data available, making live feeds of government proceedings available, web tools to track government finances, and using wikis and blogs for public communication are all ways to give people information and let them do something with it.

It’s these sorts of things that convince me of Obama’s trustworthiness. And the wonderful thing is that he’s proven this power. He’s already crafted legislation that created USAspending.gov, he’s centralized his supporters on his website by giving them forums and blogs, and he’s managed to outraise every other candidate using his website and refusing lobbyist money at the same time. It’s also these sorts of things that have convinced me of the power of technology to shape an open and accountable government.

And this is why we need to understand how all of this works. I’m sure you can see how easy it would be for someone to do just the opposite of all of this and actually take away our rights and freedoms using technology, simply because we don’t understand it. It’s already started with digital rights management and the DMCA in the US. This is why technology occupies a large weight in terms of my political considerations. It’s definitely the reason why I’m an NDP supporter, what with their support of network neutrality and real copyright reform (as opposed to the Conservatives’ and Liberals’ capitulation to American interests).

Again, technology is something that we shouldn’t and can’t be afraid of if we want to harness it for good. If we don’t, we’re just letting it sit around as an easy way to catch up on TV shows when it can be so much more. And the danger is that if we don’t use it, someone else will.

Software and Social Justice Revisited

Several months ago, I posted something about Eben Moglen’s talk on free software and social justice. In it, he goes through how software will control the 21st century and how free software will enable us, the people, to achieve social justice and freedom without the need for violent upheaval.

The guest speaker at CCF was talking about social justice, and it was a very good talk. One of the questions that was asked of him was, what do we do? His answer: right now, we can’t do anything, except to work hard through school and get into a position where you can do something.

Something I’ve always tried to do is to connect everything I do back to my faith. Whether it’s design, math, or programming, there will always be some way to connect what we do with God. And why not? After all, he did make it so that ??¬? can never be true and that ?f?df(x)dx=f(x).

And so I’m always trying to find out what God would have me do with the skills and interests he’s placed in me. How does typography further the kingdom? How do web standards advance the kingdom? How do recursive descent parsers expand the kingdom?

So the obvious thing is to use your gifts at church. And obviously, that’s too easy. It’s great for discovering and developing your gifts, but Jesus called us to the ends of the earth. The extent of our talents should not be the church.

So what other ways are there to excercise your skills? Christ called us to go out and serve the weak, the needy, the broken, and in doing so, show them the love of Christ. The problem is that there’s so much to do. The hungry, the sick, the oppressed, it’s impossible to serve all of them especially with our finite skillsets.

I am studying software engineering. Presumably, I’m going to go on to become a software developer and come up with some hot algorithms to parse some hot language. But how does software accomplish the Great Commission? And that’s when I read and listened to Eben Moglen’s “Software and Community in the Early 21st Century”. Afterwards, what I had to do was made much clearer.

Below, is the transcript from the talk; thanks to Geof Glass who transcribed it.

Continue reading

Copyright and Community

Yesterday, I had the opportunity to go hear Richard Stallman speak. The Computer Science Club at Waterloo managed to snag him and gave his speech entitled “Copyright and Community in the Age of Computer Networks.”

Stallman’s arguments about copyright are essentially the same as Lessig’s from his talk, “Free Culture.” That is, copyright started out as a restriction on publishers but now has grown into something that denies the freedom of the public. The media corporations are now excercising their influence on our governments to continue to extend the breadth of copyright so that they are in control of our culture.

Because his points mirror Lessig’s so closely, I kind of wish he did give a talk about Free Software instead, since it’s so relevant to those of us hoping to become developers at Waterloo. And while he kept emphasising that this wasn’t a Free Software talk, he inevitably had to talk about it.

There were a few interesting points that he brought up during the talk. The first was about GNU/Linux. We’ve all heard the argument before that Linux really shouldn’t be called Linux because it isn’t just Linux. It’s something that I’ve never really thought about, but I knew in the back of my mind. The two reasons are that Linus Torvalds isn’t a free software person and that the GNU portion of the OS has been worked on for almost a decade.

It makes sense that Torvalds wouldn’t really be part of the free software movement, considering he mentioned that he used whatever was right for the task, and so open sourcing the Linux kernel was the most efficient way of working on it. This lead people to believe that Torvalds was all for free software, where this isn’t really the case. I’ve never really thought about how dangerous it would be until Stallman mentioned it.

I’d also knew that GNU had existed long before Linux and that we were all diminishing the work that GNU has done by thinking of the OS only as Linux the kernel. Stallman believes that properly crediting the work that GNU has done will take some of the limelight off of Torvalds so that GNU will be able to talk about free software with more authority.

There’s also the idea that copyright was put in place since it affected only industry. Since in the 1700s, the only people who were capable of mass production of copies was industry, it didn’t hurt to restrict them, and so the law wasn’t enforced against the general public. Today, however, we all own copying machines: computers. And as a democratic state, the right thing to do should be to diminish the powers that copyright grants.

Stallman also addressed in the Q&A how programmers are expected to live off of free software. Essentially, proprietary software restricts and oppresses the user. To create proprietary software is essentially taking away the freedom of others, and that’s unacceptable. However, most paid programming is for custom software for companies anyway, so that will remain largely unchanged.