obive.net

Monday July 11 2005 @ 9:20 PM

I have a lot of pictures I want to post. Quite funny too! Other than that, camp is over, and I had a really good time. I didn't get into OSU, but will be going to Columbus State this coming semester to get my GPA up .04 points to the "100% sure to get in" level. We went canoeing this past weekend, that was really fun too! I'm still working, which is kind of boring, but money is always good. I haven't done anything much in the way of being productive which stinks. I haven't even been uselessly playing games. Any way, I am sure I will be totally motivated to post the pictures some time in the future. I know you are looking forward to it!!!

Thursday June 9 2005 @ 8:58 AM

When you mouse over ?Send to? (when ActiveSync for PocketPC hasn?t been fully installed) it will install it? ON MOUSE OVER

When you right drag a zip file, and click extract, then hit next or whatever until it starts to extract? It doesn?t disable the next button, and if you press it again, it asks if you want to replace the existing file (since its currently extracting).

Pretty good, no?

Sunday May 29 2005 @ 12:31 PM

Our hosting has been changed to a dedicated IP address so things are not working (EdHayes.us, obive.net, etc). I am working on fixing it.

UPDATE: Everything seems to be in order for the most part. Anonymous FTP works now too!

Saturday May 28 2005 @ 8:22 PM

In the Blockbuster FAQ, they list the following Q and A:
Q: Now that late fees are ending, can I keep movie and game rentals as long as I want?
A: Movie and game rentals are still due back by the due date shown on your receipt.

Friday May 27 2005 @ 1:04 PM

I have never seen this message before. Infact, I didn't even know there WERE envelopes for e-mails. Well, there you have it! This is how e-mail works. Unfortunatly Microsoft Word could not load the envelope it apparently needed so that it could make a new e-mail message to attatch the current document to.

Thursday May 26 2005 @ 9:31 PM

Well, school is over. I got an A in Java, and some really good grades in databases and ethics, those were the better classes because I learned so much (no?), the curriculum was really good (no?), and the professors were super fantastic (no?), although I am glad to be home. It was nice to be at school and to have a lot of free time. Now I work all day, commuting with shitty roads, and walking Scuzzy, helping make dinner, and sleep. There is no time to do much of anything which kind of stinks.

I have started on the first actual version of LanCaster. The previous test (back in November) turned out kind of funny. As it may be, if you spam the network massive numbers of broadcast packets (think broadcasting a 200 MB file), the router dies! How awesome is that? Well, whats even cooler is that on a Mac, the maximum size of a UDP packet seems to be half of the maximum of Windows. And even cooler than that? Well it also seems that there are no errors or anything when receiving a packet, only sending. So that worked out well… I learned some stuff, and have come up with a new design! The new design is that computer A will send the file to computer b, which sends to c, etc. So the end transfer time to all the computers is about the same time as to one computer. Plus this design wont interfere with any of the other computers on the network that are not involved with transfers.

I have been working on a Java GUI for the app too. It actually doesn’t transfer anything yet, but it does a lot. I am using JMDNS to take advantage of zeroconf, Rendezvous, Bonjour, or the new brand of the day. The new application is completely peer to peer. There is no tracker and there is no server. It’s pure p2p. It’s super fantastic; and all those other crazy p2p programs that are not actually p2p should take note: Buzzwords are only used by dumbos who don’t have a good enough product to sell by itself.

So about work at American Greetings. I am pretty sure that I am not allowed to talk about it, although I haven’t signed any crazy NDAs or anything. Although I think I can sum it up safely by saying: Windows, C++, HP, and not planning are all not good.

Camp planning is working out quite nicely. It doesn’t look like Matt is going to be able to come unless there is a lot more enrolment, which stinks. Camp starts June 15 and if you know any 8 to 17 year old people who would like to learn anything about computers, you should have them enroll in the amazing program at Camp Fitch Computer Camp. I know the web site is really bad, but were going to work on that for next year. If you don't know much about me, this is my 9th year (6th as a counseler).

Tuesday May 10 2005 @ 11:58 PM

"Smoking sections in restaurants make as much sense as peeing sections in pools."

Tuesday May 10 2005 @ 8:46 PM

