talk-transcripts

Transcripts of Clojure-related talks (by matthiasn)

Talk-transcripts Alternatives

Similar projects and alternatives to talk-transcripts

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better talk-transcripts alternative or higher similarity.

talk-transcripts reviews and mentions

Posts with mentions or reviews of talk-transcripts. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-15.
  • Teach Yourself Programming in Ten Years (1998)
    3 projects | news.ycombinator.com | 15 Jan 2024
    Thank you for this recommendation. I've never heard of it before and now I'm reading: https://github.com/matthiasn/talk-transcripts/blob/master/Hi...

    It's giving me energy this Monday holiday(USA)!

  • Strong typing, a hill I'm willing to die on
    9 projects | news.ycombinator.com | 4 Oct 2023
    >So this is 10x, a full order of magnitude reduction in (?) severity before we get to the set of problems I think are more in the domain of what programming languages can help with, right? And because you can read these they'll all going to come up in a second as I go through each one on some slide so I'm not going to read them all out right now. But importantly there's another break where we get to trivialisms of problems in programming. Like typos and just being inconsistent, like, you thought you're going to have a list of strings and you put a number in there. That happens, you know, people make those kinds of mistakes, they're pretty inexpensive.

    [0] Video: https://www.youtube.com/watch?v=2V1FtfBDsLU

    [1] Slides and transcript: https://github.com/matthiasn/talk-transcripts/blob/master/Hi...

    [2] Video https://www.youtube.com/watch?v=YR5WdGrpoug

    [3] Slides and transcript https://github.com/matthiasn/talk-transcripts/blob/master/Hi...

  • All the ways to capture changes in Postgres
    12 projects | news.ycombinator.com | 22 Sep 2023
    Using triggers + history tables (aka audit tables) is the right answer 98% of the time. Just do it. If you're not already doing it, start today. It is a proven technique, in use for _over 30 years_.

    Here's a quick rundown of how to do it generically https://gist.github.com/slotrans/353952c4f383596e6fe8777db5d... (trades off space efficiency for "being easy").

    It's great if you can store immutable data. Really, really great. But you _probably_ have a ton of mutable data in your database and you are _probably_ forgetting a ton of it every day. Stop forgetting things! Use history tables.

    cf. https://github.com/matthiasn/talk-transcripts/blob/master/Hi...

    Do not use Papertrail or similar application-space history tracking libraries/techniques. They are slow, error-prone, and incapable of capturing any DB changes that bypass your app stack (which you probably have, and should). Worth remembering that _any_ attempt to capture an "updated" timestamp from your app is fundamentally incorrect, because each of your webheads has its own clock. Use the database clock! It's the only one that's correct!

  • Functions vs. Procedures: Keep them separate.
    2 projects | dev.to | 8 May 2023
    Many languages merge the two concepts, and implement procedures as functions that return void. This may muddle/complect their distinction, causing programmers to call procedures from within functions, thereby making those functions into impure functions (meaning that they affect the world outside of themselves, through side-effects like I/O or mutating state). This should be avoided, especially if you care about debug-ability and Functional Core, Imperative Shell architectures (see Gary Bernhardt's Boundaries talk at 31:56) (which make testing your system easier, without mocking).
  • All Programming Philosophies Are About State
    2 projects | news.ycombinator.com | 6 Feb 2023
    Rich Hickey's "Simple Made Easy" talk discusses value and time - how mutability ties these together such that value is always time-dependent - and the complexity that results.

    https://github.com/matthiasn/talk-transcripts/blob/master/Hi...

  • Ask HN: How has functional programming influenced your thinking?
    4 projects | news.ycombinator.com | 16 Jan 2023
    Functional Core, Imperative Shell[1] is one of the most useful patterns. I will probably use it in every future project. Two major production projects that use FCIS are:

    - ReactJS: https://svitla.com/blog/functional-programming-in-typescript

    - CodeMirror/ProseMirror: https://codemirror.net/docs/guide/

    Another functional concept I find very useful is immutability. Immutability "clicked" for me after watching this talk[2]. I wish immutability was a first-class concept in JS/TS. (It will be, eventually.[3]) For now, I use immer.js for immutability in JS.

    In retrospect, my programming naturally tended to be "functional-esque. Now I do it very deliberately, even though the language isn't purely functional (JS/TS).

    [1]: https://hw.leftium.com/#/item/18043058

    [2]: https://github.com/matthiasn/talk-transcripts/blob/master/Hi...

    [3]: https://fjolt.com/article/javascript-records-and-tuples

    4 projects | news.ycombinator.com | 16 Jan 2023
    The value of values: https://github.com/matthiasn/talk-transcripts/blob/master/Hi...

    Having values and having your program phrased as transformations of values makes for straight forward, easily tested code. Provide inputs, assert outputs.

  • Building a Startup on Clojure
    11 projects | news.ycombinator.com | 4 Oct 2022
    > I have mentioned a few times in the past, on HN and Reddit and elsewhere, that my biggest personal dream language wishlist item is “Clojure but with static types”, however, while that’s something I dream of having, it hasn’t held me or the language back in any meaningful way.

    Sadly, Rich Hickey has always been pretty opposed to typing in Clojure. Enforcing values to be not null is basically table stakes for typed systems, and yet he doesn’t seem to think it’s valuable or feasible,

    https://github.com/matthiasn/talk-transcripts/blob/master/Hi...

    It does make me sad every time I have to deal with macro systems in non Lisp languages (Julia, Scala).

  • Cognitive Loads in Programming
    5 projects | news.ycombinator.com | 31 Aug 2022
    Reminds me of this Rich Hickey quote:

    “So how do we make things easy? … There's a location aspect. Making something at hand, putting it in our toolkit, that's relatively simple. … Then there's the aspect of how do I make it familiar, right? I may not have ever seen this before. That's a learning exercise. I've got to go get a book, go take a tutorial, have somebody explain it to me. …

    Then we have this other part though, which is the mental capability part. And that's the part that's always hard to talk about, the mental capability part because, the fact is, we can learn more things. We actually can't get much smarter. We're not going to move; we're not going to move our brain closer to the complexity. We have to make things near by simplifying them.

    But the truth here is not that they're these super, bright people who can do these amazing things and everybody else is stuck because the juggling analogy is pretty close. Right? The average juggler can do three balls. The most amazing juggler in the world can do, like, 9 balls or 12 or something like that. They can't do 20 or 100. We're all very limited. Compared to the complexity we can create, we're all statistically at the same point in our ability to understand it, which is not very good. So we're going to have to bring things towards us.

    And because we can only juggle so many balls, you have to make a decision. How many of those balls do you want to be incidental complexity and how many do you want to be problem complexity?

    https://github.com/matthiasn/talk-transcripts/blob/master/Hi...

  • What's the go to place to learn Clojure?
    3 projects | /r/Clojure | 12 May 2022
    then take some breaks and explore the philosophy of Clojure, programming, concurrency, coordination, immutability, decomplecting, versioning, conveyence, etc, by watching Rich Hickey talks. You can find links and transcripts of them here: https://github.com/matthiasn/talk-transcripts
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 28 Mar 2024
    Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →

Stats

Basic talk-transcripts repo stats
34
2,837
4.7
10 months ago
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com