27
apr
2017

Human Resource Machine (Switch eShop)

Skrevet af JOEP

Tomorrow Corporation udgav i 2015 Human Resource Machine til PC og Wii U, og spillet blev taget godt imod på grund af dets nyskabende idé om at blande computerspil med computerprogrammering. Spillets naturlige brug af pegeredskaber i styringen gjorde det naturligvis oplagt som en udgivelse på mobile enheder, og i det forgangne år er spillet således også blevet bragt til udgivelse på iOS- og Android-enheder. Nu er Switch så udkommet, og med en touchskærm tilgængelig så Tomorrow Corporation straks sit snit til at genudgive deres titler til Nintendos nye enhed. Spørgsmålet er så, hvorvidt Human Resource Machine stadig holder?

I modsætning til KJ85, som i sin tid anmeldte Wii U-versionen af Human Ressource Machine, så er mit civile job softwareudvikler i en større dansk virksomhed, og jeg har en naturvidenskabelig universitetsuddannelse samt fire års erhvervserfaring med softwareudvikling. Jeg kan altså roligt sige, at jeg har programmeret en del gennem de sidste ti år af mit liv, og jeg var meget spændt på at se, hvad dette spil egentlig kunne tilbyde mig, da jeg hentede det til min Switch. Grundlæggende set er spillet nemlig egentlig ikke et spil, men en række basale og avancerede opgaver i programmering, der har fået et spil-agtigt interface. Man kalder det gamification, når man gør noget til et spil, som reelt set ikke er det.


De første opgaver i spillet er meget simple.


I Human Resource Machine får du som medarbejder i en virksomhed en række opgaver, der alle involverer at flytte forskellige elementer til en udbakke, og efterhånden som du bliver mere erfaren med jobbet, bliver opgaverne sværere og sværere. De første opgaver går på blot at flytte elementer fra din indbakke til udbakken, så skal du flytte summer og produkter, og sidenhen skal du også begynde at sortere indholdet, hente implicit indhold og endda gengive Fibonacci-rækken op til et vist tal – hvorfor firmaet egentlig har behov for dette, det vides ikke, men som trofast medarbejder må du jo hellere gøre det. Kort sagt, hvis du har forsøgt at lære dig selv programmering eller er blevet oplært i det i et hvilket som helst moderne sprog, så har du helt sikkert løst nogle af de opgaver, som spillet byder på. Har du tilmed arbejdet med Assembler-sprog, så vil du føle dig meget hjemme her.

Hvordan løser du så opgaverne her, spørger du? Jo, du får ganske enkelt en række kommandoer stillet til rådighed. De mest basale er ”inbox” og ”outbox”, der henholdsvis henter indhold i indbakken og sætter et element i udbakken. Du får hurtigt mulighed for at addere og subtrahere elementer og for at hoppe rundt i dit program på baggrund af betingelser, såkaldt if-then-else (hvis a < 0 så gør X, ellers gør Y). Her kan det være, at du vil hoppe til et bestemt sted i dit program, hvis resultatet af en subtraktion er negativ, eller hvis noget er 0. Det bliver tidligt muligt at lægge 1 til eller trække 1 fra et tal, og senere igen får du adgang til en n x m-tabel (arrays), som du kan lægge elementer ned i og senere hen referere til ved hjælp af tal. Spillet byder således på de mest basale kommandoer, som findes i de fleste programmeringssprog, og med dette arsenal skal du løse opgaverne.


Du får hurtigt mange funktioner at gøre brug af


Det charmerende ved spillet er, at du får en visuel repræsentation af, hvad der sker, når du gør forskellige ting, i kraft af din figur (medarbejderen i virksomheden), som går rundt i lokalet og henter indhold, trækker fra, flytter rundt og smider væk. Din figur fungerer som din variabel, som du skal flytte værdier over i, men som kun har en enkelt plads at gøre godt med, så du skal hele tiden sørge for at holde den rigtige værdi her. Det er en stor forskel i forhold til ”rigtig” programmering, hvor du kan have hundredvis af variable, alle med forskelligt indhold.

I alt er der 42 baner, hvoraf nogle dog er kaffepauser, og nogle er frivillige at klare – her ligger de store udfordringer som regel. Det giver dig 25 obligatoriske baner, der skal klares, før du kan sige, at du får lov til at gå på pension (hver bane er et år i virksomheden). Ved hver bane er der i øvrigt to udfordringer; løs opgaven på så få skridt som muligt (optimer hastigheden af dit program) og med så få kommandoer som muligt (optimer størrelsen på programmet). Det er nogle gange umuligt at optimere begge dele samtidig, så her kan du lave alternative løsninger i de tre tilgængelige faner. Jeg kan tilføje, at man i den virkelig verden hellere vil have hurtigt eksekverende kode, som fylder lidt mere, end komprimeret kode, der tager længere tid at gå igennem. Hvis du har interessen for disse ting, så er der altså masser af tid at hente i spillet, og hvis du bare vil igennem hurtigst muligt, så kan du nok klare det på 10-12 timer, afhængigt af hvor god du er til at løse opgaverne.


I hver bane kan du udover at finde en løsning forsøge at klare to opgaver.


Sværhedsgraden i spillet stiger støt undervejs, og der går ikke længe, før din første løsning fejler, og så er det om at tænke sig lidt bedre om. De frivillige opgaver er enormt svære at udføre med den begrænsede syntaks, programmeringen byder på, og selv nogle af de obligatoriske baner kræver alligevel, at du sætter dig ned og tænker dig grundigt om i forhold til programmets opbygning. Jeg havde derfor altid et stykke papir ved siden af mig, og de sidste opgaver løste jeg faktisk først på en computer, fordi det ellers bliver helt vildt uoverskueligt i spillet – selv hvis du har kommentarer i dit program.

