Skip to content
HomeVideosBooks
AllTopicsTrends
BlogsPodcasts
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
    Cover of Software abstractions

    Software abstractions

    Daniel Jackson · 2012

    Software EngineeringProgrammingComputer Science
    Open LibraryAmazon
    Stats for nerds
    3recommend
    5mentions
    4people
    2015–2026years
    80% recommend20% neutral

    Mentions per year

    2015201720192021202320252026

    What Hacker News says

    1. rramadassOct 2026
      Mandatory Background:

      1) Understanding Formal Methods by Jean-Francois Monin - This is the absolute best for getting a grip on the breadth, concepts and sample tools for Formal Mathematics/Specification/Verification. Fire-hose of information (not a step-by-step textbook) so use this as a map for everything "Formal". The S/N ratio is very high (~250 pages only!) so use AI/Textbooks to help explain concepts you find difficult to understand.

      Practical:

      1) Software Abstractions: Logic, Language, and Analysis by Daniel Jackson - Uses "Alloy" language to teach Structural (i.e. Data) Modeling.

      2) Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers by Leslie Lamport - Uses "TLA+" language to teach Behavioural (i.e. State Machine) modeling.

      The above two are for "System Modeling" i.e. everything needed to formally build complete systems.

      3) Finally, You should also look at the bunch of free books on the Lean4 website which can be studied parallely for "code-level" proofs and verification.

      PS: There are a few more (eg. Event-B method etc.) but you can get to those if/when you need to.

      thread
    2. l8againJun 2023
      If anyone is interested in learning more about Alloy, I would recommend this book by the author, Daniel Jackson - "Software Abstractions" - https://www.amazon.com/Software-Abstractions-Logic-Language-...
      thread
    3. fspeechFeb 2019
      Alloy (and the philosophy it is based on) is explained in Daniel Jackson's book <<Software Abstractions>>, which is a very nice book to read on techniques of specification and verification (at the specification level).
      thread
    4. fspeechMar 2015
      I bought Daniel Jackson's book Software Abstractions: Logic, Language and Analysis. It thoroughly discusses all aspects of Alloy software and methodology. I have to say it is one of the best software book I've ever read. It covers relational modelling thoroughly and is very readable from cover to cover. Model checking is so much more pleasant to use than theorem proving. The Alloy software download jar file also includes both source and examples.
      thread
    5. timClicksOct 2019
      I watched that earlier this week, and have been making my way through the Software Abstractions book by Jackson. Alloy's still in the "this thing makes me feel stupid" territory, but it does feel learn-able to me. I really like the emphasis on iterative development.
      thread

    Related

    Cover of Object-oriented programming
    2010–2026

    Object-oriented programming

    Peter Coad
    3 recommend · 5
    Cover of Abstraction and specification in program development
    2010–2023

    Abstraction and specification in program development

    Barbara Liskov
    4 recommend · 7
    Cover of Software Visualization
    2022

    Software Visualization

    Stephan Diehl
    1 recommend · 2
    Cover of Software fundamentals
    2019–2025

    Software fundamentals

    David Lorge Parnas
    4 recommend · 10
    Cover of Software engineering mathematics
    2012–2026

    Software engineering mathematics

    Jim Woodcock
    2 recommend · 4
    Cover of A theory of objects
    2008–2024

    A theory of objects

    Martín Abadi
    4 recommend · 13
    Cover of Object-oriented software construction
    2010–2026

    Object-oriented software construction

    Bertrand Meyer
    22 recommend · 53
    Cover of Concepts, techniques, and models of computer programming
    2007–2026

    Concepts, techniques, and models of computer programming

    Peter Van Roy
    70 recommend · 133