Chris Kanich
Chris Kanich
  • 55
  • 492 137
CS 484 Fall 23: blind coding of HW2 (React)
This is me doing the React homework assignment and talking through my thought process. It should be helpful for people to understand how to both work through a React project as well as understand the problem solving strategies one might use during a programming assignment.
มุมมอง: 476

วีดีโอ

APIs: the web is your computer
มุมมอง 55811 หลายเดือนก่อน
APIs: the web is your computer
Secure Web App Dev: Homework 1 blind coding
มุมมอง 608ปีที่แล้ว
In this video I do the crud assignment currently available at 484.cs.uic.edu/homeworks/homework1/ after not having looked at the source code or requirements closely. I talk through everything that I'm doing so you can get an idea of how to think about and debug this type of program.
JavaScript for CS Majors
มุมมอง 690ปีที่แล้ว
Already know C , Java, or Python? Want to pick up JavaScript? Here's what to watch out for. Take a look at javascript.info for a good resource for picking up JS as an experienced developer.
HTTP: The Protocol that Binds
มุมมอง 1Kปีที่แล้ว
HTTP is the basis for all of the cool things we do on the web and more. This video introduces the fundamentals fo HTTP and demos how to see it in action in a browser and a text based http client.
Secure Web App Dev: Welcome to CS 484 Fall 23!
มุมมอง 891ปีที่แล้ว
What is this course? Why is this course? This video is an introduction to my course on secure web application development, and provides a short motivation for why a computer science major ought to take it. Course website: 484.cs.uic.edu/
Adversarial Tracking on the Web: History Sniffing and FIngerprinting
มุมมอง 603ปีที่แล้ว
Adversarial Tracking on the Web: History Sniffing and FIngerprinting
Everything you should know about deadlock in three minutes or less
มุมมอง 16K3 ปีที่แล้ว
Everything you should know about deadlock in three minutes or less
Everything you should know about race conditions in two minutes or less
มุมมอง 3.2K3 ปีที่แล้ว
Everything you should know about race conditions in two minutes or less
Everything you should know about thread safety in 2 minutes or less
มุมมอง 20K3 ปีที่แล้ว
Everything you should know about thread safety in 2 minutes or less
Using visual debugging and Factorio to understand multithreaded programs
มุมมอง 2.3K3 ปีที่แล้ว
Source code used in this video: github.com/csatuic/vscode-lectures/tree/master/chapter12
How to understand & implement read-write locks and bounded buffers
มุมมอง 12K3 ปีที่แล้ว
How to understand & implement read-write locks and bounded buffers
The right tool for the job: when to use processes, when to use threads, and why!
มุมมอง 2.2K3 ปีที่แล้ว
The right tool for the job: when to use processes, when to use threads, and why!
Taking complete control: why IO multiplexing works well for webservers and GUIs.
มุมมอง 7K3 ปีที่แล้ว
Taking complete control: why IO multiplexing works well for webservers and GUIs.
Concurrency: the cause of, and solution to, lots of problems in computing.
มุมมอง 2.4K3 ปีที่แล้ว
Concurrency: the cause of, and solution to, lots of problems in computing.
Concurrency: what's good about it, what's hard about it.
มุมมอง 1.5K3 ปีที่แล้ว
Concurrency: what's good about it, what's hard about it.
what's the difference between processes, threads, and io multiplexing?
มุมมอง 9K3 ปีที่แล้ว
what's the difference between processes, threads, and io multiplexing?
A system programmer's introduction to the world wide web
มุมมอง 1.8K3 ปีที่แล้ว
A system programmer's introduction to the world wide web
The Linux socket API explained
มุมมอง 37K3 ปีที่แล้ว
The Linux socket API explained
The Internet just plain DUNKS on the phone network. Here's why.
มุมมอง 9973 ปีที่แล้ว
The Internet just plain DUNKS on the phone network. Here's why.
Playing nice with others: the ONE WEIRD TRICK that makes the whole Internet not explode
มุมมอง 1.1K3 ปีที่แล้ว
Playing nice with others: the ONE WEIRD TRICK that makes the whole Internet not explode
How do we make the Internet work? Like other hard problems! We break it down into smaller problems.
มุมมอง 1.3K3 ปีที่แล้ว
How do we make the Internet work? Like other hard problems! We break it down into smaller problems.
A system design approach to understanding what's so AWESOME about the Internet
มุมมอง 1.6K3 ปีที่แล้ว
A system design approach to understanding what's so AWESOME about the Internet
understanding mmap, the workhorse behind keeping memory access efficient in linux
มุมมอง 56K3 ปีที่แล้ว
understanding mmap, the workhorse behind keeping memory access efficient in linux
What does it take to design a memory allocator? Dynamic Memory Allocation System Design
มุมมอง 22K3 ปีที่แล้ว
What does it take to design a memory allocator? Dynamic Memory Allocation System Design
what's in a heap? simple malloc implementation internals explained
มุมมอง 20K3 ปีที่แล้ว
what's in a heap? simple malloc implementation internals explained
What makes a dynamic memory allocator any good? Systems Programming Lectures
มุมมอง 2.5K3 ปีที่แล้ว
What makes a dynamic memory allocator any good? Systems Programming Lectures
Demystifying Page Tables - Computer Systems Programming Course
มุมมอง 4.6K3 ปีที่แล้ว
Demystifying Page Tables - Computer Systems Programming Course
Page tables for your page tables: understanding how multi level page tables work
มุมมอง 15K3 ปีที่แล้ว
Page tables for your page tables: understanding how multi level page tables work
The magic of the page fault: understanding demand paging of virtual memory in linux
มุมมอง 8K3 ปีที่แล้ว
The magic of the page fault: understanding demand paging of virtual memory in linux