Du styrer ved at røre tingene på touchskærmen, men skulle du have brug for at blæse det op på en større skærm, så kan du også bruge en Joy-Con som pointer på skærmen, hvilket jeg dog ikke vil anbefale. Du har meget dårligere præcision på denne måde, og det er kun, hvis I sidder to sammen og løser opgaverne, at jeg vil anbefale denne styreform – den anden person kan tilmed her tage fat i en anden Joy-Con og selv tage aktivt del i spillet. Håndholdt med touch-input er altså vejen frem her, hvis I spørger mig.


Der er forgreninger på karriereelevatoren - dem til venstre er sværere opgaver, mens dem til højre er obligatoriske opgaver.


Spillet giver alt i alt en rigtig god introduktion til, hvordan computere egentlig fungerer, og jeg vil vove at påstå, at efter at have prøvet kræfter med spillet, så vil du have lidt mere forståelse for, hvordan fejl i Apps, spil og programmer egentlig opstår. Den visuelle repræsentation af en person, der bevæger sig rundt med forskellige værdier er ret underholdende, og det er opgaverne også til en vis grad. Det er i hvert fald super tilfredsstillende at løse opgaverne – især hvis de har drillet en i lidt tid – men det kræver dog, at man er interesseret i den form for hovedbrud. Opgaverne er eksempelvis meget matematiktunge, så du skal lige have styr på, hvad det betyder, hvis a – b < 0, og hvordan du får defineret multiplikation uden at have tegnet for det.

Når det så er sagt, så byder spillet også på en del frustrationer, når opgaverne ikke lige vil løses, og det er ikke altid fordi, du ikke kan løse opgaven, men den meget begrænsede syntaks kan være frustrerende. Det hændte i hvert fald, at jeg måtte slukke i frustration, fordi jeg ikke kunne lægge min baggrund fra mig, og jeg savnede nogle enkle funktioner (f.eks. at kunne sammenligne to tal uden at have en længere kode for det) eller bare det at kunne lægge 1 til et tal uden først at skulle samle det op. Også manglen på en pæn if-then-else slog mig ud et par gange, og især til sidst i spillet, hvor løsningerne ikke lige kan klares på 4-8 linjer, bliver det alt for uoverskueligt at lave god kode. Det er så her, jeg tog computeren i brug for at løse problemet og se, om jeg kunne overføre løsningen til spillet.


Her er vi i gang med at køre programmet. Du kan sætte farten op, og så kan du bevæge dig et enkelt skridt af gangen. Y er desuden åbenbart ikke en vokal.


Ender du med at sidde fast – og det gør de fleste nok – så er der absolut ingen hjælp at hente. Spørger du din chef, der sidder på en stol i hjørnet og holder øje med dig, så begynder han/hun at snakke om sin frokost, og det bedste vedkommende kan gøre er at give et eksempel. Nogle gange beder han/hun dig endda slå noget op på internettet eller at spørge en ven. Det er lige flabet nok, og det havde bestemt ikke været svært lige at give et hint, der kunne pege én i retning af den rigtige tankegang.

Det er i sidste ende svært for mig at finde ud af, hvem jeg vil anbefale spillet til. Hvis man aldrig har prøvet at programmere før, men har haft lysten, så prøv det. Hvis du har prøvet at programmere eller er erfaren i det, så vil du formentlig opleve den samme genkendelse af opgaverne som mig, men også frustrationer over manglen på normale funktioner. Hvis du derimod ikke ser dig selv som havende megen logisk tankegang, så vil du hurtigt gå død i spillet, og så er der ikke noget at gøre. Spillet er desuden for svært til børn, når man kommer udover de indledende opgaver, så det dur heller ikke som introduktion til programmering for børn til trods for den ellers super gode visuelle repræsentation af computere.


En af spillets kaffepauser. De er ret ligegyldige i bund og grund.


Konklusion:
Human Resource Machine bringer på fornuftig vis programmering ind i spilverdenen i form af veltænkte opgaver kombineret med et simpelt input og en super fin visuel repræsentation af computere. Opgaverne er som taget direkte fra lærebøger i programmering, både for dummies og de mere avancerede af slagsen, og det er bestemt ikke et spil for alle. Du skal have lyst til at arbejde med matematisk-logiske opgaver, og du skal være nogenlunde selvkørende i dem, da spillet ikke hjælper dig videre, hvis du sidder fast. Er du det, får du nogle hyggelige og udfordrende timer ud af spillet, der dog også til tider kan frustrere dig nok til at slukke for det. Dels er opgaverne svære, men syntaksen er også meget begrænset, og det kan derfor blive uoverskueligt i længere programmer. Med en pris på 75 kr., så er der egentlig nok underholdningstimer for pengene, men jeg har som erfaren programmør svært ved at se målgruppen.

Spillet fylder 102 MB.

Karakter

3/5

HjernegymnastikHjernegymnastik
Nemt at gå tilNemt at gå til
Særdeles udfordrendeSærdeles udfordrende
Diskuter
2
Gå Tilbage
Level 50
17403000 XP
#1:  KJ85 - 27. Apr 2017 16:46

Så har JOEP taget et kig på Human Resource Machine på Switch. Vi håber teksten kan bruges Smiley

citer indlæg

Level 50
6311500 XP
#2:  JOEP - 4. Dec 2017 10:04

Beklager jeg bumper denne gamle anmeldelse op, men Google har i dag en lille programmeringsopgave, som minder meget om dette spil.

https://www.google.com/doodles/celebrating-50-years-of-kids-coding

citer indlæg

Side: 1Vis alle
Du skal være logget ind på N-club for at kunne deltage i diskussioner.

Log ind
Bliv gratis medlem
Glem kodeord?