Google recommends using IE and Mozilla.

September 14, 2008

This is something that I found to be rather funny.

This is a screen shot of Google groups, loaded up in Chrome.

Google recommends IE or Mozilla.

Google recommends IE or Mozilla.

I’m still fine with Chrome, though, aside from a few problems here and there, which I think will be fixed with time.


A Random Entry

September 6, 2008

I found an article about free will a couple weeks ago. I’ll just link it here. The article is mostly about a social experiment, but touches on the idea that there is no such thing as free will. There is something that I agree with. But first, I want to discuss another topic.

Randomness. When something is random, it is normally though of to behave erratically, or unpredictably. But does randomness actually exist? By some definitions, yes. For instance, Wikipedia says that randomness is a repeating process whose outcomes follow no describable deterministic pattern. But I still would lean towards the fact that there is no such thing as randomness.

Let’s take a look at randomness in computers. In specific, I’ll take a look at the random() function in C++. If I call random(), it will return a random value. Then if I call it again, it will return another random value. I could call the function 100 times, and I will receive 100 random numbers. Well, that is until you realize how the numbers are being generated. As every programming textbook will tell you, this is actually a psudorandom process. Psudorandom effectively means generated deterministically, but in a hopefully unpredictable pattern. If I run my program again, I will have the same 100 random numbers generated. That’s not really random, but it seems that way.

So, a bit on the way these psudorandom numbers are generated. One of the most common ways to generate a “random” number is to start with your seed. The seed is used to perform calculation, and determine the psudorandom number. Often times, the seed is multiplied by a constant, and then added to another constant. This number is your new random number, and your new seed.

That means that if you know the calculations performed, and the seed, you can determine the next random number. Or, in other words, if you know all of the variables involves, you can predict the results. Well, not predict; you can know the results before they happen.

What can make something seem actually random is when you introduce a variable that doesn’t perform the same way every time, usually due to an irregularity or imperfection. Imagine that I have a program that, when loaded, generates random numbers, and therefore random seeds, until there is some user input. Once there is user input, this new seed is what is used for all future calculation, or perhaps is just used for one random number and continues generating random seeds until further user input is required.

This will produce much more unpredictable results. It’s actually pretty much how slot machines work. Why is it more unpredictable? Because in a second thousands of iterations of the random function pass by, and it is difficult to determine which number the input will stop the function on. However, if there were an easy way to measure the number of iterations from the original seed and the user input, then we would be able to predict the result. The user input would effectively be a multiplier or an add-on or another variable affecting the output of the random function.

The time upon which the user gives input could in itself be considered random, but if you are able to consider all of the variables (many more than a seed, multiplier, and add on) involved, you would be able to predict the exact time the input would be entered, and thus be able to predict the number determined by the function.

Instead of belaboring the idea, I’m going to assume that the reader can extrapolate this idea to apply to all thing. In short, all seemingly random things happen due to all of the variables that contribute to that event happening. Most events, even simple ones, appear to be random because there are just too many variables to consider, or even fathom. However, if one were capable of determining all of the variables, he would be able to determine the outcome itself. It would be like one happy, deterministic math problem. The other major problem is that even if we did have all of the requisite information, the event would pass before we could actually figure out the result.

Well, how does this tie in to free will? Pretty much, if you replace the term “random event” with “decision”, and “variable” with “experience and knowledge”, that pretty much sums it up. Decisions we make are based on many, many factors, most of which are experience and knowledge. If you were to take a decision that a person is to make, and were able to evaluate all of the “variables” that contribute to that decision, you would find that you can predict the outcome of the decision. Again, it is just a deterministic function whose output is based on the parameters of the function.

Now, I’m not saying that we are robots and should all follow Asimov’s three laws. I just argue that there is neither randomness or free will; there is only seemingly random, and seemingly free will. If the vast quantities of variables we capable of being measured, then we would be able to predict results. However, we don’t even have a list of what the variables are, let alone the tools to measure them with, so I doubt we will ever truely be able to predict random results or decisions.


Cuil Runnings.

July 29, 2008

Yesterday, Cuil, the newcomer to the Internet search department, was debuted. I must say that I am pretty impressed. For the most part, I don’t have any complaints about it.

