Comment On Hyperlink 2.0

For those of you who haven't upgraded to Web 2.0 yet, today's submission from Daniel is a perfect example of what you're missing out on. Since the beginning of the Web (the "1.0 days"), website owners have always wanted to know who was visiting their website, how often, and when. Back then, this was accomplished by recording each website "hit" in a log file and running a report on the log later. [expand full text]
« PrevPage 1 | Page 2 | Page 3Next »

Re: Hyperlink 2.0

2006-05-01 15:06 • by Morbii
lol!

Re: Hyperlink 2.0

2006-05-01 15:08 • by Bob the Web Builder
So unbelievably brillant!  Why didn't I think of that?

Re: Hyperlink 2.0

2006-05-01 15:08 • by Helmut
Very clever!     

Re: Hyperlink 2.0

2006-05-01 15:10 • by Nathan
The real WTF(c) is that there is no XML in their AJAX.

Otherwise, this is way cool, I think I will start doing it this way!

Re: Hyperlink 2.0

2006-05-01 15:11 • by Frequency
70671 in reply to 70667
    That's not Web 2.0, that's Web Enterprise

Re: Hyperlink 2.0

2006-05-01 15:11 • by Volmarias
70672 in reply to 70670
XML? The real WTF is that there's a fused circuit in my brain somewhere; halfway through reading that I should have blown something and just shut down to prevent the damage I now have :(

Re: Hyperlink 2.0

2006-05-01 15:12 • by JS
That's really stupid. They could have just made a small server-side script called redirect.php or whatever, with the redirect URL as a query parameter. The script would just log the hit and then 302 to the URL. But I guess that's lame because it doesn't use extraneous javascript and XmlRequests, break tabs, or affect accessibility!

Re: Hyperlink 2.0

2006-05-01 15:13 • by mcguire
Cool!  Then you only have to check the database logs to do the tracking!

Re: Hyperlink 2.0

2006-05-01 15:14 • by mcguire
70675 in reply to 70673
Anonymous:
They could have just made a small server-side script called redirect.php or whatever, with the redirect URL as a query parameter. The script would just log the hit and then 302 to the URL.


If you did that, the user wouldn't hardly have any time at all to appreciate the animation and user interface genius-osity.

Re: Hyperlink 2.0

2006-05-01 15:24 • by ian
70676 in reply to 70675
Plus, that would allow all those pesky non-javascript users to follow links!  We need to put a stop to those obnoxious malcontents.

Re: Hyperlink 2.0

2006-05-01 15:25 • by kipthegreat
70677 in reply to 70675
Anonymous:
Anonymous:
They could have just made a small server-side script called redirect.php or whatever, with the redirect URL as a query parameter. The script would just log the hit and then 302 to the URL.


If you did that, the user wouldn't hardly have any time at all to appreciate the animation and user interface genius-osity.


Plus, it would work with Javascript disabled, which is so Web 0.9.

Re: Hyperlink 2.0

2006-05-01 15:26 • by jart
Does "please wait" have a rotating object like a globe next to it?

Re: Hyperlink 2.0

2006-05-01 15:26 • by R. Tyler Ballance
The submitter who thinks this is such a WTF has never seen ASP.NET generated code. BLECH!



 javascript__doPostBack('ctl00$ContentPlaceHolder1$UsersGridView$ctl02$LinkButton1','')

Re: Hyperlink 2.0

2006-05-01 15:28 • by kipthegreat
With so many points of failure, users are testing the funtionality of your entire site every time they click a link.  It's brillant.

Re: Hyperlink 2.0

2006-05-01 15:32 • by IRRePRESSible
Its almost insane but there is a thin line between sanity and genius.

Re: Hyperlink 2.0

2006-05-01 15:34 • by Willie
Wow, they implemented the browser inside the browser! Its like writing a compiler in the language your compiling, except not.

Re: Hyperlink 2.0

