Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified files/Resume.pdf
Binary file not shown.
22 changes: 17 additions & 5 deletions src/Pages/LandingPage.php
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ protected function build(): void {
[],
<<<END
Welcome to Daniel Scherzer's personal website. I am a software engineer with
experience working in PHP, JavaScript, Python, C, and other languages.
experience working in PHP, JavaScript, Python, C, Rust, and other languages.
END
),
FluentHTML::make(
Expand All @@ -57,17 +57,29 @@ protected function build(): void {
END,
FluentHTML::make( 'em', [], 'magna cum laude' ),
<<<END
in 2024 with a Bachelor of Science degree. As part of my work in Computer
Science, I chose to write an honors thesis in my senior year, see
with a Bachelor of Science degree. As part of my work in Computer Science, I
chose to write an honors thesis in my senior year, see
END,
FluentHTML::make(
'a',
[ 'href' => './Thesis' ],
'here'
),
<<<END
for details. I continued at Tufts for graduate school, graduating in 2025 with
a Master of Science in Computer Science degree.
for details. I continued at Tufts for graduate school, graduating with a Master
of Science in Computer Science degree.
END,
]
),
FluentHTML::make(
'p',
[],
[
<<<END
In my free time, I contribute to various open-source projects, most notably as
a release manager for PHP 8.5 (where I am one of two "rookie" release managers)
and for PHP 8.6 (where I am the "veteran" release manager). I also contribute to
PHP as a developer, and as the maintainer of the built-in Reflection extension.
END,
]
),
Expand Down
23 changes: 22 additions & 1 deletion src/Pages/OpenSourcePage.php
Original file line number Diff line number Diff line change
Expand Up @@ -113,13 +113,34 @@ class OpenSourcePage extends BasePage {
'link' => 'https://wiki.php.net/rfc/debugable-enums',
'date' => 'March 2026',
'desc' => 'Allow __debugInfo() on enums',
'status' => 'under discussion',
'status' => 'implemented in PHP 8.6',
],
'#[\Override] for class constants' => [
'name' => '#[\Override] for class constants',
'link' => 'https://wiki.php.net/rfc/override_constants',
'date' => 'March 2026',
'desc' => 'Extend #[\Override] to target class constants',
'status' => 'in voting',
],
'ReflectionAttribute::getCurrent()' => [
'name' => 'Add ReflectionAttribute::getCurrent()',
'link' => 'https://wiki.php.net/rfc/reflectionattribute-getcurrent',
'date' => 'April 2026',
'desc' => 'Add ReflectionAttribute::getCurrent() to connect attributes and targets',
'status' => 'under discussion',
],
'friends' => [
'name' => 'Friends',
'link' => 'https://wiki.php.net/rfc/friends',
'date' => 'May 2026',
'desc' => 'Add friendship which bypasses visibility restrictions',
'status' => 'under discussion',
],
'#[\Deprecated] for interfaces' => [
'name' => '#[\Deprecated] for interfaces',
'link' => 'https://wiki.php.net/rfc/deprecated_interfaces',
'date' => 'May 2026',
'desc' => 'Support the #[\Deprecated] attribute on interfaces',
'status' => 'in draft',
],
];
Expand Down
11 changes: 7 additions & 4 deletions tests/data/Home.html
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
<!DOCTYPE html>
<html lang="en"><head><link rel="icon" href="data:,"><meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1"><link rel="stylesheet" type="text/css" href="/resources/default-styles.css"><title>Home</title><link rel="canonical" href="https://scherzer.dev/"><link rel="stylesheet" type="text/css" href="/resources/blog-styles.css"></head><body><div class="des-navbar"><strong class="des-strong-page-link">Home</strong><a href="/files/Resume.pdf">Résumé</a><a href="/OpenSource">Open Source</a><a href="/Work">Work</a><a href="/Blog">Blog</a></div><div class="content-wrapper"><h1>Home</h1><p>Welcome to Daniel Scherzer&#039;s personal website. I am a software engineer with
experience working in PHP, JavaScript, Python, C, and other languages.</p><p>I completed my undergraduate education at Tufts University, double majoring in
Computer Science and Political Science and graduating <em>magna cum laude</em> in 2024 with a Bachelor of Science degree. As part of my work in Computer
Science, I chose to write an honors thesis in my senior year, see <a href="./Thesis">here</a> for details. I continued at Tufts for graduate school, graduating in 2025 with
a Master of Science in Computer Science degree.</p><p>See the links in the navigation bar above for more information about my
experience working in PHP, JavaScript, Python, C, Rust, and other languages.</p><p>I completed my undergraduate education at Tufts University, double majoring in
Computer Science and Political Science and graduating <em>magna cum laude</em> with a Bachelor of Science degree. As part of my work in Computer Science, I
chose to write an honors thesis in my senior year, see <a href="./Thesis">here</a> for details. I continued at Tufts for graduate school, graduating with a Master
of Science in Computer Science degree.</p><p>In my free time, I contribute to various open-source projects, most notably as
a release manager for PHP 8.5 (where I am one of two &quot;rookie&quot; release managers)
and for PHP 8.6 (where I am the &quot;veteran&quot; release manager). I also contribute to
PHP as a developer, and as the maintainer of the built-in Reflection extension.</p><p>See the links in the navigation bar above for more information about my
experience.</p><h2 class="subsection-header">Contact</h2><ul><li><a href="https://www.linkedin.com/in/daniel-scherzer-520539263/" target="_blank" class="external-link">LinkedIn</a></li><li>Email: <code>daniel.e.scherzer@gmail.com</code></li></ul><h2 class="subsection-header">Blog</h2><p>I also have a blog. You can see a full index of my posts <a href="/Blog">here</a>. My latest blog post is: </p><div class="blog-preview"><h3>Notes for PHP Release Managers, Part 2</h3><span class="blog-preview-date">Sunday, 10 May 2026</span><p>A few months ago, I wrote up <a href="./Blog/20260218-release-manager-notes">a blog post</a> about my experience
being a PHP release manager and the kind of commitment that the role requires.
Now, I want to document some of the decision-making and process related to the
Expand Down
2 changes: 1 addition & 1 deletion tests/data/OpenSource.html
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
was one of the two &quot;rookie&quot; candidates chosen to help with the release. You can
read more in <a href="/Blog/20250417-php85-release-manager">my blog post</a>. I subsequently volunteered to serve as the &quot;veteran&quot; release manager for the PHP
8.6 release cycle (<a href="/Blog/20260416-php86-release-manager">blog post</a>).</p><p>PHP uses a process of requests for comment when proposing and implementing major
changes; my RFCs include:</p><ul><li>March 2026: <a href="https://wiki.php.net/rfc/override_constants" target="_blank" class="external-link">#[\Override] for class constants</a> - Extend #[\Override] to target class constants (in draft)</li><li>March 2026: <a href="https://wiki.php.net/rfc/debugable-enums" target="_blank" class="external-link">Debugable Enums</a> - Allow __debugInfo() on enums (under discussion)</li><li>July 2025: <a href="https://wiki.php.net/rfc/deprecated_traits" target="_blank" class="external-link">#[\Deprecated] for traits</a> - Support the #[\Deprecated] attribute on traits (implemented in PHP 8.5)</li><li>July 2025: <a href="https://wiki.php.net/rfc/filter_throw_on_failure" target="_blank" class="external-link">FILTER_THROW_ON_FAILURE</a> - Add FILTER_THROW_ON_FAILURE flag to the filter extension (implemented in PHP 8.5)</li><li>June 2025: <a href="https://wiki.php.net/rfc/delayedtargetvalidation_attribute" target="_blank" class="external-link">#[\DelayedTargetValidation] attribute</a> - Delaying compile-time attribute target validation errors with #[\DelayedTargetValidation] (implemented in PHP 8.5)</li><li>March 2025: <a href="https://wiki.php.net/rfc/final_promotion" target="_blank" class="external-link">Final Property Promotion</a> - Adding support for final modifiers in constructor property promotion (implemented in PHP 8.5)</li><li>November 2024: <a href="https://wiki.php.net/rfc/attributes-on-constants" target="_blank" class="external-link">Attributes on Constants</a> - Adding support for attributes on compile-time constants (implemented in PHP 8.5)</li></ul><h3 class="subsection-header">Packages</h3><p>I also wrote multiple open-source PHP packages - though some are currently
changes; my RFCs include:</p><ul><li>May 2026: <a href="https://wiki.php.net/rfc/deprecated_interfaces" target="_blank" class="external-link">#[\Deprecated] for interfaces</a> - Support the #[\Deprecated] attribute on interfaces (in draft)</li><li>May 2026: <a href="https://wiki.php.net/rfc/friends" target="_blank" class="external-link">Friends</a> - Add friendship which bypasses visibility restrictions (under discussion)</li><li>April 2026: <a href="https://wiki.php.net/rfc/reflectionattribute-getcurrent" target="_blank" class="external-link">Add ReflectionAttribute::getCurrent()</a> - Add ReflectionAttribute::getCurrent() to connect attributes and targets (under discussion)</li><li>March 2026: <a href="https://wiki.php.net/rfc/override_constants" target="_blank" class="external-link">#[\Override] for class constants</a> - Extend #[\Override] to target class constants (in voting)</li><li>March 2026: <a href="https://wiki.php.net/rfc/debugable-enums" target="_blank" class="external-link">Debugable Enums</a> - Allow __debugInfo() on enums (implemented in PHP 8.6)</li><li>July 2025: <a href="https://wiki.php.net/rfc/deprecated_traits" target="_blank" class="external-link">#[\Deprecated] for traits</a> - Support the #[\Deprecated] attribute on traits (implemented in PHP 8.5)</li><li>July 2025: <a href="https://wiki.php.net/rfc/filter_throw_on_failure" target="_blank" class="external-link">FILTER_THROW_ON_FAILURE</a> - Add FILTER_THROW_ON_FAILURE flag to the filter extension (implemented in PHP 8.5)</li><li>June 2025: <a href="https://wiki.php.net/rfc/delayedtargetvalidation_attribute" target="_blank" class="external-link">#[\DelayedTargetValidation] attribute</a> - Delaying compile-time attribute target validation errors with #[\DelayedTargetValidation] (implemented in PHP 8.5)</li><li>March 2025: <a href="https://wiki.php.net/rfc/final_promotion" target="_blank" class="external-link">Final Property Promotion</a> - Adding support for final modifiers in constructor property promotion (implemented in PHP 8.5)</li><li>November 2024: <a href="https://wiki.php.net/rfc/attributes-on-constants" target="_blank" class="external-link">Attributes on Constants</a> - Adding support for attributes on compile-time constants (implemented in PHP 8.5)</li></ul><h3 class="subsection-header">Packages</h3><p>I also wrote multiple open-source PHP packages - though some are currently
primarily used by me, I am a firm supporter of open-source code and figured that
they might be useful to others. The packages that I have created so far are:</p><ul><li><a href="https://packagist.org/packages/danielescherzer/common-phpcs" target="_blank" class="external-link">danielescherzer/common-phpcs</a> - Collection of common codesniffer standards for my projects</li><li><a href="https://packagist.org/packages/danielescherzer/commonmark-ext-pygments-highlighter" target="_blank" class="external-link">danielescherzer/commonmark-ext-pygments-highlighter</a> - CommonMark extension for code highlighting with Pygments</li><li><a href="https://packagist.org/packages/danielescherzer/define-deprecated" target="_blank" class="external-link">danielescherzer/define-deprecated</a> - Allow defining deprecated global constants at runtime without dropping PHP &lt;8.5 support</li><li><a href="https://packagist.org/packages/danielescherzer/html-builder" target="_blank" class="external-link">danielescherzer/html-builder</a> - Tools for building HTML</li></ul><h3 class="subsection-header">Website</h3><p>The source code for my website is also public, in case the code is useful to
others. The actual text about me is probably not going to be relevant, but my
Expand Down
Loading