🤯
Lose Your Head
Sprint 14Inhoudsopgave
- Repositories
- Week 1
- Nieuw project
- Week 2
- Mentor dag week 1
- Structuur en werking overzicht
- 10 Principles of good design
- Error page
- Week 3
- Waterval vs Agile
- FDND agile woordenlijst
- Layout
- Mentor dag week 2
- Database Readme
- Frontend ontwikkelingen
Repositories
Week 1 | 23 t/m 27 september
In deze sprint zijn we begonnen met Svelte, een component-based framework, en Svelte Kit, een app-framework dat server-side rendering (SSR) ondersteunt.
Nieuw project
Deze week kregen we een nieuwe opdracht van FDND: het ontwikkelen van een "We Love Web" website. Deze website geeft een overzicht van zowel aankomende als afgelopen We Love Web-sessies, bedoeld voor studenten en docenten. Samen met Jaymar ben ik aan deze opdracht begonnen. We startten met het opzetten van de basis van de site door een sitemap, datamodel en teamcanvas te maken. Dit is allemaal vastgelegd in ons projectboard, dat te vinden is via de volgende link: Project Board FDND We Love Web
Week 2 | 30 September t/m 4 oktober
Mentor dag week 1
Tijdens deze week kregen de eerstejaars een college over het grid-systeem. In groepjes werkten ze aan verschillende lay-outs, waarbij ik mijn groepje hielp wanneer ze vastliepen.
Structuur en werking overzicht
In week 2 werd de structuur en werking van het project verduidelijkt:
3. Structuur
- De code bevindt zich in de
src
map. /routes
bevat zowel dynamische als statische pagina’s. Server-side code hoort insrc/lib/server/
.- De
static
map bevat onder andere PDF's en globale CSS.
2. Routing
- Standaard routing-methodes voor dynamische en statische routes worden toegepast.
3. Error Handling
- Foutpagina's worden gemaakt via
/routes/+error.svelte
en/routes/+layout.svelte
.
4. Data Laden
- Data wordt opgehaald met
page.js
enpage.server.js
. Server-side functies zijnasync
.
5. Binding
- Variabelen worden aan elementen gebonden met
bind:value=var
.
6. Library
- Componenten worden geïmporteerd uit
src/lib
via$lib
.
7. Components
- Je kunt variabelen exporteren binnen componenten met
export let variabele
.
10 Principles of Good Design
Hierbij een samenvatting van de 10 principes van goed design:
- Innovatief
- Bruikbaar
- Esthetisch
- Begrijpelijk
- Onopvallend
- Eerlijk
- Duurzaam
- Grondig tot in de details
- Milieuvriendelijk
- Zo minimaal mogelijk
Error page
Op basis van Justus' presentatie heb ik een error-pagina gemaakt die gebruik maakt van `$page.status` om de foutstatus weer te geven:
Week 3 | 7 t/m 11 oktober
Waterval vs Agile
- Waterval: Hierbij worden alle specificaties van tevoren vastgelegd.
- Agile: Flexibel en iteratief werken, waarbij aanpassingen mogelijk zijn gedurende het project.
FDND agile woordenlijst
- Agile Development: Een iteratieve benadering van softwareontwikkeling waarbij teams in korte sprints werken om flexibel in te spelen op veranderingen.
- Backlog: Een prioriteitenlijst met taken, functionaliteiten of vereisten die moeten worden uitgevoerd of geïmplementeerd.
- Business owner: De persoon die de zakelijke belangen van een project vertegenwoordigt, vaak verantwoordelijk voor het uiteindelijke resultaat.
- Continuous Integration: Een software ontwikkel praktijk waarbij ontwikkelaars regelmatig nieuwe code integreren in de hoofdtak van de broncode, met automatische tests om fouten te ontdekken.
- Daily Scrum: Een korte dagelijkse bijeenkomst waarin teamleden hun voortgang bespreken en obstakels delen.
- Definition of done: De criteria waaraan een taak of user story moet voldoen om als volledig afgerond te worden beschouwd.
- Epic: Een grote user story die kan worden opgedeeld in kleinere, beter beheersbare user stories of taken.
- Feature: Een functionele eigenschap of mogelijkheid van een product of systeem.
- Iteration: Een enkele cyclus van een herhalend proces, vaak een korte periode waarin een team bepaalde doelen probeert te bereiken.
- Minimal viable product: De meest eenvoudige versie van een product die nog steeds waarde biedt aan de gebruikers, vaak gebruikt om snel feedback te verzamelen.
- MoSCoW: Een prioriteringstechniek die taken indeelt in Must haves, Should haves, Could haves en Won’t haves (voor nu).
- Optimum viable product: Het product met de optimale balans tussen functies en waarde voor gebruikers, een stap verder dan een minimal viable product.
- Planning poker: Een techniek voor het inschatten van de omvang van taken of user stories, waarbij teamleden cijfers toewijzen aan de moeilijkheidsgraad.
- Product owner: De rol binnen een scrum-team die verantwoordelijk is voor het maximaliseren van de waarde van het product door het beheren van de product backlog.
- Refactoring: Het herschrijven van bestaande code zonder de externe functionaliteit te wijzigen, om de leesbaarheid en onderhoudbaarheid te verbeteren.
- Release: De uitgave van een nieuwe versie van een product aan gebruikers of klanten.
- Retrospective: Een bijeenkomst aan het einde van een sprint waarin het team bespreekt wat goed ging, wat beter kan, en hoe ze hun processen kunnen verbeteren.
- Scrum: Een framework voor agile projectmanagement waarbij teams werken in iteratieve cycli, of sprints.
- Scrum master: De facilitator van een scrum-team die verantwoordelijk is voor het waarborgen van de juiste uitvoering van scrum-principes.
- Scrum team: Een cross-functioneel team dat gezamenlijk verantwoordelijk is voor het opleveren van incrementele waarde in een project.
- Sprint: Een afgebakende werkperiode (meestal 1-4 weken) waarin een scrum-team aan een vooraf vastgesteld doel werkt.
- Sprint goal: Het specifieke doel dat het team binnen een sprint probeert te bereiken.
- Sprint planning: Een bijeenkomst aan het begin van een sprint waarin het team de taken en doelen voor de sprint vastlegt.
- Sprint review: Een bijeenkomst aan het einde van een sprint waarin het opgeleverde werk wordt gedemonstreerd aan de stakeholders.
- Stand-up: Een korte dagelijkse bijeenkomst waarin teamleden hun voortgang en eventuele obstakels delen.
- Stakeholders: Personen of groepen die belang hebben bij het succes van een project, zoals klanten, managers of eindgebruikers.
- Task: Een specifieke, vaak kleine eenheid van werk die moet worden uitgevoerd binnen een project.
- Task board: Een visueel hulpmiddel dat de voortgang van taken binnen een project toont, vaak in de vorm van een kanban-bord.
- Task points: Een maatstaf om de moeilijkheidsgraad of inspanning van taken te schatten.
- Velocity: De snelheid waarmee een team werk kan afronden, vaak gemeten in het aantal afgewerkte user stories of taakpunten per sprint.
Layout
Met behulp van Justus en Dorien heb ik meer geleerd over het gebruik van layouts in onze projecten. Door gebruik te maken van `slot`, kan specifieke content geladen worden, terwijl de navigatie en footer consistent blijven op alle pagina's.
Mentor dag week 2
Tijdens deze week heb ik verschillende studenten begeleid:
- Süleyman en Kerem: Tips gegeven voor het schrijven van een gestructureerde README.
- Mikiyas: Advies gegeven over wat hij moest afronden voor de sprint review en feedback op zijn code.
- Luuk: Uitleg gegeven over het maken van een inhoudsopgave in Markdown.
- Arman: Zijn README nagekeken en geadviseerd om een live link en installatie-instructies toe te voegen.
Database
Samen met Justus heb ik een database opgezet voor de "We Love Web"-presentaties. Ik heb een datamodel opgesteld dat alle benodigde velden bevat voor een presentatie. Een voorbeeld van een database-item:
Readme
Een duidelijke README is van groot belang om toekomstige developers en potentiële sponsoren een goed inzicht te geven in het project. Hier is een voorbeeld van mijn README voor FDND: README.md
Frontend ontwikkelingen
Dit zijn de websites die ik gebruik om up to date te zijn met het web.