Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    O

    OdeToCode

    odetocode.com · Personal blog · on HN since 2008

    OdeToCode is Scott Allen's blog on C#, .NET, and JavaScript, with posts on language features and programming practice.

    Visit blogHN submissions
    ProgrammingWeb DevelopmentLanguages & Compilers
    What HN says

    HN links it for explanations of C# and ES6 features, a 2004 post on blackouts and race conditions, and an old HP printer PJL article.

    Stats for nerds
    29HN people shared it
    36linked in comments
    185story points
    Aug 2019last shared
    2009people per year2019

    Top posts on HN

    1. 1
      Where Is .Net Headed?
      1 person · 67 points · first shared 2013 · 105 comments on HN
    2. 2
      Fun With C# and HP Laserjets
      2 people · 34 points · first shared 2010 · 9 comments on HN
    3. 3
      Your Abomination Is My Clever Hack
      1 person · 13 points · first shared 2009 · 17 comments on HN
    4. 4
      Great Engineering Quotes
      1 person · 13 points · first shared 2011 · 4 comments on HN
    5. 5
      Clojure and the CLR
      1 person · 6 points · first shared 2011 · Discussion on HN
    6. 6
      Plain Old JavaScript
      1 person · 5 points · first shared 2012 · 2 comments on HN
    7. 7
      Do you worry that changes in .Net could leave people behind?
      1 person · 5 points · first shared 2019 · 2 comments on HN
    8. 8
      Programming Windows 8: The Sublime To The Strange
      1 person · 3 points · first shared 2011 · Discussion on HN
    9. 9
      Don’t Let Your Code Marry An Axe Murderer
      1 person · 3 points · first shared 2010 · Discussion on HN
    10. 10
      Visual Designers Don’t Scale
      1 person · 3 points · first shared 2008 · Discussion on HN

    What HN people wrote when they linked it

    • jcranmerAug 2019

      > The 2003 Northeast US/Canada blackout was caused by a race condition: https://odetocode.com/blogs/scott/archive/2004/04/11/blackou...

      No, it wasn't. The race condition caused First Energy to not notice that their energy grid was one more line trip away from catastrophic failure. But there were four line trips that day caused by power lines hitting trees and shorting, the last of which triggered the dynamic instability that caused the blackout. First Energy had a whole host of issues that together caused the blackout, and the race condition in the alarm monitoring system was but one of them.

      The full report is actually an interesting read. Essentially, the key problem that caused the massive cascade was that the line trips meant that large loads of power had to reroute long distances to get to the Cleveland demand area, and the non-infinitesimal amount of time it takes for the power to establish that route caused several lines to trip, to the point that the demand was cut off from the network before the supply surge reached it.

    • lusrMar 2012

      Binding between a request and a controller method is entirely customisable. The framework uses a completely customisable number of parameter sources (query string parameters, POST parameters, session variables, you can customise this to e.g. query LDAP if you want) and binds those to the parameters of your method in a completely customisable way. See, for example http://odetocode.com/blogs/scott/archive/2009/04/27/6-tips-for-asp-net-mvc-model-binding.aspx .

      That being said there is definitely a deficiency in strong typing in ASP.NET MVC as-is. That's why I use T4MVC (http://mvccontrib.codeplex.com/wikipage?title=T4MVC_doc&referringTitle=T4MVC). I'm not too sure how the MVC team have done things much differently, though, without overcomplicating the framework... you'll note the T4MVC approach is based on code generation that inspects your source tree.

    • johnsDec 2009

      1. <p if="condition">Foo</p>

      2. HTML encoded by default

      3. <li each="var foo in bar">${foo.Name}</li>

      4. Client-side rendering: http://odetocode.com/blogs/scott/archive/2009/03/12/client-rendering-views-with-spark-and-asp-net-mvc.aspx

      5. conditional attributes (kludgy syntax, but better than Webforms VE)

      6. Content "spooling". You can create a partial that registers a script tag/script specific to the partial, but only if it hasn't been registered already. Partials can also spool content to any other content area.

      6a. <script once="jquery" src="...">

      The video quality of this is a little rough, but here's a good overview by the guy that started Spark, Louis Dejardin: http://whereslou.com/2009/06/24/spark-releas-and-presentation-for-mpls-altnet

    • ionfishJul 2010

      Only implicitly: no threading model is documented in the ECMAScript Language Specification [1], and no widely-used interpreter implements threading. The new Web Workers specification adds something like threading to JavaScript in the context of the browser [2], and Node intends to add support for this on the server as well [3]. Have a look at [4] for a nice article on threading in JavaScript.

      [1] http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf

      [2] http://www.whatwg.org/specs/web-workers/current-work/

      [3] http://nodejs.org/

      [4] http://odetocode.com/blogs/scott/archive/2007/01/08/javascript-and-threading.aspx

    • nbpooleApr 2011

      This is a very old technique. I came across it six or so years ago: the article where I found the code, http://odetocode.com/humor/68.aspx, is from 2003.

      It's a lot of fun though. And PJL can be very interesting to work with: I built a tool that used it to query printers for status information (although the amount of information I could extract seemed very dependent on the printer).

    • bobthepandaAug 2019

      It's a bit pre-emptive to start witch-hunting, though.

      The 2003 Northeast US/Canada blackout was caused by a race condition: https://odetocode.com/blogs/scott/archive/2004/04/11/blackouts-and-race-conditions.aspx

    Related

    CodeBettercodebetter.com85 people

    StackOverflow

    CodeBetter
    Publication · last shared 2021
    Jon Skeetmsmvps.com44 people

    OMG Ponies (Aka Humanity: Epic Fail)

    Jon Skeet
    Personal · last shared 2014
    programming is terribleprogrammingisterrible.com124 people

    Write code that is easy to delete, not easy to extend

    programming is terrible
    Personal · last shared 2026
    beza1e1beza1e1.tuxen.de120 people

    A collection of things that are Turing-complete by accident (2013)

    beza1e1
    Personal · last shared 2026
    Elegant Codeelegantcode.com28 people

    The History of Node.js

    Elegant Code
    Publication · last shared 2017
    Lambda the Ultimatelambda-the-ultimate.org615 people

    Simon Peyton Jones Elected into the Royal Society Fellowship

    Lambda the Ultimate
    Publication · last shared 2026
    F# for Fun and Profitfsharpforfunandprofit.com334 people

    Railway-Oriented Programming (2015)

    F# for Fun and Profit
    Personal · last shared 2026
    Rust Blogblog.rust-lang.org533 people

    Announcing Rust 1.0

    Rust Blog
    Company · last shared 2026