Links 18-03-03


  • How to Debug Any Problem:

    • Step 1: Determine what is working
    • Step 2: Determine precisely what is not working
    • Step 3: Simplify the problem
    • Step 4: Generate hypotheses
    • Step 5: Test hypotheses using divide and conquer
    • Step 6: Think of other versions of this class of bug
    • Step 7: Generate anti-regression tests
    • Step 8: Fix the bug(s)
    • Step 9: Check that the tests now work
    • Step 10: Check the original simple case
    • Step 11: Check the original issue
    • Step 12: Document the fix
    • Step 13: Note any other possible bug classes
    • Step 14: Release
  • Google’s programming language Dart has been released with a new vision: as a language uniquely optimized for client-side development for web and mobile. Anders Thorhauge Sandholm, Product Manager on Dart_Lang at Google, shares details about the language, as well as an explanation of its core tenets.

  • Declaration of struct fields can be enriched by string literal placed afterwards—tag. Tags add meta information used either by current package or external ones. In this post, you’ll first recall how struct declarations look like, then take a deep dive into tags themselves, and finally wrap up with couple of use cases.

  • Go wiki.



  • Are you a Vim user who wishes they could use Vim like text-editing everywhere? You’re in luck; vim-anywhere makes this possible.

  • The Deadlock Empire – an in-browser game to learn about the challenges of concurrent programming (deadlocks, semaphores, etc.).

Copyright © 2017-2019 Stanislav Gobunov