VirtualTam's bookmarks

  1. Martin Fowler 2015-04-05

    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand."

    see http://martinfowler.com/articles/continuousIntegration.html ;-)

  2. Let Over Lambda 2015-03-18

    This book is about macros, that is programs that write programs.

  3. Python's built-in unittest module is quite cool, but a bit limited and way too verbose (read: it's quite not easy to incite developers to write unit tests)

    I'm currently looking for more dev-friendly solutions, the key points being:

    • writing test code should be easy and straight-forward -keep the focus on "what to test" instead of "how to transcribe a process to a test"
    • parallelization! -we, spoiled developers, should make good use of our way-too-many-cores build machines...
    • complete feature set!
      • we don't want to just run tests...
      • coverage reports (find dead/weak/untested code sections)
      • output formatting (JUnit-XML seems to be quite a common format out there)

    There seem to be 3 solutions in Python:

    • stock unittest + project-dependent customizations / test helpers
    • nosetests
    • py.test

    And 2 ways of gettings things done:

    • keeping things stock: no external dependency, project-specific implementation...
    • using a test framework: one more module in your (test) virtualenv, more concise tests, more features (// run, code coverage, etc.)

    Some links:

  4. TL;DR: you won't.

    This website is rather a good memo regarding each language's foundations:

    • what's its general purpose?
    • how to write core instructions, such as functions, loops, conditional structures?

    I find this kind of reminder quite useful when it comes to documentation languages (e.g. TeX, Markdown)