This game will have it all

Check out F.E.A.R. First Encounter Assault Recon is what it stands for, but really, it's more about being scared out of the room and hiding under a blanket with a baseball bat, calling friends over and sucking your thumb. I've written on this before, but it's very close to being released, and it looks unbelievable. The demo was a short 10-15 minutes the first time through. I got chills each of the three times I played it. The graphics are unbelievable, the particle system and effects also, the sounds, the lighting, and now the Artificial Intelligence.

AI has always been an interesting subject to me. It's incredibly complex, but that hasn't stopped me from reading books on genetic algorithms, path finding routines, and other broad subjects. The AI that this game uses is called Goal Oriented Action Planning, or (GOAP). You can read about it here under the header "Designer Diaries". It doesn't get deep into technical details, but it is just a fascinating read, and I can't wait to play it.

AI is the next thing in games. You have these games that look outstanding but have the dumbest enemies ever. They pop their heads up in rhythm, it's like that groundhog game where you use the big padded hammer, only easier, since those are more random. Games even realistically portray interactions between objects pretty well. If there are a few wooden boxes stacked, and you shoot the bottom one, it might not get that far from underneath the other ones, but the resulting effect is that the tower of boxes will probably fall towards you, if the bullet doesn't just go right through. They haven't done that in games yet, realistic surfaces, at least not really well. A great effect in this game is watching its particle system. Bullets spark metal, blow concrete off walls, creating huge chunks in the wall, shatter glass, and grenades. Cool game huh?

Now, add SLOW MOTION!! Slow down time in the game and watch all this stuff happen. I tell you it's a thing of beauty.

The Philosophy of Computer Science, Part I

Todd and I recently had a discussion where I described to him everything that I was working on currently, and my "dumb" system mentioned in the "Your Site Rules!" section. I had brought up my Philosophy of Computer Science. I couldn't explain it in such a good way though, so I will attempt to now.

I am a learner. When I'm done learning something, I go and learn more. I am not exceptionally brilliant, but apparently (or seemingly) I'm capable of absorbing huge amounts of data though. I take as long as the next person to learn something, but it sticks. My brain tends to tie things together logically, instead of memorizing something outright. So that I can remember small amounts of facts and deduce the outcome using them. I'm sure a lot of people do this. There are some that will memorize everything, but us lucky ones who can remember less but seem to memorize more, make more room in our brains for other small tidbits of information, making us seem exceptionally brilliant.

However, calculating an outcome each time you have to recall it is somewhat inefficient. It's very inefficient. When someone asks you how old you are, you don't calculate "well, I was born in 1979 and it's 2005, that makes me 26" every time... You just know that you're 26 or whatever age you happen to be. Or you lie to get into a bar or because you look younger than you are :)

Someone recently asked me "Why do you learn so many technologies, when you can be an absolute expert at one?" To me, this is an invalid perception of what I do. I don't learn any specific language. I spend a lot of time using Java instead of what I use for work, C# and .NET. When I was in college, the classes that I had made me realize the answer to this question. Not the "Programming Language Paradigms" class, or the "Organization of Programming Languages" class... these were Computer Science classes. I learned the answer to this question in my Philosophy classes. I took quite a few. My favorite one was "Logic". It made everything clear to me.

Computer science isn't "using computers to achieve a task". It's a connection of objects. Either different computers, different technologies, different objects in an Object Oriented Programming Language... different ideas with their own logic, connected together in a way that they all work as one beautiful system. Why I don't learn one specific language or technology is because you are then stuck in that technology. I happened to take jobs in only .NET in the past, so now I'm only able to get .NET jobs, which is part of why I don't learn one technology, but not the only or even most significant one. It's pretty insignificant, actually.