Micro exam
Hi everyone, i was just looking at the site here, what exactly is the 
final on. Is it cumilative?  If or if not what should i study? thanks 
everyone, sorry to bug ya. i'm sure it will be an easy exam. so good 
luck everyone

Final Exam study session
Hello everyone this is Bill from class, the tall loud obnoxious guy 
that always complains. I was curious to know if anyone wanted to get 
together sometime tomorrow before are exam to do a quick review of the 
final or maybe this evening before PM I realize this is short notice so 
i apologize for that. Also i was thinking maybe this week we can get 
together and get drunk at a bar or something. So we can sit reflect on 
this class lol. But e-mail me back or call me at 440-532-0191 if i do 
not pick up that means i am at work or in the library so leave a 
message. Thanks again and hope to hear from someone soon
Sincerely Bill WIck 

Thursday April 14 2005 @ 3:54 PM

Here are some images I have been saving up to post together:

In this scan of an SBC ad we see them comparing the speed of to speeds of SBC DSL. For starters, streaming video NEVER displays fractional frames. So its not possible that this is an actual screen shot. Second, look at the position track for these QuickTime movies. They are both fully downloaded. So is SBC saying that their cheaper DSL service is corrupting video streams? Apparently.

This photo shows the balcony Kim and I had on our hotel room in Michigan. Notice that its about 2 DVD case heights deep. That’s like not even enough room for me to stand out there on with the door closed. I would have saved the money and not put in sliding doors and railing and such. DO!

This is an error I got while attempting to shutdown the other day. It's pretty helpful. How am I supposed to close a file? Close the handle to the file? That is something the program is supposed to do. And even if it were up to me, it would be nice to know which file windows is working with (I mean besides the 200 other files Windows is working with at that time).

Incompetent editor alert! How about one of the staff corrupts the image and misspells words and then the editor doesn't catch this huge ugly image on the front page? Sounds like exactly what happened.

And last, will some one please send me the Internet plug-in? My copy of Safari can't seem to find it.

Friday April 1 2005 @ 12:17 PM

What's exciting about April fools day is all the news stories on the internet that aren't true. Its quite annoying. "Please note the date of this post." What is that all about? Any way, I can't wait till tomorrow for all the stupid crap to end.

Friday January 4 2019 @ 5:02 PM