2006-05-01 15:41 • by ParkinT
Now that is Web-(ec)centric !!

Re: Hyperlink 2.0

2006-05-01 15:41 • by AnonyMouse

Sounds like a conversation like the following took place


 


Boss:  I keep reading about this web 2.0. I want to keep on the cutting edge of thnigs. Lets get our website upgraded by Thursday ok?


Developer: Well, I'm not to sure that it's nessesary to change everything, besides its going to take months to redesign the entire website.


Boss: Months!!!11!!1 To do an upgrade? I upgraded my version of AOL in less than an hour. That's not going to be acceptable. I'll give you untill Friday.


 


and thus this WTF was born.

Re: Hyperlink 2.0

2006-05-01 15:46 • by TomCo

thinking: RASH DESCISION!!!! USE SHINY NEW WEB 2.0 GIDGETS!!!! HURRY, BEFORE VERSION 2.1 COMES OUT!!!



  • putting down newspaper.

  • leaving bathroom stall.

  • going back to office.

  • retrieving shotgun from wall opposite the "moose" head.

  • walking down to pet store.

  • blow away first cute (insert your favorite animal here, I choose puppy) I see.

Darn, now I feel bad.  I forgot to wipe before leaving the stall! [6]

[I] thinking again: I don't think I like the stink of this "Web 2.0" thingie.  I think I'll wait for World-War III, uhhh, I mean "Web 3.0" before making any further "rash" decisions.


-- sorry for the "extremism".  I've been feeling a bit "agile" lately.


 

Re: Hyperlink 2.0

2006-05-01 15:48 • by Colin
Umm, if their website is 2.0 (thus the need for such fancy hit logging)
then why do they set window.location?  The only time I do a
window.location is to refresh the entire page, but that's rare. 
This method, by way of the explanation, would refresh the entire page
on each click which would basically negate the purpose of having a web
2.0 site which would mean you can go back to ye olde ways of log
analyzing.



Which means the only web 2.0 stuff here is the fancy logging, so the
logger exists because of itself.  There's some messed up paradox
in here somewhere...

Re: Hyperlink 2.0

2006-05-01 15:50 • by RageingNonsense
It's a shame when people take a great tool and use it to the point of....of....something really dumb.

It's like trying to build a house with nothing but a sledgehammer. Great tool. Fun tool. But it's not going to get anything done properly.

I use ajax technology for a number of things, but only when the situation merits it's use, and causes little to no browser breaking. So far, I've found the best use of it as a replacement for jump menus. By far, that made my life alot easier when creating jump menus. I've also used it to update tiny bits of dynamic content on a page. But never, EVER, have I used it in such an assinine way as these guys have.

I agree with the above statement that a simple redirect.php would have done a much better job in a fraction of the time. Why they decided to go this route leads me to belive that they stumbled on a tutorial and were just creaming in their pants waiting for an excuse to try it out, and unfortunatly, picked the worst possible use.

Re: Hyperlink 2.0

2006-05-01 15:54 • by makomk
Alex Papadimoulis:


  • retrieves the URL from the Hyperlinks table, then ...
  • returns it to the client script, which then ...
  • sets the window.location property to the URL retrieved, which causes ...
  • the user to be redirected to the appropriate page


The question is - would it be better or worse if the server instead fed the page contents back in the response to the XMLHttpRequest, and the client-side JavaScript then replaced the contents of the page with the contents of the new page? I reckon that'd probably be a lot more WTF-worthy, to be honest...

Re: Hyperlink 2.0

2006-05-01 15:56 • by RyanD
Could we get a link to this site? I have to see this magic in action!

Re: Hyperlink 2.0

2006-05-01 15:57 • by Pyromancer
70693 in reply to 70691

I'd love to see what whould happen if their database gets messed up

Re: Hyperlink 2.0

2006-05-01 16:00 • by onovotny

You know, there may actually be a reason why they implemented links via a redirect.  I'm not saying that they way they did it was ideal -- Javascript return trip to client only to do a redirect?


