Uploaded December 2020 | Updated September 2026, 2 weeks ago
Patreon ➤ patreon.com/jacobsorber
Courses ➤ jacobsorber.thinkific.com
Website ➤ jacobsorber.com
---
The Call Stack and Stack Overflows (example in C) // Students usually hear about the stack early on, but many don't really take the time to look at how it works until it gives them trouble. This video shows you how the call stack works and what a stack overflow is (example C code included).
Related Videos:
Stacks: youtube.com/watch?v=A4sRhuGkRb0
Make Videos:
+ youtu.be/a8mPKBxQ9No
+ youtu.be/G5dNorAoeCM
***
Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
About me: I'm a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
More about me and what I do:
jacobsorber.com
https://people.cs.clemson.edu/~jsorber/
http://persist.cs.clemson.edu/
To Support the Channel:
+ like, subscribe, spread the word
+ contribute via Patreon --- [patreon.com/jacobsorber]
Source code is also available to Patreon supporters. --- [jsorber-youtube-source.herokuapp.com/]
Patreon ➤ patreon.com/jacobsorber
Courses ➤ jacobsorber.thinkific.com
Website ➤ jacobsorber.com
---
The Call Stack and Stack Overflows (example in C) // Students usually hear about the stack early on, but many don't really take the time to look at how it works until it gives them trouble. This video shows you how the call stack works and what a stack overflow is (example C code included).
Related Videos:
Stacks: youtube.com/watch?v=A4sRhuGkRb0
Make Videos:
+ youtu.be/a8mPKBxQ9No
+ youtu.be/G5dNorAoeCM
***
Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
About me: I'm a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
More about me and what I do:
jacobsorber.com
https://people.cs.clemson.edu/~jsorber/
http://persist.cs.clemson.edu/
To Support the Channel:
+ like, subscribe, spread the word
+ contribute via Patreon --- [patreon.com/jacobsorber]
Source code is also available to Patreon supporters. --- [jsorber-youtube-source.herokuapp.com/]
![Can I use connect with UDP sockets?
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Can I use connect with UDP sockets? // In my last video about sending and receiving UDP packets, I said we dont use connect, but we actually can. In this video I show you how and talk about why I typically dont.
Related Videos:
Send/Recv UDP packets: https://youtu.be/5PPfy-nUWIM
***
Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
About me: Im a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
More about me and what I do:
https://www.jacobsorber.com
https://people.cs.clemson.edu/~jsorber/
http://persist.cs.clemson.edu/
To Support the Channel:
+ like, subscribe, spread the word
+ contribute via Patreon [https://www.patreon.com/jacobsorber]
Source code is also available to Patreon supporters. [https://jsorber-youtube-source.herokuapp.com/] Can I use connect with UDP sockets?](https://i.ytimg.com/vi/judFa1oDqUA/mqdefault.jpg)
![What is a function prototype in C
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
What is a function prototype in C // Function prototypes often catch new C and C++ programmers by surprise. This video is an attempt to clear things up.
***
Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
About me: Im a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
More about me and what I do:
https://www.jacobsorber.com
https://people.cs.clemson.edu/~jsorber/
http://persist.cs.clemson.edu/
To Support the Channel:
+ like, subscribe, spread the word
+ contribute via Patreon [https://www.patreon.com/jacobsorber]
Source code is also available to Patreon supporters. [https://jsorber-youtube-source.herokuapp.com/] What is a function prototype in C](https://i.ytimg.com/vi/jxW7iwCtBZk/mqdefault.jpg)
![Scanf scansets, and reading a CSV file in C (fixed)
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Scanf scansets, and reading a CSV file in C // Lets talk a bit more about scanf, specifically how to get more control in how scanf reads in strings. In fact, lets read in a CSV file and do something with it.
Related Videos:
Scanf video: https://youtu.be/xedk5KXg0VI
***
Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
About me: Im a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
More about me and what I do:
https://www.jacobsorber.com
https://people.cs.clemson.edu/~jsorber/
http://persist.cs.clemson.edu/
To Support the Channel:
+ like, subscribe, spread the word
+ contribute via Patreon [https://www.patreon.com/jacobsorber]
Source code is also available to Patreon supporters. [https://jsorber-youtube-source.herokuapp.com/] Scanf scansets, and reading a CSV file in C (fixed)](https://i.ytimg.com/vi/k0BIzHDBkwE/mqdefault.jpg)
![Make your own 50k YouTube Play Button (C / curses tutorial)
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Make your own 50k YouTube Play Button // Its time to celebrate, and what better way than by adding colors and mouse events to my previous curses playbutton. YouTube doesnt give out 50k play buttons, but we can make our own. This tutorial takes you through updating my previous 25k playbutton, showing you how to set colors with attron and attroff, and how to handle mouse events, using mouse masks and mouse events.
Previous button: https://www.youtube.com/watch?v=p63O8g4beBo
And, thanks, Atumtek: https://www.atumtek.com/
***
Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
About me: Im a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
More about me and what I do:
https://www.jacobsorber.com
https://people.cs.clemson.edu/~jsorber/
http://persist.cs.clemson.edu/
To Support the Channel:
+ like, subscribe, spread the word
+ contribute via Patreon [https://www.patreon.com/jacobsorber]
Source code is also available to Patreon supporters. [https://jsorber-youtube-source.herokuapp.com/] Make your own 50k YouTube Play Button (C / curses tutorial)](https://i.ytimg.com/vi/kYvVHlMMF_A/mqdefault.jpg)
![Why that Perfect Makefile Doesnt Work.
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Why that Perfect Makefile Doesnt Work. Makefiles are notorious for giving students headaches, when they look right, but dont act right. The problem is often whitespace. This video explains this issue and shows you how to find and fix these errors quickly so you can get back to developing software.
Related Video:
Simulator example: https://youtu.be/zyQXhPUM4hc
***
Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
About me: Im a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
More about me and what I do:
https://www.jacobsorber.com
https://people.cs.clemson.edu/~jsorber/
http://persist.cs.clemson.edu/
To Support the Channel:
+ like, subscribe, spread the word
+ contribute via Patreon [https://www.patreon.com/jacobsorber]
+ rep the channel with nerdy merch [https://teespring.com/stores/jacob-sorbers-store]
Source code is also available to Patreon supporters. [https://jsorber-youtube-source.herokuapp.com/] Why that Perfect Makefile Doesnt Work.](https://i.ytimg.com/vi/l5KqE0DMG-Q/mqdefault.jpg)

![The Most Useless Keyword in C?
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
The Most Useless Keyword in C? // The C language has a lot of keywords. Most are pretty useful, but as languages evolve some keywords become less useful, and this is definitely the case in C. This video takes you through a few examples of keywords that you may never need to use as a C programmer.
Related Videos:
extern: https://youtu.be/ySY_FlA7EvA
stdint.h: https://youtu.be/iX1uGr6Si0E
***
Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
About me: Im a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
More about me and what I do:
https://www.jacobsorber.com
https://people.cs.clemson.edu/~jsorber/
http://persist.cs.clemson.edu/
To Support the Channel:
+ like, subscribe, spread the word
+ contribute via Patreon [https://www.patreon.com/jacobsorber]
Source code is also available to Patreon supporters. [https://jsorber-youtube-source.herokuapp.com/] The Most Useless Keyword in C?](https://i.ytimg.com/vi/lbq2lntAJIE/mqdefault.jpg)
![Real Programming vs Tutorials
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Real Programming vs Tutorials // If you watch a lot of tutorials and feel like youll never be as fast and smooth as the programmers on the videos, this is the video for you.
***
Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
About me: Im a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
More about me and what I do:
https://www.jacobsorber.com
https://people.cs.clemson.edu/~jsorber/
http://persist.cs.clemson.edu/
To Support the Channel:
+ like, subscribe, spread the word
+ contribute via Patreon [https://www.patreon.com/jacobsorber]
+ rep the channel with nerdy merch [https://teespring.com/stores/jacob-sorbers-store]
Source code is also available to Patreon supporters. [https://jsorber-youtube-source.herokuapp.com/] Real Programming vs Tutorials](https://i.ytimg.com/vi/liWdn92SAvs/mqdefault.jpg)
![Debugging Embedded Systems With GDB?
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Debugging Embedded Systems With GDB? // Yep. This video will show you one example of how to use real debugging tools (like gdb) with code running on a microcontroller (in this case a TI MSP430).
Related Videos: https://www.youtube.com/watch?v=aC37UE7edP0&list=PL9IEJIKnBJjEcPAz6fss-Hx0TLytCOMVC
***
Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
About me: Im a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
More about me and what I do:
https://www.jacobsorber.com
https://people.cs.clemson.edu/~jsorber/
http://persist.cs.clemson.edu/
To Support the Channel:
+ like, subscribe, spread the word
+ contribute via Patreon [https://www.patreon.com/jacobsorber]
Source code is also available to Patreon supporters. [https://jsorber-youtube-source.herokuapp.com/] Debugging Embedded Systems With GDB?](https://i.ytimg.com/vi/m4agpY_w2y8/mqdefault.jpg)
![Requesting your help. Did I fix my audio issues?
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Some of you have complained about audio issues — variable loudness or too quiet. In this video, Im trying a few things to try to fix this. Let me know if you like this better.
***
Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
About me: Im a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
More about me and what I do:
https://www.jacobsorber.com
https://people.cs.clemson.edu/~jsorber/
http://persist.cs.clemson.edu/
To Support the Channel:
+ like, subscribe, spread the word
+ contribute via Patreon [https://www.patreon.com/jacobsorber]
Source code is also available to Patreon supporters. [https://jsorber-youtube-source.herokuapp.com/] Requesting your help. Did I fix my audio issues?](https://i.ytimg.com/vi/mWH0ZbsDa4Q/mqdefault.jpg)
![Debug faster with gdb layouts (TUI)
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Debug faster with gdb layouts (TUI) // If you ever get tired of typing list after every command in gdb, this is the video for you. Here, I describe the GDB Terminal User Interface (or TUI) which, many students dont realize is there. It allows you to see the C-source and assembly source while you step through your code, and the views are configurable through the layout command.
Related Videos:
GDB: https://youtu.be/mfmXcbiRs0E
More GDB: https://youtu.be/gYMvCSCfr38
Even More GDB: https://youtu.be/zkV-MoTosPE
Curses: https://www.youtube.com/watch?v=p63O8g4beBo
***
Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
About me: Im a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
More about me and what I do:
https://www.jacobsorber.com
https://people.cs.clemson.edu/~jsorber/
http://persist.cs.clemson.edu/
To Support the Channel:
+ like, subscribe, spread the word
+ contribute via Patreon [https://www.patreon.com/jacobsorber]
Source code is also available to Patreon supporters. [https://jsorber-youtube-source.herokuapp.com/] Debug faster with gdb layouts (TUI)](https://i.ytimg.com/vi/mm0b_H0KIRw/mqdefault.jpg)