So here I am after break back at school. Some may already know that Kim and I went to Michigan over spring break (this past week). Kim was taking a class in some fluid dynamics class called Fluent (I think, at least the company who makes it is called Fluent, and I know how I make fun of people that say "Oh, you use Adobe???" Anyway... She had broken her arm the previous weekend while snowboarding at Holliday Valley. I played games, did Internet things, chatted, watched TV, and slept while she was doing her thing. I drove her to and from class in her new Honda Accord Coupe, which was nice.

The Internet situation in our hotel room is kind of interesting. There was one little spot in the room that had a decent enough signal that you wouldn't get disconnected constantly. That spot was in the far corner between the door and the bathroom, so that was inconvenient. I had brought along an access point just in case, and the Holiday inn lent us a wireless bridge. So I hooked up the bridge to my access point to basically act as a range extender. I then was able to connect to the new wireless network at full strength from anywhere in the room. Kim with her PC laptop, however, was unable to connect to the new network! I think Window's super wireless capabilities may have been at hand, or maybe because I was using a bridge and only once client could connect through it, but she couldn't get past some cryptic "authenticating user" status or something like that. So what I came up with was setting my Mac to share the Internet via the Sharing preference pane through wired Ethernet to her. So her Internet went through a wire, into my Mac, through NAT, over wireless to the access point, through the bridge, through wireless to the hotels access point, then to I think it was SBC, etc. Kind of crazy, huh? Here is a cool graphic:

Before I went to Michigan, I went to visit Ed in Dayton. I met his friend Sara for the first time. It is nice to have a face to match people's names in conversation. So now she has a face, personality, voice, etc.

I have worked a bit on my color picker? It's pretty slick now, although kind of slow because of VB issues?

I went to court for my ticket. I was really nervous before hand. I went in, pleaded innocent, they offered to not give me the points, then I pleaded no contest, paid my $100 plus $62 in court fees, and that's all done with.

I am sure you have seen those crazy W3C links on sites that you can click on to see the validation of a website. Basically bragging: ?look, I'm valid, here is the proof!? They are all over. And the funny thing is, most of the time I click on the link to validate it, I get an INVALID from W3C. Some one needs to make a spider to crawl the net to find all these links and get a ration of invalid to valid. And then maybe compare it to ones without links.

I had an interview at Hyland Software this past Friday. I was kind of nervous there too. I talked to a whole bunch of people etc and hopefully I'll get he job. They were all really nice to talk with and the place is really cool.

Tuesday March 8 2005 @ 9:21 PM

Best Buy

About a month ago I went to the Macedonia Best Buy to exchange my Olympus digital camera for a Sony digital camera under Best Buy's no lemon policy on their service plans. My time in the store was way too long because of unorganized employees and under specific policies. Any way, I left the store to go back to my apartment when on the way back I realized that I had left the batteries in the Olympus camera. I called the Best Buy immediately when I got back to the apartment and they said they would hold the batteries.

I went to go pick them up one week later. I was also purchasing a Linksys Wireless router. I went up to the counter to get the batteries, and after about 30 min of them looking around, calling people, and walking around with their thumbs up their asses, they finally admitted that they could not find them. The manager approved taking a 25-dollar discount off the router and then I bought 25-dollar batteries.

Another week later, I went to exchange the Linksys router for a D-Link router because the Linksys sucked (even with the latest version of Sleavsoft firmware) at the Montrose Best Buy. Every thing went extremely smoothly, except that after I left the store, I realized they did not give me the same 25-dollar discount. I went back into the store and asked why not. They said that they were not obligated to do so since they were not the store that authorized it in the first place. I called the Macedonia store from the Montrose store and they said that I could go there and they would refund my credit card 25 dollars.

A went back to the Macedonia store 3 days later to get the credit, and the manager refused to do it! I explained the situation, and he had no regard for my satisfaction. I was super pissed. The girl that was helping me before the manager became involved was by far the best Best Buy employee I have ever talked to. Thanks Billie! On the way back to the apartment that night, I got a speeding ticket!

When I got back to the apartment, I called Best Buy corporate and managed to get a 25-dollar gift card. At least the Best Buy situation was fixed.

Ticket

On the speeding ticket side, I scoped out where I got it (76 in a 55) and there is no way that the speed limit was 55 where I got it. I was pulled over about a mile after the 65 MPH sign, and there is no way I was drove a mile from where I was clocked. Hopefully I can at least get the points off my record, and at best, get the case dismissed because ether the cop doesn't show up or because the allegations (76 in a 55) are wrong.

Weekend

I had a nice weekend with Aunt Beth, my parents, and Scuzzy. We went to a neat little tea house on the east side (I think it was on the east side). We also went to Phnom Pen (Cambodian and Vietnamese) and to Sakura (Japanese) for dinner.

Wednesday March 2 2005 @ 7:32 PM

I received this e-mail:
can anyone tell me wut we are suppose to study for the exam is it over 
everything is wut iam asking
My reply:
Maybe you should learn to:

1. Not send mass emails.
2. Go to class.
3. Read the syllabus.
4. Write the professor an e-mail.
5. Go to the professor's office hours.
6. Write coherent English.

If you haven't learned at least one of these before college, you shouldn't be here.
His/her reply:
bitch is that good english fuck for u alll u had to do answer
the question i didnt need a fuckin smart ass tellin me wut i should do
My reply:
k.
I also received this email and sent a similar response:
WHAT I THE EXAM COVERING FOR EXAM 1??
Keep in mind none of these mentioned a class and I have no way of determining such a thing from the email.

Monday February 21 2005 @ 2:31 AM

I have been working on reading the iTunes library files and such using XML and decided to write an Apple PList editor for Windows. I have a completely working copy that works read-only for now. Here is a screen shot of my latest creation:

I got some advice from Keith Lea and have fixed up the code to get the Music folder’s path. It is a lot uglier, but I am sure much more fault tolerant. It was written using XPath.

Sunday February 20 2005 @ 12:06 AM

I have been applying to get an internship at a company in the Cleveland area, and one of them asked me for a poem in the automated application! It was really kind of funny. It was like "First name: Last name: Address:" then "Poem:". Any way, here is what I came up with:

People hate software, Frustrations abound,
I am summoned to help fix problems all around town.
PCs are tools used to be more efficient,
They turn out to be pains in the side, an irritant.
I want to make a difference and make software better
So that people like me can just type a letter.

Thursday February 17 2005 @ 4:15 PM

Who on EARTH would create a class library with a Collections superclass and not have ArrayList or Hashtable extend it? Microsoft, that?s who!

Tuesday February 15 2005 @ 9:57 PM

Friday February 11 2005 @ 12:56 AM

I have just spent the past few hours attempting to deserialize an iTunes Library XML file into .NET. I have been unsuccessful. I can?t see how people accept XML, it?s so miserable! UGH! All this DTD, XSD, XMLSerializer, .NET, XMLSpy, its making me sick. If I cant get this working, I?m going to have to do all this crap manually, and how much is that going to suck? I use .NET?s XmlTextReader which seems to be based on DOM for retreving the music folder?s location:

	Dim xmlFilePath As String = Environment.GetFolderPath(Environment.SpecialFolder.Personal) _
		 + "\My Music\iTunes\iTunes Music Library.xml"
	With New Xml.XmlTextReader(New StreamReader(xmlFilePath))
		Do .Read() Loop Until .Value = "Music Folder"
		Do .Read() Loop Until .Name = "string"
		.Read()
		Return .Value
	End With

That just LOOKS fragile. At least it?s not ugly. I can?t see using this method to parse the entire file. Now whats cool about all this XML stuff is that when the parser starts parsing the file it reads:

	

Of coarse the parser needs to go out to apple.com and download this great file. So this now requires an internet connection just to parse the file. And this isn?t even the XmlValidatingReader! You know I was surprised when, while it was parsing the file, it throws a System.Net.WebException at me. So if a user isn?t connected to the internet, they?re greeted with this:

	Error reading library XML file. Possible cause: 
	Can't contact apple.com to get XML definition.
	Check your internet connection.

I?m starting to think I?m doing this all wrong. For a ?simple standard? designed for interoperability, XML sure is a harsh mistress.

Our internet host is starting to irk me... They still haven?t fixed the problem where the server cant resolve anaka.obive.net =)

