SitePoint Sponsor

User Tag List

Results 1 to 21 of 21

Hybrid View

  1. #1
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,156
    Mentioned
    190 Post(s)
    Tagged
    2 Thread(s)

    August Programming Competition Winner

    The requirements were tough and the deadline was short. Any member that entered should feel good about themselves just for rising to the challenge. Though not easy, of the half-dozen entrants, a winner has been chosen.

    Of the many programming languages available, the winner chose ASP.NET for their application.

    Admittedly, working with a database would be ideal and have benefits not available when working with files. Having written my own version to work with all three of the exported formats, I can say that in my opinion the winner made a wise decision in choosing to work with XML files.

    Still, the work was not without problems. To those that entered and were unable to overcome them in time to submit your application, it is hoped that you can learn how various problems were handled by studying the winning entry.

    As hoped, the winning application is a good example of Progressive Enhancement. Fully functional without any CSS or javascript, yet nicer looking and a lot slicker with them enabled, as can be seen by comparing these screen captures:

    Start Page without CSS the file selection page




    Start Page with CSS




    Page 2 initial selection (and export) options page




    Page 3 refined results, further selection (and export) options page




    Message details without javascript requires an extra click, can only view one message at a time




    Message details with javascript collapsible display




    And the application creates well-formed and easy to read XML files
    Code XML:
    <privatemessages>
      <folder name="Exported">
        <privatemessage>
          <datestamp>2006-11-26 20:16</datestamp>
          <title>Re: trackback plugin</title>
          <fromuser>Checkerz</fromuser>
          <fromuserid>83572</fromuserid>
          <touser>SampleMember</touser>
          <message>Yeah, sorry to act like a newb about the whole thing. But I didn't think anyone would volunteer to do this for me. 
     
    Anyhow, I got notification of both trackbacks and sure enough, only the spam-free would show up on the blog and the other was notified to me via email with the plugin that you recommended.
     
    So there ya go, it works :) But thanks again for helping and recommending that plugin.
     
    [QUOTE=SampleMember]You already have trackback validation native to your version of WP? In any case, it seems the plugin (if you're using it) is working OK. I made 2 test posts and only the one with the link shows up as a trackback comment (with a funky pre-html edit encoding of something. - the "A"). Did the "spam" trackback get flagged as such?[/QUOTE]</message>
        </privatemessage>
      </folder>
    </privatemessages>

    So, to get to the announcement, the winner is wwb_99. He was kind enough to answer a few questions:

    You chose to work with ASP.NET, any particular reason why?
    Because I know it very well and time was limited.

    What tools did you use?
    To produce the submission, Visual Studio 2010, ReSharper and my brain. Now, we all walk on the shoulders of giants, and I used a number of open source tools and projects to significantly enhance my submission. To ease the pain of testing things, I relied on the NUnit framework enhanced with RhinoMocks and MvcContrib's TestHelpers. From the operational side of things, the search would not be possible without Lucene.NET. On the UX side of the fence, just about everything pretty/fancy/neat is a direct result of jquery and jquery-ui.

    In my version of the application, one of the unexpected problems I encountered was finding a way to uniquely identify Private Messages. The export files don't include any Id numbers. How did you solve that?
    After cursing whoever designed the schema--you always need an identifier in any data interchange scenario--I realized that each message *should* be unique based upon a sum of it's parts. So I effectively serialized the message to a string and took a fingerpint of each message, thereby creating a unique ID.

    Other problems I had to deal with included long unbroken lines, "unusual" characters and entities. What were the most troublesome problems you had getting things put together?
    Never really ran into this problem--insofar as dealing with the data transport, I just worked within native .NET XML serialization. If it was valid XML, .NET dealt with all those problems so I could concentrate on stuff like making the messages searchable.

    The allowed time frame was tight. About how many hours did it take you from start to finish?
    Not much of an hours tracker, but perhaps 24 hours or so total.

    Speaking of finish, in my experience nothing is ever really done, it seems there's always a tweak that could be made, a feature added, and the unexpected bug fix. Not that I'd fault you for taking the prizes and running, but are you planning to host the code somewhere, improve and maintain it?
    Actually, I took the liberty to post the code over to Codeplex at http://vbulletinpm.codeplex.com/ for the world to see and use. Beyond that, I don't really plan to do much with the app personally and publicly as I've got a few other fish to fry at the moment.

    If I had a bit more time when working on it, beyond the finishing touches one would need -- such as input validation for uploads -- I would be considering the next step of taking the imported messages and persisting them for personal use in a document DB such as RavenDB. This would open up some neat scenarios and be a logical improvement.

    Thank you for participating in this contest. And thank you for the interview. Is there anything you would like to say about yourself in closing?
    Thanks for the opportunity and for considering my entry. It was a blast.
    Attached Images Attached Images
    Last edited by Mittineague; Aug 26, 2010 at 13:48. Reason: att imgs

  2. #2
    Galactic Overlord gold trophysilver trophybronze trophy
    HAWK's Avatar
    Join Date
    Aug 2003
    Location
    New Zealand
    Posts
    12,540
    Mentioned
    956 Post(s)
    Tagged
    14 Thread(s)
    Congratulations Wyatt. Awesome work.

  3. #3
    SitePoint Wizard bronze trophy
    Join Date
    Jul 2006
    Location
    Augusta, Georgia, United States
    Posts
    4,147
    Mentioned
    16 Post(s)
    Tagged
    3 Thread(s)
    Congratulations on a job well done.
    The only code I hate more than my own is everyone else's.

  4. #4
    From Italy with love silver trophybronze trophy
    guido2004's Avatar
    Join Date
    Sep 2004
    Posts
    9,496
    Mentioned
    163 Post(s)
    Tagged
    4 Thread(s)
    Congratulations!

    Mittineague, I can't see the screen captures (not in FF and not in IE). When I copy the links to the images and put them in the browser's address bar, I get an empty page and image info telling me it's a 1x1px png image...

    Is it just me?

  5. #5
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,156
    Mentioned
    190 Post(s)
    Tagged
    2 Thread(s)
    Off Topic:

    Hmmm. that's a bit odd. They're jpg files uploaded as jpg files and my "page info" add-on says they're jpegs.

    They're from one of my profile albums but I just noticed I had it set as "private" so maybe that's why? I'll change that now and hopefully they'll show up.

  6. #6
    From Italy with love silver trophybronze trophy
    guido2004's Avatar
    Join Date
    Sep 2004
    Posts
    9,496
    Mentioned
    163 Post(s)
    Tagged
    4 Thread(s)
    Off Topic:

    Ok, I can see them now
    Last edited by guido2004; Aug 25, 2010 at 00:29. Reason: I can see them now

  7. #7
    SitePoint Author silver trophybronze trophy
    wwb_99's Avatar
    Join Date
    May 2003
    Location
    Washington, DC
    Posts
    10,629
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)
    Also can't see the images if not logger in.

    Hosting coming shortly.

  8. #8
    SitePoint Enthusiast
    Join Date
    Aug 2008
    Posts
    42
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Congrats! Nice job on the code. Very small time frame to pull it off in and you did an excellent job on it. Kudos.
    TierEngine - Reliable Dedicated Servers and Colocation
    99.9% Uptime Guaranteed
    View our Dedicated Server Deals!
    Have questions? We can help. 888.233.6133 - support(at)tierengine.com

  9. #9
    #titanic {float:none} silver trophy
    molona's Avatar
    Join Date
    Feb 2005
    Location
    from Madrid to Heaven
    Posts
    8,220
    Mentioned
    237 Post(s)
    Tagged
    1 Thread(s)
    Congratulations and nice job! *clap clap*

  10. #10
    SitePoint Enthusiast
    Join Date
    Jun 2010
    Posts
    72
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Congratulations!

    I think it's a cool thing that you decided to throw it up to everyone for free instead of trying to make a quick buck out of it.

  11. #11
    Team ********* Louis Simoneau's Avatar
    Join Date
    Sep 2009
    Location
    Melbourne, Australia
    Posts
    228
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Congratulations!

  12. #12
    Programming Since 1978 silver trophybronze trophy felgall's Avatar
    Join Date
    Sep 2005
    Location
    Sydney, NSW, Australia
    Posts
    16,810
    Mentioned
    25 Post(s)
    Tagged
    1 Thread(s)
    Congratulations Wyatt.
    Stephen J Chapman

    javascriptexample.net, Book Reviews, follow me on Twitter
    HTML Help, CSS Help, JavaScript Help, PHP/mySQL Help, blog
    <input name="html5" type="text" required pattern="^$">

  13. #13
    SitePoint Member
    Join Date
    Aug 2010
    Posts
    1
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    congratulation great job keep it up

  14. #14
    SitePoint Member
    Join Date
    Aug 2010
    Posts
    3
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    You did a great job Mittineague. Congratulation for this. The images are still can not be seen. If possible post them again.

  15. #15
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,156
    Mentioned
    190 Post(s)
    Tagged
    2 Thread(s)
    Quote Originally Posted by tariq1133 View Post
    You did a great job Mittineague. Congratulation for this. The images are still can not be seen. If possible post them again.
    errrm. thanks, I guess. But I don't deserve it, wwb_99 did all the work!

    TBH I don't know why the screen captures wouldn't be showing for some of you. So I attached them too.

    But a much better idea is to head over to http://vbulletinpm.codeplex.com/ , download it, and run it for yourself.

  16. #16
    SitePoint Member
    Join Date
    Aug 2010
    Posts
    2
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    CONGRATULATIONS! every energy spent was worth it keep it up.

  17. #17
    SitePoint Member
    Join Date
    Sep 2010
    Posts
    1
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Congratulation for winning August Programming Competition. I think you did a very good job.Please upload more pictures and share your joy with us..

  18. #18
    SitePoint Wizard Darren884's Avatar
    Join Date
    Aug 2003
    Location
    Southern California, United States
    Posts
    1,616
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Nice job, looks cool. I like how it works with XML.
    Have a good day.

  19. #19
    SitePoint Member
    Join Date
    Sep 2010
    Posts
    2
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Congrats! Nice job on the code. Very small time frame to pull it off in and you did an excellent job on it. Kudos.
    Last edited by HAWK; Sep 2, 2010 at 22:02. Reason: Fake sig removed

  20. #20
    SitePoint Member
    Join Date
    Sep 2010
    Posts
    4
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Winning is not every thing but the way you win it, it means a lot to the person gives the tuff time to their competitors and peoples who have such creative mind to developed new ideas, which shows there talent and sincerity to their work.
    <snip />
    Last edited by SpacePhoenix; Sep 5, 2010 at 23:47. Reason: removed fake signature


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •