Introduction to Computational Thinking

بواسطة: MIT OpenCourseWare

Overview

This class uses revolutionary programmable interactivity to combine material from three fields creating an engaging, efficient learning solution to prepare students to be sophisticated and intuitive thinkers, programmers, and solution providers for the modern interconnected online world.

Upon completion, students are well trained to be scientific “trilinguals”, seeing and experimenting with mathematics interactively as math is meant to be seen, and ready to participate and contribute to open source development of large projects and ecosystems.

Syllabus

  • Module 1: Images, Transformations, Abstractions
    • 1.1 - Images as Data and Arrays
    • 1.2 - Abstraction
    • 1.3 - Automatic Differentiation
    • 1.4 - Transformations with Images
    • 1.5 - Transformations II: Composability, Linearity and Nonlinearity
    • 1.6 - The Newton Method
    • 1.7 - Dynamic Programming
    • 1.8 - Seam Carving
    • 1.9 - Taking Advantage of Structure
  • Module 2: Social Science & Data Science
    • 2.1 - Principal Component Analysis
    • 2.2 - Sampling and Random Variables
    • 2.3 - Modeling with Stochastic Simulation
    • 2.4 - Random Variables as Types
    • 2.5 - Random Walks
    • 2.6 - Random Walks II
    • 2.7 - Discrete and Continuous
    • 2.8 - Linear Model, Data Science, & Simulations
    • 2.9 - Optimization
  • Module 3: Climate Science
    • 3.1 - Time stepping
    • 3.2 - ODEs and parameterized types
    • 3.3 - Why we can't predict the weather
    • 3.4 - Our first climate model
    • 3.5 - GitHub & Open Source Software
    • 3.6 - Snowball Earth and hysteresis
    • 3.7 - Advection and diffusion in 1D
    • 3.8 - Resistors, stencils and climate models
    • 3.9 - Advection and diffusion in 2D
    • 3.10 - Climate Economics
    • 3.11 - Solving inverse problems

Taught by

Alan Edelman, David P. Sanders, and Charles E. Leiserson

Introduction to Computational Thinking
الذهاب الي الدورة

Introduction to Computational Thinking

بواسطة: MIT OpenCourseWare

  • MIT OpenCourseWare
  • مجانية
  • الإنجليزية
  • متاح شهادة
  • متاح في أي وقت
  • الجميع
  • N/A
