Alt du trenger å vite for å sette i gang med Python i din bedrift

13/01/21

På samme måte som engelsk er et populært første fremmedspråk, har Python blitt et meget populært første programmeringsspråk for folk med bakgrunn fra forretning og økonomi. 

Ta lakmustesten på om du bør bruke AI i din bedrift her.

Python er ikke bare noe for IT-avdelingen

Digitaliseringen av samfunnet og næringslivet har gjort at programmering ikke lenger kun er noe IT-avdelingen driver med. Også på forretningssiden vil de som jobber med datadrevne produkter og tjenester ha nytte av kjennskap til programmering, enten det er for å bedre forstå utvikler-kolleger i kryssfunksjonelle team, eller for å selv kunne bygge små løsninger som går utover det som er mulig å få til i regneark og tekstbehandlere. Programmering kan gjøres på mange språk, og forskjellige språk er egnede til forskjellige anvendelser. 

Hva er Python?

Python er et allsidig programmeringsspråk, utviklet for å være gøy og enkelt å anvende og lære (reflektert i språkets navn, som ikke refererer til slangen, men sikter til de britiske komikerne i «Monty Python»).

«The Zen of Python» er en samling av retningslinjer og prinsipper som danner grunnlaget for design og utvikling av Python. De begynner slik:

  • Beautiful is better than ugly.

  • Explicit is better than implicit.

  • Simple is better than complex.

  • Complex is better than complicated.

Webutvikling 

  • Python kan benyttes for å bygge websider og -applikasjoner. De mest utbredte webutvikling-rammeverkene i Python er Django og Flask.

Analyser og datadashboard

  • Python-pakker som Numpy og Pandas gjør det mulig å gjøre samme typer databearbeiding og -analyse som tidligere var forbeholdt statistikk-orienterte verktøy som R og SAS, og rammeverk som Dash og Streamlit gjør det mulig å bygge interaktive analysedashboard som kombinerer Pythons muligheter for avansert analyse og skreddersøm med brukervennligheten i dashboard lik det mange forretningsbrukere kjenner fra Tableau og Power BI.

Maskinlæring (ML) og kunstig intelligens (AI) 

Applikasjonsutvikling

  • På samme måte som andre programmeringsspråk kan Python også anvendes til å bygge små og store, enkle og komplekse applikasjoner og infrastruktur. Facebook og Netflix er kjent for å bygge mange av løsningene sine med Python. Her i nord er Spotify og Kolonial eksempler på teknologidrevne selskap som satser på Python.

Python-eksempler fra den virkelige verden

Instagram 

En nettside og plattform for deling av bilder. Nettsiden anvender Python web rammeverk, Django. Utviklere at nettsiden forklarer at de valgte Python fordi det er praktisk og simpelt.

Netflix

En nettside som tilbyr strømming av filmer og videoer. Netflix anvender Python til utvikling av en rekke systemer og applikasjoner. Alt fra statistisk dataanalyse, søkemotor, maskinlæring, sikkerhet og monitorering, algoritmer og infrastruktur.

Odoo

Odoo er en alt-i-ett forretningsorientert programvare og rammeverk som inneholder en rekke applikasjoner og verktøy til styring og ledelse av bedrifter. Deriblant inkluderer dette systemer og applikasjoner tilknyttet ERP, CRM, E-commerce, regnskap, fakturering, HR, prosjektledelse etc. Odoo er bygget på Python, og alle kjerneapplikasjoner og moduler er utviklet i Python.

Oda

Oda er en av Norges største matbutikker på hjemlevering. Selskapet er opptatt av å bruke data og teknologi for å skape morgendagens dagligvarehandel. Dette inkluderer områder som kundeløsninger, distribusjon, markedsføring, logistikk osv. Deriblant er selskapets dataplattform og infrastruktur basert på Python.

Hvordan komme i gang med Python?

Det krever ingen forkunnskap, utdanning eller erfaring innenfor programmering eller programvareutvikling for å komme i gang. Alle kan begynne å lære Python, uavhengig av bakgrunn og kompetanse. Vilje, motivasjon og nysgjerrighet er det eneste som kreves for å bli en pythonista. 

For å programmere og kjøre Python-kode trenger du bare å installere Python-«tolken» som leser og utfører koden i python-programmene dine, men på samme måte som de færreste bruker Notepad når de skal skrive lange dokumenter med tekst er det sterkt å anbefale å benytte et «Integrated Development Environment» (IDE), et hjelpeprogram som hjelper deg med å skrive og teste kode på en effektiv måte.

Installasjon av Python

Det eksisterer i dag to versjoner, Python 2 og Python 3. Python 2 er en eldre versjon, og støtte for versjonen gikk ut i 2020. 

– Jeg anbefaler å installere Python 3 med mindre du har helt spesielle grunner for å bruke Python 2, sier AI-rådgiver i PwC, Tom Tran. Selv om en del datamaskiner allerede har Python installert «ut av boksen», er det lurt å installere en separat versjon av Python for utviklingsformål. På windows er den enkleste måten å komme i gang på å søke etter «Python» i Windows Store og installere nyeste versjon derfra. For mer avansert bruk kan man laste ned og installere forskjellige versjoner direkte fra Python sine nettsider.

Tom Tran

– Python på sitt beste kan finne løsninger på forretningsproblem som vi mennesker aldri kunne ha klart, sier pythonista Tom Tran. 

Installasjon av IDE

De fleste moderne IDE tilbyr et bredt spekter av verktøy og funksjoner som gjør dataprogrammering og utvikling vesentlig lettere og mer effektivt, med funksjoner som effektiviserer kode-skriving, kjøring, testing, og feilsøking (debugging). Det anbefales sterkt å anvende en IDE for programmering og koding i Python.