Microsoft uses numeric links all the time -- ever see those go.microsoft.com/?linkid= stuff?  That way, if the URL changes, they can easily update the database and reduce 404 errors.  At least there though, it's a "regular" redirect instead of javascript stuff. 


--Oren

Re: Hyperlink 2.0

2006-05-01 16:04 • by Fred Foobar
Alex Papadimoulis:

When the user clicks on the hyperlink, the followLink() Javascript function is executed and the following occur:


  • a translucent layer (DIV) is placed over the entire page, causing it to appear "grayed out", and ...
  • a "please wait" layer is placed on top of that, with an animated pendulum swinging back and forth, then ...
  • the XmlHttpRequest object is used to call the "GetHyperlink" web service which, in turn ...
  • opens a connection to the database server to ...
  • log the request in the RequestedHyperlinks table and ...
  • retrieves the URL from the Hyperlinks table, then ...
  • returns it to the client script, which then ...
  • sets the window.location property to the URL retrieved, which causes ...
  • the user to be redirected to the appropriate page

Now that's two-point-ohey.



My head a splode.
Was the designer named Rube Goldberg?

Re: Hyperlink 2.0

2006-05-01 16:06 • by mkb
70696 in reply to 70692
RyanD:
Could we get a link to this site? I have to see this magic in action!


I hate to say it but: www.netflix.com

(Try adding a movie to your queue) 

Re: Hyperlink 2.0

2006-05-01 16:12 • by Scott Stroz
70697 in reply to 70671
Anonymous:
    That's not Web 2.0, that's Web Enterprise


Its Web Enterprise 2.0!

Re: Hyperlink 2.0

2006-05-01 16:15 • by lol
70699 in reply to 70691
That is a brilliant idea, friend.

Re: Hyperlink 2.0

2006-05-01 16:16 • by sammybaby
70701 in reply to 70696

mkb:
RyanD:
Could we get a link to this site? I have to see this magic in action!


I hate to say it but: www.netflix.com

(Try adding a movie to your queue) 


That's somewhat different, I'd say.


With the Netflix example, you're essentially putting in an order, which is going to necessitate a trip to the database. In the WTF, every last clicky of linky will require a db lookup, even for pages with no dynamic content on them whatsoever.


Netflix's div is merely annoying, not WTFy.

Re: Hyperlink 2.0

2006-05-01 16:21 • by Monday
Ok so the list of things wrong is:

