Jag har läst ännu en bok och här följer min sedvanliga rapport. Boken i fråga heter Beginning Python och släpptes i våras i en tredje upplaga, nu med den senaste versionen av Python.
Vad i hela helsefyr är Python?
Python är ett datorspråk för att skapa program till datorer av olika slag. Både namnet och kulturen bland de som använder Python tycks ha lånat mycket ifrån humorgruppen Monty Python, det märks tydligt i de kodexempel som ges. Det är väldigt mycket även jag som inte är ett fan känner igen.
Med Python kan man alltså bygga program, system bakom webbplatser och automatisera uppgifter för en maskin att jobba med.
Varför just Python? Data science!
Python tycks vara en defacto-standard när det gäller data science, inom vilket jag inkluderar applicerad machine learning och det som ofta är grunden till artificiell intelligens (AI).
Data science skiljer sig från “vanlig” programmering på ett antal punkter. Data science baseras på mer eller mindre stora datakällor som ska bearbetas. Inte sällan är det mycket stora datamängder det handlar om, möjligen har datakällan en dålig struktur vilket kräver att innehållet tvättas, men ibland är det en strid ström av data som behöver bearbetas. Detta kallas för 3 V of Big Data – Variety, Velocity och Volume.
Data science är åtminstone inledningsvis mer utforskande än tänkt att bli ett program man sätter i produktion någonstans.
Mer vanlig programmering handlar oftast om att göra en viss arbetsuppgift väldigt många gånger. Tänk på hur systemet bakom en webbplats fungerar, där finns en webbserver som är beredd att skicka sina webbdokument till många miljoner besökare. Det är i jämförelse en väldigt rutinartad syssla och precis vad programmering handlar om i grunden – att få en maskin att utan nämnvärd insats upprepa en viss arbetsuppgift.
I och med att varje arbetsuppgift inom data science är mer unik och kräver olika metoder blir denna typ av programmering mer av ett verktyg att uppnå något. Jag gillar liknelsen med slöjd då det har mer med ett digitalt hantverk att göra än en massproduktion i fabriksmiljö.
Det går förstås bra att göra denna typ av programmering med andra programmeringsspråk än Python, men det är lite som att omvärlden redan valt Python för denna typ av syssla. För Python finns massor med exempelkod, användbara tillägg och annat som underlättar. För mig som tidigare programmerat i andra språk är det en liten omställning, men för den som är nybörjare på området tycker jag nog att Python är ett utmärkt första språk att testa.
Och hur var boken?
Boken var bra och gick igenom alla viktiga grunder lite lagom mycket. Jag har tidigare läst andra böcker om Python och denna gång för att färska upp kunskaperna.
Det enda negativa är väl att inget ämne tas upp så pass mycket att man verkligen kan det, men det är nog vad de avslutande tiotalet projekt syftar till (som jag inte gjorde).
Boken har allt möjligt innehåll, men inte minsta lilla om machine learning eller data science annat än att rita ut kurvor. Men det är ju också en bok om språket och då är det logiskt att få reda på vilken bredd av program man kan skriva, även fast de flesta av oss inte kommer vara så mångsidiga i vår användning. Jag kommer primärt tugga igenom textfiler och anropa diverse externa tjänster med hjälp av Python, och det togs visserligen upp men inte så mycket att jag lärde mig några nya knep.
Du som är nyfiken på att lära dig Python kan kolla in Think Python eller boken Automate the boring stuff with Python, båda är gratis och läsbara på nätet.
Nästa bok jag ska läsa är ett djupdyk i just data science, nämligen Hands-on Machine Learning with Scikit-Learn & TensorFlow.