Top all-time · #1448
nikic's blog
Personal blog · nikic.github.ioprogramming
nikic's blog is a personal blog at nikic.github.io about programming. Since 2013, 51 different Hacker News readers have linked it 58 times, most often “Make LLVM Fast Again”. It is still writing: the last post was on 2026-01-31, and you can follow it by feed.
Most-linked posts?
- Make LLVM Fast Again9 people · 9 mentions · first linked 2020-05-10
- Fast request routing using regular expressions7 people · 7 mentions · first linked 2014-02-18
- The true power of regular expressions (2012)5 people · 7 mentions · first linked 2014-09-24
- The true power of regular expression5 people · 5 mentions · first linked 2013-05-27
- Pointer magic for efficient dynamic value representations4 people · 4 mentions · first linked 2017-09-01
- PHP's new hashtable implementation (2014)3 people · 3 mentions · first linked 2016-12-07
- [PHP] Cooperative multitasking using coroutines3 people · 3 mentions · first linked 2013-06-20
- PHP 7 Virtual Machine3 people · 3 mentions · first linked 2017-04-14
- PHP 7's new hashtable implementation2 people · 2 mentions · first linked 2014-12-23
- Methods on primitive types in PHP2 people · 2 mentions · first linked 2014-03-14
What Hacker News says?
But I don't think that it has _anything_ to do with the individual programmers inherently understanding performance better. There is likely a huge organizational focus on performance and more people expressly dedicated to the task because it is a higher priority for Epic. It is directly correlated to Epic's ability to deliver a successful product to game companies, whereas for browsers it is slightly more orthogonal…
Comment linking /2020/05/10/Make-LLVM-fast-again.html
on “Tech sector job interviews assess anxiety, not software skills: study”Submitted Make LLVM Fast Again as a story · 582 points
HN discussionThe rust compiler team now tracks LLVM performance, see [0]. They are able to spot regressions as soon as they get merged, and petition to get the change reverted or performance fixed when the impact is large. This has been fairly successful so far, but obviously needs sustained efforts if we are to ever dream of ever getting halfway decent compilation times. [0]: https://nikic.github.io/2020/05/10/Make-LLVM-fast-ag…
Comment linking /2020/05/10/Make-LLVM-fast-again.html
on “Servo’s new home”Submitted PHP 7 Virtual Machine as a story · 365 points
HN discussionInterestingly enough here it was kinda but kinda not the other way around: historically PHP used a closed-addressing hash map and threaded a doubly linked list through it to maintain the insertion order. But the dict TFA talks about doesn't use a doubly linked list, or closed addressing, its ordering is a side-effect of its implementation but not originally a core goal (memory saving and iteration speed were). It'd…
Comment linking /2014/12/22/PHPs-new-hashtable-implementation.html
on “Python dicts are now ordered”Submitted PHP 7's new hashtable implementation as a story · 250 points
HN discussion>JavaScript suffers the same hate today.. The difference between Php and Javascript is that Javascript have competent people driving it forward. Php is still developed by college students with no real world programming experience, in their spare time.... Downvotes? Don't think this is true? See the following. These are couple of most prominent people working in the language. [1] https://nikic.github.io/aboutMe.html…
Comment linking /aboutMe.html
on “PHP 7 deployment at Dailymotion”Submitted The true power of regular expressions (2012) as a story · 163 points
HN discussionNikita proposes methods on primitive types: http://nikic.github.io/2014/03/14/Methods-on-primitive-types... Myself, I like this proposal.
Comment linking /2014/03/14/Methods-on-primitive-types-in-PHP.html
on “Announcing a specification for PHP”Submitted The Power of PCRE Regular Expressions (2012) as a story · 91 points
HN discussionFor some great exposition on what "regular" actually means, check out http://nikic.github.io/2012/06/15/The-true-power-of-regular-... "Thus the question arises: Can regular expressions match only regular grammars, or can they also match more? The answer to this is both yes and no"...
Comment linking /2012/06/15/The-true-power-of-regular-expressions.html
on “Regular Expression That Checks If A Number Is Prime”Submitted The true power of regular expression as a story · 77 points
HN discussionIt probably will. Every release has a number of performance improvements although the release notes don't mention them. Great work like [1] [2] [3] weren't mentioned in the release notes because those notes mostly focused on feature improvements. This work seems to be gaining momentum, if anything. The next version (1.44) will significantly improve the performance of programs that use async [4]. The next version of…
Comment linking /2020/05/10/Make-LLVM-fast-again.html
on “Five Years of Rust”Submitted Internal value representation in PHP 7, part 1 as a story · 65 points
HN discussionA good portion of PHP 7's performance improvements came from better structure packing: https://wiki.php.net/phpng-int http://nikic.github.io/2014/12/22/PHPs-new-hashtable-impleme...
Comment linking /2014/12/22/PHPs-new-hashtable-implementation.html
on “The Lost Art of C Structure Packing”Submitted Fast request routing using regular expressions as a story · 58 points
HN discussionTrue for official regular expressions, but not for the ones used in most programming languages. http://nikic.github.io/2012/06/15/The-true-power-of-regular-...
Comment linking /2012/06/15/The-true-power-of-regular-expressions.html
on “Explainshell – match command-line arguments to their help text”Submitted The true power of regular expressions as a story · 33 points
HN discussionThe linked llvm article about performance ( https://nikic.github.io/2020/05/10/Make-LLVM-fast-again.html ) says: "Rust does this by running a set of benchmarks on every merge, with the data available on perf.rust-lang.org. Additionally, it is possible to run benchmarks against pull requests using the @rust-timer bot. This helps evaluate changes that are intended to improve compile-time performance, or are suspected…
Comment linking /2020/05/10/Make-LLVM-fast-again.html
on “How to speed up the Rust compiler some more in 2020”Submitted Make LLVM Fast Again as a story · 7 points
HN discussionIn a linked blog post [0] and on the Rust performance page [1] the performance metric "instructions" is used. What exactly is meant by that? Number of instructions executed? [0] https://nikic.github.io/2020/05/10/Make-LLVM-fast-again.html [1] https://perf.rust-lang.org/
Comment linking /2020/05/10/Make-LLVM-fast-again.html
on “How to speed up the Rust compiler some more in 2020”Submitted PHP solves problems. Oh, and you can program with it too as a story · 5 points
HN discussionthe answer if you're using perl or pcre, is probably yes, but for the love of djikstra don't ever do it. This was on HN a while back: http://nikic.github.io/2012/06/15/The-true-power-of-regular-...
Comment linking /2012/06/15/The-true-power-of-regular-expressions.html
on “I hate the Pumping Lemma”Submitted Fast request routing using regular expressions (2014) as a story · 5 points
HN discussionThere isn't any evidence to suggest this. Slow compilation speed is mostly a consequence of priorities. See https://nikic.github.io/2020/05/10/Make-LLVM-fast-again.html and https://www.reddit.com/r/haskell/comments/45q90s/is_anything... . Sure, there are some language features that can make optimizations pathological complex, but for the most part if compilation speed isn't continuously tracked and strictly enforced…
Comment linking /2020/05/10/Make-LLVM-fast-again.html
on “Why Apple Chose Clang (2008)”Submitted Make LLVM Fast Again as a story · 4 points
HN discussionfair point, but they're rather costly due to the amount of memcpy'ing in my experience.. you've probably seen/know this, given that you know PHP internals :), but for others: http://nikic.github.io/2011/12/12/How-big-are-PHP-arrays-rea...
Comment linking /2011/12/12/How-big-are-PHP-arrays-really-Hint-BIG.html
on “What does O(log n) mean, exactly?”Submitted PHP 7 Virtual Machine as a story · 4 points
HN discussionPossibly, I'm no professional compiler author. But I imagine doing so would require templatizing a lot of logic, and would significantly slow down the compilation of the compiler itself, which is an important metric for development velocity of compiler improvements. (The linux kernel is famous for taking about the same amount of time to compile through its history. If compile times get long enough people start payin…
Comment linking /2020/05/10/Make-LLVM-fast-again.html
on “Goals and Priorities for C++”Submitted PHP's new hashtable implementation (2014) as a story · 4 points
HN discussion