Tuesday February 1 2005 @ 2:22 AM

The point of the computers being so fast article wasn’t to make fun of Windows sucking. Think about this: That computer that crashed could have re-launched the application that crashed. It would have been constantly saving its state to the hard disk and the resumed. It could have checked whatever it was that made it crash before it crashed so that it didn’t crash.

When you use an application that needs to know where file on your disk is, what does it do? It asks you. How efficient is this? We have the technology to search the contents of every single file on your computer instantly for anything. Why the hell is it asking you where some obscure file is? When you open some web editor and it wants to know what browsers to use for previewing, why not just search your hard disk for them? It couldn’t take more than a second. But instead, it asks you, and you have to spend 5 minutes locating them, make sure all the parameters are correct, clicking all these buttons, etc.

Obviously the answer to all these questions is: Because programmers are stupid or lazy. It could also be the operating system designers fault for not making these services available to the programmer. Can you search your disk like this in Windows? Of coarse not. Why not you ask? Well, the answer isn’t because its not possible. This technology was in BeOS YEARS ago, like 7 years ago. It’s been in Linux and MacOS for years too. Microsoft was planning on making this available in a horrible abomination in the form of a layer over the top of NTFS called WinFS in Longhorn. Well, this was delayed until Longhorn Server. Well, guess what! It was delayed again!

Blame who you want. Computers suck because people suck. People suck because other people suck. Other people suck because …. Shit. I already said why other people suck. Well, in that case… Try not to suck. If you don’t suck, then maybe other people won’t suck and maybe it will eventually lead to the government not sucking with this “no child left behind” crap… Or as my Java professor put it: ‘no child left without his or her fair share of tests, we don’t want a kid not getting enough tests!’ Maybe it will lead to every one not being assholes. Who knows, it could just be wishful thinking. So folks, that’s why computers suck. It’s not the hardware, it’s the software. Hopefully I will be able to make things better.

Tuesday December 31 2019 @ 2:40 PM

Rich web apps, GMail, and Suggest get bashed like none other, for good reason.

By: Charlie Hayes

