The Codest Kjerneverdi #1
The Codest tror på fire viktige verdier som er kjernen i alle handlinger som utføres av The Codest-teamene. I denne artikkelen forklarer vår CEO og medgrunnlegger, Greg Polec, hva...
Hei og hjertelig velkommen til den andre episoden i vår TheCodesReview-serie. Denne uken har vi fokusert på kvalitet i programvareutviklingsprosjekter, viktigheten av frontend-arkitektur og overgangen fra teknisk til operativ leder, og hva som skal til for å få til fjernoppsett med Dailymotion som eksempel.
Tips om refaktorering for å forbedre kvaliteten.
Hvorfor er frontend-arkitektur viktig, og hvordan gjør man den skalerbar og vedlikeholdbar?
Overgang fra CTO til COO-rollen i en teknologiorganisasjon.
Hvis du er interessert i temaet om å gå fra å være teknologileder til å bli driftsleder, kan du dykke dypere ned i tilleggsressursene som er lenket til nederst i innlegget.
Denne ukens refaktorering og arkitekturkommentarer er levert av våre Ruby- og React-ingeniører.
Refaktorisering kode har alltid vært enormt populært, men ikke alle vet hvordan man gjør det på en god måte og når det er et godt tidspunkt å gjøre det på. Jeg har sett mange forsøk på refaktorering som har endt med fiasko (spesielt i produksjon, noe som ikke er noe å være stolt av). Tipsene i denne artikkelen kan hjelpe mange programmerere med å forbedre sine viktige refaktoreringsevner.
Det viktigste tipset fra artikkelen er "forstå koden", som alltid er det første på min sjekkliste før refaktorering. Du kan ikke lage bedre kode hvis du ikke vet hva den nåværende koden gjør. Det kan være krevende å forstå rotete kode, men det er prisen du må betale for å forbedre kodebasen din. Avkastningen på denne investeringen er likevel høy, og den vil lønne seg.
Det neste tipset som er verdt å nevne, er å "teste tidlig og ofte", som ikke bare kan brukes i refaktoriseringssammenheng, men også i utviklernes daglige arbeid. Temaet testing er enormt. Det handler ikke bare om å lære seg syntaksen for hvordan man skriver tester, men du må også skille mellom ulike typer tester. For å lære mer om testing anbefaler jeg at du gjør deg kjent med testpyramiden og deretter lærer om forskjellene mellom den klassiske skolen og London-skolen.
Oppsummert fokuserer artikkelen på lokal refaktorisering, noe som er bra og kan gjøre programmererne mer fornøyde med arbeidet sitt. Men for å skape en førsteklasses applikasjon på arkitekturnivå, må du gå utover omfanget av denne artikkelen og lære om problemstillinger knyttet til applikasjonsarkitektur. Dette kan hjelpe deg til å starte en uendelig reise, og det er det jeg ønsker dere alle, meg selv inkludert.
Hvordan oppnå en mer skalerbar og vedlikeholdbar arkitektur?
Riktig måte å strukturere appen din basert på MVVM-arkitektur?
Hvordan unngå ekstraarbeid når appen din vokser?
Alle har nok i løpet av karrieren opplevd at dårlig arkitektur har forlenget tiden det tar å fullføre en oppgave betraktelig. Rot i mapper, inkonsekvens i navngivning av filer eller kataloger kan sabotere prosjekt helt i begynnelsen.
Artikkelforfatteren viser tydelig fordelene ved å velge riktig tilnærming til prosjektstrukturen. Med utgangspunkt i opprette-react-app og inspirert av MVVM-arkitekturen, viser han fordelene med løsningen på en svært nøyaktig måte. Han tar utgangspunkt i den grunnleggende konfigurasjonen og går gjennom hver mappe, samtidig som han forklarer i hvert enkelt tilfelle hvorfor han anser denne tilnærmingen som hensiktsmessig. Tilnærmingen i seg selv virker ganske komplisert og sannsynligvis unødvendig i begynnelsen når prosjektet er på et tidlig stadium, men la oss huske at det å innføre de riktige reglene fra starten av vil hjelpe oss å unngå tidkrevende rekonstruksjoner når vi utvider prosjektet med nye komponenter og funksjonaliteter. En riktig valgt prosjektstruktur vil også gjøre det enkelt for nye medlemmer av prosjektet å anskaffe komponenter og tjenester. La oss ikke glemme at ikke alle måter å strukturere på vil passe perfekt i alle prosjekter.
Fra min side vil jeg gjerne legge til en grunnregel om at det er nytteløst å velge den optimale arkitekturen for prosjektet hvis ikke alle medarbeiderne følger de etablerte reglene.
Les mer om dette: Hvordan forbedre Vue.js-apper? Noen praktiske tips
Overgangen fra CTO til COO.
Arbeid i et fullstendig eksternt miljø. Hvordan holde team energisk og engasjert.
Stole på data kontra magefølelse.
I episode 236 av Modern CTO snakker Joel med Dailymotions COO Guillaume Clement. Dailymotion har som mål å være en meningsfull og næringsrik plattform for videoinnhold blant en rekke plattformer som er rent underholdningsorienterte og tjener formålet med "video fast food". For å oppnå dette i en bransje som er sterkt drevet av algoritmer og datateknologi, må man ta tøffe avgjørelser basert på magefølelse i forhold til hva dataene forteller deg.
Det mest nøyaktige målet for videoplattformer, medier og Adtech bedrifter, ettersom "tidsbruk" ikke er den åpenbare KPI-en å jobbe med hvis man virkelig ønsker å levere meningsfylt innhold til brukerne, og ikke bare ønsker å holde oppmerksomheten deres foran skjermen så lenge som mulig. Referansen til dokumentaren "The Social Dilemma" på Netflix er uunngåelig. Guillaume har også nylig byttet fra en CTO-rolle til en COO-rolle i selskapet, noe som medfører nye utfordringer innen drift og personalledelse. Utfordringen er enda mer krevende under pandemien, når fjernoppsett er en test for lederne når det gjelder å holde teamene involvert og mentaliteten på et høyt nivå. Det er viktig å ta hensyn til de individuelle behovene til ansatte som er mer sosiale eller mer innadvendte, og det er viktig å ha en begrenset mengde kontormingel tilgjengelig for dem som trenger et regelmessig kick for å komme i gang.