Wednesday, November 18, 2009

Funnels and Buckets

Way back when, I played this educational game called "Funnels and Buckets". I remember this being kind of fun when I was a kid, so I thought Ben might like playing it. Tonight I decided to code my own version from memory and with the help of a screenshot of the original version. I've never coded a game in Java, but I had some ideas of how to separate the update/model logic from the actual display. In about two hours this is what I came up with:
Right now it doesn't increase your level and it only gives you one point for each correct answer. This will most likely change to some scoring based on level.

Tuesday, November 10, 2009

Router Fun

So with Lisa gone tonight out with a friend, and me home with the kids, I decided to take a look at some weird issues I started having with web browsing. So for a while now, sometime I would try to go to a website and I would get a 403 from some proxy server. It was always the same proxy server. I figured that my ISP must have some proxy server that was messing up. Today, however, I tried to go to a website and I got redirected to a address ( After much searching and frustration, I found that in my DNS settings I had '' as a search domain and this was set through DHCP. Now DHCP was being served by my old Netgear WGT624v3 router. I searched all through the web configuration and there was nothing that had that set. I then told the router to backup the configuration to a file and took a look at the file. The setting was there, but not in the web interface. I remembered that a while back I updated the firmware and that many options had been removed. It turns out this was one of them. I ended up having to reset the configuration to the default and then manually change everything back through the web interface. Looks like everything is working properly now, and I can finally say goodbye to those 403 proxy pages. :)

Friday, October 02, 2009


I've found that listening to various podcasts have made my commutes and time at the gym much more enjoyable. In the car, I simply dock my ancient iPod on a radio transmitter. Here are the podcasts I currently listen to:
  • FLOSS Weekly - This is a show about Open Source Software and people who create and use it.
  • This Week in Google - This show is about Google happenings, but more generally about cloud computing.
  • This Week in Tech - A general, what's going on in the tech world.
  • net@night - A general, what's going on on the web.
  • Robots Podcast - News from the world of robotics.
  • Software Engineering Radio - Information about Software Engineering.
  • Daily Giz Wiz - Gadget Reviews, mostly ancient gadgets, funny, but I usually only listen to this one if I run out of the others.
If anyone has any suggestions for others, please post a comment. I'm always looking for more interesting podcasts.

Saturday, August 29, 2009

Morning Offering

I think it is important to start every day with a good attitude. Something that helps me is to be consistent in praying a morning offering. It's something that is easy to forget, but also easy to do. The key is to find something you do every day (in the morning), and connect that to saying your morning offering (e.g. shower, shave, breakfast, etc...) It also helps to focus, especially in the morning, to say it out loud.

The main point of a morning offering is to offer your day to God. To help symbolize that my whole day is a prayer to God, I make the sign of the Cross at the beginning of my morning offering, but do not make the sign of the Cross at the end. This reminds me that I have not finished my prayer, and that everything I do today is part of that prayer.