I dag eksisterer det mange ulike IDE-er som kan anvendes for koding i Python. Et par populære eksempler er: Visual Studio Code, JupyterLab, PyCharm, Atom, Sublime, og Spyder. Hvilken IDE som er best kommer an på behov og preferanser, alle har sine bruksområder, styrker og svakheter. I denne artikkelen vil vi trekke frem to allsidige og nybegynner-vennlige IDE-er: Visual Studio Code og Jupyter Notebook.

Visual Studio Code

VSC er utviklet av Microsoft, og støtter operativsystemene Windows, MacOS og Linux. Det er brukervennlig og egnet for både nybegynnere og avanserte brukere. VSC er enkelt å installere, fungerer fint rett ut av boksen, og har et stort økosystem av utvidelsespakker. Det er fullt mulig å tilpasse programvaren til alle typer brukere, prosjekter og formål. Og, som Python selv, er VSC helt gratis å bruke.

JupyterLab (IDE)

JupyterLab er et IDE som først og fremst er rettet mot dataanalyse og skriving av interaktive «notatbøker» som kombinerer kode, visualisering av analyseresultater, og drøfting og dokumentasjon av fremgangsmåte og tolkning av resultater. JupyterLab er meget populært blant statistikere, analytikere, og data scientists. Jupyter lab er gratis og kan lastes ned her.

Koding på nett/ved bruk av nettleser

Det eksisterer også muligheter for å programmere og kode i Python ved bruk at nettleser. Dette kan være praktisk for å kjapt komme i gang med å lære python dersom det ikke er ønskelig eller mulig å installere Python på egen maskin. En ulempe ved å anvende nettbaserte løsninger er at sensitive og konfidensiell data vil bli eksponert dersom det lastes opp til nettsidene. Videre er det ofte en del begrensninger tilknyttet programmering i nettleser, spesielt med hensyn til bruk av tilleggspakker og utvidelser. Programmering i nettleser fungerer fint for å komme i gang med å lære Python, men bør ikke brukes til faktiske prosjekter. Et par eksempler på nettsider som tilbyr nettbasert programmering i Python er Skulpt og Python Anywhere.

Hvilke områder bør man fokusere på å lære?

Python kan anvendes til en rekke ulike bruksområder, og det er veldig lett å bli overveldet av mengden med informasjon og ressurser som eksisterer for Python. Det er lurt å begynne med å sette seg inn i fundamentale programmeringsferdigheter. Dette innebærer å lære hva programmering er, og hvordan et programmeringsspråk fungerer. Når dette er på plass kan du gå videre og spesialisere i spesifikke bruksområder som webutvikling, data analyse, osv.

Grunnleggende læringsmateriale

Alle nye pythonistas bør opparbeide seg grunnleggende fundamentale ferdigheter innenfor programmering. Hva er Python? Hva betyr det å programmere? «Learn Python» er en nettside som tilbyr introduksjon til grunnleggende temaer i Python.

«Runestone Academy: How to Think Like a Computer Scientist: Interactive Edition» er en nettbasert bok (gratis) som gjennomgår grunnleggende temaer i Python på et detaljert nivå. Fantastisk ressurs for individer som ønsker å fordype seg, og utvikle grunnleggende ferdigheter i Python.

«Automate the boring stuff» er en nettside som også tilbyr læringsmateriale for nybegynnere. Denne nettsiden er rettet litt mer i retning av hvordan Python kan anvendes til dataanalyse.

Oversikt over bruksområder og emner innenfor Python

«Full stack python» er en nettside med oversikt over ulike temaer og emner i Python som enhver pythonista kan fordype seg i. Denne nettsiden er et fint utgangspunkt dersom det er enkelte bruksområder i Python som man ønsker å utvikle ekspertise innenfor.

Support og støtte

«Code step by step» er en nettside som inneholder en samling av praktiske oppgaver og utfordringer. Dette er en flott ressurs for å teste sine programmeringsferdigheter.

«Stack overflow» er en nettside der utviklere og dataprogrammerer kan stille spørsmål til problemstillinger. Hvis du har et spørsmål, eller et problem som du ikke klarer å finne ut av, så kan du sannsynligvis finne svaret på Stackoverflow.

Google er et verktøy som alle dataprogrammerer er kjent med. Hvis det er noe du ikke klarer å finne ut av, google it!

YouTube inneholder utallige mengder med videoer med ulike opplæringsprogrammer for Python. Deriblant forklaringer og gjennomgang på hvordan man installere Python, IDE eller andre applikasjoner/verktøy. I tillegg til opplæring av grunnleggende fundamentale konsepter i Python, eller å utvikle spesifikke applikasjoner i Python.

Alle burde lære seg litt koding

Vi er på vei inn mot en digital alder der teknologi stadig blir mer sentralt i hverdagen vår, både i privatlivet og i næringslivet. En grunnleggende forståelse for hva programmering er og hvordan dataprogrammer fungerer er viktig for at bedrifter og enkeltindivider skal henge med i den teknologiske utviklingen. 

– Å tilrettelegge for at forretningssiden kan gjøre analyser og løse små forretningsproblemer med Python er en måte å utvikle den digitale kompetansen i bedriften, bygge bro mellom forretning og IT, og åpne mange nye digitale muligheter for både bedrifter og enkeltindivider, sier AI-direktør Leganger.

 

Kontakt oss

Lars Erik Fjørtoft

Lars Erik Fjørtoft

Partner | Leder for Risk Services, PwC Norway

Tlf: 974 74 469