8.1.2PHP Version247msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (156ms)
    • Application (89.94ms)
    • 1 x Booting (63.32%)
      156.32ms
      1 x Application (36.43%)
      89.94ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed4.69ms
      • select * from `courses` where `slug_ar` = 'introduction-to-computational-thinking' limit 1
        2.93ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. introduction-to-computational-thinking
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-04-16 22:31:07' where `id` = 559
        850μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-04-16 22:31:07
        • 1. 559
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (1)
        170μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        130μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `institutions` where `institutions`.`id` in (3) and `institutions`.`deleted_at` is null
        170μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (9) and `providers`.`deleted_at` is null
        160μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 553 limit 1
        280μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 553
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Institution
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        Cp8ciWcV8ISF0oJbOau9HFzmzUbR9kr1kWCuPbkS
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/introd...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/introduction-to-computational-thinking
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "3.14.253.99" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-ray" => array:1 [ 0 => "9317218f5abe0043-ORD" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "x-forwarded-for" => array:1 [ 0 => "3.14.253.99" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "3.14.253.99" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "9317218f5abe0043-ORD" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_X_FORWARDED_FOR" => "3.14.253.99" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "43608" "REMOTE_ADDR" => "172.70.126.53" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/introduction-to-computational-thinking" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1744842667.6711 "REQUEST_TIME" => 1744842667 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Wed, 16 Apr 2025 22:31:07 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6Imh6TXV0YTdUV1dGTWxRRElFQ0Q5cVE9PSIsInZhbHVlIjoiUWxvTVI5MkVHVUMxOHJyRkVSeVM1bnpMTEhBNXBXTmpjVFhRVUVvL0M5RWdWM1pDWGdTNUpJWW5wVUJxSVlmcEtrTHF1UVdNQ3dxcHRta09nM0tWUS90bEp2d3dFVU0vbm1kdWlkUDZZc2Y2VGpLdGV0UkNXWCtpNEhRelNsRW0iLCJtYWMiOiJjNTg1MzdhODgwZDNkNDA2NWUxMGRkNDIzY2I2Y2U0ODYwODk4NjllZTFiMWM5YjA5NzlkY2UwNjVmZThiYmM1IiwidGFnIjoiIn0%3D; expires=Thu, 17 Apr 2025 00:31:07 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6Imh6TXV0YTdUV1dGTWxRRElFQ0Q5cVE9PSIsInZhbHVlIjoiUWxvTVI5MkVHVUMxOHJyRkVSeVM1bnpMTEhBNXBXTmpjVFhRVUVvL0M5RWdWM1pDWGdTNUpJWW5wVUJxSVlmcEtrTHF1U" 1 => "laravel_session=eyJpdiI6IkJLTlorMVJQL2lZNkxIcVAyUlZZdmc9PSIsInZhbHVlIjoiMy9GVXR2ZWZMZlZLTHZ3Y09iTG85bFFYUGFmVk55SHp5c0diK2tVcmUvZ216SE5ldjM5MjkybDJocmp2WEFlUithb01iMnh0M1dic2dTc3U3Z3hZWnMzT0orc1FnYWQ1dWw5VCtnVjVXL1lIVTVEeFNLUk5XWGNtOUVuMWNyakciLCJtYWMiOiJhODY1OGRkMTVmOGUyZTY1YWQxOGI5ZGVlZThiNTRkNmZjN2VkMTVmYmQzNmQ1MTE5NmI2YTA1MjhhOWViMDY1IiwidGFnIjoiIn0%3D; expires=Thu, 17 Apr 2025 00:31:07 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6IkJLTlorMVJQL2lZNkxIcVAyUlZZdmc9PSIsInZhbHVlIjoiMy9GVXR2ZWZMZlZLTHZ3Y09iTG85bFFYUGFmVk55SHp5c0diK2tVcmUvZ216SE5ldjM5MjkybDJocmp2WEFlUith" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6Imh6TXV0YTdUV1dGTWxRRElFQ0Q5cVE9PSIsInZhbHVlIjoiUWxvTVI5MkVHVUMxOHJyRkVSeVM1bnpMTEhBNXBXTmpjVFhRVUVvL0M5RWdWM1pDWGdTNUpJWW5wVUJxSVlmcEtrTHF1UVdNQ3dxcHRta09nM0tWUS90bEp2d3dFVU0vbm1kdWlkUDZZc2Y2VGpLdGV0UkNXWCtpNEhRelNsRW0iLCJtYWMiOiJjNTg1MzdhODgwZDNkNDA2NWUxMGRkNDIzY2I2Y2U0ODYwODk4NjllZTFiMWM5YjA5NzlkY2UwNjVmZThiYmM1IiwidGFnIjoiIn0%3D; expires=Thu, 17-Apr-2025 00:31:07 GMT; path=/XSRF-TOKEN=eyJpdiI6Imh6TXV0YTdUV1dGTWxRRElFQ0Q5cVE9PSIsInZhbHVlIjoiUWxvTVI5MkVHVUMxOHJyRkVSeVM1bnpMTEhBNXBXTmpjVFhRVUVvL0M5RWdWM1pDWGdTNUpJWW5wVUJxSVlmcEtrTHF1U" 1 => "laravel_session=eyJpdiI6IkJLTlorMVJQL2lZNkxIcVAyUlZZdmc9PSIsInZhbHVlIjoiMy9GVXR2ZWZMZlZLTHZ3Y09iTG85bFFYUGFmVk55SHp5c0diK2tVcmUvZ216SE5ldjM5MjkybDJocmp2WEFlUithb01iMnh0M1dic2dTc3U3Z3hZWnMzT0orc1FnYWQ1dWw5VCtnVjVXL1lIVTVEeFNLUk5XWGNtOUVuMWNyakciLCJtYWMiOiJhODY1OGRkMTVmOGUyZTY1YWQxOGI5ZGVlZThiNTRkNmZjN2VkMTVmYmQzNmQ1MTE5NmI2YTA1MjhhOWViMDY1IiwidGFnIjoiIn0%3D; expires=Thu, 17-Apr-2025 00:31:07 GMT; path=/; httponlylaravel_session=eyJpdiI6IkJLTlorMVJQL2lZNkxIcVAyUlZZdmc9PSIsInZhbHVlIjoiMy9GVXR2ZWZMZlZLTHZ3Y09iTG85bFFYUGFmVk55SHp5c0diK2tVcmUvZ216SE5ldjM5MjkybDJocmp2WEFlUith" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "Cp8ciWcV8ISF0oJbOau9HFzmzUbR9kr1kWCuPbkS" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/introduction-to-computational-thinking" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]