Skip to content
HomeVideos
AllLongsCategoriesPlaylists
BooksBlogsPodcasts
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

    Constraints Liberate, Liberties Constrain — Runar Bjarnason

    Scala World

    5 HN recommenders · recommended in 11 months, 2016–2025

    YouTube

    51:40 · 44K views · Jan 4, 2016

    Runar Bjarnason's Scala World talk argues that restraint and precision in components beat power and flexibility. Constraints on parts make them easier to compose into systems.

    HN recommends it as a talk that changes how you think about system design, and links it whenever constraints, abstraction or least power come up.

    Software Engineering & LanguagesFunctional programmingSoftware architecture & design
    1. 1:03:31
      Brian Goetz - Stewardship: the Sobering PartsClojureTV39K views • 11 years ago
    2. 1:01:39
      "Simple Made Easy" - Rich Hickey (2011)Strange Loop Conference220K views • 5 years ago
    3. 59:04
      On the Expressive Power of Programming Languages by Shriram Krishnamurthi [PWLConf 2019]PapersWeLove27K views • 7 years ago
    4. 1:14:52
      Effective Programs - 10 Years of Clojure - Rich HickeyClojureTV176K views • 9 years ago
    5. 1:16:14
      Spec-ulation Keynote - Rich HickeyClojureTV136K views • 9 years ago
    6. 1:02:26
      Solving Problems the Clojure Way - Rafal DittwaldClojure/north87K views • 7 years ago
    7. 45:03
      Keynote: The Last Hope for Scala's Infinity War - John A. De GoesScalapeño36K views • 8 years ago
    8. 36:14
      Barliman: trying the halting problem backwards, blindfolded - William Byrd, Greg RosenblattClojureTV7.9K views • 9 years ago
    9. 1:07:10
      Brian Beckman: Don't fear the Monadjasonofthel33t415K views • 13 years ago
    10. 1:03:29
      Maybe Not - Rich HickeyClojureTV181K views • 7 years ago
    11. 41:19
      Stuart Sierra - Components Just Enough StructureClojureTV36K views • 12 years ago
    12. 1:02:50
      The Language of the System - Rich HickeyClojureTV174K views • 13 years ago
    13. 25:06
      "Making Impossible States Impossible" by Richard Feldmanelm-conf63K views • 10 years ago
    14. 40:00
      "Agility & Robustness: Clojure spec" by Stuart HallowayStrange Loop Conference25K views • 10 years ago
    15. 50:01
      Simplicity Ain't Easy - Stuart HallowayClojureTV24K views • 13 years ago
    16. 1:12:10
      Practical Common LispGoogle TechTalks98K views • 19 years ago
    17. 45:42
      Scala Collections: Why Not?InfoQ43K views • 12 years ago
    18. 53:22
      Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim WeirichConfreaks66K views • 13 years ago
    19. 1:05:51
      The Functional Programmer's Toolkit - Scott WlaschinNDC Conferences79K views • 7 years ago
    20. 1:12:56
      Lecture 1A: Overview and Introduction to LispMIT OpenCourseWare421K views • 7 years ago

    12 comments from Hacker News

    1. @cinnamonheartApr 2018· in “Ask HN: What is your favourite tech talk?”

      I find Runar Bjarnason's talks to be interesting; one of my favourites is 'Constraints Liberate, Liberties Constrain': this video The essence of it is that constraints actually allow for easier composition and more modularity. It had a real impact on the way I think about the design of systems.

      Strongly recommendsView on HN
    2. @MaxBarracloughApr 2024· in “Htmx and the Rule of Least Power”

      This reminds me of a great talk, Constraints Liberate, Liberties Constrain , by Runar Bjarnason. [0] Useful abstractions necessarily impose restrictions compared to a free-form 'all powerful' approach, but abstractions make it easier to perform/compose meaningful operations. A compiler can reason about an AST far more easily than it can reason about a machine-code sequence, for instance. A compiler typically converts from AST to machine-code pretty late in the game, as you want to take advantage of the utility of the abstraction, not the unlimited power of directly working with instructions. [0] this video

      RecommendsView on HN
    3. @MaxBarracloughApr 2024· in “No Abstractions: our API design principle”

      That's a great quote. This topic turned up a couple of weeks ago in another thread. [0] The excellent talk Constraints Liberate, Liberties Constrain , by Runar Bjarnason, gets at the same point, and even uses this same Dijkstra quote. [1] [0] [LINK] [1] this video (this takes you right to the Dijkstra quote)

      RecommendsView on HN
    4. @solidninjaJun 2024· in “Compromised Visions Are Superior”

      This reminds me of the excellent talk "Constraints Liberate, Liberties Constrain" this video that is more about doing the programming rather than planning it as in the article, but with a similar approach.

      RecommendsView on HN
    5. @clhodappJul 2019· in “Why Continuations Are Coming to Java”

      Constraints on the user free the platform. Freedoms for the user constrain the platform. If you are interested in someone pontificating about this at length, see this video

      RecommendsView on HN