{"id":230051,"date":"2022-12-01T18:49:00","date_gmt":"2022-12-01T15:49:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=230051"},"modified":"2022-11-09T19:52:54","modified_gmt":"2022-11-09T16:52:54","slug":"skicka-det-eller-doe-med-eller-utan-kvalitet-dock","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/sv\/skicka-det-eller-doe-med-eller-utan-kvalitet-dock\/","title":{"rendered":"Skicka det eller d\u00f6 (med eller utan kvalitet, dock?)"},"content":{"rendered":"\n<p>En av id\u00e9erna som f\u00e4ngslar mig \u00e4r &quot;ship it or die&quot;-mentaliteten. N\u00e4r det g\u00e4ller vad det heter finns det variationer av det, men tanken bakom frasen \u00e4r enkel:<\/p>\n<p>Om du har en id\u00e9, f\u00e5 den fr\u00e5n id\u00e9 till produkt s\u00e5 snabbt som m\u00f6jligt.<\/p>\n<p>Visst, id\u00e9n att komma till konceptet f\u00f6r en produkt kan ocks\u00e5 kallas &quot;koncept till kontanter&quot;, men det finns aldrig en garanti f\u00f6r att du kommer att generera pengar, eller hur? Det finns dock en garanti f\u00f6r att du kan f\u00e5 det till en p\u00e5taglig produkt.<\/p>\n<p>Och i mjukvaruutvecklingskretsar finns det alltid mycket som en person kan argumentera f\u00f6r eller emot id\u00e9n. De tv\u00e5 f\u00f6r- och nackdelarna som jag t\u00e4nker p\u00e5 omedelbart \u00e4r:<\/p>\n<ol>\n<li><strong>Pro<\/strong>. Att f\u00e5 n\u00e5got gjort snabbt som fungerar och som [potentiellt] genererar int\u00e4kter.<\/li>\n<li><strong>Con<\/strong>. Svag arkitektur, underh\u00e5ll, skalbarhet, testbarhet och s\u00e5 vidare.<\/li>\n<\/ol>\n<p>Kort sagt, det kan finnas en avv\u00e4gning mellan hur snabbt du kan f\u00e5 fartyget n\u00e5got f\u00f6r en marknad och arkitekturen bakom projektet. Ibland finns det, ibland finns det inte. Generellt sett tror jag dock att det \u00e4r s\u00e4kert att anta det f\u00f6rra.<\/p>\n<p>Dessutom kan vissa se det f\u00f6rra som den enkla v\u00e4gen ut, vissa kan se det senare som en \u00f6vning i YAGNI eller, \u00e4nnu enklare, att problemet kan \u00e5tg\u00e4rdas n\u00e4r det dyker upp.<\/p>\n<p>Men vad har detta med n\u00e5gonting att g\u00f6ra just nu?<\/p>\n<h2>Skicka det eller d\u00f6?<\/h2>\n<p>Hela anledningen till att jag l\u00e4gger ner tid p\u00e5 att skriva om det h\u00e4r \u00e4r att det \u00e4r n\u00e5got som jag, och jag misst\u00e4nker andra inom v\u00e5rt omr\u00e5de, t\u00e4nker p\u00e5 \u00e5tminstone lite. Allt detta \u00e4r bra n\u00e4r man pratar om det i abstrakt bem\u00e4rkelse, men l\u00e5t mig f\u00f6rs\u00f6ka knyta det till n\u00e5got lite mer realistiskt.<\/p>\n<h3>Det var en g\u00e5ng\u2026<\/h3>\n<p>F\u00f6r n\u00e5gra \u00e5r sedan bestod front-end-utveckling av att linda in inneh\u00e5ll i inline- eller blockniv\u00e5element och styla dem med grundl\u00e4ggande CSS?<\/p>\n<p>Vi hade avancerade verktyg f\u00f6r att arbeta med v\u00e5r backend-kod, men gr\u00e4nssnittet var relativt enkelt bortsett fr\u00e5n kanske kodningsstandarderna som till\u00e4mpades av f\u00f6retaget eller teamet som vi arbetade med.<\/p>\n<h3>Men d\u00e5\u2026<\/h3>\n<p>V\u00e5ra enheter har utvecklats (vilket jag anser \u00e4r bra och till och med naturligt inom tekniken). Tillsammans med n\u00e4mnda framsteg har vi nu byggverktyg specifikt f\u00f6r front-end-utveckling som \u00e4r lika avancerade i vissa avseenden som de som vi anv\u00e4nder f\u00f6r backend-programvara.<\/p>\n<p>Visst, vi har n\u00e5gra som \u00e4r &quot;full stack-utvecklare&quot;, men jag \u00e4r glad att erk\u00e4nna att jag \u00e4r mycket mer bekv\u00e4m med att arbeta p\u00e5 serversidan \u00e4n front-end. Om jag jobbar p\u00e5 fronten tenderar jag att h\u00e5lla mig till de verktyg som jag \u00e4r bekant med och f\u00f6rs\u00f6ka h\u00e5lla mig inom skyddsr\u00e4ckena som definieras av k\u00f6rf\u00e4ltet d\u00e4r jag k\u00f6r.<\/p>\n<p>Det hj\u00e4lper till att h\u00e5lla utvecklingen fokuserad, snabb och konsekvent \u00f6ver projekt.<\/p>\n<h2>Okej, s\u00e5 vad \u00e4r po\u00e4ngen?<\/h2>\n<p>I och f\u00f6r sig kan det h\u00e4r avsnittet bli ett l\u00e5ngt inl\u00e4gg, men jag \u00e4r inte intresserad av att g\u00e5 s\u00e5 l\u00e5ngt. Ist\u00e4llet ska jag ta en bit av hur frontend-utveckling fungerar just nu och se om jag inte kan anv\u00e4nda den f\u00f6r att klarg\u00f6ra min po\u00e4ng.<\/p>\n<h3>Blir Sassy<\/h3>\n<p>Ta till exempel vad CSS har blivit. Vi har spr\u00e5k ovanp\u00e5 spr\u00e5k (som <strong><a href=\"https:\/\/sass-lang.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Sass<\/a><\/strong> som ligger ovanp\u00e5, eller l\u00e4gger till, grundl\u00e4ggande CSS).<\/p>\n<p>Och vi har processorer som kompilerar, minifierar, luddar och hindrar oss fr\u00e5n att se v\u00e5rt arbete innan vissa fel och varningar \u00e5tg\u00e4rdas f\u00f6r kvalitetens skull. (Jag anser inte att detta \u00e4r en d\u00e5lig sak, men det visar den v\u00e4xande niv\u00e5n av komplexitet \u2013 eller kanske mognad \u2013 hos v\u00e5ra front-end-verktyg).<\/p>\n<blockquote>\n<p>Front-end-utveckling \u00e4r alldeles f\u00f6r l\u00e4tt, l\u00e5t oss g\u00f6ra det mer komplext s\u00e5 att vi kan k\u00e4nna oss smartare bland de av v\u00e5ra kamrater som tydligen har att g\u00f6ra med mer &quot;kritiska&quot; aspekter av verksamheten. Kom ih\u00e5g att detta \u00e4r en t\u00e4vling.<\/p>\n<\/blockquote>\n<p><strong><a href=\"https:\/\/medium.com\/@julienetienne\/unnecessarily-complicating-front-end-development-to-feel-like-a-smarter-person-5e555fe650ed\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Den h\u00e4r artikeln<\/a><\/strong> har en humoristisk syn p\u00e5 det hela.<\/p>\n<h3>En rimlig grad av kvalitet<\/h3>\n<p>F\u00f6r att vara tydlig s\u00e4ger jag inte att detta \u00e4r en d\u00e5lig sak, men jag s\u00e4ger att saker som en g\u00e5ng f\u00f6rvisades till serversidan eller till kompilerade spr\u00e5k nu str\u00e4cker sig genom hela utvecklingsstacken f\u00f6r en webbapplikation.<\/p>\n<p>F\u00f6r att vara s\u00e5 kristallklar som m\u00f6jligt: \u200b\u200bjag \u00e4r helt f\u00f6r kvalitet. Att frakta saker utan n\u00e5gon grad av det kan ses som en \u00f6vning i ansvarsl\u00f6shet.<\/p>\n<p>Men jag tror ocks\u00e5 att det finns en balans att hitta mellan att skriva den mest optimala, funktionella och presterande koden som \u00e4r m\u00f6jlig under begr\u00e4nsningar av tid och budget.<\/p>\n<p>Jag tror inte, hur mycket vi \u00e4n f\u00f6rs\u00f6ker tvinga p\u00e5 oss det, att vi lever i en utvecklarutopi d\u00e4r vi kan optimera, bygga och implementera or\u00f6rda system i varje enskilt projekt.<\/p>\n<p>Det verkar dock som att vi har f\u00f6rs\u00f6kt v\u00e5rt b\u00e4sta f\u00f6r att skapa det, eller hur?<\/p>\n<p>Men vid n\u00e5got tillf\u00e4lle, \u00e4r det inte v\u00e4rt att fr\u00e5ga om alla verktyg som vi skapar och alla saker som vi l\u00e4gger till i v\u00e5ra projekt tar bort just det som fick oss in i branschen fr\u00e5n b\u00f6rjan? Visst, f\u00f6r vissa av oss \u00e4r detta troligen annorlunda. \u00c4r det r\u00e4ttvist att fr\u00e5ga att det att ha en id\u00e9, att skriva kod f\u00f6r att f\u00f6rverkliga den och att se den l\u00f6sa ett problem \u00e4r det som f\u00f6rde oss in i f\u00e5llan?<\/p>\n<p>Vid det h\u00e4r laget har vi dock introducerat s\u00e5 m\u00e5nga verktyg att det \u00e4r en skr\u00e4mmande uppgift att f\u00e5 ig\u00e5ng en utvecklingsmilj\u00f6 f\u00f6r en webbapplikation som k\u00f6rs fr\u00e5n databasen upp till webbl\u00e4saren.<\/p>\n<p>S\u00e5 m\u00e5nga saker m\u00e5ste h\u00e4nda innan vi faktiskt \u00e4r redo att b\u00f6rja skriva kod att det kan bli tr\u00e5kigt och till och med lite utmattande bara att ta de f\u00f6rsta stegen f\u00f6r att g\u00f6ra det.<\/p>\n<h2>En personlig, slutgiltig \u00e5sikt<\/h2>\n<p>Jag str\u00e4var efter att genomdriva starka objektorienterade metoder och verktyg i m\u00e5nga av de projekt jag arbetar med med mitt team och som jag skickar till andra eftersom jag av erfarenhet vet att tiden, pengarna och data som kan g\u00e5 f\u00f6rlorade f\u00f6r n\u00e5got \u00e4r t adresserad fr\u00e5n alla h\u00e5ll.<\/p>\n<p>Detta \u00e4r inte att s\u00e4ga att frakt n\u00e5got snabbt f\u00f6rnekar n\u00e5got av det. Men processen och organisationen av koden bakom ett projekt \u00e4r n\u00e5got som jag har v\u00e4ldigt sv\u00e5rt att ignorera s\u00e5 mycket att det k\u00e4nns n\u00e4stan f\u00f6rlamande att skicka n\u00e5got som inte har testats och granskats i h\u00f6gsta m\u00f6jliga grad (och \u00e4ven d\u00e5 finns det problem).<\/p>\n<p>\u00c5 andra sidan, men det finns en del av mig som vill experimentera med en id\u00e9 eller tv\u00e5 bakom &quot;ship it or die&quot;-mentaliteten, bara se hur snabbt n\u00e5got kan byggas, fraktas och generera alla typer av int\u00e4kter oavsett hur or\u00f6rda det \u00e4r. kodbasen \u00e4r.<\/p>\n<p>Och det kanske jag ska prova med n\u00e5gra kommande projekt.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Inspelningsk\u00e4lla:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u00c4ven om jag tycker att id\u00e9n om att &#8221;skicka det eller d\u00f6&#8221; \u00e4r sp\u00e4nnande, k\u00e4mpar jag fortfarande med hur mycket som \u00e4r f\u00f6r mycket n\u00e4r det g\u00e4ller att s\u00e4kerst\u00e4lla kvalitet.<\/p>\n","protected":false},"author":1,"featured_media":163522,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[724],"tags":[1173],"class_list":["post-230051","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-utvecklaren","tag-affiai-sv"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/posts\/230051","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/comments?post=230051"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/posts\/230051\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/media\/163522"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/media?parent=230051"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/categories?post=230051"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/tags?post=230051"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}