New front page (Draft)#1962
Conversation
…thout having to rely on global-scoped variables.
…le fallback for 'updated' => 'published'.
…ickable card and renderer
…ke strings as an escape hatch a-la dangerouslySetInnerHTML. Use it to highlight code elements in hero page.
… picking up on currentColor
|
OK! What we have in this branch, as I can see:
Here is a screenshot, since we don't have this on a preview branch: Full screen Tasks I think we need to do in order to move forward with this:
I feel like I'm most equipped to be a part of the content and design conversations; as I haven't been really involved in the PHP.net site before, I'd love to leave the first item to others (not sure if @derickr has had a chance to review all this code yet; if not, it'd be great if someone could volunteer to do that.) I'll leave another comment in a minute about my thoughts, and those I've gathered from others, about content and design. |
|
OK, my thoughts on the content: What we have right nowIt feels like we've actually found a decent amount of consensus and we're ready to move forward with figuring out what really belongs on this home page! Things that are in the home page right now:
Things that are in the home page in this PR:
What we need to solve in order to move forwardAs I've been looking at my notes, and also about the conversations that have happened around this page, and the "why php page", I think these are the questions we're trying to answer as we finalize content:
I think we have to agree on those things (not DEEP IN OUR CORE AGREE 100%, but at least COME TO A GENERAL CONSENSUS) in order to make meaningful progress. But that's hard to do, because we don't have any mechanism for conversations like this yet. So. I'm going to make a proposal of what I think content should be, and hopefully we can all work through any concerns quickly and actually get this thing designed and shipped! There's a really skilled designer who's agreed to work on this when we're ready (and will share their info once they tell me they're ok with it), but we have to nail down content first. Quick caveat: yes, I’m on the PHP Foundation board, and yes, helping PHP’s public perception is one of the Foundation’s goals. But neither I nor the Foundation have any authority or desire to dictate this. I’m sharing this as a proposed framework for discussion. My proposal(LMK if there's another format I should put this into--Google Docs?--to separate the conversation around it from this GH issue) My proposal is that we agree on this idea, and then link all decisions back to this:
The audiencesHere's who I think the audiences are, in order: 1. Developers evaluating or re-evaluating PHPThis includes people who think PHP is old, slow, ugly, dead, unserious. 2. Technical decision-makersCTOs, engineering leads, educators, consultants, bootcamp/university people. People who have the influence to say "no, not (whatever framework), because it's PHP and PHP is old", or "Your perception of PHP being old is outdated, here's why". 3. Existing PHP usersThey still need fast paths to downloads, docs, releases, migration guides, events, RFCs, etc. But they should not be the only audience the home page serves, and they're more likely to be willing to navigate a bit to get there. The "jobs" of the home pageIn Jobs to Be Done parlance, we want to know what "jobs" we're "hiring" the home page to do for us. What's it responsible for? Release information is part of that, but it cannot be the whole job. But then, what is it responsible for? Here's what I think: 1. Position PHPAnswer: “What is PHP today?” Not “PHP is a popular general-purpose scripting language…”; that doesn't work toward our goals, and you can get the same from Wikipedia. Something closer to:
We can work on the exact copy, but we want a top hero level, confident, anchor sentence. 2. Prove PHPAnswer the common objections (not directly, but through examples and careful language):
Here we can reach for things like usage statistics, modern syntax, recognizable logos/projects, releases with dates, ecosystem information, community. We want to show vitality! 3. Activate the visitorAnswer: “What can I do right now?” That's CTAs for newcomers like:
We do want to persuade them, but we also want to give them a practical path to running and developing modern PHP. 4. Route existing usersAnswer: “Where do I go?” We want to keep the obvious utilities (whether directly on the home page or in the rich footer):
Existing PHP users should not feel like the home page became a marketing brochure and buried the useful stuff. 5. Show lifeAnswer: “Is PHP alive?” The home page should visibly show motion:
This is important because the negative perception we're fighting, summed up, is "PHP is dead". We need to address that on multiple angles. So what then?If we come to a place of agreement on something similar to this proposal, I think that lands us with these must-haves:
and these strong candidates / open questions:
Next stepsI think the next steps involve conversation around the questions I've asked and the proposal I've shared here, with the hope that we can at minimum agree on a single-sentence declaration of the goals of the home page and a hero hook sentence for the home page. After that, hopefully we can agree on the must-haves, and while any ongoing conversation happens about the nice-to-haves, we can potentially start with the layout and design process. My askDoes this feel like the right framework to use for deciding home page content? If not, which part should change: the goal, the audiences, the jobs, or the must-haves? |

This draft PR is meant to gather comments for the content on the refreshed landing page for php.net
Please do not merge, as it includes changes to the structure which requires modification on the webserver side.