In this video we'll cover SOCKET PROGRAMMING using the JAVA NIO library. We'll make an example client/server aplication where the server only requires one thread to handle multiple client connections! In the process we'll touch on CHANNELS, SELECTORS, and BUFFERS, and why byte order and ENDIANNESS matter in computer networking.Network byte order is BIG ENDIAN, but you should always confirm byte order when implementing a networking protocol. I'm Will Tollefson, a guy who loves to NEVER STOP LEARNING and teach others what I've learned. If you're enjoying the content, please LIKE, SUBSCRIBE, and SHARE! Code on GitHub: https://github.com/Will-Tollefson/yt-java/tree/master/2024/NIO%20Sockets VIDEO CHAPTERS: 0:00 Why Java NIO Sockets? 1:34 Channels and Selectors in the Server 3:33 Configuring the Selector 8:40 Client Connections 14:32 Implementing the Client 17:37 ByteBuffer Tips and Tricks 28:22 Making an Echo Server 31:18 Endianness, Big vs Little Endian