People frequently ask me “OMG! Have you seen Google suggest?” or “do you use GMail? IT’S AWSOME!”

My immediate reply is “no, it sucks.” To which the reply-reply is always something along the lines of “WHAT ARE YOU TALKING ABOUT?” Obviously Google services bring out the caps lock screamer in all of us. The Google screamer phenomenon is not what I’m writing about, however, but it would make a nice study for those people interested in psychology (and have the time to care about it). What I am going to write about is how “rich” web applications are worse than non web applications using GMail and Google Suggest as examples and ThunderBird, Outlook, and Mail.app as counter examples. Wherever ThunderBird is mentioned (including the previous sentence), I think it’s safe to assume that the mail client part of the Mozilla package can do the same thing.

I believe that web mail clients should only be used when you absolutely must access your email from somewhere else and HTTP is the only method of communication. The point of this article is not, however, to bash all web mail clients. The point is to explain why rich web applications are bad by using the two most high-profile web applications as of this writing.

I will frequently mention Keith Lea; you can visit his website or read his GoogleBash. I read over his to make sure I got all the things that he got too, just to be thorough. In fact, he was my inspiration for this bash. Look what you made me do Keith!

Here is a list of reasons common users claim they love GMail:

  1. The ability to star messages
  2. Built in spell checker
  3. Web based so you can send and get mail from anywhere on the internet
  4. It’s clean and simple interface
  5. The ability to search through all their email using Google’s “great” search technology
  6. (This is where I look at Keith’s post so see if I’m missing anything)
  7. The ability to use conversation style reading
  8. You don’t have to delete message because there is so much disk space
  9. You can apply filters that automatically do things to your email such as color them
  10. Built in spam filtering

List of things Google just can’t do:

  1. Drag and drop attachments and easy attachment viewing
  2. Integrate with the system address book and other system services
  3. Look and feel like native applications
  4. No ads

Actual good reason to use GMail:

  1. Your mail is safe from disk failure

The real reason people use GMail:

  1. It’s “cool”

Now let's go over these one at a time comparing to native apps, and then other web mail clients just for shits and giggles. We will score a loss for Google if it can be done with current and/or older native clients.

Claimed Reasons:


Number one, you can star messages. This has basically been in every email program ever, but they are called flags instead of stars. Take a look at newer versions of Outlook. They even have many different colored flags. So as far as I can tell, the only difference is that they are stars instead of flags, and we all know that stars are more exciting than flags. You don’t go around Mario 64 collecting Flags, you go around collecting stars. Flags don’t make you invincible (they actually attract people to kill you since they don’t want you to capture the flag), but stars do make you invincible. So maybe I should make an extension for ThunderBird and Outlook that change all the flags to stars. I can call it the “Super Exciting Start Extension” (See Mr. Fields, I DO know what alliteration is, and I still hope you die and go to hell). Many other web mail clients can do this as well. Because Outlook, ThunderBird, and Mail.app can all do this, GMail loses.

