Přiklonil bych se již zde zmíněné tvorbě vlastního protokolu.
Naučíš se jak funguje komunikace po síti, budeš mít volnost cokoliv dodělat jakkoliv budeš chtít (šifrování, autentizaci, přenos morseovky, přenos pohybu myši, synchronizace obrazovky ... prostě cokoliv tě napadne

).
Používáním knihoven se naučíš leda tak používat knihovny (jak TU konkrétní nyní, tak i obecnou vazbu problém -> google -> existující knihovna -> zbastlené řešení).
Mysím že je lepší dospět k potřebě využití existujícího řešení tak nějak logickým závěrem na základě vlastních vědomostí a zkušeností... když se naučíš na každou prkotinu hledat knihovny, budou tvý produkty plný zbastleností který jsi našel přes google, místo toho, aby jsi udělal co zvládneš dobře sám, a na to co podle odhadu je vhodnější existující řešení pak použiješ existující řešení.... asi tak.