Let’s go into my opinion:

  • Cuil is attempting to index the entire web. That is definitely useful. There have been many other times that I have tried using another engine to find a page that I knew existed, and couldn’t find it. If it exists, than, eventually, Cuil should have it.
  • Cuil is very big on privacy. Also good. Any information it stores is stored in a cookie on your computer, which you can delete. Anything else is never stored. It doesn’t keep a list of searches by an IP address, it doesn’t keep a list of popular searches, it doesn’t keep anything. I really like that they respect the privacy of their users, but it actually leads in to one of the potential downsides…
  • Cuil doesn’t keep track of popular searches. Google’s algorithm (from what I understand) lets popular searches rise to the top of the results. While Cuil argues that this isn’t the best way to display results, it is often a close way to determine what someone is looking for. One thing that I really like about most Google searches is that the Wikipedia article is right on top. In Cuil, it just isn’t, at least not yet.
  • Cuil has a very friendly usability. For instance, tabs on the top, a column of “Categories” or more focused searches. They also include pictures whenever possible. Overall, the style is friendly, but still packed with information
  • So far, I have had some problems with the searches. For instance, earlier today searching “Batman The Dark Knight” yielded no results, even after clicking on one of their Categories. It seems to have been fixed now, but it looks like they have some ironing to do. I’m sure it will all work out over time. I mean, it was their first day, and errors are expected.
  • One major question that pops into mind is: How are they going to make money? I don’t see anything on their website that could possibly generate revenue. But then again, I said the same thing about Mozilla, but they have managed to do just fine.

Over all, I like Cuil. Has it replaced Google? No. But it seems like it has a lot of potential as a possible secondary, and possibly even a primary search engine. I am quite interested in how they do as a company, and certainly think that they are someone to watch in the future.


Cracked Passwords

July 16, 2008

More and more, lately, websites (or other entities; where I work, for example) have been dictating to me how they want my password to be formatted. Namely, I am being forced to be sure that I include at least one number. I’m really getting annoyed with this.

First off, it doesn’t actually make your account, information, etc. (hereafter referred to as account) that much more secure. Let’s take a look at the math: Assuming a six character minimum password, and using only letter, and ignoring case, that gives us 308,915,776 possible passwords. If you add in numbers, that gives you 2,176,782,336. Granted, that is seven times the amount of possible passwords, but if someone is willing to take the time to brute force their way through an alphabetical password, they are going to be willing to spend seven times that amount of time. Actually, they can rule out 308,915,776 of those possibilities, thanks to the policies being set in place.

Secondly, it is forcing me to create a password that is harder to remember than ones that I come up with. Sure, you can make initialisms, and be kind of creative. For instance, I could remember “4tggog” by the Iron Maiden song “For the Greater Good of God”, but I don’t want to have to think about my password. I want to be able to type my password as if I were typing my name. What if someone is watching me? I’m poking at each letter individually instead of just typing it out.

Also, I believe that this is meant to keep people from using a password that other people know, so that it is more secure. How many passwords are just a familiar password with the number ‘1′ at the end. If your password is “bridge”, and it doesn’t work, then I’m just going to try “bridge1″. It is upsetting how often this is the case.

Let’s take a look at ING. Their passwords are actually PIN numbers. They don’t have any ridiculous password rules. Just four digits. Just 10,000 possible passwords. That falls extremely short of the 2,176,782,336 passwords I would use at another website. They get around it by asking you two security questions that you are supposed to be the only that knows the answer to. I get around answering the questions by telling ING to remember me at that computer. So, all I have to remember is 4 digits, and I can get into the one website I really just don’t want anyone to have access to.

Instead of any of that, though. I would prefer if I was just forced to have something more like a passphrase. How about instead of forcing particular characters on me, instead forcing a required length on me. Even if it is ten characters, and assuming just letters, That increases my possible passwords to 1.41 x 10^14 (looks like I don’t feel like taking the time to figure out superscripts yet) possible passwords. The longer you make that passphrase, the more secure it will be. In fact, instead of requiring at least one number, the password would be more secure by adding one to the minimum password length.

The benefit to the passphrase is that you can make it extremely memorable to you, but extremely difficult to crack. “rememberthealamo”, for instance will be more secure than “rmbralm0″. Even if someone really loved the Alamo, I doubt “rememberthealamo” would be on the top of my list of passwords to guess.

I can’t wait until I don’t have to care about any of this, and we just use biometrics!