(a. Javascript alert on secure browsers
(b. Bad for search engine ranking
(c. No destination URL for 508c
(d. Popup
(e. No caching for you!
(f. Animated GIF....why not just use a blink tag? It's just as effective and saves bandwidth.
(g. ...
(h. Ah to hell with it, I'll run out of letters. Well done though, this has job security written all over it.

Re: Hyperlink 2.0

2006-05-01 16:26 • by Fletch
I love it when people say something like "Man, that's really stupid. They should have ..." and then describe a less moronic way of doing it. We all know it's stupid! That's why it's here in the first place!

Re: Hyperlink 2.0

2006-05-01 16:28 • by WeatherGod
70705 in reply to 70703
Fletch:
I love it when people say something like "Man,
that's really stupid. They should have ..." and then describe a less
moronic way of doing it. We all know it's stupid! That's why it's here in the first place!




true, but what else can we do all day with our time?



Re: Hyperlink 2.0

2006-05-01 16:30 • by tdog

Hey ditto heads,


No WTF.  Don't see a problem. Yeah, there could be some minor issues here or there, but I doubt there would be much if at all.  Solution seems elegant and data driven enough to scale quite well.  I wonder how many of you actually write web applications.  As you  know, based on requirements, HTML applications can get rather trickey to implement in such a way that doesn't make them look like web applications.  Try again Papadimoulis. 


tdog

Re: Hyperlink 2.0

2006-05-01 16:40 • by Mr Beeper
The pendulum is a great touch.  But the real WTF is (tm) that they didn't use the jepoardy theme song for their "wait music".  And the pendulum should've been a video, not a graphic.

Re: Hyperlink 2.0

2006-05-01 16:40 • by VGR
What's truly sad is that this is exactly what I think of when I hear
"Web 2.0":  Clueless dimwits attempting to reinvent entire desktop
and widget libraries in Javascript, the Language of Champions.



This isn't the first time I've seen some moron attempt to accomplish
the functionality of a modal dialog using Javascript.  A rather
popular timekeeping system is from a company called Deltek, and ...
well, it has to be seen to be believed.  Among its many offenses
to the UI universe:  It presents fake "dialogs" (HTML-rendered
title bar, close button, etc.).  And yes, you can drag them around
within the browser.  Somewhere, someone is really proud of that.

Re: Hyperlink 2.0

2006-05-01 16:43 • by doctor.jekyll
70713 in reply to 70696
I hate to say it but: www.netflix.com

I really wanted to check this out but it says my cookies are not enabled. I think it's just that the site does not work with Opera.

Re: Hyperlink 2.0

2006-05-01 16:53 • by makomk
70714 in reply to 70712
VGR:
What's truly sad is that this is exactly what I think of when I hear
"Web 2.0":  Clueless dimwits attempting to reinvent entire desktop
and widget libraries in Javascript, the Language of Champions.



This isn't the first time I've seen some moron attempt to accomplish
the functionality of a modal dialog using Javascript.  A rather
popular timekeeping system is from a company called Deltek, and ...
well, it has to be seen to be believed.  Among its many offenses
to the UI universe:  It presents fake "dialogs" (HTML-rendered
title bar, close button, etc.).  And yes, you can drag them around
within the browser.  Somewhere, someone is really proud of that.


Guess what the CommunityServer 2.0 software this site is planning to upgrade to uses for its "quick reply" function? Yes, a pseudo-dialog in the middle of the page. (It even dims and disables the rest of the page behind it whilst it's at it). To be honest, I prefer quick reply boxes that are inline with the page (LiveJournal's implementation is quite nice in particular).

Re: Hyperlink 2.0

2006-05-01 16:53 • by sammybaby
70715 in reply to 70707
Anonymous:

Hey ditto heads,


No WTF.  Don't see a problem. Yeah, there could be some minor issues here or there, but I doubt there would be much if at all.  Solution seems elegant and data driven enough to scale quite well.  I wonder how many of you actually write web applications.  As you  know, based on requirements, HTML applications can get rather trickey to implement in such a way that doesn't make them look like web applications.  Try again Papadimoulis. 



Really.


You think that an "elegant" solution to tracking user access is to abstract out all your links out of the text and require what's probably a pair of database hits every time someone clicks one? (Okay - perhaps they used a stored procedure. That's still one extra db operation for every page hit.)


Just out of curiosity, what do the performance tests on your web applications look like?

Re: Hyperlink 2.0

2006-05-01 16:54 • by Nifty Difty
70716 in reply to 70712
VGR:
What's truly sad is that this is exactly what I think of when I hear
"Web 2.0":  Clueless dimwits attempting to reinvent entire desktop
and widget libraries in Javascript, the Language of Champions.



This isn't the first time I've seen some moron attempt to accomplish
the functionality of a modal dialog using Javascript.  A rather
popular timekeeping system is from a company called Deltek, and ...
well, it has to be seen to be believed.  Among its many offenses
to the UI universe:  It presents fake "dialogs" (HTML-rendered
title bar, close button, etc.).  And yes, you can drag them around
within the browser.  Somewhere, someone is really proud of that.


I have to ask, what is wrong with that? Can you imagine the first person to show someone CGI back in the day? I'll bet people were saying "now why would you want to go and do something like that?'

BTW. I hate javascript as well....

Re: Hyperlink 2.0

2006-05-01 16:55 • by mol
70717 in reply to 70707
Anonymous:

Hey ditto heads,


No WTF.  Don't see a problem. Yeah, there could be some minor issues here or there, but I doubt there would be much if at all.  Solution seems elegant and data driven enough to scale quite well.  I wonder how many of you actually write web applications.  As you  know, based on requirements, HTML applications can get rather trickey to implement in such a way that doesn't make them look like web applications.  Try again Papadimoulis. 


tdog



Yes the whole WTF about Web 2.0 is try to make web applications don't look like web applications. I mean, what's the point in doing this? Even the stupid users have no problems in using standard web applications. Web applications (with current technologies) will never behave like fat GUI clients so it will only confuse users. My conclusion: respect technology possibilities, use them for what they were created, but don't misuse them.

Re: Hyperlink 2.0

2006-05-01 16:56 • by Lumpio-
70718 in reply to 70702
A pendulum? Pfft. That's not even nearly two-point-ohey. The only true Web 2.0 "loading image" is the spinner they always use in Ruby on Rails examples ( http://lumpio.no-ip.com/b/spinner.gif )



Anonymous:

(f. Animated GIF....why not just use a blink tag? It's just as effective and saves bandwidth.



Because it doesn't exist.

Re: Hyperlink 2.0

2006-05-01 17:07 • by Nifty Difty
70719 in reply to 70717
Anonymous:


Yes the whole WTF about Web 2.0 is try to make web applications don't look like web applications. I mean, what's the point in doing this? Even the stupid users have no problems in using standard web applications. Web applications (with current technologies) will never behave like fat GUI clients so it will only confuse users. My conclusion: respect technology possibilities, use them for what they were created, but don't misuse them.


I think that is quite obvious that you don't "get" 2.0 (hate that term). It isn't to make web applications look more like fat clients, but to be more dynamic, like fat clients. So, you can immediate feed back (drag and drop, selections, sorting, etc etc etc). Those are very nice things to add to a site and make it feel more interactive. Sure, you can stick to the old way, but why? I mean, you could just use static HTML and nothing more as well, but why?

Whether or not AJAX is the thing that moves the curve along (I don't think it is..people really hate Javascript...soemthing else will be the 'J', in my opinion), programming for the web is due for a change. Just embrace it and learn something new.

Re: Hyperlink 2.0

2006-05-01 17:17 • by Mike
Am I the only one who's first thought was: "I'd love to see how they handle form submission"?

Re: Hyperlink 2.0

2006-05-01 17:21 • by sparty
I can actually see a use case for this (well, at least the numbered-link-database-lookup bit); the practice of using a redirect.php?url=http://othersite.com straight up is vulnerable in two ways:

a) you can send someone a link to http://wtfsite.com/scriptz/redirect.php?url=http://evilsite.com/ and make it look like wtfsite.com is redirecting them to evilsite.com, possibly implying some sort of endorsement (particularly significant if wtfsite.com has a legitimate use for personal info or sensitive logins)

b) aggressive ad-removing proxies (such as Privoxy) can parse the http://.../... out of the URL and do a "fast redirect" to it, bypassing the redirect.php component and your click counter

Re: Hyperlink 2.0

2006-05-01 17:24 • by reed
Awesome! Way to make 100% sure you drive away as many customers as possible by poorly reinventing stuff needlessly! Welcome to the web of the 21st Century people!

Re: Hyperlink 2.0

2006-05-01 17:29 • by reed
70726 in reply to 70694
onovotny:

Microsoft uses numeric links all the time -- ever see those go.microsoft.com/?linkid= stuff?  That way, if the URL changes, they can easily update the database and reduce 404 errors.  At least there though, it's a "regular" redirect instead of javascript stuff. 



But... but...

Just don't "change the URL"!

That has to be my biggest pet peeve of all time-- changing URLs all the time.  The fact that nobody who makes CMS systems takes this into account really bugs me.  It's not hard.  There's no good reason that urls have to be /proprietarySystem/thingy.asp/54132huh/StringThatchangesEachVersioN/39124/wtf/XXXOH$@(*


Re: Hyperlink 2.0

2006-05-01 17:33 • by onovotny
70727 in reply to 70726
reed:
onovotny:

Microsoft uses numeric links all the time -- ever see those go.microsoft.com/?linkid= stuff?  That way, if the URL changes, they can easily update the database and reduce 404 errors.  At least there though, it's a "regular" redirect instead of javascript stuff. 



But... but...

Just don't "change the URL"!

That has to be my biggest pet peeve of all time-- changing URLs all the time.  The fact that nobody who makes CMS systems takes this into account really bugs me.  It's not hard.  There's no good reason that urls have to be /proprietarySystem/thingy.asp/54132huh/StringThatchangesEachVersioN/39124/wtf/XXXOH$@(*




The problem is that links often live for a really long time. Think of all of the links that get compiled into an application and that the life of the application can be > 5 years.

It would be very limiting if you were unable to restructure your site for fear of breaking someone's link. Having a link to a numeric id really does have some benefits.

Many blogs do a similar thing -- they'll have a "permalink" to the entry's id. That way no matter how the application changes, links to the posts will continue to work.

--Oren

Re: Hyperlink 2.0

2006-05-01 17:34 • by Coughptcha
70728 in reply to 70721
Surely they could have made the effort to include Regular Expressions in the solution somewhere.  Maybe next time.

I can hardly wait 'till their users ask them for all the other features browsers have today.  Does this site handle "page back" correctly?  "Open link in new window"?  "Open link in new tab"?  <a HREF="/forums/66041/ShowPost.aspx">Bot</a> management?

Re: Hyperlink 2.0

2006-05-01 17:36 • by VGR
70729 in reply to 70716
Anonymous:
VGR:
What's truly sad is that this is exactly what I think of when I hear
"Web 2.0":  Clueless dimwits attempting to reinvent entire desktop
and widget libraries in Javascript, the Language of Champions.



This isn't the first time I've seen some moron attempt to accomplish
the functionality of a modal dialog using Javascript.  A rather
popular timekeeping system is from a company called Deltek, and ...
well, it has to be seen to be believed.  Among its many offenses
to the UI universe:  It presents fake "dialogs" (HTML-rendered
title bar, close button, etc.).  And yes, you can drag them around
within the browser.  Somewhere, someone is really proud of that.


I
have to ask, what is wrong with that? Can you imagine the first person
to show someone CGI back in the day? I'll bet people were saying "now
why would you want to go and do something like that?'

BTW. I hate javascript as well....


Same reason it's a bad idea to try to reimplement widgets in any
language.  You'll have to learn all the hard lessons that the
designers of previous widget libraries had to learn.



Are you planning to support accessibility?  Can all of those
whiz-bang Javascript-isms support keyboard navigation?  Not only
do handicapped users need it, but it's well known in the UI world that
no matter how good a designer thinks his app is, after using it a
hundred times, most users will want to get through it faster and
they'll want to use the keyboard.



How about internationalization?  How many Javascript versions of
widgets can handle a right-to-left locale?  I once had to use a
ready-made Javascript pop-up calendar and I was dismayed to discover it
could not even use an alternate date format, much less use localized
day and month names.



How about respecting the user's color and font choices on their
system?  Users make those choices for a reason.  When they
can read things better, they get their work done faster.



These and many more issues are things that other widget libraries have
already dealt with.  Some things took years to get right.  If
you try to reinvent it all, you'll need years to get it right
too.  In the meantime, you'll have a product that doesn't get
things right and looks and acts shoddy as a result.  I know a lot
of managers don't care, but shoddy software costs users time and costs
their employers money.

« PrevPage 1 | Page 2 | Page 3Next »

Add Comment