Som utvecklareär du programmeradatt förvänta dig ordning i allt. Varje modul och funktion ska följa en namngivningskonvention och ha en tydlig struktur. Du vill att din kod ska vara ren och välordnad, och bara tanken på kodkaos skrämmer dig och håller dig vaken om nätterna.
En vanlig uppfattning bland utvecklare är att komplexa system bör byggas upp utifrån enklare system som fungerar, och det är en rimlig teori när det gäller kod.
Men som utvecklare anser vi att allt annat i livet bör vara lika rent som vår kod. Det är en enkel slutsats.
Allmänna insikter bland utvecklare om komplexitet
Även om detta stämmer när det gäller kod och programvara, måste man förstå att programvärlden är en deterministisk miljö där saker antingen fungerar eller inte fungerar. Det är oftast väldigt svartvitt.
I deterministiska miljöer ger förutsägbara indata mycket förutsägbara utdata, och det är bara du själv som kan sabba det om du inte planerar arkitekturen och implementeringen ordentligt – då får du en skithög av kod som inte längre går att underhålla.
Det finns en viss oförutsägbarhet även inom mjukvaruområdet, men den beror främst på redan driftsatt mjukvara. Nätverk, operativsystem och så vidare ligger inte inom din kontroll, och problem kan uppstå när som helst (DevOps är din vän).
Felaktiga antaganden om distribuerad databehandling
Startups är raka motsatsen till ren kod. De är mycket oförutsägbara eftersom varje nytt företag med en ny affärsmodell verkar i en mycket icke-deterministisk miljö (konkurrenter, kunder och deras förväntningar, förändringar i teamdynamiken, affärsrisker osv.).
Indata är oförutsägbara och utdata är osäkra.
Du kanske har en bra hypotes om en affärsmodell eller till och med en bestämd åsikt om vad som kommer att hända, men du har med stor sannolikhet fel.
Produktion, mätningar och kundåterkoppling är det enda riktmärket för ett nystartat företag, men inte ens det kan skapa fullständig ordning.
Det vore fel att sträva efter determinism och förutsägbarhet i ett startup-företag, eftersom det skulle innebära att man inte utmanar gränserna.Om din affärsmodell är förutsägbar och det inte finns något kaos alls, då är ditt företag inte ett startup-företag – eller så arbetar du åtminstone inte tillräckligt hårt och rör dig inte tillräckligt snabbt.
Detta betyder dock inte att (relativ) determinism inte är bra. Determinism är ett mål för ett startup-företag, och det uppnås genom den traditionella cykeln ”bygga–mäta–lära”, där man stegvis kan nå en förutsägbar affärsmodell och förutsägbara resultat genom att använda kvalitativa och kvantitativa data (användarfeedback, analysdata osv.) för att fatta välgrundade beslut.

För att nå det förutsägbara resultatet måste man dock go ta sig igenom flera omgångar av kaos och oförutsägbarhet. Affärsmodellen må vara enkel, men den övergripande miljön är mycket komplex. Startups smids i elden.
Många utvecklare förväntar sig ordning i en kaotisk start-up-miljö och har svårt att anpassa sig,vilket kan leda till mycket frustration i ett mjukvaruteam eftersom negativitet sprider sig som en löpeld.
Du är felaktigt programmerad, men du är alltför partisk för att inse det.
Vanliga frågor som uppstår när man efterfrågar determinism: Var är min uppgift? Var finns specifikationen? Varför har vi problem med försäljningen? Varför måste vi spara pengar? Vet VD:n vad han gör med start-up-strategin? Kommer det här överhuvudtaget att lyckas? Kommer vi alla att misslyckas?
I slutändan handlar allt om tillfällig rädsla och att man inte förstår de möjligheter som osäkerheten innebär.
En utvecklare som arbetar i ett icke-deterministiskt system måste anpassa sig till två olika sätt att tänka.
Man måste vara deterministisk och sträva efter ordning i sin kod, men samtidigt bör man vara icke-deterministisk och flexibel på produkt- och affärsnivå för att kunna experimentera och lära sig.

Icke-determinism, kaos och experimenterande bidrar till att hålla affärsmodellen flexibel, och dessa faktorer måste finnas för att verksamheten ska kunna vara lean.
Men just den miljö som gör det möjligt för ett startup-företag att vara flexibelt och lära sig är inte alltid välkommen i startup-team.
Kaos är något positivt om man förstår vilka möjligheter det innebär.
Kaos är den miljö där ordning kan skapas, och du kan vara med och skapa ordning i ett nytt företag – vilket i startup-jargongen innebär att upptäcka en skalbar affärsmodell, vilket i sin tur motsvarar ordning i verksamheten.
Du kan vara den som skapar ordning, och det är den största chansen i din karriär. Alla företag värdesätter personer som skapar ordning och långsiktig framgång.
Det är svårt att skapa ordning och förändra ett redan framgångsrikt företag när man är anställd nr 56 211. Det är lättare när man är anställd nr 3.
Sanningen är att hela startup-teamet måste kämpa för att nå stabilitet, och det är en fantastisk historia att berätta. När man väl har fått rätt inställning kan man lätt bli beroende av den kampen och utmaningen.
I vanliga företag är allt välorganiserat, automatiserat och välordnat, och det finns inga möjligheter att förändra arbetsmiljön, affärsmodellen osv.
Är ordning verkligen det du vill ha? Vad lär du dig av ordning? Vilken inverkan kan du ha?
Kom ihåg: Diamanter bildas under tryck och i kaos.
Framgång är trevligt, men det är företagsomvandlingar, att skapa ordning i kaoset och berättelser om misslyckanden som man lär sig av – och det känns mycket bättre. Psykologiskt sett värdesätter vi saker som är svåra att uppnå mer än en bekväm tur en solig dag.
När jag blir äldre vill jag ha X berättelser som jag kan dela med mig av. Jag vill utmana mina egna gränser och leva upp till min fulla potential.
Kommer jag att få sådana berättelser genom att jobba i en förutsägbar 9–5-miljö där jag får mina uppgifter och får saker gjorda? Nej.
Med andra ord är en förutsägbar och bekväm miljö en komfortzon och synonym med tristess.
Genom att arbeta på ett mycket kaotiskt och oförutsägbart startup-företag som förändrar något i världen skriver du din egen historia, och det är precis vad vi gör varje dag i många av våra produkter här Ministry of Programming.
Arbeta med nystartade företag. Lär dig, omfamna kaoset och skapa ordning. Överlev för att kunna berätta historien.