Blog by nikic. Find me on GitHub, StackOverflow and Twitter. Learn more about me.
« Back to article overview.

About Me

Hi! My name is Nikita Popov, but you’ll mostly meet me as nikic on the internet. I’m a senior software engineer at Red Hat, working on LLVM, Clang and Rust.

Before that, I worked at JetBrains as a core developer for the PHP project. I studied computer science and physics at the Technical University of Berlin.

Feel free to contact me via nikic@php.net. Alternatively you can usually find me on the LLVM Discord.

Projects

My most popular open-source projects, sorted by stars:

  • PHP-Parser – A PHP parser written in PHP
  • FastRoute – Fast request router for PHP
  • scalar_objects – Extension that adds support for method calls on primitive types in PHP
  • iter – Iteration primitives using generators
  • php-ast – Extension exposing PHP 7 abstract syntax tree
  • PHP-Fuzzer – A fuzzer for PHP libraries

I also maintain the LLVM compile-time tracker.

Accepted PHP proposals

PHP 8.2:

PHP 8.1:

PHP 8.0:

PHP 7.4:

PHP 7.3:

PHP 7.2:

PHP 7.1:

PHP 7.0:

PHP 5.6:

PHP 5.5:

Presentations

  • PHP 7: What changed internally? [IPC’15]
    (slides)
  • PHP 7: What changed internally? [PHP Barcelona’15]
    (slides, video)
  • PHP 7: What changed internally? [Forum PHP’15]
    (slides, video)
  • PHP language trivia [PHPKonf’17]
    (slides)
  • Static Optimization of PHP bytecode [PHPSC’17]
    (slides)
  • Static Optimization of PHP bytecode [phpDay’17]
    (video)
  • Typed Properties and more: What’s coming in PHP 7.4? [PHP Russia’19]
    (slides, video)
  • PHP performance trivia [PHP Barcelona’19]
    (slides, video)
  • What’s new in PHP 8.0? [PHP fwdays’20]
    (slides, video)
  • Just-In-Time Compiler in PHP 8 [betterCode PHP’20]
    (slides)
  • What’s new in PHP 8.0? [SymfonyWorld’20]
    (slides)
  • Opaque pointers are coming [LLVM CGO’22]
    (slides, video)

Theses and Papers

  • Spinor formulation of Lanczos potentials in Riemannian Geometry [Bachelor Physics]
    (pdf)
  • Optimizing PHP Bytecode using Type-Inferred SSA Form [Bachelor CS]
    (pdf)
  • The Tradeoff of Latency, Reliability and Rate for Spinal Codes [Master CS]
    (pdf)
  • Static Optimization of PHP 7 [CC’17]
    (pdf, acm)

Miscellaneous