OpenFlow SDN lets engineers control an entire network of switches from a centralized point, but that comes with its own challenges. Communication between controllers and switches can be complicated and error prone. That's where network programming languages Frenetic and Pyretic come in.
Princeton professor Jennifer Rexford and her team of researchers have developed languages that simplify the process of controller-switch communications by creating abstractions of groups of switches that can send and receive the same messages and rules. The process brings the controller more in tune with the state of the network. The less complicated communication system also makes it easier for developers to create controller applications. In other words, Frenetic and Pyretic mean that centralized control doesn't have to mean a hectic storm of commands flying about the network.
Check out Rexford's full story and her journey to developing both Frenetic and Pyretic.