Uploaded October 2020 | Updated September 2026, 1 week ago
Patreon ➤ patreon.com/jacobsorber
Courses ➤ jacobsorber.thinkific.com
Website ➤ jacobsorber.com
---
Does it matter how I write my infinite loops? (for vs. while?) // Programmers new and old fuss too much about how best to write their infinite loops. Should I use while loop syntax or should I use the for loop syntax? This video addresses this question and hopefully puts it to rest forever. We have bigger issues to sort out.
***
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]
+ rep the channel with nerdy merch --- [teespring.com/stores/jacob-sorbers-store]
Source code is also available to Patreon supporters. --- [jsorber-youtube-source.herokuapp.com/]
Patreon ➤ patreon.com/jacobsorber
Courses ➤ jacobsorber.thinkific.com
Website ➤ jacobsorber.com
---
Does it matter how I write my infinite loops? (for vs. while?) // Programmers new and old fuss too much about how best to write their infinite loops. Should I use while loop syntax or should I use the for loop syntax? This video addresses this question and hopefully puts it to rest forever. We have bigger issues to sort out.
***
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]
+ rep the channel with nerdy merch --- [teespring.com/stores/jacob-sorbers-store]
Source code is also available to Patreon supporters. --- [jsorber-youtube-source.herokuapp.com/]
![Should you avoid linked lists? (linked list vs arrays)
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
#StayHome #HappyCoding
Lets pit the linked list against the array. We all learn how to create linked lists and other linked data structures. We may have also heard about their asymptotically-fast insert and delete operations. But, linked lists flexibility comes at a cost. This video takes you through some of the downsides, including additional memory usage, poor memory locality, and slower traversal speeds. I also include some example code (in C) to demonstrate these differences in contrast to arrays. (uses getrusage and make)
It also shows you how to define a preprocessor define from the command-line (-D).
Related Videos:
Linked Lists: https://www.youtube.com/watch?v=VOpjAHCee7c
Linked Lists2: https://www.youtube.com/watch?v=KFbm6lkMhgw
Measuring Memory Usage: https://www.youtube.com/watch?v=Os5cK0H8EOA
Makefiles: https://www.youtube.com/watch?v=a8mPKBxQ9No
Automatic Variables in Make: https://www.youtube.com/watch?v=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: 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/] Should you avoid linked lists? (linked list vs arrays)](https://i.ytimg.com/vi/bXsKnUGndEU/mqdefault.jpg)

![The Good and Bad of Automatic Make Rules
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
The Good and Bad of Automatic Make Rules // Youve made a makefile, but did you know that make has a huge list of built-in automatic rules that you can use — and they can sometimes be really annoying. Lets talk about it.
Related Videos:
Make intro: https://youtu.be/a8mPKBxQ9No
***
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 Good and Bad of Automatic Make Rules](https://i.ytimg.com/vi/bdO9mEYeaQw/mqdefault.jpg)
![Using the Smallest C Program to Better Understand Your System (with pmap, vmmap, and strace).
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Using the Smallest C Program to Better Understand Your System (with pmap, vmmap, and strace). // In response to a student question, this video shows you how to compile programs without the overhead of the C standard library, which is often useful in understanding how your operating system works.
***
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/] Using the Smallest C Program to Better Understand Your System (with pmap, vmmap, and strace).](https://i.ytimg.com/vi/cSC7W2MwKqw/mqdefault.jpg)
![How do I access a single bit?
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
How do I access a single bit? // Bitwise operations can be a bit frustrating for new programmers. This video shows you a few ways to access a single bit, usually within a bitfield or bitvector.
Related Videos:
Bit Fields: https://youtu.be/aMAM5vL7wTs
***
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/] How do I access a single bit?](https://i.ytimg.com/vi/ciio80nkjB8/mqdefault.jpg)
![PPM might be the best DIY image format (at least for beginners).
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
PPM might be the best DIY image format (at least for beginners) // Before you tell me Im crazy — I know its bloated — hear me out. PPMs are super simple. You arent going to want to use them directly on your website, but for the beginner its hard to beat how straightforward they are and how easy it is to get in and mess around with the images. This video describes two PPM formats (P3 and P6).
Related Videos:
Byte Order: https://youtu.be/OoHich9BPxg
Hex Editor: https://youtu.be/-eDY7yh-CyA
GiveInternet.org: consider giving the gift of Internet access and tech literacy. All donations made through the following link will be matched up to $30k USD.
https://giveinternet.org/JacobSorber
***
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/] PPM might be the best DIY image format (at least for beginners).](https://i.ytimg.com/vi/dCqIKDo_Hkc/mqdefault.jpg)
![Why do programmers use hexadecimal numbers?
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Ever wondered about hex. Hexadecimal numbers can be intimidating to people just learning to program. This video explains what they are, how they work, and when to use them, as a more convenient replacement for binary numbers, when representing memory and network addresses, and when using bitmasks, RGB colors, and anytime when the binary representation matters.
***
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 do programmers use hexadecimal numbers?](https://i.ytimg.com/vi/dPxCGlW9lfM/mqdefault.jpg)
![Easy Networking in C (libcurl)
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Easy Networking in C (libcurl) // Network programming is fun, but it can be complicated and sometimes you just want to quickly add some communication to your programs, or add some download functionality. This programming tutorial shows you how to do common networking or network programming tasks in C the easy way, with libcurl.
Related Videos:
Socket Client: https://youtu.be/bdIiTxtMaKA
Other network programming videos: https://www.youtube.com/playlist?list=PL9IEJIKnBJjH_zM5LnovnoaKlXML5qh17
Makefile videos: https://www.youtube.com/playlist?list=PL9IEJIKnBJjEPxenuhKU7J5smY4XjFnyg
***
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/] Easy Networking in C (libcurl)](https://i.ytimg.com/vi/daA-KBKfJ_o/mqdefault.jpg)

![Student programmers, ChatGPT is not your friend
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Student programmers, ChatGPT is not your friend // All the rage or an apocalyptic harbinger of doom, people are loving and hating generative AI. This video talks about why using generative AI tools as a student programmer is probably a not a great idea—useful to a skilled developer, but as a student, not your friend.
***
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/] Student programmers, ChatGPT is not your friend](https://i.ytimg.com/vi/dkV01hBdhZE/mqdefault.jpg)
![Memory Allocator Errors and XMalloc
Patreon ➤ https://www.patreon.com/jacobsorber
Courses ➤ https://jacobsorber.thinkific.com
Website ➤ https://www.jacobsorber.com
Memory Allocator Errors and XMalloc // New programmers are sometimes confused to stumble across xmalloc in other projects. They also tend to forget to check their code for memory allocation errors. This video shows you how to use xmalloc to keep track of those errors, and hopefully give you cleaner, easier-to-read code.
Related Videos:
Allocating too much memory: https://youtu.be/Fq9chEBQMFE
Shims: https://youtu.be/5HuM_eVjFJo
***
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/] Memory Allocator Errors and XMalloc](https://i.ytimg.com/vi/dpjt_D8xcPU/mqdefault.jpg)