With many technologies in Computer Science, and by technology I mean anything in Computer Science, I find it more important to know what they do, rather than how they do it. Ok, here's an analogy. You learn how to use chainsaws, you don't learn how to use one specific chainsaw. By learning how to use chainsaws, as opposed to one specific chainsaw, you can use any chainsaw. Why should technologies be any different. Writing a website, or using sockets to connect to the internet, or zipping up files, or using a printer, or writing graphics libraries, or using rule engines, or a scripting language, etc. Knowing what something does is much more important than knowing how to use one of those things. Memorizing one language is bad, unlike my "I'm 26" analogy. Being able to deduct this information, based off of that little fact that you store (it's a programming language), is huge. So, when someone says "This is a programming language", I immediately know that it will contain features like input and output (I/O), ways to connect to the internet, something for printing, ways to create objects and inherit from them, interfaces, basic objects like ints, longs, floats, Strings, etc, a mechanism for threading and synchronizing data access, etc. It's a programming language, it's gotta have this stuff, and logically, I can deduce that. So, now all I have to do is sit down with a reference and a text editor, and I can write a program using that language that was introduced to me 3 minutes ago. As I said though, this isn't only to do with programming languages. Tell me what a technology does, I'll show you how to use it in a programming language. I will need a reference, but it just makes sense to me that you call certain functions in a certain order with certain parameters, and it works. Nothing more, nothing less.

So, this is my philosophy of Computer Science, Part I. I'll have more soon.

The Way of Google's Future

I came across an article in my favorite tech news site, ZDNet, that said Microsoft had predicted 10 years ago that the Internet is the next platform. But, Microsoft still spent bazillions of dollars making Windows XP and the new Windows Vista. Meanwhile, under Microsoft's radar, 2 Stanford students develop something in their dorm room, a search engine, and in 2005, they are big. HUGE. Google. With Google's way of innovation, and their ideas and having the top minds in the field (except they don't have me yet :p ), they are developing a lot of things, and they are not platform specific, but they are for the internet. Gmail, Maps, etc. They have more, and you'll see them by visiting their beta section. So, now Microsoft is feeling the heat. Without having a specific operating system, you can use any of Google's Internet products. Microsoft just wants to take over the world, so they will fight this, and start doing their own, or they just don't want Google to get too big, because then they can go stealing all their smart employees, paying them the big bucks, giving them the Presidential Suites, etc, and using them to develop products specifically targeting Microsoft products, instead of Microsoft doing it to them. The playing field is leveled a bit.

It's an interesting concept, the Internet as a platform. How I picture it, the possibilities are endless. Before I had that vision though, and before I read that article, I had pictured something a little different, something like Google's platform, the latest desktop search. Plug in components into a base platform, and the base provides a lot of the functionality that the components need, providing quicker development. Think of Mac's Widgets. There's a widget container that can provide lots of functionality to the widgets, and then there are widgets that you can plug in. I always imagined something like an application container. I could have small apps that plug in, and you can open any of them from this container. I had thought of this before Mac's widgets, but instead turned towards internet applications. My main reason for this thought process was because of how Java works. I didn't know if you could make a Java program automatically run by double clicking it, you always have to open them with another program. Of course, have everything run under one program. (I later found out about JNLP, Java Network Launch Protocol, which launches 'JAR' files containing a Java program)

Sometimes solutions are so obvious for one problem and they aren't even considered for another problem.

What wasn't obvious to me is that this idea had already been done! In fact, everyone is doing it! When you visit a website, you are typically using an application written for the web. An application. Written for the web. My container application, the platform for running every program I write, is in fact your web browser. This seems like a great platform. Some obvious aspects that you have to watch out for are backing up data, security, limitations of certain web browsers, certain web browsers not following web standards, downtime, scalability, application flow, user experience, and users. Some great benefits to web applications are deploying, updating everyone's version instantaneously, data stored in a central location, and if you secure the server, it's virtually unhackable... if you develop it to be that way. Having a client application obviously has its benefits. You can access local resources (disk drives) and do stuff that you can't do in a web application, like video games and accessing hardware, and stuff that would kill the resources on a web server if too many people did it at once... intense applications. Basically, it depends on the application, whether you should make it a client application or a web application, and whether you can make it a web application.

There aren't too many downsides to writing a web application, but they are pretty big downsides. There is another one. HTTP. HTTP is pretty primordial. HTTP is the protocol in which web servers communicate with the world. It consists of numbered codes and data separated by line breaks. It was developed before XML. However, XML has its obvious downsides. It's heavy, lots of text. Depending on your data, XML can double the size. It's mainly used for text, so you wouldn't normally go storing your images in there. I only bring this up because of client/server applications, or server to server communication, which still falls under client/server. This is why SOAP was invented. SOAP is an XML format that was developed for multiple applications, infinite applications, to send XML data over HTTP. A standardized format is a good start. HTTP can stay as it is, as long as everyone uses SOAP. This was the advent of web services; small applications written to run on the server and communicate with the client. Usually just a function or two. There's a huge history there (search the internet for RPC or "Remote Procedure Call", you'll see what I mean), and the idea was to make a standard way, rather than hundreds of developers fending for themselves, all writing a different way to call functions over the internet.

One of the important downsides I mentioned with writing web applications is user experience. This isn't about making users laugh or showing help or different messages. This is about "perceived speed" of an application. Who wants to watch a progress bar at the bottom of the screen? Or watch as the whole website goes white and takes a few seconds for something to pop up. In client side programming, you typically develop a multithreaded application to improve user experience. Things appear to happen simultaneously. However, these applications run on a web server, and the only protocol for speaking between the web browser and the server is HTTP, which makes requests only at the user's request (hence the name) and provides responses, how in the world do you expect to make an HTML web page seem "multithreaded"?!? AJAX. You may have heard of it. It's "asynchronous" using JavaScript and XML. That's pretty much what the acronym stands for. This way, I can have JavaScript make requests back to the server without the user's interaction, typically on a schedule (every 5 seconds, every minute, etc), and get that ever-so-desired perception of multi-threading in a web application, significantly improving a user's experience.

Google has realized this. Maps and Gmail use AJAX extensively. It is the way of the future, and it is important enough that soon every browser will have it. But this isn't just about writing a web application that appears friendly to the user. It's about writing many applications that are all friendly with each other, and that all appear friendly to the user.

Imagine an internet portal, a website that you go to as the first page you visit on the web. It has everything. News, stocks, your email, messages sent to your IM client that you missed, emails from other accounts you have, voice mails from work and from your cell phone, reminders about events in your calendar, and anything else you can think of. This is Google's vision... probably. Imagine having all this personal data on one website, collected from many different web applications, each using SOAP to communicate with each other, sending XML to the user's browser on each AJAX request, and reading all this personal data on the fly, determining which advertisements to show that user. Advertising is Google's main source of income still, besides selling stock.

"But Google's also buying up loads and loads of dark fiber and buying wireless internet technologies and WAPs" you say... Yes, they have invested in a company that can triangulate exactly where you are when you connect to a wireless network. So you can search for the closest guitar shop to the exact point on which you are standing. This on a portal full of all of that other information I mentioned would just be showing off.

This is where I think Google is heading. As with its search technology, I think the Internet can do better. I must emphasize this. I've mentioned this before, here. I think all of Google's web applications will supply their data this way. I quote myself:

"Imagine, if Google, instead of just reading all of the HTML through a website url, can just ask a website "Yo, what's your deal?!" and the website can respond back "Dude, I am a guitar shop, here are my wares.""

RDF is this for news. Somehow Google is able to extract prices of goods on websites as well, and build a shopping cart around them. But instead of Google just being able to search these results for items you may be looking for, what if there was no website that actually sold this stuff, but Google just read data from a server, through another protocol, and did everything: shopping cart, credit card processing, etc. Google would be the only online shop. Or, what if someone else did this. Like me! No, there's an "end of the world" scenario in there somewhere. No more online shops, just Google, and less jobs, and less money, and more Google. It could be bad, let's hope that they're only doing the portal mentioned above :)

This is what cool people do

My college buddy, Zatko, and I play video games. We played through the first Serious Sam (Serious Sam: The First Encounter) and maybe also what I thought at the time was Serious Sam 2 (Serious Sam: The Second Encounter). It later became widely known that this was, in fact, not Serious Sam 2. I became confused when GameSpot (not the store, that's GameStop) started putting up screenshots and articles about Serious Sam 2. I'm like, I already have it, beat it, it rocked, etc. But then I clicked one. "What the F@#%#@@ is this?!!?" I thought. Well, this is the real sequel. New graphics engine, physics, new monsters, real time shadows, lighting, and everything else that makes today's games beautiful and immersive. So Zatko and I made a pact: To only EVER play the game cooperatively when it comes out. See, another beautiful thing about the Serious Sam games is that they're $20 and that they ALWAYS have cooperative mode. NO games today have coop. It's stupid. Every game would make a killing if they let you play through the missions with a friend or family member. They don't do this, citing "technical difficulties" or some crap. Anyway, today, I hop onto GameSpot, and lo and behold, there's a Serious Sam 2 DEMO. Knowing my pact with Zatko, and knowing that he'll b@#%@# and moan at me for YEARS if I break it, I went to him:

Jason Connell: serious sam 2 demo
Zatko: you better not play it
Jason Connell: can i play?!?!?
Jason Connell: DOH!!!
Zatko: hell no!
Zatko: don't even look at it
Zatko: tear your eyes out
Jason Connell: can i download it?
Zatko: :)
Jason Connell: at least?!!
Zatko: you can pretend downloading it
Zatko: but thats about it
Jason Connell: alright, i'll write a program that says it's downloading the serious sam 2 demo, but it's really not
Zatko: yea, thats ok
Jason Connell: sweet! you want a copy?
Zatko: i might have to take you up on that
Jason Connell: alright
Jason Connell: oh wait, there's a brothers in arms 2 demo out too, i'll play that instead

So, I can't play :( I will hold to the pact though...

Even Bush is on Our Side

Ok, maybe I sort of drew that after I edited someone's image after that someone deleted Bush's original bathroom message and put a funny message, and then a journalist got a hold of it and maybe kinda started a contest. I won't win, surely I don't deserve to, that thing took me about 3 minutes to do.

Quote of the Day

This quote comes from Sony BMG CEO Andrew Lack. It's in this article. The article talks about how the music industry wants to raise the prices for songs on iTunes, and Steve Jobs fires back about how that's greedy, and it will turn people back to piracy. The market isn't big enough to raise prices yet, one analyst conjectures. Anyway, here's the quote:

"I'm not making any money on this," he said. "I've got one revenue stream that a proctologist would have a hard time analyzing. It's not pretty."

That's classic.

Philadelphia Fan T-Shirts

Doug sent me this. These are copyrighted I'm sure. Doug, tell us where you got them



(On the left, the one caveman asks another "Are there any other Cowboy fans?")

Website Development Ceasing

Today, I have ceased development on this website. I will still be making news posts, uploading music, adding photos, etc, but I won't be making new features or even fixing bugs. I won't be able to! Actually, I will be able to, but just pretend I won't. I'll be "branching" the code used in this site, sort of backing it up if you will, rewriting all of it, hence breaking this website on my local machine. I will have backups though. There are a few things wrong with it.

First and foremost, I have ideas. Lots of ideas. I will be building a new site, called stringed.org which will just be a showcase of technology. This was explained before. If there is news on there, you might see posts like "Jason is t3h l33t" and just utter garbage like that. Come here for the real news :) It will just be test data, and it'll probably be open to the public, so you will also be able to log in, or just click an admin link, and edit things and input crap, just like I can! It'll be fun for everyone.

