Mashup Challenge $100,000 prize - WTF if Spectate Swamp wins?



  • @WWWWolf said:

    However, it uses Windows Multimedia API and the Windows Media Player to do the
    actual heavy lifting. Implementing a media player shell is a relatively simple
    and straightforward matter using the Windows APIs in question, and it is
    unlikely this feature alone is a selling point.

    I've said it before, SSDS uses the Media Control Interface, which is part of the Windows Multimedia API, but is not related to Windows Media Player.

    @WWWWolf said:

    While this is apparently a practices of VB5 (StrCmp() function is discouraged
    because it needs to do some very slow memory allocation),

    Hmm, what's this StrCmp() you're talking about? What about just using =, <>, <= etc.?

    You also forgot to mention that SS doesn't like booleans, preferring to use strings like "YES" and "NO" (or sometimes "Y" and "N").



  • @Spectre said:

    @WWWWolf said:
    However, it uses Windows Multimedia API and the Windows Media Player to do the actual heavy lifting. Implementing a media player shell is a relatively simple and straightforward matter using the Windows APIs in question, and it is unlikely this feature alone is a selling point.

    I've said it before, SSDS uses the Media Control Interface, which is part of the Windows Multimedia API, but is not related to Windows Media Player

     

    And don't legitimate third-party media players like the excellent Media Player Classic also use MCI?  If that's true, it seems a bit silly to single out SSDS for condemnation (on the grounds that it "simply uses MCI"), unless we say all 3rd-party media players that use MCI suck.



  • @CodeSimian said:

    And don't legitimate third-party media players like the excellent Media Player Classic also use MCI?  If that's true, it seems a bit silly to single out SSDS for condemnation (on the grounds that it "simply uses MCI"), unless we say all 3rd-party media players that use MCI suck.
     

    You miss the point though.

    We criticize SS for boasting about his cutting edge multimedia capabilities. This is based on the fact that since he has actually not done anything but obfuscate the interface to MCISendString with his ridiculous control files and commands.

    I am actually glad he didn't reinvent the wheel there. But he did it in the most retarded way possible.

    Saying you created gods gift to multimedia is a whole different level to be made fun of. Especially when in the background it simply calls MCISendString, and in the UI it is retardedly complex.



  • @MasterPlanSoftware said:

    You miss the point though.

    We criticize SS for boasting about his cutting edge multimedia capabilities. This is based on the fact that since he has actually not done anything but obfuscate the interface to MCISendString with his ridiculous control files and commands.

     

    Spectate boasts about a lot of unimpressive things.   

    @MasterPlanSoftware said:

    Saying you created gods gift to multimedia is a whole different level to be made fun of. Especially when in the background it simply calls MCISendString, and in the UI it is retardedly complex.
     

    Oh, but from Spectate's point of view, the UI is wonderful.  It allows him to share with the Internet the control files needed to view the aliens captured in his home videos. 

    I just thought the whole "you're just using MCISendString!" argument was a bit of a red herring, that's all. Guess it's just me.



  • @CodeSimian said:

    I just thought the whole "you're just using MCISendString!" argument was a bit of a red herring, that's all. Guess it's just me.
     

    Yeah I don't know. I think it is really the way he says it. Boasting about making a media player that does nothing but call MCISendString is just stupid. 

    Other vendors tend to use the API, but wrap it with cool features, etc.

     

    All in all, it doesn't really matter. No one even has to make any sense. SS doesn't, and he wouldn't listen to you anyway.



  • @CodeSimian said:

    And don't legitimate third-party media players like the excellent Media Player
    Classic also use MCI? 

    Judging from the import table, MPC doesn't use MCI functions, but most likely DirectDraw/Direct3D (and DirectShow). MCI is a really lightweight interface, not something to make your own media player with.



  • @Spectre said:

    @CodeSimian said:
    And don't legitimate third-party media players like the excellent Media Player Classic also use MCI? 

    Judging from the import table, MPC doesn't use MCI functions, but most likely DirectDraw/Direct3D (and DirectShow). MCI is a really lightweight interface, not something to make your own media player with.

     

    Fair enough.  I guess there is a good case against Swampy for using MCI.  I noticed before that MPC allows you to choose what version of DirectX to render your video with (e.g. DirectX  9 is supposed to give you better video quality, at the cost of performance on slower machines).  Depending on which mode you pick, you may or may not get support for subtitles, frame grabs, etc.



  • @MasterPlanSoftware said:

    Yeah I don't know. I think it is really the way he says it. Boasting about making a media player that does nothing but call MCISendString is just stupid. 
    It's stupid, but I've found many stupid things in this code.  For example, this line is stupid:

    If InStr(UCase(Line_Search), ".MPx") <> 0 Then



  • @bstorer said:

    If InStr(UCase(Line_Search), ".MPx") <> 0 Then
     

    HAHAHAHA

    That is why I didn't spend too long reading through that pile of crap. I would have gone insane.



  • @bstorer said:

    If InStr(UCase(Line_Search), ".MPx") <> 0 Then

    That made my day, thanks :) 



  • @bstorer said:

    @MasterPlanSoftware said:

    Yeah I don't know. I think it is really the way he says it. Boasting about making a media player that does nothing but call MCISendString is just stupid. 
    It's stupid, but I've found many stupid things in this code.  For example, this line is stupid:

    If InStr(UCase(Line_Search), ".MPx") <> 0 Then

     

    It's the ConText, stupid! 

    <font color="#ff0000"> '16 July 2003 (why just mp3 do both) -deactivated- If InStr(UCase(Line_Search), ".MP3") <> 0 Then </font>
     If InStr(UCase(Line_Search), ".MPx") <> 0 Then
    i = mciSendString("set mp3 time format trnsf", 0&, 0, 0)
     


  • @CodeSimian said:

    It's the ConText, stupid! 
    Oh, I'm well aware.  It's still stupid.  Hell, it'd be stupid even if Option Compare were set to text.



  • @bstorer said:

    Oh, I'm well aware.  It's still stupid.  Hell, it'd be stupid even if Option Compare were set to text.
     

    So how in the name of all that's good and holy is SSDS supposed to play .MP3 files, as Spectate claims?  Luckily Spectate is not a music lover, so there is no reason for this "useless" feature to work at all.

    Or maybe he renames all his music files to ".MPx"? 



  • Some disturbing comments in the SSDS source:



    'dougdoughere       maybe comment out below





    'dougheredoughere





    'dougheredoughere



    It is like watching full-blown psychosis in motion...

     



  • Another code WTF: I wonder if SS actually wanted Format(Now, "dddd mmmm dd") ? 

    ooo = Format(Now, "dddd, mmmm dd, yyyy")    'test another date format
    
            II = InStr(1, UCase(ooo), ", 20")
        
            If II &lt;&gt; 0 Then
                ooo = Left(ooo, II - 1) 'strip off ", 2003" year info (as with seconds) not needed
                                'logic should work till 2100, then the year will show
            End If
         
            II = InStr(1, ooo, ",")     'remove the comma ie Saturday, March 29
            If II &lt;&gt; 0 Then
                ooo = Left(ooo, II - 1) + Right(ooo, Len(ooo) - II)
            End If                      '29 march 2003
    

     



  • @aleph said:

    'logic should work till 2100, then the year will show
     

     Somehow I don't think Spectate needs to worry about that particular edge case.



  • @CodeSimian said:

    So how in the name of all that's good and holy is SSDS supposed to play .MP3 files, as Spectate claims?  Luckily Spectate is not a music lover, so there is no reason for this "useless" feature to work at all.

    Or maybe he renames all his music files to ".MPx"? 

    MCI doesn't, to my limited knowledge, have an MP3 device.  But more than likely, the video device can handle MP3s.  I'll test this later.  For now, I haven't dug far enough through it to confirm whether it'll actually play MP3s, but it does pull the ID3 v1 tags out of them.



  • @bstorer said:

    @CodeSimian said:

    So how in the name of all that's good and holy is SSDS supposed to play .MP3 files, as Spectate claims?  Luckily Spectate is not a music lover, so there is no reason for this "useless" feature to work at all.

    Or maybe he renames all his music files to ".MPx"? 

    MCI doesn't, to my limited knowledge, have an MP3 device.  But more than likely, the video device can handle MP3s.  I'll test this later.  For now, I haven't dug far enough through it to confirm whether it'll actually play MP3s, but it does pull the ID3 v1 tags out of them.

     

    Found this example on CodeProject:

    I guess his broken "MPx" code is just for setting the time format for MCI, so it doesn't really matter if it works or not, as far as playback goes?

    Still a tremendous WTF.  He is like those neophyte programmers who think the computer will read their mind:

    1st-year comp. sci. student: I heard computers are good for drawing neat pictures and stuff!

    C:\> DRAW DOG

    'draw' is not recognized as an internal or external command,
    operable program or batch file.

     1st-year comp. sci. student: Stupid computer!

    (Based on a true story) 



  • @CodeSimian said:

     

    Found this example on CodeProject:

    So I was right, then.  The mpegvideo player can handle MP3s.
    @CodeSimian said:
    I guess his broken "MPx" code is just for setting the time format for MCI, so it doesn't really matter if it works or not, as far as playback goes?
    Actually, it's supposed to play the music, too.  But it doesn't matter, because there's about elenty quajillion different paths down below that code, most (if not all) ending in an mci command of "play".  I haven't traced them all yet.  Once I get this thing working in .Net, I can start tracing it, and I'm sure the WTFs will cascade out.

    Now, since we're here, look at this line which I find hideous:

    aaa = VB.Left(aaa, II - 1) & cript2(tt) & VB.Right(aaa, JJ + 1 - II - cript3(tt))

    Also, this is still one of my favorite parts of the program:

            If (tt = 0 Or tt > crop_len + over_lap) And Mid(aaa, crop_len - 1, 1) = " " Then tt = crop_len - 1
            If (tt = 0 Or tt > crop_len + over_lap) And Mid(aaa, crop_len - 2, 1) = " " Then tt = crop_len - 2
            If (tt = 0 Or tt > crop_len + over_lap) And Mid(aaa, crop_len - 3, 1) = " " Then tt = crop_len - 3
            If (tt = 0 Or tt > crop_len + over_lap) And Mid(aaa, crop_len - 4, 1) = " " Then tt = crop_len - 4 

    And I actually know what that part does.



  • @bstorer said:

    [snip detailed analysis of SSDS source code]

    Somewhere in Alberta, a Bearded YellowHead is jumping for joy.  "The Power of the Stones never Fails," he thinks (*) to himself.

     

     

    (*) I use the term very loosely.



  • @bstorer said:

    MCI doesn't, to my limited knowledge, have an MP3 device.  But more than likely, the video device can handle MP3s.  I'll test this later.  For now, I haven't dug far enough through it to confirm whether it'll actually play MP3s

    I can't say if SSDS will play it, but MCI will play pretty much anything that Windows Media Player can play (with the possible exception of DRM'ed stuff - I've never tried that). Basically, you just need to set the MCI_OPEN_ELEMENT flag and use NULL as the device type, and it'll figure out the rest. With that, all you need is the right codec.

    Full doc at http://msdn2.microsoft.com/en-us/library/ms710950(vs.85).aspx.



  • Another idea for the site: there could be a Swamp Sources section, with a list of links (possibly also with archived copies - I'd hate to see some of these threads go offline and be lost to humanity forever) to important Swamp threads with a short sentence on what happens in each one (desktop search and video / video editing only / magic stones, aliens, search / etc.).  You know, so people don't think we're making this all up, and it'll be nice to have it in one place.



  • @burntfuse said:

    Another idea for the site: there could be a Swamp Sources section, with a list of links (possibly also with archived copies - I'd hate to see some of these threads go offline and be lost to humanity forever) to important Swamp threads with a short sentence on what happens in each one (desktop search and video / video editing only / magic stones, aliens, search / etc.).  You know, so people don't think we're making this all up, and it'll be nice to have it in one place.

     

    Agreed.



  • @Pidgeot said:

    I can't say if SSDS will play it, but MCI will play pretty much anything that Windows Media Player can play (with the possible exception of DRM'ed stuff - I've never tried that). Basically, you just need to set the MCI_OPEN_ELEMENT flag and use NULL as the device type, and it'll figure out the rest. With that, all you need is the right codec.

    Full doc at http://msdn2.microsoft.com/en-us/library/ms710950(vs.85).aspx.

    Yup, he just doesn't declare a device.  His open commands are all of the form "open <filename> type <type> alias video1" where <type> is usually MPEGVideo.



  • @burntfuse said:

    Another idea for the site: there could be a Swamp Sources section, with a list of links (possibly also with archived copies - I'd hate to see some of these threads go offline and be lost to humanity forever)
    Oh, I'm sure Swampy is keeping a copy of everything in a huge text file.  Oh, wait, you said humanity.  Never mind, then.



  • Jamming it with SSDS

     

     

    CodeSimian wrote the following post at 04-10-2008 2:55 PM:

    @bstorer said:

    @CodeSimian said:

    So how in the name of all that's good and holy is SSDS supposed to play .MP3 files, as Spectate claims?  Luckily Spectate is not a music lover, so there is no reason for this "useless" feature to work at all.

    Or maybe he renames all his music files to ".MPx"? 

    MCI doesn't, to my limited knowledge, have an MP3 device.  But more than likely, the video device can handle MP3s.  I'll test this later.  For now, I haven't dug far enough through it to confirm whether it'll actually play MP3s, but it does pull the ID3 v1 tags out of them.

     

     

     

    My best guess on that code was left there for others to mess with. It doesn't do anything. This was deactivated by looking at the code above. change it to "MP3" and Jam it. Don't think Do. Activate some of the print for forum header changes to see where it goes. If your friends don't have VB do the build for them. So they can jam it. You can only make it better.



  • @SpectateSwamp said:

     

    My best guess on that code was left there for others to mess with.

    Dear God he can only guess about his own code.  What chance do I have?


  • Jam SSDS as a group

    @bstorer said:

    @SpectateSwamp said:

     

    My best guess on that code was left there for others to mess with.

    Dear God he can only guess about his own code.  What chance do I have?
    I was doing some testing obviously with mp3 stuff. Just jamming it. I deactivated it and left the other test functions commented out as well. Sometimes it's better to leave a little junk around for others to find. This is a good place to hardcode and jam mp3 tests.

    There is other stuff you'll find that I never use. But they are clues as to where you might want to make a change yourself. Or myself. If I can remember why I left that code there. Or was it me?



  • @bstorer said:

    @burntfuse said:

    Another idea for the site: there could be a Swamp Sources section, with a list of links (possibly also with archived copies - I'd hate to see some of these threads go offline and be lost to humanity forever)
    Oh, I'm sure Swampy is keeping a copy of everything in a huge text file.  Oh, wait, you said humanity.  Never mind, then.

     

    Seriously, Spectate have made several references to a "thedailywtf.txt" file which he allegedly uses to "archive" and search this thread.  Strangely, when MPS asked him to produce a copy of his gigantic forum text file(s), he accused MPS of being lazy and told MPS to make his own gigantic text file.  So who knows if Swampy is just a pathological liar or perhaps the text file only exists in his feverish imagination.

    Of course, he completely ignored my quick-and-easy instructions for using wget and VBScript to make a real archive of forum threads.  Damn you, SpectateSwamp!  Damn you to hell!



  • @SpectateSwamp said:

    Or myself. If I can remember why I left that code there. Or was it me?
     


     



  • Boo to Boolean

    @Spectre said:

    You also forgot to mention that SS doesn't like booleans, preferring to use strings like "YES" and "NO" (or sometimes "Y" and "N").
    I don't do those kinds of checks during the search function. If it involves keyboard input then at that point speed doesn't matter. So Boo to boolean when you can. I just like the way Un-Boolean reads. Computing is pretty much like doing video. Break all the rules you can and those that won't break use. That means jamming it. A lot.

    P.S. I'm sure glad you are looking so closely.



  • @SpectateSwamp said:

    Or myself. If I can remember why I left that code there. Or was it me?
     

    Hmmm.  Maybe it was the fucked-up guy who wrote all those creepy "doughere"/"dougheredoug" comments in your source code?  You know, your malevolent, evil unborn twin who was absorbed by you in the womb, and was later removed from your skull without your knowledge?



  • Alien Screen Reshoots better than CamStudio

    @CodeSimian said:

    @SpectateSwamp said:

    Or myself. If I can remember why I left that code there. Or was it me?
     

    Hmmm.  Maybe it was the fucked-up guy who wrote all creepy "doughere"/"dougheredoug" comments in your source code?  You know, your malevolent, evil unborn twin who was absorbed by you in the womb, and was later removed from your skull without your knowledge?

    The dougheredoug is a code I put in when I'm doing changes. Then I can go in and find  the current changes quickly. I may want to do more testing. Some of these dougheredoug get left behind. When you have a 10,000 line program. You need to leave some notes and queues around.

    SSDS is fast at the startup and shutdown. Makes it extremely quick to change and jam 

    I'm wanting to see some "CodeSwamphere" in the code.

     

    I will be getting my power unit for my camera back from repair. So much better than that CamStudio crap this group talked me into. There will be an audio playbyplay of these screen reshoots from the alien expert. 



  • @SpectateSwamp said:

    The dougheredoug is a code I put in when I'm doing changes.
     

    I realize that, you jackass.  Doesn't make it any less creepy.

    @SpectateSwamp said:

    I will be getting my power unit for my camera back from repair. So much better than that CamStudio crap this group talked me into. There will be an audio playbyplay of these screen reshoots from the alien expert. 

    You are an idiot. 

    @SpectateSwamp said:

    When you have a 10,000 line program. You need to leave some notes and queues around.

    Are we supposed to be impressed?  You realize most OS's (Linux, Windows) have millions of lines of code?   Yet you think your little toy monstrosity is a "replacement" for all of them.

    Cretin. 

     

     



  • Bad Code don't matter

    @CodeSimian said:

    Are we supposed to be impressed?  You realize most OS's (Linux, Windows) have millions of lines of code?   Yet you think your little toy monstrosity is a "replacement" for all of them.
    And who on earth would want to look at those monstrosities. Too intimidating. Too much to learn. I'm surprised some of you are so brave as to look at this bad code. Yup. Nobody needs much more than Swamp search. Being simple. I have kept it simple. So any stup should be able to make changes and fixes.

     



  • @SpectateSwamp said:

    Yup. Nobody needs much more than Swamp search.

    Okay, let's see you wipe your hard drive clean and use Swamp Search without an OS.  Then I will be impressed.  Make sure to video the whole thing! 

     



  • @SpectateSwamp said:

    Being simple. I have kept it simple. So any stup should be able to make changes and fixes.
     

    And being a simple man myself, without much knowledge of aeronautical engineering, I built a life-sized airplane out of garbage bags, paper clips, and popsicle sticks.  It won't fly, but any stup should be able to customize it!



  • @SpectateSwamp said:

    @CodeSimian said:

    Are we supposed to be impressed?  You realize most OS's (Linux, Windows) have millions of lines of code?   Yet you think your little toy monstrosity is a "replacement" for all of them.
    And who on earth would want to look at those monstrosities. Too intimidating. Too much to learn. I'm surprised some of you are so brave as to look at this bad code. Yup. Nobody needs much more than Swamp search. Being simple. I have kept it simple. So any stup should be able to make changes and fixes.

    Let's just make this clear: I've dealt with far more disasterous code before, but it's the absolute stupidity of your code that makes it stand out.  That you can have such an outlandishly bad application built only on the simplest features of the language is astonishing.



  •  Anyone got a link to the video of spectate 'building' SSDS handy?

    Also the link to sourceforge project?



  • @bstorer said:

    Let's just make this clear: I've dealt with far more disasterous code before, but it's the absolute stupidity of your code that makes it stand out.  That you can have such an outlandishly bad application built only on the simplest features of the language is astonishing.
     

    After running your post through the SpectatePsychosis Reality Filter, we get:

    @bstorer said:

    Let's just make this clear: I've dealt with far more disasterous code before, but it's the absolute stupidity of your code that makes it stand out.  That you can have such an incredibly powerful application built only on the simplest features of the language is astonishing.



  • @MasterPlanSoftware said:

     Anyone got a link to the video of spectate 'building' SSDS handy?

    Also the link to sourceforge project?

     

    http://video.google.ca/videoplay?docid=-7589648200316339053

    And the hilarious instructions: 

    http://forums.thedailywtf.com/forums/p/7593/144934.aspx#144934

    SF:

    http://sourceforge.net/projects/specatateswamp/

    (That's right: he cannot spell his own name correctly)

     



  • Great job on the code analysis (WWWWolf) and keeping up the general level of hilarity.  I'm curious to know whether the .NET port (courtesy of bstorer) is keeping the original structure and naming as much as possible, or whether it's actually cleaning things up a little.  (After all, we can only make it better.) 

    @tdittmar said:

    @Eternal Density said:

    put my hand in a drawer and Jam IT
     

    You also need to put in your noodle (or two??).

    I'd rather not.

     

     *is suddenly inspired*

    dougDougHereHereHere(), dougDougHereHere() 



  • @SpectateSwamp said:

    I will be getting my power unit for my camera back from repair. So much better than that CamStudio crap this group talked me into
     

    http://forums.thedailywtf.com/forums/p/7593/145068.aspx#145068 

    @SpectateSwamp said:

    <font size="6">It took me a while to looking at Cam Studio. It's easy to use. </font>Just created a avi of the search doing it's thing with 124,140 matches.

    <font color="#ff0000" size="7">I like it a lot. Thanks.</font> Sometimes I don't listen that well. But people keep reminding and reminding me.

     



  • @Eternal Density said:

    Great job on the code analysis (WWWWolf) and keeping up the general level of hilarity.  I'm curious to know whether the .NET port (courtesy of bstorer) is keeping the original structure and naming as much as possible, or whether it's actually cleaning things up a little.  (After all, we can only make it better.) 
    I'm doing my best to maintain the WTFery of the code.  I have to move all the GoSub sections into new functions because VB.Net doesn't have GoSubs.  But they look like this now:

        'march 20/00
        Private Function InputFile_24000()
    InputFile_24000:

    *blah, blah*

            Return
        End Function



  • Heads up everyone, I added most of the content that was submitted in the last day or two. 

    Let me know if I missed anything or screwed anything up.

    Yes, I know we still have layout problems, I am still working on those.

     

    Keep the ideas and content rolling in!



  • @Spectre said:

    I've said it before, SSDS uses the Media Control Interface, which is part of the Windows Multimedia API, but is not related to Windows Media Player.

    Ah, got it. *raises a giant sign that says "Linux guy who finds the Windows alphabet soup highly puzzling"*

    @Spectre said:

    Hmm, what's this StrCmp() you're talking about? What about just using =, <>, <= etc.?

    *raises another sign* Comes from the confused sources I read. Like I said, I find it weird that he uses Left(wtf,4)="BLAH" throughout the application, for which there's better be a logical explanation. As I said in the intro, it was just one feature that I looked very puzzling.

    This is exactly why corrections to my text from someone who knows anything about VB in particular would be interesting. I last touched VB in 1999, and that was just for a few weeks...

    Oh, and in order to conserve the precious post count, one more thing - another video, I hope you don't mind. Tobacco Leaf Flyer Conspiracy.



  • @WWWWolf said:

    Oh, and in order to conserve the precious post count, one more thing - another video, I hope you don't mind. Tobacco Leaf Flyer Conspiracy.
     

    It is already up man!

    Pure genius! I bow to your creativity!

    http://www.thestupidestmanonearth.com/Contributions.aspx

    Thanks for the content!



  • @dlikhten said:

     MasterPlanSoftware, I think my paragraph onSS's videos goes right after the tree paragraphs in the previous section but before the list of videos. After the4 paragraphs you can have a little scentence:

     

    Here is a short collection of Doug's undeniable proof of aliens existing. Be weary as these videos are not for the feint of heart as they are long, dull, and may cause you do wonder why you are actually watching them. But in the great words of Doug Patterson: "Its plain for all to see.. If you want to see it." After at least 15 hours of continuous staring at each video you will either go crazy or believe there are aliens. Enjoy.

    Inability to type strait. Strang speelings of comon words. Mangling of peoples names. Bad Grammer, odd Capitalization. And crazy PunctuAtion. These are the symptoms of repeated, prolonged exposure to SwampGas. You are in eminent danger of spending the rest of your life rambling incoherently about writing spaghetti code that can find aliens who crawl up vents and smoke weed through Holey stones. Escape now while you still can!!!        



  • @joemck said:

    @dlikhten said:

      Be weary as these videos are not for the feint of heart as they are long, dull, and may cause you do wonder why you are actually watching them.

    Inability to type strait. Strang speelings of comon words. 

    [snip] 

    Escape now while you still can!!!        

     

    I don't know about you, but after 4000+ posts dedicated to SadisticSwamp's bullshit, I am pretty fucking weary all right. 



  •  Another update: I think I fixed most of the layout on the site. Check it out and let me know if you see any major issues.


Log in to reply