accessible • Travaux dérivés autorisés • Respect de l’intégrité de l’auteur du code original • Pas de discrimination sur les gens ou les usages • Licence générique https://opensource.org/osd
code de ceux qui l’utilisent • Renommer une méthode d’une classe ❌ • Ajouter une méthode à une classe ✅ • Ajouter une méthode à une interface ❌ https://symfony.com/doc/current/contributing/code/bc.html
HTML est verbeux à lire pour les LLM • Solution : Formater les erreurs en Markdown lorsque le client accepte ce format • Avantage : gain coût et performance pour le vide-coding https://github.com/symfony/symfony/issues/61797
🤏 Petit = facile • ✅ Ajoutez des tests • 🔗 Ajoutez des liens • 👀 Relisez-vous en premier https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/g etting-started/helping-others-review-your-changes
(nouveau) Code ancien peu maintenu Code moderne sur GitHub Publication de nouvelles versions à la main via une page web avec authentification basic par mot de passe Publication directement sur GitHub avec double authentification Installe systématiquement la dernière version publiée Support des contraintes SemVer https://github.com/php/pie
{ "first" : "John", "last" : "Doe" }, "address" : [ { "location" : "work", "address" : { "street" : "16 Hatfields", "city" : "London", "postal_code" : "SE1 8DJ"}} ], "dob" : ISODate("1977-04-01T05:00:00Z"), "retirement_fund" : NumberDecimal("1292815.75") } More suited to modern programming practices: OOP, API-first, microservices Easily expandable and polymorphic schema: accelerate software evolution, build powerful data aggregators High performance: get full business entities in a single operation without having to rebuild them from components
worlds High Availability by design Strengths and Additional Innovations of NoSQL and Big Data Document Model: agility Scalability & Performance Entreprise grade management and security Traditional strengths of Relational Strong consistency and ACID transactions Expressive query language and rich indexing
over the network is encrypted by TLS by default. In-Transit All data stored in the database cluster is encrypted at rest by default using AES-256. At-Rest Sensitive fields can be encrypted client-side using Queryable Encryption or Client-Side Field Level Encryption. In-Use
groupBy: "$year_born", boundaries: [ 1840, 1850, 1860, 1870, 1880 ], default: "Other", output: { "count": { $sum: 1 }, "artists" : { $push: { "name": { $concat: [ "$first_name", " ", "$last_name" ] }, "year_born": "$year_born" } } } } }, // Second Stage { $match: { count: {$gt: 3} } } ] ) MongoDB Query API Expressive queries • Find anyone with phone # “1-212…” • Check if the person with number “555…” is on the “do not call” list Geospatial • Find the best offer for the customer at geo coordinates of 42nd St. and 6th Ave Text search • Find all tweets that mention the firm within the last 2 days Aggregation • Count and sort number of customers by city, compute min, max, and average spend Native binary JSON support • Add an additional phone number to Mark Smith’s record without rewriting the document • Update just 2 phone numbers out of 10 • Sort on the modified date JOIN ($lookup) • Query for all San Francisco residences, lookup their transactions, and sum the amount by person Graph queries ($graphLookup) • Query for all people within 3 degrees of separation from Mark
: Projet d’étude, je choisi d’utiliser Symfony Première issue 2010 : Diplôme d’ingénieur. Premier emploi “lead dev” Participation à des meetup, puis conférences 2020 : Confinement, intensification des contributions Open-Source 2021 : Je rejoins la Core-Team Symfony 2023 : Embauche MongoDB pour travailler sur le driver et l’écosystème PHP