Number two, GMail has a built in spell checker. Wow, cool! An inline, online spellchecker, in a browser window, that is amazing. Comparison time! Thunderbird has a spell checker. Outlook and Mail.app both inline, real-time spell checkers. Beat that GMail! Because all other desktop clients I am using for comparison all have this, that’s is another loss = (

Three: Web based greatness. GMail is better than Yahoo, Hotmail, etc. But it’s not that much better. It’s a little more responsive, and a little cleaner, but it’s no more useful than the others. But one can always use Remote Desktop or VNC to access one’s email from anywhere on the internet. Well, not anywhere, but most places. GMail works on a few specific browsers. VNC has a build in Java based web client so that requires a browser with Java. All browsers that GMail works with have Java, and pretty much every other browser that GMail does not support supports Java, so I would say VNC is more compatible, but it would require a LOT more bandwidth. There are many web-based POP-based web mail clients too. Chances are your ISP or mail server already has one of these running. You could just use one of those while you’re away. Another part of being web based is that it’s only on the web. What if tomorrow the whole internet goes down or just Google? Well, your shit out of luck. Your email is gone forever. Sucks. Even if the internet doesn’t go down, you still can’t access your email away from an internet connection. You can read your email on a desktop client at any time, internet connection not required. This is close; maybe even a tie, at least before the internet goes down. Since ThunderBird, Outlook, and Mail.app are all unaffected by an outage, GMail loses.

Four: Clean and simple interface. Google may beat over other web mail clients here, but that’s about it. Desktop apps definitely prevail here. ThunderBird, Outlook, and Mail.app all have essentially the same clean and simple interface. Once you learn one, you learn them all. All these native apps also use the standard Look and Feel of the platform they are running on. GMail does not. Google loses.

The fifth reason people use to claim GMail’s superiority is its search feature. This is definitely not unique. It may be a little better than other web mail clients, but nowhere near as powerful as full desktop clients. Poorly written clients would be slower than GMail, but you get a lot more power. Well written clients like Mail.app have speed and power. Thunderbird and Mail.app even have live search results, beat that GMail! Google loses again because Thunderbird, Mail.app, and Outlook all support an even better type of searching. Bummer.

Six err... Seven: The ability to use conversation style message view. Maybe the name is what draws people to it. Conversation… Yeah that seems better than thread view, but guess what, IT’S THE SAME THING! Every client does this. In fact, Outlook and some other apps can do this even better; they have a hierarchical view. Forwarded and such emails that frequently have > all over them are quite numerous. Mail.app and Outlook do a pretty good job of fixing these up and making them look all nice and pretty so that they don’t look like shit. GMail doesn’t. Google loses big time here Because not only do ThunderBird, Outlook, and Mail.app do this, they do it better. Plus they fix up all the crap you get when you receive a forwarded email or reply..

Eight: You don’t have to delete, there’s just so much space! If this were just a web mail comparison, GMail would win here, however, its not. My desktop PC has over a hundred Gigabytes free. That’s 100 GMail accounts. Do you have 100 invites for me? I seriously doubt that anyone has less than a Gig free. Even if they did, you  can go out and buy a new hard disk whenever you want, but you can’t call up Google and ask for more space. Hell, if you had a native client, you could even backup your email to a DVD, that’s 4.7 Gig and 4.7 times what you can use for GMail. Since Outlook, ThunderBird, and Mail.app are all based on the local file system, they have way more storage than GMail could ever dream of. GMail loses.

Nine: Filters! Yup, GMail has filters. So does every client ever. Clients like Outlook, ThunderBird, and Mail.app actually have some pretty sophisticated ones too, fantastically better in every way over GMail’s. Awe, another loss.

Ten: Built in spam filtering. Unfortunately, I can’t vow for the greatness of GMail’s spam filtering. However, you don’t have much control over how GMail filters spam. But pretty much all clients have spam filtering built in. I’ll assume that Google’s is pretty good and declare this a tie.

Google Mail lost eight of the arguments and tied in one; mark up zero wins for GMail, and we have a pretty one sided game here.

Now here are the things that GMail (or any other rich web app for that matter) just can’t do at all.


First, you can’t drag and drop files to attach them. You’re bound to the single file browse button and accompanying text box. Unless you resort to a Java applet or a mighty secure ActiveX control, drag-and-drop attachments is completely imposable in a rich web app. The HTML spec only has that one upload method. Sorry. Thunderbird, Outlook, and Mail.app all have drag-and-drop attachments.

Second, you have to use the shitty web based address book. It doesn’t have many fields ether. It’s like Name, email, comments. Where’s address, phone number, picture? There are none. The MacOS X address book is amazing, plus it integrates right into Mail.app. You can not right click a file and say “send as attachment” for Google. You can not “Send To GMail” from Word or Excel. You can not send new mail from your system address book. Sorry on all accounts. Outlook, Mail.app, and ThunderBird allow all of these.

Third, GMail doesn’t look like native apps in Windows, Linux, Mac, or anything I can think of. I suppose somewhere you may be able to find a poor imitation skin/theme/look-and-feel to make everything look like GMail. But that’s far from native, therefore, it’s inconsistent and hard to use. Unless you enjoy learning new user interfaces, you’re not going to like the learning curve GMail has attached. (Get it? It’s an email joke!) Outlook, ThunderBird, and Mail.app all look and feel like the rest of the platform.

Fourth, and finally, you’re forced to see ads with GMail. No other client, except maybe Juno (man, how old am I?) and other web based clients have this “feature”. ThunderBird, Outlook, and Mail.app don’t have any ads.

That brings the score to zero and Twelve. Lousy.

The valid reason (notice it's like 2 sentences)


Ok, here is the only valid reason why you can like GMail. Ready? It stores your email on a global and redundant network, and you never have to worry about it. That IS pretty nice. Permission to use any other excuse to like GMail denied. I can’t thing of a native client that offers this.

But it’s so cool!


Now why do people really use GMail? Because it’s cool of course! I guess this can only be attributed to its exclusiveness. You need to be invited! HOW COOL! Well, the only reason I have an account is because Keith got one, and then he invited me. He doesn’t even use it! In fact he bashes it like I do. I think he got it because he knows some one at Google, however I could be wrong. Ether way, not every one can use it, and most people that want to use it at least know some one who has an account by now and they just get an invite from them. So the exclusiveness is definitely not what it used to be. Keep in mind folks, the reason people smoke and do drugs is because it’s “cool”.

I was thinking of making a huge table comparing GMail with other desktop clients and web mail clients, but I decided that I would probably get a ton of flame mails. “But Eudora DOES have feature XYZ!” You know what? I don’t give a shit about Eudora; however, what I do give a shit about is GMail bashing, which I think I’m doing a pretty good job of. Also, it would take a lot of time to get all the data, and I don’t want to download a million apps to test against GMail.

Suggest


So that’s GMail. Let’s talk about Google Suggest for a moment. The first time I tried Suggest, it didn’t work as I expected it to. I even tried to make it suggest things that I thought it should, but it didn’t, all I got was junk that I could care less about. In fact, the other day I tried it again. I typed in “this is a test” and left the cursor there at the end of test right after the ‘t’. What was the first item in the list? Well, it was “this is a london” (What IS a london anyway?) and it was highlighted. A few lines down I got “this is a test” and it was NOT highlighted. That’s just dumb. Plus, by the time I find something worth looking at in the seemingly-live-but-not-really list of pre-queried results stored in a table in memory on Google’s servers, I could have typed in an entire query, pressed enter, seen some results, then hit back and changed my query or just edited it on the results page. The only good thing that could come out of something like this is an actual live query results. Every new character you type in would be like pressing enter. This would obviously reduce the efficiency of the Google network dramatically, so that’s unlikely to happen.

I think Keith did quite a nice job bashing Suggest, short and sweet:

People like Google Suggest because it has that dropdown menu of popular searches. That’s all it does, so it must be why people like it. People say “I was blown away with it” “Google did amazing JavaScript again” “another search engine innovation” “just when you think search couldn’t have gotten any better”

Web browsers have had dropdown menus of recent / frequently used URL’s, for years. IE’s is even resizable. Would it be amazing if Firefox or IE requested the top 50 URL’s from some website, to fill that dropdown menu with URL’s as you typed? I don’t think so. We all know that applications can connect to the internet and get information, and show it to you. This doesn’t amaze us, or at least, it doesn’t amaze me.

So here we are on page four (heh, now its half way down five!), at least in this fantastic Word document, and the score is like 1 and at least 14. So let’s just declare the winner. And the winner is …. (Drum roll)… Not Google!

Rich web apps in general


Now that we have compared the rich web app version of applications to their native counterparts, Lets take a look at rich web apps in general. Why do most if not all rich web apps suck you don’t ask? Well let’s find out! How about a journey into the land of JavaScript and proprietary goodness? RIGHT ON!

GMail, Suggest, and other rich web apps make fantastic proofs-of-concept. It’s simply amazing what the folks at Google managed to get JavaScript to do. Although, any nerd can attest: JavaScript sucks nuts. You have all seen the SNL skit about some nerd and he’s like “JavaScript sucks.” He was actually right that one time! The skit sucked otherwise, but he did let the whole world know, including the non nerdy type, that JavaScript sucked.

Every browser does JavaScript differently. There are a million scripts on the internet to detect the user’s browser just to work around this stuff. It’s not just to ban IE users from your nerd-only site; it’s to make sure your JavaScripts work. Google no doubt had to individually program GMail and Suggest for every supported browser. When a new browser comes out, it probably won’t work. What about old browsers that support JavaScript? They probably won’t work ether. It may be because they don’t support DOM or maybe because they don’t have the right User Agent string, or maybe some other obscure thing, but whatever it is, that’s not the point. Point is: unless a browser was specifically designed to work exactly like Mozilla or IE (God forbid they were to work like IE) or Google wrote scripts to detect and change to the appropriate JavaScript, it won’t work. We all know this type of profiling is the dumbest idea ever; why are all these people accepting it?

I suppose you could do a lot with JavaScript to get it to do amazing native-like things. Heck, you may even get close to what MacOS X Does with Quartz or Windows with GDI+ or Avalon. You may get somewhat intimate with Windows using scripting host. You may be able to get hardware acceleration using some fantastic new integration technology (read: security hole). You most likely won’t be able to integrate into the OS like you can with a native app by using a language that supports that platform’s API calls. Hell, you may be able to get your app off the web and onto the user’s desktop for offline execution. If you some how manage to get your JavaScript powered app to this super saturated platform sniffing and adapting state, no doubt You’ll have some seriously crazy spaghetti code. Your app will be impossible to maintain, and all hell will break loose when you need to support a new browser or platform. But you’ll have your pretty website running inside a browser, won’t you? You’ll always be fighting an uphill battle with JavaScript. Is this the way you would want to spend your time writing code? Here, I’ll answer for you. No, it’s not.

You could, however, use Java. This is exactly what the Java platform was designed for, embedded rich client apps on any host platform. You’ll never be able to achieve perfect nativeness unless you write your app using the native API of the target platform, but you can get much closer to native with Java then with JavaScript, a crappy web browser, and some a ton of extra work. You’ll also have the added benefit of using the best programming language ever designed! (Okay, well maybe not, I guess that’s pretty subjective, but ill be the first person to say that Java beats JavaScript any day, and you wouldn’t want to go messing around with a ShitFest ® like C++, would you?)

Let me provide an alternative to GMail. Google could have used Java and done absolutely everything they have done with GMail. They would have more power to make things look pretty and act better. They could have made a Google Look-And-Feel and allowed the user to select it or the native L&F. They would not have had to write multiple code paths. It would have taken a fraction of the time. It would have been faster, more stable, and easier to debug.

Conclusion


The web is for hyperlinked documents, collections of information, and maybe some cool videos and pictures. The web, however, is not meant for HackCrappy code. I sure hope this is just a little hiccup of the DHTML craze from the late nineties. No one uses this crap any more except 13 year-olds who want to impress people, and apparently Google. Again, Keith put it nicely:

Maybe the Web needs to change, maybe developers need to change, but to me, widespread amazement over a dropdown menu shows that something is wrong.

If things like this start popping up all over, we're headed for a DHTML Disaster. Every application will have an entirely different method of interaction. All for the sake of cool. This will lead to developers fealing obligated to use JavaScript to make their applications more dynamic. Would you ever design a web page without using CSS? No, you wouldn’t. If this JavaScript thing catches on, developers are going to have nightmares and long for the good old days where no one touched this sort of thing because it was such a mess.

Don’t get me wrong, Google’s search engine is pretty good (although I wouldn’t say it’s by far the best). I like that Google is showing what the web can do, it’s cool. They are thinking outside the-- They have original ideas. We need more people with original ideas. But since most people don’t have original ideas, they are going to do what Google’s doing since Google is “cool”. This is where Google has failed me.

Google became cool, and not just to the nerdy folk, but to the “users”. Since that’s the driving force for most websites, JavaScript may take over like Flash, animated gifs, pop-up ads, or Google Bombing has. Every thing that has been, is, or ever will be cool always falls to the same problem. They are discovered and twisted by the assholes that make up the world into what help make the internet the revenue-generating, ad infested, and spam-piled-high hellhole it is today.

I hope I’ve made a disbeliever out of you. I’m sure I have left things out that I’ll probably remember about 3 seconds after I post this, and I don’t know if I’ll care enough to add them at that later date, but we will see. Enjoy impressing your friends with your new-found knowledge of how much rich web apps suck.

Thanks again to Keith, his help and suggestions improved this little (big?) thing greatly.

UPDATE: Well, I did leave some things out. And it appears that people didn’t like the way I presented things. I have reworded things, clarified things, and have explained the goal of this article.