SICP: the end of an era

Поделиться
HTML-код
  • Опубликовано: 24 янв 2025

Комментарии • 45

  • @hugoestrada2089
    @hugoestrada2089 11 месяцев назад +26

    Talk about having a great amount of humility. He wrote what many consider the best textbook on programming of all time, and he understood that it wasn't appropriate for the times. So much respect for this man

  • @Filaxsan
    @Filaxsan Год назад +10

    What a man! A piece of history for real.
    Thanks for sharing!

  • @flaviacristinasouzacardoso3668
    @flaviacristinasouzacardoso3668 3 года назад +7

    Muito bom esse vídeo legendado, obrigada!

  • @xixiaofin
    @xixiaofin Год назад +11

    I'm studying the SICP video series of this great man here: ruclips.net/video/-J_xL4IGhJA/видео.html
    and all of a sudden see the same great man 40y older. What an odd feeling...

    • @MacProUser99876
      @MacProUser99876 10 месяцев назад

      I remember taking the courses when OCW put them out on their website in the early 2000s

  • @chenchen8688
    @chenchen8688 Год назад +2

    thanks for shareing,it is pretty!

  • @0011101001101
    @0011101001101 Год назад +12

    Empirically exploring how a black box component part behaves and can be used, rather than understanding it from the fundamentals up, is increasingly relevant as AI systems are incorporated as component parts of applications. To Sussman's point, this has been true for a long time since component parts became too complex for one person or one team to understand top to bottom. While I wish for essential simplicity, it's hard to disagree this is the right emphasis.

  • @ilkinq.8646
    @ilkinq.8646 2 года назад +11

    if you have english subtitles too please add it though

    •  2 года назад +2

      I'll try to provide the english subtitles. Thank you.

    • @ilkinq.8646
      @ilkinq.8646 2 года назад +1

      @ Thank you so much 💌

    • @kurtb.kaiser8699
      @kurtb.kaiser8699 2 года назад +3

      Autogenerated English subtitles are available. You only have to select them using the configuration snowflake.

  • @RandolphCrawford
    @RandolphCrawford 2 года назад +17

    So the goal of MIT's 4 course into to EECS and SICP before 1997 was merely to move robots around? And the new and improved paradigm for doing engineering at MIT is to use trial and error to find the right mix of Python functions to do the same thing today, but now, without understanding how it got there?

    • @MattDomsch
      @MattDomsch 2 года назад +10

      Prior to 1997 the 4 courses had the coherent structure mentioned at the beginning: 6.001 SICP, 6.002 Circuits, 6.003 Signals & Systems, 6.004 Computer Architecture. Yes, there were robotics classes (e.g. the 6.270 Autonomous Robot Design Competition taught during the January session) also available. Starting 1997 is when the shift to Python and the introduction of robot design and programming in the class that replaced 6.001 began.

    • @mjlnr
      @mjlnr 2 года назад +7

      Sussman's explanation there, as you point out, is actually a justification of pseudoscience, not rigorous empiricism. As a trend technologically and pedagogically, it leaves something to be desired.

    • @itsthem5699
      @itsthem5699 2 года назад +11

      @@mjlnr It's really demoralizing. Basically telling us "You can no longer do things correctly as our forefathers would have; you need to poke and hack at things with no expectation until they spontaneously begin to work."

    • @ctult
      @ctult Год назад

      ​@@mjlnr There is a deep mistake in that thinking. You have presented a dilemma wherein knowledge of a system stands at odds to the scientific method. This is a false dichotomy. Systematic knowledge, or what has been called "pseudoscience" here, is required to create a scientific hypothesis and to produce a theory. It operates at a lower, more foundational level than empiricism. A similar mistake is that this stance equates empiricism with knowledge. Empiricism creates data which leads to knowledge, but empiricism is not in itself knowledge. The empirical process provides data, which is then built on top of through introspection. There are faster and better ways to achieve knowledge than the scientific method when programming. Software is not some kind of natural resource, after all. The theory and practice of programming is created by people. Using the scientific method to re-discover existing computational proofs would end up being a painstaking, slow, and inaccurate way of coming to the same conclusions that direct reflection on the rules of computation would give you.

  • @dschonhaut
    @dschonhaut 3 месяца назад +1

    Maybe worth pointing out that Berkeley’s intro to CS course is taught in Python using an online textbook that is adapted with permission from SICP! That is probably a good place to start, before you delve into function calls from the huge standard library and thousands of open source Python packages.

    • @Art-is-craft
      @Art-is-craft 26 дней назад

      Most are not interested in programming. They want to produce software that works and due to this they are missing out on 99% of the magic techniques.

  • @AlexRodriguez-gb9ez
    @AlexRodriguez-gb9ez 8 месяцев назад +10

    "For reasons no one understands Python aquired a massive library of stuff you can do"... The guy who invented Python Guido did research on what stuff was easy to understand and read in programming and they made it so that Python only has one "obvious" way to do things, and that Python wasn't powerful enough to have macros (although you could use Hy with Python to have macros). Python also had a massive standard library that was battery included ala Java. This meant that Python's community didn't fracture. Python people tended to focus on using libraries to do stuff rather than trying to do advanced LISP stuff.

  • @reijin999
    @reijin999 Год назад +8

    Modern Python is very much in the same vain as the SICP philosophy though. It's about making a large thing out of smaller things, just with less transparency. Most sophisticated Python programs start with a staggering number of import statements and those smaller modules are then glued together to build a larger program.

  • @NalaGinrut
    @NalaGinrut Год назад +11

    Python can do things easier in prototyping, but it's the different "easy" from what Scheme was introduced. You can do easy things with Python because you ignore the implementation of the library. While the easy in Scheme is to implement the same things but ingnore the low-level details. Think about Scheme only skip few layers, but Python skip much more. For Python, it is not the "hidden" behind the abstract. It's the blackbox for prototyping. For Scheme, we care about and be able to control the abstract easily.
    That's why it's a little hard to simply compare these two languages to a people without a background of CS.

    •  Год назад

      Yes, they are really two very different languages. Indeed, two different philosophies of how to get things done.

  • @annaczgli2983
    @annaczgli2983 Год назад +8

    And now times are changing again. Now I don't even have to care about Python, as GPT codes most of it. I just have to direct it appropriately.

  • @МихаилГагин-л5с
    @МихаилГагин-л5с 10 месяцев назад +8

    SICP is the best programming course, and schema is the best programming language. And python is shit, and it doesn't matter how many libraries are written to it.

    • @Art-is-craft
      @Art-is-craft 26 дней назад

      Python is fine just not in the same league.

  • @lhd7105
    @lhd7105 2 года назад +1

    So unfortunately I cannot speak this language :(
    What's the issue? Does the famed SICP book need to be rewritten for Python or something?
    Why is it that Python is still unable to be used for mobile apps or other weird spaces? Has anything been done to make this happen?

    • @RueGoG
      @RueGoG Год назад +1

      Why? Just why would you use python on mobile devices? There's a framework in python for building mobile apps, it's not very popular and I don't see a point in it. We have lots of other options, and if you want high-level language for building small-scale apps there's react native and other JS tools, which would be a faster than python, but nowhere near more native solutions.

    • @lhd7105
      @lhd7105 Год назад +1

      @@RueGoG mhm gud points
      Why? Just simply to have the joy of programming more things in the lovely Python way.
      But I suspect you know this answer already. I didn't even have to answer it.

    •  Год назад +1

      If you want a kind of a "Phyton version" of SICP, please see: Composing Programs (www.composingprograms.com/). It's the textbook for the "CS 61A: Structure and Interpretation of Computer Programs" course at Berkeley. They are using Python to teach SICP, so they made a Python version of SICP (and it's freely available on that link).

  • @nagoranerides3150
    @nagoranerides3150 Год назад +5

    In an era where people want to spend an hour or two being wrong in depth it's good to see someone brave enough to show how wrong they can be in just 7 minutes.

  • @jllucas.santos
    @jllucas.santos 2 года назад +14

    "ok?"

  • @beguiledfoil
    @beguiledfoil 2 года назад +6

    I hope no one is confused about why python is so well loved. The fact that pythonic is a synonym for beauty is highly suggestive.

    • @bicunisa
      @bicunisa Год назад +13

      Nope.

    • @alessandrorossi1294
      @alessandrorossi1294 Год назад +7

      Yes syntactic white space was a great move, you can really understand the structure of other people’s code just by understanding indentation.

    • @bicunisa
      @bicunisa Год назад +5

      @@alessandrorossi1294 Naw.

    • @nagoranerides3150
      @nagoranerides3150 Год назад +11

      Pythonic is not a synonym for beauty.

  • @遂古之初
    @遂古之初 10 месяцев назад +1

    He is old😭