Second, I have ideas :) Ok, so that's the same as the first, but I have to reiterate the fact that these ideas could be life changing. You might be working for me or for one of the companies I will own in a few years, so you might want to respect these ideas. The future is easiest achieved in a non-persistent world. That's a cool quote that I just made up. You know all the movies about the future (most fresh in my mind is Minority Report) where everything is different. Buildings are futuristic, cars, houses, everything. We won't ever get there because it will just be too expensive to tear down a building and make it "futuristic". However, in software, it's very easy to tear something down and re-do it. Not for gigantic companies, but for us "hobbyist" software developers. True, I do it for a living too, but I do the hobby stuff more passionately :) That's because I only work on the cool stuff at home. I am doing cool stuff at work though that I haven't done anywhere. I'm rambling. Anyway, if I can just get a good idea in my head, like I have now, I can throw away most of what I have done and start fresh and build my idea. It might not be life-changing for everyone, but I'll get a kick out of it... :)

Third. I just always think things should have three points to them. Three is the magic number. But really, I'm someone who quickly bores of programming. If you've written one input screen, you've written a thousand. If you've updated one table in a database, you've updated a billion. Same thing with most tasks in programming. However, if you have written something to automatically generate SQL for you and update a database, then you don't have to write that thing again, and you never have to write SQL or anything to update the table AGAIN. I wondered when I got done writing "dumb", and still was doing repetitive tasks, like scheming a database out, building input pages, building output pages, building backing beans, etc, if it could all be automatically done for me. That is what I plan on figuring out with this new design. I will find an answer, and that answer will be the future :) For me anyway. I'll buy you a hoverboard when I'm there.

