My Other Sites

Friends

Python Backwards Compatibility Sucks April 29th, 2009

A few days ago I found all of my old Python code from high school. I have various files from small assignments, but the one program I am truly interested in resurrecting is the Othello AI program. I have the Othello referree which allows different AI’s to play against one another, and I also have a bunch of compiled Python files for the different AI’s I happen to have. There’s a bit of a problem however: when I try to use the referee to upload these AI’s, I get a bad magic number error.

What!? Bad magic number? And I thought Ruby was full of magic, turns out Python has a whole error around bad magic numbers. I went to look up this error, and I found out that Python doesn’t do well with importing compiled python code (pyc) if it was compiled using an older version of Python. This means all I have to do is recompile the source code with the version of Python I have now. Unfortunately, I don’t have the source code…

Well then I thought, how about I just grab the version of Python that I used to compile them. That’s turning out to be difficult. I grabbed the oldest version of Python that I probably could have used from the Python site, but now none of the AI’s show up in the othello referee list. I have no idea why this is the case, and I’m running out of options.

I have one source for one AI. I’ll have to use this code as a template for other AI’s to be made so that I can have a working version of this program once again. Either that, or I need to find a decompiler or someone who knows how to get old pyc’s to work with newer versions of Python. If anyone knows, drop me a line.

Rocked The Cryptography Midterm April 28th, 2009

I think the scariest thing about my Cryptography is all of the stories I hear about the course. When I’m actually in class, the material is not above my head. I actually manage to complete my homework assignments (admittedly, they do take a very long time), and it’s no surprise that I destroyed my cryptography midterm.

I ended up getting a 37/40, which is about a 93% on that exam. The exam ended up being easier than I had expected, especially from all of the horror stories I’d heard. The questions were nothing more than inverting matrices, calculating a difference table, finding the key in an affine cipher, etc. The only reasonably tough questions was proving that AES is an SPN, which I wouldn’t even know how to begin. In any case, it was a cinch.

On the other hand, I couldn’t take the inverse of a log in my Economic Forecasting exam. I ended up getting a 76 on that test, although I could have easily gotten an 84. Sigh, the power of actually being motivated and interested in a class…

Classroom Teammates != Real World Teammates April 27th, 2009

In my Requirements and Specifications class, we have a quarter long team project which consists of gathering and eliciting software requirements. We got to pick our teams and our project, and I felt I had a fairly strong and motivated team. However, one person either did not show up for the first week of class, or he did not sign up for the course until after the first week. This person was assigned to our team.

When someone does not show up to meetings and does absolutely no work in the real world, this person is fired. There is no equivalent in the academic world. This additional member of our team never shows up to the meetings and does very little/no work. The little work that is accomplished is mostly garbage anyway, so there’s no real point in accepting any of his work. I would love nothing more than to fire this team member, but I’ll have to settle with handing out a poor evaluation.

The problem is he is still a part of the team. We cannot simply boot him out. Thus, we have to keep his involvement in mind when coming up with meeting schedules and dividing up the work. I’d rather just divide everything up amongst the remainder of the team, but it would not really be fair. I feel we should have the power to kick out a member of the group; it would just be much easier to work.

How would you feel about having the power to boot people off of your team in an academic project?

New Header, Calendar And Yay For Python! April 26th, 2009

Yay I found an okay header.

But also, RSS works, and I know have a Google calendar up which I hope to actually use. I’ve removed the .php extension that shows when you navigate to different sections of the site, which is nice (being able to create your own .htaccess is awesome, don’t get a host that wont let you!).

I’ve also found my old Python programs! There was a cool project we did in AI where we got into teams of two and create AIs that played Othello. The best part about this was that each of us would create our own, and then our teacher had a master program which loaded two AI’s and had them play against each other. The game was graphical so it was a lot of fun watching our AI’s duke it out. I really hope I have all the code to be able to do this because it is pretty cool. Who knows, if I get it working I could hold a little Python AI programming contest to help others learn Python (it’s a cool language, and AI programming is also awesome).

I’m still at a loss for what to do with the right sidebar, however I don’t want to remove it. This means something absolutely has to go there, but I’ll figure that out later. Oh, and my college programming projects are also still missing from the projects page. I’ll be putting those up a little at a time throughout the week.

WordPress Is Not Strict April 26th, 2009

One of the things that bothers me about WordPress is how bad the code base really is. I’ll be honest, WordPress has come a long way and its features are pretty fantastic. What they’ve done with the administration options, combined with all of the plugins that exist for this CMS, really make WordPress a great tool for a blog. However, from a developer’s point of view, WordPress can be tough to tackle to get one’s entire site to validate.

WordPress simply has too much code that does not conform to the strict XHTML 1.0 guidelines. I could go in and attempt to fix all of it, but I feel like I would break too much of the code for such a venture to be worth it. Furthermore, do I really want to look at all of the garbage that has been built as part of WordPress? No, and I most likely wont.

I’ve thought about rolling my own content management system, but I’ve decided against it. My reason is simply that I should be using the tools that exist for me and that I should not be reinventing the wheel. However, making my own would definitely serve as great web development practice, so maybe I’ll revisit the idea one day. Who knows.

« Older Entries