This site design made me say WTF



  • Wow. It's so bad it almost rolls-around to good. It also appears to be implemented using the Slashdot engine. Jesus.


  • ♿ (Parody)

    Ouch



  • Shocking some sites can make you yearn for the days of usenet or old style bbs



  • Not every site's design can be perfect.



  • I was going to give criticism of the font, then I saw this:



  • I knew about the refund comment, but the bunny is new.



  • It's not that bad. It's not exactly pretty, but it's usable and it seems to work well, which is more than can be said for certain other sites. It also seems to be really lightweight. It just looks outdated.

    Sure, it wouldn't do for a fancy commercial outfit, but that's not its job. Not a WTF.

    It renders like this on my end, in case I'm missing something really WTF.


  • ♿ (Parody)

    @marinus said:

    It's not that bad. It's not exactly pretty, but it's usable and it seems to work well, which is more than can be said for certain other sites. It also seems to be really lightweight. It just looks outdated.

    The grey headers and white background make it difficult for me to read. It's not clear how things are grouped. Stuff seems smooshed <technical term> together. It makes me not want to read anything there.



  • Sadly I agree with Boomzilla entirely, which is why I posted it. Try reading any stories, the site somehow simultaneously has too much whitespace, but is too dense to read comfortably. Green-on-grey is a terrible choice. The quote style has zero padding, as you can see from the screenshot Marinus posted.

    I dunno, I just saw that site, said "WTF" and posted it here.



  • I've just found a way worse WTF. If you click one of the topic categories, the server sends back such garbage that the browser cannot make heads or tails of it. I even tried it with multiple browsers. I wonder how they even did that, that's ridiculous.



  • Haha holy shit. Yeah the web proxy here intercepted it with:

    Content Encoding Error

    With the description:

    This is typically caused by a Web Site presenting a content encoding header of one type, and then encoding the data differently.

    I don't know if my browser would have puked on it, but the proxy definitely did.



  • I tried it with Safari, Firefox and Lynx. All choked. I ran ettercap, it's sending back malformed HTTP. There's no Content-Length, and the "gzip"-encoded data it's sending seems to be invalid.


  • ♿ (Parody)

    @marinus said:

    I tried it with Safari, Firefox and Lynx. All choked.

    Chrome doesn't like it either.



  • That's better WTF than the one I posted.



  • That's odd, it uses < table>s to make the layout. Usually open-source geeks are the most vocal ones about "proper semantics" and "separation of content and presentation".

    Then again, maybe it was designed before CSS was invented.



  • The site is extraordinarily hard to read.



  • @anonymous234 said:

    That's odd, it uses < table>s to make the layout. Usually open-source geeks are the most vocal ones about "proper semantics" and "separation of content and presentation".

    Slashcode. It's an ancient Perl monstrosity. 99% sure this site is Slashcode.


  • ♿ (Parody)

    @blakeyrat said:

    Slashcode. It's an ancient Perl monstrosity. 99% sure this site is Slashcode.

    At the very least, some stuff is borrowed:

    Some icons from slashdot.org used with permission from Kathleen.

    Source code allegedly here:

    It's apparently written in C.



  • I just noticed another thing. Look at the HTTP header it's sending back.

    HTTP/1.0 200 OK

    Note the version number. Didn't even see that at first.

    I've also found the cause of the problem now: it's sending the Content-Type line and the header terminator twice. So the second repetition ends up in the content, and then decompressing fails. Content-Length wouldn't matter because [i]it's using HTTP 1.0[/i]! In 2014! This is absolutely hilarious.



  • Too bad its ancient design is not actually compatible with older browsers…



  • How you feel about Python is how I feel about Perl.



  • I don't know where this comes from. I don't hate Python THAT much, I just don't particularly like it.



  • You've never ranted on it, but you do seem to mention your dislike for it an awful lot.



  • Well I might have some exported dislike for the co-worker who basically forced it on us, even though it was a shitty fit for the task (calling a SOAP API), and after he'd spent an entire hour telling all of us how wonderful his framework was because we could write our data-fetch components in any language we wanted.

    Given the choice between Python and Ruby, I'd rather work in Ruby. But I don't particularly dislike Python. It just has shitty tools. But so does Ruby. And Java. And GoLang, and Node, and etc.



  • @blakeyrat said:

    Well I might have some exported dislike for the co-worker who basically forced it on us, even though it was a shitty fit for the task (calling a SOAP API), and after he'd spent an entire hour telling all of us how wonderful his framework was because we could write our data-fetch components in any language we wanted.

    Given the choice between Python and Ruby, I'd rather work in Ruby. But I don't particularly dislike Python. It just has shitty tools. But so does Ruby. And Java. And GoLang, and Node, and etc.

    Yeah, the SOAP API issue has been covered here, and I CBA to find it.

    Can we just please all kneel at the altar of Visual Studio?



  • You can do what the fuck you like.

    My problem is that I keep taking C# jobs, and then at those jobs there's always the "hey who knows {trendy bullshit language X}?" and stupidly I say, "I've done it before", and then I get on the stupid trendy bullshit language project instead of doing the stuff I like to do and am good at.

    But you know what? I invariably find that, as shitty as I am in Ruby or Java or Python, I'm still always an order of magnitude better than the idiot who picked the environment in the first place. And I don't say that just to prop-up my own ego. I say that to prop-up my own ego and impress chicks.

    Seriously, though, I don't give a shit how many years of fucking Ruby on Rails experience you had, moron, you didn't know how to write a thread. I've never even touched your fucking idiot language for dumbshits, and I spend an hour on it, and your code runs literally 500 times faster.

    That keeps happening to me over and over.



  • Sounds familiar.

    Picked up Python about half a year ago after a co-worker introduced it for a certain project at work. Ended up with me getting a "wow, I didn't know that you could do that" reaction out of him a few weeks later.



  • I think as a general rule, the more militant a person is about how great their language is, the worse they are as a programmer. Blakeyrat's Law number 7 or whatever I'm up to now.

    Except C#, which is actually the best programming language for all purposes.



  • @blakeyrat said:

    I think as a general rule, the more militant a person is about how great their language is, the worse they are as a programmer. Blakeyrat's Law number 7 or whatever I'm up to now.

    Except C#, which is actually the best programming language for all purposes.

    Well, if a language really is that good, you can just cast your bite and everyone will bite.

    Those people just prefer to use dynamite.


  • ♿ (Parody)

    @boomzilla said:

    It's apparently written in C.

    I just wanted to emphasize this, because it seems to have gotten lost in the slowdown.

    That web page is hand coded CGI written in C.

    Looking at the tarball, it seems that the last changes were back in 2008.



  • @boomzilla said:

    That web page is hand coded CGI written in C.

    Looking at the tarball, it seems that the last changes were back in 2008.

    Sounds like my personal web site. I'll blame that on the fact that my web server is sitting in my living room, and hasn't even had a power cord plugged into it in almost 4 years; I hate to think when was the last time I tinkered with the code.



  • I don't entirely see a problem with this. It's something interesting to do, to get a feel for how it works and as a hobby project it can be quite a satisfying achievement to make it work.

    I wouldn't necessarily put it into production per se, but I can certainly see the validity of it.



  • @boomzilla said:

    That web page is hand coded CGI written in C.

    Well that explains the malformed HTTP responses it sends. While I normally wouldn't recommend a full rewrite just because the code is old, this is one of the cases where it is necessary.

    @Arantor said:

    I don't entirely see a problem with this. It's something interesting to do, to get a feel for how it works and as a hobby project it can be quite a satisfying achievement to make it work.

    I wouldn't necessarily put it into production per se, but I can certainly see the validity of it.

    In the 1990s this would've been the only way to do it, but nowadays if you're just making a simple website that you're going to subject the Internet to, just use one of the many pre-existing tools that have already been written and tested for you. This thing they're using sends malformed HTTP responses and still uses HTTP 1.0. And I shudder to think of the security implications.



  • Oh sure, you can use pre-existing tools. But there is still value to learning how the tools actually work, too.

    I've built crude webservers in PHP before now, only supported enough of HTTP/1.0 to get by, and wasn't malforming crap but the result was I understood just how much Apache was doing for me.



  • @blakeyrat said:

    And I don't say that just to prop-up my own ego. I say that to prop-up my own ego and impress chicks.

    All... Two of them?

    @blakeyrat said:

    Seriously, though, I don't give a shit how many years of fucking Ruby on Rails experience you had, moron, you didn't know how to write a thread. I've never even touched your fucking idiot language for dumbshits, and I spend an hour on it, and your code runs literally 500 times faster.

    Then you got lucky. Usually it goes like this: "you didn't know how to write a thread, and you wrote a million LOC of non-threaded codebase which will inevitably keel over and die in hundreds of different ways at the very sound of the words "parallel processing", and now I either spend the rest of my lifetime rewriting this thing so that the other seven processors don't fart around, or deal with the fact that it takes three coffees and a shower to load this crap in a debugger, where it instantly crashes anyway".



  • I thought he was talking about the young birds that were in the nest in the tree down the street that he was impressing?



  • @Arantor said:

    Oh sure, you can use pre-existing tools. But there is still value to learning how the tools actually work, too.

    Certainly there is, but don't hook it up to the internet.

    @Arantor said:

    I've built crude webservers in PHP before now, only supported enough of HTTP/1.0 to get by, and wasn't malforming crap but the result was I understood just how much Apache was doing for me.

    If you're doing it to learn, you should go ahead and implement full HTTP/1.1. If you're doing it because you genuinely needed a little webserver as part of an application, you should still implement full HTTP/1.1. The reusable connections alone will make for a far more responsive website. It does sometimes make sense to write your own little server (for example, the ones built into bittorrent clients so you can control them via a browser).



  • Yup, the reuse thing is great, and there are other perks to 1.1 (my favourite continues to be Range headers, except browsers tend to do stupid shit with those like indicating range requests but still asking for the entire damn file anyway)

    It was a few years ago now that I did it and I really only wanted to get a handle on what was involved rather than getting down and dirty with the full spec, but an interesting and useful educational experience.



  • @Arantor said:

    as a hobby project it can be quite a satisfying achievement to make it work.

    It gets even WTFier than that. Take a shareware C program from circa 1990-1995 that was out-of-date even then, because it was the latest version to which the author released the source. The templating language the program uses to generate its output is a WTF worthy of at least the Side Bar. Heavily customize both the templates and the C code, including modifying it to write to stdout instead of a file. Wrap that in a perl script to extract CGI query parameters and pass them to the C program on the command line, then tack HTTP headers on the C program's output.

    Wait, there's more. The resulting HTML contains <img> tags; the GIFs to satisfy those img requests were built on-the-fly, including text rendering, by the perl script. It's been so long since I looked at this stuff that I don't remember; I think maybe I was using ImageMagick, but I know originally I was using an X server to render the images. Shudder.

    All this was running on an obsolete Pentium III desktop. I had this in "production" for maybe 10 years, but it was not exactly a high-traffic site; 100 hits/day from anybody other than me (and script kiddies trying to find cmd.exe; good luck finding that on a Linux box) would be a busy day.



  • @marinus said:

    It does sometimes make sense to write your own little server (for example, the ones built into bittorrent clients so you can control them via a browser).

    In what way does that "make sense"?



  • Wow. That's just... wow.



  • Well, for example, the Transmission bittorrent client has 'remote access' where it will serve up a webpage that you can then visit to interact with it (which looks just like the normal GUI). That's useful, because you can run it on a server and then tell it to go download things via any device that has a browser on it. You could, for example, run it on your media server and then tell it to download something remotely.

    To do that, it has a little built-in webserver that you can turn on and off in the preferences. Surely you can agree that trying to wire it into Apache or something would be a way bigger WTF, especially since it's made for home use and it would be way less user-friendly if users had to go set that up themselves, never mind the overkill that such a solution would be.



  • Maybe I should have posted this in the coding confessions topic.



  • Possibly. I think it's still kinda cool to do, though.



  • @blakeyrat said:

    Except C#, which is actually the best programming language for all purposes.

    I'll believe that when I see a physics-heavy game server (on the order of hundreds or thousands of simultaneous rigid bodies) written in it. Bonus points if it accomplishes this without depending on an unmanaged game engine.

    @boomzilla said:

    I just wanted to emphasize this, because it seems to have gotten lost in the slowdown.

    That web page is hand coded CGI written in C.

    It's difficult to imagine that long ago, people actually made web applications in C.



  • Microsoft were demoing such a thing at a game dev conference a couple of months ago. It was primarily a showcase for Azure where the physics modelling for a highly destructible terrain was being done on the server with graphics work being done on the client; on the order of 40,000 physics objects being modelled simultaneously. Watching the demo never waver from the 30 FPS benchmark was quite interesting (as compared to the fully local model doing the same thing, barely struggling to make even 2 FPS)



  • @Groaner said:

    I'll believe that when I see a physics-heavy game server (on the order of hundreds or thousands of simultaneous rigid bodies) written in it. Bonus points if it accomplishes this without depending on an unmanaged game engine.

    This one narrow use case means that it's awesome!



  • Wait, this is Azure? Maybe I've not been paying enough attention, but I didn't think that was what Azure was for.

    Filed Under: Still sore about dropping XNA



  • @Groaner said:

    I'll believe that when I see a physics-heavy game server (on the order of hundreds or thousands of simultaneous rigid bodies) written in it. Bonus points if it accomplishes this without depending on an unmanaged game engine.

    I have a buddy who made a slick demo with 3000 (IIRC) bodies using the new System.Threading.Tasks classes.

    @trithne said:

    Wait, this is Azure? Maybe I've not been paying enough attention, but I didn't think that was what Azure was for.

    That's what Xbox One uses Azure for.

    @trithne said:

    Filed Under: Still sore about dropping XNA

    Yes, that was the dumbest strategic move Microsoft has made in a long time. And hey, WHADYAKNOW, all the indies are on PS4 this generation! WHY DO YOU THINK THAT IS MICROSOFT!



  • @Groaner said:

    It's difficult to imagine that long ago, people actually made web applications in C.

    At uni my "web publishing" unit requested CGI scripts written in C. Circa 2002. I did it in perl and still got full marks.


Log in to reply