Over the years my morning offering has evolved. At one point it took over 10 minutes, nowadays it's shortened back down to about 5 minutes. Here is most of it:
O my God, I offer everything I do today in reparation for Thy Sacred Heart and in union with all the Masses offered throughout the world and especially so that I do not commit any sins of [insert any fault you are trying to overcome]. For my parents, for my brothers and sisters, for all my relatives and friends. For the Pope, for all the Bishops, for all the priests and seminarians, especially those familiar to me. For school, so that I succeed in it for the Greater Glory of God, for work, so that I succeed in it for the Greater Glory of God, for home, so that I succeed in it for the Greater Glory of God. For [and particular projects I'm currently working on]. For [any sick people I know]. For [any other special intentions]. For all my Godchildren. For [each sibling and their families].

Thursday, August 20, 2009

Is Google dying?

Google did one thing, and they did it well. Sell advertising. What, you thought I was going to say search? Search is one vehicle through which they can market their advertising. That vehicle, however, is quietly becoming obsolete. Google search, in its time, was one of the best ways of finding static information on the web. Wikipedia has been quietly overtaken Google in that area.

This is interesting considering that Yahoo and other web indexes previously had tried human powered collecting of information. We have to wonder, why did they fail when Wikipedia succeeded? I think that it was their dependence on a centralized approach whereas Wikipedia utilizes a more distributed approach. Yet indexes were distributed with regard to the content, but they were centralized with regard to the controls. The next thing that destroys Wikipedia will be both decentralized information and decentralized control---but yet, still indexed, still useful.

I've heard that there are three webs: 1. The static web, 2. The realtime web, and 3. The hyper-local web.
Google has controlled the static web, but this seems to be slowly shifting to Wikipedia. Twitter, Facebook, Digg, Reddit, and others have been the leaders in the realtime web. As for the hyper-local, I think I would rather call it the social-web, and we know Facebook leads there.

What is going to be the next big breakthrough? We are going to again distribute. I think that if companies such as Reddit, Digg, and yes, even Google, want to survive, they need to once again give up control. They need to be able to easily integrate with other platforms. The content is going to be distributed. The comments, feedback, etc will be distributed. The next big thing is going to seamlessly broadcast to other web media as well as seamlessly receive feedback from a variety of sources (and of course, in realtime ;).

Saturday, July 18, 2009

Firefox Addons I use

So last night I foobarred all my addons for firefox by manually mucking around with the files. It's probably a good idea that I log the addons I have installed:
  • Adblock Plus: The horrible ads on digg and facebook drove me to finally install this, and I am so thankful to them!
  • Adblock Plus Element Hider Helper: Blocks some text ads...if you are going to block some, you might as well block them all!
  • Bugmenot: Log into free, but registration required websites. I used to use this a lot more than I do now, perhaps these news websites are catching on?
  • Cooliris: Useless but impressive way to view photos, especially on facebook.
  • Digg Toolbar for Firefox: Don't use digg as much anymore since I started using Google Reader's share feature.
  • Download Statusbar: Puts downloads into a statusbar instead of a whole new window.
  • Google Gears: Allows offline usage of the Google Apps (reader, mail, documents, etc).
  • Google Preview: Inserts thumbnails on the left for Google search results.
  • Read it later: Really haven't used this much.
  • Resurrect Pages: Automatically try to grab down website pages from a variety of sources.

Wednesday, July 08, 2009

Would you die for your children?

Would you die for your children? If you put this question to parents, I would expect almost every single one to respond with "yes" without hesitation. But the reality is much different. When the time comes, who knows really how we will react.

It is fairly easy to see who may not really be willing to die for their children. Simply rephrase the question: "Who would be willing to make sacrifices for their children?" Of course your life is the ultimate sacrifice. If you are not willing to make lesser sacrifices, how do you expect to be able to make the ultimate one?

And that is the sad state we find ourselves in. People generally are too self-centered to make sacrifices for their children---let alone the ultimate sacrifice!

Saturday, June 20, 2009

Pessimistic Optimism

I've often been accused of being a pessimist. I'd rather like to think of myself as a realist.
I do, like most people, however, dislike being around grumpy people. These people have also been termed pessimists. They seem to always expect the worst in people---and many times, they eventually are correct.

I have developed my philosophy after many years of observation and testing: expect the best, be prepared for the worst. You've probably heard this before, the concept is certainly not new. But why should we expect the best? Through my observations, I've learned that people tend to eventually get what they expect. This is a very strange result, but in my experience and tests, it seems to have some statistical relevance.

My theory is that there are a couple of reasons for this. One involves other people, and the other involves yourself. People are really good at perceiving expectation of others. Generally, people tend to follow the norms present around them---thus, if you want people to behave a certain way, simply be surprised when they do not. Another reason expecting the best seems to work is that it changes your own attitude. No longer are you frightened to try new things, no longer are you bitter, no longer are you stuck.

Tuesday, June 16, 2009


Last night I watched an interesting talk on how people make silly decisions:

The most interesting part of this talk was when he showed how people's decisions became more rational as they distanced themselves from the consequences. I thought, however, that much of his actual theory was far too simplified to be reasonable. For instance, his expectation equation is very simple: Utility * Probability of Payoff. This does not take into account possible negative payoff in the case of failure. For example, say you were going to rob a bank, which would give you a 5 million dollar payoff. Let's for now assume you do not have any moral qualms regarding robbing a bank (i.e. you're Ben Bernanke). Now let's say your probability of success is 0.05. This means your expected payoff is 5,000,000 * 0.05 = 250,000. If it costs less then 250,000 to attempt this caper, you should go for it, right? Not necessarily. What about if you fail? There is also a cost for failing. So, in every decision there is the payoff for success, there is a payoff for failure, there is a fixed price of attempting, and there is a price for not attempting. Imagine a binary decision---to act, or not to act. You could quantify the expectation of Act as:
({probability of success} * {utility of success}) +
((1 - {probability of success}) * {utility of failure}) -
{cost of attempt}.

This must be weighed against the expectation of not acting. Whichever has the higher expected value should be taken in a purely rational agent.

Another interesting point in the talk was that people make decisions by comparing the gradient. That is people prefer slopes that are moving toward higher payoffs than lower, even when the total payoff is lower. There were at least two examples of this in the talk, the salary and the burger. In the case of the salary, most people chose the salary that was increasing, even though the total net was less than the total of the salary that was decreasing. In the case of the burger, people associated its worth to what they had paid for it in the past. I do not see this as being dumb or ignorant. In fact, we have learned in nature that things at rest tend to stay at rest and things in motion tend to stay in motion. Thus, we use the slope of the payoff the predict future rewards.

These shortcuts are very interesting to me, as we may need them to create machines that are able to make good decisions---or at least machines that understand the decisions that humans are making.

Friday, June 05, 2009

Facts and Theories

What causes us to accept something we do not observe as fact? Why do some people have so much faith in something? What causes someone to cling tightly to a belief?

It amazes me how some people suddenly become experts in some area simply because they heard a rumor somewhere from someone who heard it somewhere else. This phenomenon is a strange one. I hear them proclaim it with complete confidence--as if they directly observed many facts supporting the claim, and none contradicting. But, many times, the fact is, they never did.

It seems that they so dearly want this fact to be true, that they end up ignoring all evidence that contradicts it. They build up a model of the world, but then, instead of constantly revising, they freeze it.

In science, we have the scientific method:
  1. Observe.
  2. Make a theory.
  3. Create a test.
  4. Go back to 1!
Just because we make a theory does not mean it is correct. We need to keep considering new evidence and use that to revise our theory. We need to consider our theory in the context of how much evidence we have for its correctness.

When people present their theories they should make sure that they are presenting them as theories and not as facts. Just because you think X is Y doesn't make it so. If you want to tell me a theory, tell me that it's your theory and the evidence you have. If you have a fact, tell me it as a fact, don't give me your interpretation.

Sunday, May 31, 2009


I have a nickname for our youngest daughter, Katherine: Zilla. This nickname evolved from a nickname given by my brother-in-law: Fluff. Fluff turned to Fluff-monster, which I changed to Fluff-zilla, which then later was shortened to Zilla.

This was more than a year ago, and now I've been seeing more and more people stealing her nickname!

For example, last night I caught this picture:

Saturday, May 30, 2009

Email Down

If you sent me an email this weekend, I did not get it:
E-mail services for the campus will be migrated to K-State Zimbra starting at 6:00 pm Friday evening, May 29th and continue throughout the weekend. E-mail access will be restored to the campus Sunday evening, May 30th. E-mail services will not be available during this time.
P.S. Anyone else notice that May 30th is not Sunday?

Saturday, May 23, 2009

Vacuously True

This post is for YOU! Ok, maybe not, but read it anyway! It seems to me that there are many people who lose perspective. They either get so wrapped up in the details, that they do not have a clear direction, or, they get so wrapped up about the destination, they do not do the things they need to do now. This post is going to mostly be about the latter.

I love analogies. I don't separate knowledge well, and thus concepts bleed over from one to another. Imagine you are making a trip. You are driving from Colorado to California. If, while you are driving, you simply focus on the destination, you will end up crashing your car. You need to be making local decisions---when to brake, when to turn, etc. You cannot simply be focused on your goal.

Something I often hear goes something like: "If I had X, then I would do Y!"--"If I was rich, I would buy a car." These people tend to make up all sorts of scenarios that currently depend on conditions that do not hold. They do this to the detriment of the decisions they actually have. Instead of focusing their effort on guiding themselves to their goal using the steering wheel of their car, they instead tell me how, if they had a teleporter, they would simply teleport there. You can see this with all the 'get rich quick' schemes that many people get involved with.

Coming up with these vacuously true statements lends toward a feeling of helplessness. "I cannot control my destiny, because all my conditionals are false." Instead of spending effort on these, one should focus on the things they do have control over, the decisions that they must make, and every time they make one, ensure that it is moving them on the way toward their goal.

Tuesday, May 19, 2009


Last week I was in Budapest, Hungary for a conference. I got home Sunday evening. Monday morning I started grading exams and continued grading until 2am on Tuesday morning. Finally, I went to bed around 2:30am---I simply could not stay awake any longer. In the night I had a dream that I was back in Budapest, and it was dark. Suddenly I woke from the dream, looking around I could not tell where I was. I sat up in bed and tried very hard to think back to how I got in whatever place I was. My brain would not budge. This was a frightening experience---not because I didn't know where I was, but because I could not get my brain to process it. Lisa finally came into the room 30 seconds later, and when she asked "what is wrong?" it finally loosened the stuck gears in my head. I fell back down, comforted that I could think.

Tuesday, April 28, 2009

Déjà Vu

Every night I have many dreams. Right before I completely go to sleep, my brain starts a dream. I suspect that may be the reason I have a hard time getting to sleep since the dream process must start before I can really get to sleep. My dreams are very vivid and usually involve real life circumstances. I may dream about work, school, home, or anything. Sometimes, however, my dreams mix with my real memories. Sometimes distinguishing between dream memories and real memories is quite a challenge.

The most unusual feeling, though, is the one of déjà vu. Sometimes, in real life, I encounter a situation: a scene that seems to me to have come straight out of one of my dreams---as if in the past I had dreamt about a scene in my future. This past weekend it happened again, I was at a friend's house where he was having a gaming party. We started playing a game I had never seen before (Halo 3). We all took turns playing (two people could play at the same time), and at some point two of my friends were playing when they encountered a scene in Africa on a highway system. This triggered my déjà vu and I remembered having a dream watching both of them playing and encountering the exact same scene.

Now I suspect that I did not really dream exactly that, but the feeling of déjà vu is so strong that immediately when I feel it, I wonder if I am currently dreaming...

Friday, April 24, 2009


Insanity: doing the same thing over and over again and expecting different results.
--Albert Einstein

Saturday, April 18, 2009

Spammers solving A.I. Problems?

New Scientist has published an article about how spammers could be the key to solving A.I. problems and eventually passing the Turing test. The one thing they do not mention is that CAPTCHAs are all about computers detecting other computers, while the Turing test is about humans detecting computers.

Tuesday, April 14, 2009

Sorry for any inconvenience

Yeah, who hasn't been inconvenienced by 24 hours only?


So it seems some other people have also noticed that the field of A.I. has lost its direction and have proposed starting a new name for the old A.I., A.G.I (Artificial General Intelligence).

There has even been a first conference and a wiki.

Saturday, April 11, 2009


I've been very tired during the day for the past couple of weeks. I was pretty sure it was not just the usual lack of sleep---and today it hit me: I started taking allergy medicine in the morning a couple of weeks back. Doh! I guess I'm going to skip it for a while so I can get some things done.

Wednesday, April 08, 2009

True A.I.

I was talking with a friend the other day about free will and we reached the point where we thought that free will is currently missing from alot of A.I. research. I would not consider any A.I. to be true A.I. without the machine having free will. This then brought up how I believe that there is true randomness if and only if there is free will. And that a machine must have a fuel source of true randomness in order to have free will. However, this is a topic of another blog post that perhaps will someday be written. Here I wanted to talk about...What the heck happened to A.I. research!?

I think at some point, every researcher who starts in A.I. realizes that there just really isn't much funding for foundational true A.I. research. All of the so-called A.I. research is currently more about data-mining and adaptive systems. I believe this is because these areas have a clearer short-term potential economic gain.

Who is working on the real foundational questions concerning constructing a true A.I.?

Saturday, April 04, 2009

I can't believe Jorge used Theta and Sigma incorrectly! :(

Thursday, March 26, 2009

No Phone

So our phone service has been out since this morning. We were told that this is a "neighborhood-wide" outage. I actually saw a tent next to one of the large phone relay boxes along with a phone truck. I've never had the phone out for more than 30 minutes--bet we don't get a discount on phone and DSL for this month.

UPDATE: Looks like there is some news on the source of the outage.

UPDATE2: About noon today our phone came back on (3/28)--so if you tried to call, you can now get through (if my wife isn't on the phone :-D )