ความคิดเห็น

  • @AlexN2022
    @AlexN2022 10 วันที่ผ่านมา

    we should not need separate not_full and not-empty conditional variables. Also probably should avoid signaling if queue size wasn't empty or full before out change.

  • @AlexN2022
    @AlexN2022 10 วันที่ผ่านมา

    using pthread_mutex in place of a Posix semaphore though, we have one process (first reader) locking a mutex and a different process (last leaving reader) unlocking it. This is not allowed with mutexes. Which is why we would usually use semaphore(1) instead

  • @krispyChkn
    @krispyChkn 14 วันที่ผ่านมา

    Doubt: the tcp handshake that happens between the client and server is happening on the listen stage or on each accept stage? can you explain this if possible or direct me to a resource from where i can understand this better. Thanks for the amazing explaination.

  • @EdchelStephenNini
    @EdchelStephenNini 17 วันที่ผ่านมา

    Thank you sir!

  • @Karim-nq1be
    @Karim-nq1be 20 วันที่ผ่านมา

    Very clear explanation, thank you very much.

  • @kennethcarvalho3684
    @kennethcarvalho3684 23 วันที่ผ่านมา

    How does a process know rhat a signal has been sent to it?

  • @kennethcarvalho3684
    @kennethcarvalho3684 23 วันที่ผ่านมา

    Is v-node the same as i-node

  • @mhv4315
    @mhv4315 23 วันที่ผ่านมา

    Great video, thank you

  • @ChristopherBruns-o7o
    @ChristopherBruns-o7o 23 วันที่ผ่านมา

    5:48 'As application developers we don't need to know how it works, just that it does', lol what? Who knows how it works then if not application developers? This is probably why so many aiming for entry level position have trouble landing work... "Uhm sorry sir I don't know how it works just that it does - that'll be $75/hour please" - If i google how to install a door I generally am expecting the tutor to know how to install a door. Is there an analogy for the difference in unix and af_inet sockets? At my next programmer interview I just answer each problem with 'click download', cheers!

  • @commondenomvideos9604
    @commondenomvideos9604 23 วันที่ผ่านมา

    Damnnn i havent been in UIC since 2017 but we once talked randomy for half an hour at your office while i was looking for another professor, and you shared your thoughts on getting a masters with me. Hope youre doing well Mr Kanich

  • @araz911
    @araz911 25 วันที่ผ่านมา

    ...

  • @obama213
    @obama213 หลายเดือนก่อน

    nice train example!

  • @shitshow_1
    @shitshow_1 หลายเดือนก่อน

    This is the finest video on GOT, PLT topics. Thanks for your efforts.

  • @KFRogers263
    @KFRogers263 หลายเดือนก่อน

    Really appreciate the clarification on the server side of the two different fd's. I think that was muddy in my head and now with the diagram and your explaining the difference, it all makes more sense!\

  • @volovodov
    @volovodov หลายเดือนก่อน

    > Talks about Linux > Is on Windows mfw

  • @gemini_537
    @gemini_537 หลายเดือนก่อน

    Gemini 1.5 Pro: This lecture is about memory mapping (mmap) and its role in virtual memory. The speaker, Chris Kanich, explains that memory mapping is a technique that allows a process to access a file as if it were directly mapped into its memory address space. This means that the process can read and write to the file using normal memory access instructions, without having to explicitly call read or write system calls. [1,2] One of the benefits of memory mapping is that it can improve the efficiency of memory access. When a process reads from a file using traditional read system calls, the data must be copied from the kernel address space to the user address space. This copying can be time-consuming. With memory mapping, the data is already in the process's address space, so there is no need to copy it. [1,2] Another benefit of memory mapping is that it can simplify the process of sharing memory between processes. Two processes can map the same file into their respective address spaces, and any changes made by one process will be immediately visible to the other. This can be useful for things like shared libraries, which can be mapped into the address space of multiple processes at the same time. [2] The lecture also discusses the concept of copy-on-write (COW). COW is a technique that allows multiple processes to share a read-only page of memory. The first process to write to the page will cause a page fault, and the kernel will create a private copy of the page for the writing process. This means that the original page can still be shared by other processes, and the writing process will not affect them. [2] Overall, memory mapping is a powerful technique that can improve the efficiency of memory access and simplify the process of sharing memory between processes.

  • @askinc102
    @askinc102 หลายเดือนก่อน

    Great explanation Chris. Keep uploading.

  • @sheldonhage726
    @sheldonhage726 หลายเดือนก่อน

    I've been doing packet decodes from packet decoders where first introduced (really before Ethernet was invented) and have read and watched seemingly countless examples of tutorials on this subject. This is easily the best one anywhere.

  • @AFY_OUN
    @AFY_OUN หลายเดือนก่อน

    I'm soo in love with your way of teaching this is so unteresting !

  • @tengjiang8922
    @tengjiang8922 หลายเดือนก่อน

    Great lecture! I'm wondering why is spawning subprocesses for ulimit and wc here?

  • @tengjiang8922
    @tengjiang8922 2 หลายเดือนก่อน

    Thank you. Please keep sharing!

  • @Fracasse-0x13
    @Fracasse-0x13 2 หลายเดือนก่อน

    15:00

  • @AadityaSPatil
    @AadityaSPatil 2 หลายเดือนก่อน

    This is probably the most in-depth (and clear) explanation of sockets I've seen yet. Thank you very very much.

  • @erenyeager4452
    @erenyeager4452 2 หลายเดือนก่อน

    Hello, Is the entire playlist here on your channel?

  • @kblmn
    @kblmn 2 หลายเดือนก่อน

    great video.this video clicked the javascript event loop for me.

  • @kafoby8732
    @kafoby8732 2 หลายเดือนก่อน

    Thank you for making these lectures FREE!!

  • @alexkfridges
    @alexkfridges 2 หลายเดือนก่อน

    I really wish you didnt waffle on about a separate topic for 3 minutes in the middle

  • @nicolaskeroack7860
    @nicolaskeroack7860 2 หลายเดือนก่อน

    I have few words: crystal clear

  • @sayansivakumaran
    @sayansivakumaran 2 หลายเดือนก่อน

    Wanted to add in another thank you for all of your videos. They're really helpful for teaching myself material that I never had the opportunity to take classes for in college :)

  • @urbankoistinen5688
    @urbankoistinen5688 2 หลายเดือนก่อน

    It is also worthwhile to test that the system does what the documentation seems to imply it should do. Try mmap on a large file using different flags, see what happens when the file is cashed in main memory.

  • @DimaLifeIsGood
    @DimaLifeIsGood 3 หลายเดือนก่อน

    Finally I found a channel that was looking for a long time. Thank you 🙏

  • @happygofishing
    @happygofishing 3 หลายเดือนก่อน

    Good video

  • @photopro8764
    @photopro8764 3 หลายเดือนก่อน

    Every word of this video is gold! Good job explaining it.

  • @OUESLATIMohamedAmine-u7p
    @OUESLATIMohamedAmine-u7p 3 หลายเดือนก่อน

    what is the name of the book please ?

  • @grinlex
    @grinlex 3 หลายเดือนก่อน

    atomic?

  • @AmolGautam
    @AmolGautam 3 หลายเดือนก่อน

    thanks for this.

  • @AmolGautam
    @AmolGautam 3 หลายเดือนก่อน

    Thanks

  • @janshaka
    @janshaka 3 หลายเดือนก่อน

    Thank you!

  • @parimi001
    @parimi001 3 หลายเดือนก่อน

    This is the gold mine I have it. Kudos to the instructor. ❤it

  • @PUB5T0MP
    @PUB5T0MP 4 หลายเดือนก่อน

    So good.

  • @louvelpaul2290
    @louvelpaul2290 4 หลายเดือนก่อน

    For anyone wondering, he's using the example coming from Computer System: A Programmers Perspective !

  • @alex_d_lee
    @alex_d_lee 4 หลายเดือนก่อน

    this is so good

  • @User-ty2ml
    @User-ty2ml 4 หลายเดือนก่อน

    Beautiful & Unbelievable, how on earth you made it so simple !!!!

  • @deez_nu1s
    @deez_nu1s 5 หลายเดือนก่อน

    nice explanation man, keep up the analogies! <3

  • @HonghuaYang
    @HonghuaYang 5 หลายเดือนก่อน

    Another way to fix compilation error of multiple definition of `x', one can add `extern` to `int x` in weaklibrary.c. e.g., `extern int x`.

  • @josiaskas
    @josiaskas 5 หลายเดือนก่อน

    simply the best 👏🏾

  • @wonderfulworld2475
    @wonderfulworld2475 5 หลายเดือนก่อน

    When someone on TH-cam compress your 4 hour lecture into 20mns :D

  • @thinkingcitizen
    @thinkingcitizen 5 หลายเดือนก่อน

    chris you are a talented teacher, you should learn all areas of ECE and make lectures for all topics!

  • @victoriatfarrell
    @victoriatfarrell 5 หลายเดือนก่อน

    Thank you so much for sharing!

  • @guru.prasath
    @guru.prasath 5 หลายเดือนก่อน

    Very good. keep going. Thanks.