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

    Procedural Programming: It Never Went Away — Kevlin Henney | Build Stuff

    Build Stuff - #1 Software Dev Conf

    2 HN recommenders · recommended in 4 months, 2018–2021

    YouTube

    1:02:27 · 28K views · Jan 11, 2018

    Kevlin Henney argues that procedural programming never went away despite later paradigms such as OO and functional. He traces the history of structured programming and shows where procedural thinking still lives in modern code and why it matters for readability.

    HN people recommend it as a fascinating history lesson showing that the field keeps rediscovering ideas from the 1960s.

    Software Engineering & LanguagesSoftware architecture & designProgramming language design
    1. 1:29:27
      The Forgotten Art of Structured Programming - Kevlin Henney [C++ on Sea 2019]cpponsea245K views • 7 years ago
    2. 50:23
      Old Is the New New • Kevlin Henney • GOTO 2018GOTO Conferences125K views • 8 years ago
    3. 44:35
      Object-Oriented Programming is BadBrian Will2.6M views • 10 years ago
    4. 1:01:45
      Four Languages from Forty Years Ago - Scott WlaschinNDC Conferences33K views • 8 years ago
    5. 43:04
      "Stop Writing Dead Programs" by Jack Rusher (Strange Loop 2022)Strange Loop Conference468K views • 4 years ago
    6. 1:14:52
      Effective Programs - 10 Years of Clojure - Rich HickeyClojureTV176K views • 9 years ago
    7. 1:03:31
      Brian Goetz - Stewardship: the Sobering PartsClojureTV39K views • 11 years ago
    8. 46:09
      Why Isn't Functional Programming the Norm? – Richard FeldmanMetosin1.6M views • 7 years ago
    9. 1:55:24
      Ideas about a new programming language for games.Jonathan Blow530K views • 12 years ago
    10. 56:27
      In Search of TomorrowBerkeley Institute for Data Science (BIDS)18K views • 10 years ago
    11. 39:49
      Hammock Driven Development - Rich HickeyClojureTV333K views • 13 years ago
    12. 56:39
      Alan Kay - Programming and ScalingColin McDonnell36K views • 11 years ago
    13. 32:56
      Bret Victor The Future of ProgrammingJoey Reid305K views • 13 years ago
    14. 17:26
      Lecture 1 | Programming Paradigms (Stanford)Stanford1.2M views • 18 years ago
    15. 1:04:16
      Simon Peyton-Jones: Escape from the ivory tower: the Haskell journeyChurchill College, University of Cambridge170K views • 9 years ago
    16. 1:00:10
      Functional architecture - The pits of success - Mark SeemannNDC Conferences152K views • 10 years ago
    17. 1:02:26
      Solving Problems the Clojure Way - Rafal DittwaldClojure/north87K views • 7 years ago
    18. 1:02:50
      The Language of the System - Rich HickeyClojureTV174K views • 13 years ago
    19. 51:40
      Domain Modeling Made Functional - Scott WlaschinNDC Conferences71K views • 9 years ago
    20. 59:03
      Breaking Down Programming Paradigms: APL's Surprising Learning Curve // Aaron Hsu // Dyalog '17Dyalog User Meetings7.2K views • 9 years ago

    7 comments from Hacker News

    1. @open-source-uxJan 2019· in “Algol 68”

      I strongly recommend this talk by software consultant and author Kevlin Henney called Procedural Programming: It's Back? It Never Went Away He talks a bit out Algol 68 and how influential it was on programming language design. Many language keywords we're familiar with today originated in the 50 year old language specification for Algol 68: int, bool, skip, void, struct. Here's the snippet from the talk about Algol 68 - it's brilliant: this video

      Strongly recommendsView on HN
    2. @open-source-uxDec 2018· in “Ask HN: Best talks of 2018?”

      I really liked this talk about the history of programming and how so many ideas we consider recent or modern are in fact much older than many of us realise. Watching this talk merely amplifies the feeling that the programming profession is in a perpetual loop - discarding or forgetting ideas or concepts, then re-discovering them anew. What's also striking is how rich and varied were the programming ideas that emerged from the 60s and 70s. Kevlin Henney - Procedural Programming: It's Back? It Never Went Away this video

      RecommendsView on HN
    3. @bunderbunderApr 2018· in “Designing very large JavaScript applications”

      You may appreciate Kevlin Henney's talk, "Procedural Programming - It's back? It never went away."[1] It's a tour of how all the best discoveries of the past decade or two really date back to the 1960s. [1] this video this video

      RecommendsView on HN
    4. @open-source-uxApr 2018· in “Ask HN: What is your favourite tech talk?”

      If you have an interest in the history of programming methodologies, this talk is fascinating: Procedural programming: it's back? It never went away this video

      RecommendsView on HN
    5. @SupermanchoDec 2021· in “Why Architecture Oriented Programming Matters (2019)”

      I will start with a couple clarifications, in good faith. I will admit that I have made lazy errors in this discussion. Specifically in regard to terminology. Afaik, there is no term for "temporally unsynchronized" other than parallelism or concurrency, and I have misused the term concurrency at times. I have also used the term transition to mean "asynchronous state transition". This may clarify my past statements, but I will attempt to do better, going forward. So I'll visit on the material you are most familiar with so that my comments might have the most specific impact or irrelevance. For your verification, I read your paper here: [LINK] To begin, I agree on the concept. If "constraining architecture" means any separation of concerns or interface. To demonstrate that I did read through the code snippets you provided and completely irrelevant to the points being discussed, I believe there was an error in the code you posted in Listing 8@p.136 - - k: degreesK { self basicC :( degreesF - 273.15. \*wat?\* ivar : ui / celsiusTextField / intValue := self c . ivar : ui / fahrenheitTextField / intValue := self f. } I also thought the implementation was a little muddled and would implement a solution similar to this^. Object subclass: #Temperatures { var c. -changedC : sender { self c: sender intValue. self updateValues: { #val : c, #type: 'Celcius' }. } -changedF : sender { self f: sender intValue. self updateValues: { #val : f, #type: 'Farenheit' }. } -changedK : sender { self k

      CitesView on HN