New Movies!!

I just bought a boatload of movies. They've been shipping from Amazon.com continuously for the past 5 days. Here's the list. It's a good mix.

Johnny Mnemonic
Jurassic Park Trilogy
Star Wars Trilogy (That's episodes 4,5 and 6, not the latest atrocities)
Back to the Future Trilogy (I love Doc in these movies)
Slap Shot
Truman Show
Bruce Almighty
Ace Ventura 1 & 2
Dumb and Dumber
Hitchhiker's Guide to the Galaxy
The Aviator
Catch Me If You Can
Tron
The Goonies
Beetlejuice
Indiana Jones Trilogy

I have other good movies so this adds to my great collection. A few notes: You might notice an overly unnecessary number of movies starring Leonardo DiCaprio. This is because he's a good actor. Despite starring in the Romeo and Juliette in the early 90s that every girlfriend I had back then raved about, and of course Titanic, which isn't really that bad if you take out the whole story that isn't about the sinking of the ship. Have you ever seen him in "What's Eating Gilbert Grape?" ??

I actually have a new order on Amazon.com just waiting for me to click the "Checkout" button. It's another big order of equal to better quality.

I also got a book with the previous order: "Room Full of Mirrors: A Biography of Jimi Hendrix". Haven't read it, but I did look in the middle where there are pictures. He is now my favorite blues guitarist. Stevie Ray Vaughan is still up there, but he was also inspired and heavily influenced by Jimi. I can't even explain Jimi's genius.

Today is Wednesday, half way there.

New Website Feature!

Yup, check out the little menu item, second row, second from the right. Take a poll! The first one I put up is a "multiple-selection single-vote public" poll. So, they will be checkboxes instead of radio buttons so you can pick a few, it will also only let you vote once, and it's public, you don't have to be logged in to use it. Look for more polls in the future.

The F@^#$!^!# BOMB

I started using my Mac Mini more because the other day, a friend asked "Yo, what are you using your Mac Mini for?" And I said "Music" and "Watching Movies". I then thought, that's obviously not enough usage out of the thing, although it is getting used every night when I throw in "Contact" or another movie. Being out sick today, and my chair breaking yesterday while I was in it, leaning back, falling flat on my neck, I decided that I'm going to try the iPhoto program that came with my Mac. I like it. It recognized my digital camera as soon as I put it in, and I clicked to import all of my pictures and movies. There were 74 of them, but most of them are already on this site, I just haven't deleted them from the camera.

So my chair broke yesterday, and being out sick, and doing some work from here, I needed a new chair. So I went to Staples to see what they had. I started sitting in them, and was happy with one, then saw this other one. It was brown. It's like suede, like our couch material. I sat in it, leaned back on it, and almost passed out. They had chairs there that have massage features on them, but this one was the one I wanted. It didn't require a battery and it was so comfortable. It didn't have a price tag on it, so I asked the lady at the checkout. She didn't know. The dude came by, and off the top of his head said "$180??" Damn. But, he went back to check, it was only $120!! I didn't have to break the bank.

I paid the $120 for the chair and added a $10 donation to the Red Cross for Katrina. So far I've donated $11 to the cause, but I'll eventually give more, because that just looks awful -- me buying a $120 chair for comfort while computing, and the victims just get $10. I'll make a big donation soon, like $100. That should help. I owe for September 11th, whose anniversary is coming up on Sunday. I was in college when it happened, but I really don't remember anyone trying to collect for the Red Cross. Another reason I didn't donate anything was because I was in college at the time, making $5 an hour at a job I would work about 5 hours a week. Plus, I figured the economic impact of something so terrifying would prevent me from making any money ever. That wasn't the case, but it wasn't until March, after I graduated that December, that I got my first job.

So, this chair.... awwwwwww this chair :) It's really nice. Padded arm rests, tilting seat so you can lean back, very soft back and seat, decent wheels, suede like upholstry, big neck support, and a very high back. I'm still sort of traumatized from the incident last night, so I'm afraid to lean back too far in it. Another cause for fear is that I put this thing together. I'm a software developer, stop looking at me funny :) Anyway, it's really nice! :) Here's a picture.



