D

Derick Rethans

derickrethans.nl · Personal blog · on HN since 2010

Derick Rethans, a PHP core developer and Xdebug author, writes about PHP internals, date and time handling, and MongoDB.

What HN saysHN commenters recommend his date and time material for its timezone quirks and link his posts on PHP performance and garbage collection.
24HN people shared it
7linked it in comments
21stories submitted
92story points
3 months agolast shared
2010people per year2026

Most-shared posts

  1. 1
    Storing Date/Times in Databases
    2 people · 48 points · first shared 2010 · 36 comments on HN
  2. 2
    15 years of Xdebug
    2 people · 4 points · first shared 2017 · discussion on HN
  3. 3
    Crowd-serfing (2013)
    2 people · 2 points · first shared 2013 · discussion on HN
  4. 4
    Managing schema changes with MongoDB
    1 people · 12 points · first shared 2015 · discussion on HN
  5. 5
    Mongo is dead, long live MongoClient
    1 people · 3 points · first shared 2012 · discussion on HN
  6. 6
    Leap seconds and what to do with them [2009]
    1 people · 3 points · first shared 2012 · discussion on HN
  7. 7
    PHP 8: A Quick Look at JIT – Derick Rethans
    1 people · 3 points · first shared 2020 · discussion on HN
  8. 8
    To GMT or not to GMT
    1 people · 3 points · first shared 2012 · discussion on HN
  9. 9
    Fail Faster
    1 people · 2 points · first shared 2026 · discussion on HN
  10. 10
    References in PHP: An Indepth Look [pdf]
    1 people · 2 points · first shared 2018 · discussion on HN
  11. 11
    Xdebug 2.1 Released
    1 people · 2 points · first shared 2010 · discussion on HN
  12. 12
    Good Introduction of OpenStreetMap for Web Developers
    1 people · 2 points · first shared 2011 · discussion on HN
  13. 13
    Spatial Indexes: Fetching Data/SQLite
    1 people · 1 points · first shared 2011 · discussion on HN
  14. 14
    Where is the Sun?
    1 people · 1 points · first shared 2013 · discussion on HN
  15. 15
    MongoDB and arbitrary key names
    1 people · 1 points · first shared 2014 · discussion on HN

What HN people wrote when they linked it

asnyder · 2010-02-18
Even if you're not using PHP I highly recommend reading Derick Rethans's slides on Date and Time. There's lots of good information there, especially about all the various quirks with timezones. http://derickrethans.nl/talks/time-zendcon9.pdf, you may even be able to find a video of him presenting this.
wwweston · 2024-11-24
Yes! I remember downloading this for working in an offline setup 20+ years ago. Still, maybe getting rid of the mirrors program 5 years ago had its downsides: https://derickrethans.nl/php-mirrors.html
derickr · 2014-12-02
I think the article on this, explains why a memory reduction by garbage collection also increases execution speed: http://derickrethans.nl/collecting-garbage-performance-considerations.…
mherdeg · 2014-07-04
Some discussion about this method at http://derickrethans.nl/immutable-datetime.html
ck2 · 2013-01-10
I spent 10-15 minutes poking around php internals newslist for an explanation of the php 5.4 changelog "improved performance of the (@) silence operator" without luck. It's just listed as a zend engine improvement without specifications. Someone posted here a clear example of why (in earlier php5) it generates far worse opcode: http://derickrethans.nl/five-reasons-why-the-shutop-operator-should-be…
0x0 · 2013-01-08
I believe these obfuscators work by forcing you to install a binary-only .so zend extension in php.ini, which intercepts these encoded files. The files themselves should decode to already-halfway-parsed PHP opcodes or so, which is probably injected into the PHP/Zend virtual machine. Figuring out the encoding scheme is probably a lot of boring disassembly work, which in the end just lets you decode a bunch of PHP opcodes which themselves would take a lot of work to make sense of. But perhaps the Vulcan Logic Dumper could help out a little bit. http://derickrethans.nl/projects.html#vld
Ltfe · 2017-08-02
Not even the maintainers really understand what they are doing : https://github.com/g0tmi1k/debian-ssh > There was an #ifndef PURIFY there for a reason. It's because the openssl authors knew that line would cause trouble in a memory debuger like Purify or Valgrind. Where a debian maintainer screwed the RNG of OpenSSL to make valgrind happy. This made any key generated on a debian or ubuntu system from 2006 to 2008 very easily breakable. Downstream should never touch packages beyond backporting fixes made by upstream. Here's another example of upstream vs downstream conflict in debian : https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=477454 Or PHP developers being fed up with both RedHat and Debian messing with their runtime on whims : https://derickrethans.nl/distributions-please-dont-cripple-php-or-red-… This is why I heavily support the desire for a new packaging system targeted at developers: snaps, flatpak. The downside of having multiple copies of the same libraries pale in comparison to giving back power to upstream. Distro maintainers are routinely modifying codebases they don't understand. Allow us to have a standard installation process that can install packages.. made by the developers themselves, upstream. Just like all other operating systems do. And Debian, unlike RHEL/CentOS, packages a lot more than they can even reasonably maintain. The vast majority of packages in a Debian stable are insecure, the security team simply…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close