Brian Kernighan (/ˈkɜːnɪhæn/; né le à Toronto, en Ontario) est un informaticien connu pour avoir coécrit le premier livre sur le langage de programmation C (avec Dennis Ritchie). Il est aussi le cocréateur des langages Awk, avec Alfred Aho et Peter Weinberger, et AMPL.
En 1969, il obtient un doctorat d'électrotechnique à l'université de Princeton, où en 2004, il occupe un poste de professeur.
En collaboration avec Lin Shen, il imagina les heuristiques bien connues pour deux problèmes d'optimisation NP-complet : partitionnement de graphe et le problème du voyageur de commerce (le premier est habituellement appelé algorithme de Kernighan-Lin, et le second est Lin-Kernighan).
Kernighan est également connu comme à l'origine de l'expression « What you see is all you get » (WYSIAYG), (littéralement « Vous n'avez que ce que vous voyez ») une variante ironique de « What you see is what you get » (WYSIWYG) (littéralement « Ce que vous voyez est ce que vous obtenez »). L'expression de Kernighan sous-entend que les systèmes WYSIWYG risquent de faire perdre à un document des informations potentiellement utiles en ne restituant que ce qui est visible.
Il a révélé à l'occasion, que c'est son propre jeu de mots qui a conduit à l'utilisation du nom « Unix » (initialement Unics') pour le système d'exploitation de Ken Thompson et Dennis Ritchie.
Hello, world, (Bonjour, le monde), un programme initialement écrit par Brian Kernighan de Bell Labs dans Un tutoriel d'introduction au B
awk, avec Alfred Aho et Peter Weinberger, et son livre The AWK Programming Language
Le langage de programmation AMPL
The Elements of Programming Style, avec
RatFor, avec P. J. Plauger
Software Tools in Pascal un livre et un ensemble d'outils pour Pascal, avec P. J. Plauger
Unix Programming Environment, un livre tutoriel avec Rob Pike
The C Programming Language, le premier livre sur le C avec Dennis Ritchie, son créateur
Le langage de composition pic pour troff
Le langage de composition eqn pour troff avec Lorinda Cherry
La pratique de la programmation, avec Rob Pike
Why Pascal is Not My Favorite Programming Language (Pourquoi le Pascal n'est pas mon langage de programmation favori), une critique populaire de Pascal, le langage de programmation de Niklaus Wirth.