Yeah, you know you want it. Check out the pictures of my broken chair here.

Report from "Weekend of Hilarity"

Man, so many hilarious things happened this weekend. We went down to my parents' house in Lewes, DE, went golfing once, and went to the beach the rest of the time that any of us had any energy.

First story. The $0.75 Kite. Pat, who sometimes seems to be younger than my niece, and we forget that he's 24, saw this kite in "Happy Harry's Discount Drugs" on Route 9 in Lewes, and had to have it. Beaner, my real youngest brother, almost 19, got a two stringed kite, built to last, maneuverable, for a suggested retail price probably four times higher than Pat's plastic flap shaped as an eagle, two wooden bars, and some string, thrown together to form something that might resemble something that at one time had flown. However, he built this thing, and got it flying in a few seconds. Beaner, on the other hand, had a tough time getting his "expensive" kite built, and could only hold it up in the air for a few seconds before it came careening to the earth each time. Beaner gave up soon. Pat, however, was having a blast. A knot had formed, Pat just cut around it and retied the strings together. It was not worth the time he could be spending flying the thing. I was pitching a wiffle ball to different people so I got a good view. Pat was now over by our truck on the beach, and we were using the grooves in the sand from all the vehicles traveling up and down the beach as our pitching lane and home plate. There was another truck coming. The kite was high, but it started coming down. This was the beauty of it. The truck and the kite met, perfectly, so that the string of the kite got caught under an opening in between where the roof rack mounts to the roof. Perfect. Pat started yelling, I almost fell over laughing, then Pat just gave up, let go of the string, and so ended his $0.75 investment. Everyone soon came up from their seats and joined in the laughter and watched this truck drive a half of a mile down the beach with a kite flying behind it. This thing had some slack. It had about 15 feet of string from the roof rack, so it kept flying in circles, crashing into other trucks on the beach, taking out little kids, and everything else you think might be funny. It was a great time.

