Archive for May, 2002

May 31 2002

Drag City MP3’s

Published by Chris McAvoy under Blog

Lifeboat: Earth!

Drag City is one of my favorite record labels. Chicago based, they manage to continually stay fresh. They release MP3 singles through their website. The two most recent, from “The Suntanama” and “Weird War” are both exceptionally good. “Weird War”, with “The Make-Up’s” Ian Svenonius and Michelle Mae, paired up with Neil Michael Hagerty, sounds great. I’ve never heard of “The Suntanama”, but they sound great.

Give them a listen. Both tracks can be found here.

No responses yet

May 29 2002

Nice Overview of WineX

Published by Chris McAvoy under Blog

Tom’s Hard News weekly email newsletter Vol II/No. 20 – Windows Gaming In Linux With WineX 2.0

The goal of TransGaming is to run off-the-shelf DirectX games inside a Linux environment, and they plan to do it one game at a time. The latest version, WineX 2.0, provides initial support for DirectX 8 and adds Max Payne to their list of officially supported games.

In addition, here’s a Linux driver for the Sound Blaster Audigy card:

http://opensource.creative.com/

The only problem with the above: it’s a Linux driver. Which means you need to compile your own kernel. Kind of a pain, but a necessary jump in geekiness.

No responses yet

May 28 2002

portal.lonelylion.com: Features Overview

Published by Chris McAvoy under Blog

CMS, short for Content Management System, is a big fat buzzword of late. A CMS is any software that allows for (semi) non-technical types to add content to (semi) technically intensive publications. In short, it allows lay-folks to add HTML content to a webpage without knowing HTML.

This site runs CMS software called, Moveable Type. Moveable Type (herein: MT), is pretty slick software. It’s entirely Perl based. MT is great for Weblogs, but not very good at more in-depth sites.

Post Nuke is a “Slash-a-like” CMS written in PHP. “Slash-a-like” refers to Post Nuke’s similarity to Slash-Dot, a popular “News for Nerds” site.

I recently installed Post Nuke on portal.lonelylion.com. The intent is not to replace this site, but to supplement it. Lonely Lion will continue to be a MT-powered site. Portal will be the populist arm of this enterprise, allowing anyone to add content.

Now that the politics have been addressed, let’s look at the features. Post Nuke, for all it’s bells and whistles is a group weblog. The main page’s center column are news articles submitted by users of the site. These will mostly be short paragraphs, pointing to interesting content out there in the world.

For now, only registered users can submit these articles. Once submitted, the article is reviewed by an Admin (currently only me), and then published. This three part cycle: submit >> review >> publish runs most of the features of the site. As much as I’d like to have a free-for-all type site, it just doesn’t work. For that kind of freedom, check out The Lonely Lion Wiki.

In addition to news articles, users can write reviews, create links to other sites, and suggest downloads.

If you’re interested in a general overview of other Weblog software packages, check out this article on Webmonkey, here.

No responses yet

May 26 2002

PHP Environment Installer for Windows

Published by Chris McAvoy under Blog

SourceForge: Project Info – PHP Triad for Windows

PHP Triad installs a complete PHP server environment on Windows platforms.

No responses yet

May 24 2002

X-Men 2 Script Review on AICN

Published by Chris McAvoy under Blog

Ain’t It Cool News – View Article

Well, get ready, because X-MEN 2 is poised to take the winning streak of Marvel Films to a whole new level. It%u2019s smart, fast-paced, filled with page after page of superhero action that we%u2019ve never seen onscreen before, and it manages to not only introduce new characters successfully, but also fleshes out the mythology of the world and the characters we already met in a deeply satisfying way.

No responses yet

May 24 2002

Coming Soon: portal.lonelylion.com

Published by Chris McAvoy under Blog

I’ve been doing a lot of soul-searching lately. (Not really, but bear with) This site is running smoothly, and it annoys me. I’ve been flirting with the idea of canning Moveable Type, and moving to Post Nuke.

However, after careful consideration, I’ve decided to keep this page, and add a new domain. The new domain, portal.lonelylion.com will run Post Nuke. Post Nuke is similar in form to Slashdot.

In general terms, this site will continue to be a weblog / writing site, the portal site will be nerdy, and serve my need to continually tinker with stuff.

Enjoy,
Chris

PS. In terms of a time table, the new site should be up on Tuesday.

No responses yet

May 23 2002

Best Opening Tech Paragraph Ever?

Published by Chris McAvoy under Blog

O’Reilly Network: Creating Web Services with Apache Axis [May. 22, 2002]

Web services have been a buzzword for a while. A friend used to say “Web services are like high school sex. Everyone is talking about doing it, but hardly anyone is, and those that are probably aren’t doing it well.” These days, though, Web services are moving to college, so to speak, and lots of people are starting to “do it” more often and better than before. Tools are maturing, and creating and working with Web services isn’t all that hard anymore.

No responses yet

May 21 2002

Funny Bunny

Published by Chris McAvoy under Blog

BARREL OF MONKEYS is a Chicago group that goes to public schools, teaches kids to write, then produces their writing as short plays for the schools. They also perform the plays on on Monday nights, down the street from my house. We went last week, this was our favorite story:

Funny Bunny, by Imani Griffin, Brenneman 3rd Grade
Ones upon a time it was a big funny bunny who lived in a tree but he did not have a house that have a roof on top just like all the house but he had a house with leaves on it. That funny bunny did not know what to do he just clap his hands ten times 1,2,3,4,5,6,7,8,9,10 He stop then he said I am the smart funny bunny in the house but he was talking to his self. Then the snake came and said, you is not the smart funny bunny in this house I am the smart snake in the house. So the snake clap hiss hands ten times 1,2,3,4,5,6,7,8,9,10 So the funny bunny said, you so silly How come you the funny snake in your family said the funny bunny. The funny bunny and snake friends came and it was bo-bo, frog, fish-fish, bird, dog, cat and thetwo silly willy’s. And all the animals had a great time but the the two silly willy’s just said something, I am smart funny bunny, then all the animals start again 1,2,3,4,5,6,7,8,9,10 They all said, Silly Willy.

No responses yet

May 17 2002

Crying Backstreet Boy

Published by Chris McAvoy under Blog

From the Smoking Gun Archives:
TSG’s favorite Backstreet Boy

“The cops arrested [Backstreet Boy, Nick Carter], put him in handcuffs, and then put him in the police car. Nick wasn’t belligerent, but he started bawling. He said, ‘You just want to arrest a Backstreet Boy. I’ve never been arrested. I don’t know what to do!’ He was crying hard. Tears were streaming down his face. People were laughing at him. The cops were chuckling.”
Guggino added that as Carter-whom she described as an acquaintance-sat in the police cruiser, she approached the weepy Backstreet Boy and asked him why he was crying. He answered, “It’s okay to cry,” she recalled.

No responses yet

May 16 2002

A Brief Overview of Object Oriented Programming

Published by Chris McAvoy under Blog

DISCLAIMER: This is the talkie-talk of a new-ish programmer. Leave me be. This piece is mostly for my benefit, as an exercise in understanding through explaining to someone else. If I misrepresent something, feel free to correct me. I can be reached at chris@lonelylion.com.

The first program I ever wrote looked something like this:

10 print “Chris is cool!”
20 goto 10

It’s a linear program, it says, “print ‘Chris is cool!’ on the screen, then do it again and again and again, to infinity.” Up until a decade (or so) ago, this was the type of programming that ran the globe. Programs were executed from top to bottom.

In high school, I took a C++ class. C, the predecessor to C+, works like the program above. It executes commands from top to bottom. C+ is Object Oriented. At the time, I didn’t understand why this was a good thing. My teacher smelled like bologna, and I was pretty convinced I wanted to be a lawyer. I didn’t pay attention like I should have. Now, nearly ten years later, I’m starting to understand why she’d get all giddy about OOP (Object Oriented Programming).

A program is made up of instructions and variables the instructions act upon. In linear programming, every variable is unique. Even though there may be a relationship between two variables, it’s up to the programmer to understand and respect that relationship.

As an example, let’s pretend the program is a car. Every piece of the car is a variable. Gas needs to move through each of these pieces. Although we know what’s going on, the car doesn’t. The car doesn’t understand the relationships between its parts. The relationships exist, but it’s up to us to acknowledge them.

In Platonic thinking, there is an abstract car. The abstract car is kind of like a definition. It’s a “class”. There are different cars in the world, they have different parts, but they’re all “cars”. In linear programming, there can only be one car. It is what it is. There are no variations. If you have two similar programs, there’s no way to say, “they’re both different types of cars.”

That’s where OOP makes the big jump. OOP takes Plato’s idea, it says, “these variables and instructions are an abstract definition of THIS.” THIS is known as a class. A specific this is known as an object. One more time, the class is the definition, the object is the actual thing.

As a non-car example, let’s take a circle. A circle, in our thinking, is defined as a radius, and a color. The methods (actions) associated with that circle are draw, which draws the circle on the screen, move, which animates the circle, grow, which increases the circle’s radius by 10x, and shrink, which decreases the circles radius by 10x.

Below are two fancy graphical representations of two seperate instances based on our definition. They are each objects, defined by the class circle (click on them to make them larger):

In any given programming language, to draw a circle may take 100 lines of code. In OOP, we take those hundred lines of code, make them more generic, call it a class, and define the variables and methods of that class. Now, it may only take two or three lines of code to draw that circle.

OOP acts as an abstraction layer between what a programmer wants, and the potentially extensive code the program needs to bring that want to life. Abstractions are what make life possible. In language, we all know what the word “blue” means. If we had to describe blue every time we wanted to convey blue, we’d be pretty well screwed. OOP allows programmers to describe “blue” once, then say it as many times as they need to.

So why is this a big deal to me all of a sudden? I’ve been working on the Improv Olympic web page (http://www.improvolympic.com) for a while now, trying to design a database for all the shows the theater produces. I originally was trying to do the programming linearly, because it’s what I’m comfortable with. For some reason, I couldn’t get started.

When I read about OOP, it made sense for the Improv Olympic project. Each show has similar elements, a name, a cast, dates, times, costs. There is an abstract definition of what a “show” is, there are individual shows. I started to lay out what defined a show. After I did that, I defined what kinds of things would act on a show. I needed to put the information in a database, pull the information from a database. I needed to add cast members, I needed to present all this on a nicely formatted page. This collection of variables (name, cast…) and instructions (called “methods” in the OOP world), make up the class: show.

It was a big revelation. It’s made the job a lot more interesting. The jump from linear to OOP programming feels like a huge leap. It’s abstract thinking applied to a rigid model.

No responses yet

Next »