There were a TON more laugh out loud times. But, I'll tell you a story of choking. Athletic disappointment. No, I'm not talking about the Phillies right now.

We all went golfing, 5 of us. Dad, Jeff, Pat, Brendan (Beaner) and me. We were short 2 brothers, but I surely wouldn't be able to tell this story if Steve came, he would have whooped all of our asses. We play 9 holes of this par 3 course. Bean plays in his sandals, and takes them off to hit. First hole for me, just on the fringe, 15 feet to go. Sink the putt. Beautiful. The day went mostly like this for me. Nice chips when I had to, not too awful putting. I was in the lead the whole round. I had 3 or 4 bogies, a birdie, and the rest pars. Ninth hole. They're all like "choke!!" and "noonan!!". I hit a nice shot again, short though, but right at it. My lie sucked. In the dirt, practically. I had a short chip, I tried to get it up, but picked my head up. I had no idea how many strokes lead I had, but I was now on the other side of the green. I said "F@%@#$!@# that, I'm putting". Nice putt, short, but I had a long way to go. Had to make the next putt, I now know, but didn't then. Hit it, lipped it, ended up 2 inches from the cup. Double bogie. My first 5 of the day. Dad taps in for par, I lose by a stroke! SOB!!

Woohoo!! No Monday this week!

Away for the Weekend

Don't try to contact me, I'll be fishing, or drinking, or golfing. Or sleeping. Signing off. Peace out, motherF#%#@@#ers!

Word.

Friday Again!!

This Friday is awesome, because the next time I go to work is Tuesday. We're heading down Delaware this weekend. I plan on getting ripped. Anyway, I promised a story, so here it is.

This is about a younger Jason. A six year old Jason, to be exact. Some of the details are fuzzy, but I do remember most of it. I'll just tell what I remember, though. So, a long time ago, 20 years or so, I used to be quite the entrepreneur. I remember there was this GI Joe figure that I wanted. It was sort of a technological marvel. I remember thinking, if they could make this thing, then we should be living on the moon by the time I was 10. It was the dude whose skin color changed when brought in and out of the sun. I had seen it at "Clover" a few weeks before, going for what I remember was $7 or so. I was determined. That thing would be mine.

But instead of your normal money earning routines, like selling lemonade on the corner for 25 cents a pop, or asking your parents for it, or ... God, who knows how kids who were six years old got money back then. All I know is, within a few hours, I had enough money to buy the figure and his vehicle. If someone remembers the name, please let me know.

This is how I got the money. I went to the closest house to ours, right across the street. I knocked and said "Do you have any chores I can do for you, for $1??" Within minutes I was in this old guy's dining room, wiping down his chairs with some wood cleaning solution. He was helping. $1 in the bag. The only other one I really remember going to, I knocked, and she said "No hun, but that's so sweet, here's a dollar." I did small common chores, I assume, in 8 houses, minus the lady who just gave me a dollar. Maybe someone gave me a five and told me to keep it. I don't remember. But, I had my money, and off I went to Clover, a department store.

I don't remember much from Clover (part of Strawbridge and Clothier's), but I guess I grabbed the toy and went to pay for it. The lady rung it up at the cash register. This part I do remember. I was SHORT!!! However, the lady behind me offered to cover the rest of it, and wanting my toy and being SIX years old, I didn't feel bad about it. She paid the rest, I thanked her, I went on my way.

At this time, my Mom was going mental. She had no idea where I was. Sorry, Mom, I had business to attend to. I got back, and she was waiting right inside the door. I tried to hide the toy that I worked so hard to earn, but I had done just that... earned it. I should have been proud. I don't remember if I got "taught a lesson" or not, but I didn't feel the urge to go out earning money again, no other toys were as cool. I played with that thing FOREVER. That was my favorite toy by far. Plus, I had gone through the full cycle of buying something. Earn money, pay for the goods, borrow money from someone. These were lessons no one could learn in a better way.

The thing I thought of today was, if I had been saving money instead, maybe putting away fifty cents here, a dollar there, etc, I could have probably not gone out working for my money. That's how I am to this day. I don't save. I try to, but then something that I have to have, whether it is beyond our times technologically like the GI Joe figure, or just a plain old necessity, comes along and I buy it. Bills are another thing.

Ahh, memories. Enjoy your three day weekend!!

We're in .biz

That's internet speak for "business". My website is now working on my Gentoo Linux laptop. I had no data in there but recently ran part of my software that exports data that can be imported into a blank database. It's pretty neat. It exports it to XML. It's easy too. Anyway, this weekend, in moments of consciousness and soberness, would be a good time to update my website. I actually fixed a bug yesterday that was the culprit for me not having an "About Me" page on this site anymore... minutes of hard work and thinking right down the drain, overwritten by the Points of Interest page in the blink of an eye. Also, I'll be adding stuff. But more importantly, I'll be starting the software architecture for stringed.org. I'll be reusing much of the stuff I wrote for this page, reorganizing my packages, adding features, fixing bugs, getting rid of redundant stuff, etc. It's going to be lean and fast, and powerful.

More about the XML export. Right now I have to restart my webserver after I set some settings that tell the software to export every object in the system, and it'll do the export, then I have to reset the settings back to tell it to not do the export next time. That's one thing I'll be building: a web-based management tool for "dumb". That should help out a ton. Export all the data? Sure, click a button. Or export certain data? Which ones? Click. I only since thought about only exporting certain data because my software generated an XML file that was 487KB!! That's huge for a text file. Although, in college, I had a list of every word in the English language for a project, and it was around a megabyte. 1 million characters! I was working on a program to solve cryptographs, those things in newspapers, but I had only reached Computer Science 2, so I had not learned of neat or efficient things like "hash tables" and "regular expressions". If you don't know these things, I suggest that you never learn them, as to allow me to keep my current value to employers :) If you can, make the people who know them forget about them. Please. Thanks.

I have a story for tomorrow. Just you wait.