Ohjelmointiharjoittelua iPadilla

pythonista-workingcopy

TKK:lla opiskellessa opintoihin kuului jonkin verran ohjelmointikursseja, mutta työkokemusta ohjelmoinnista minulle on kertynyt vain 90-luvun puolivälissä erään sovellustestauksen seurantasovelluksen jatkokehittämisen tiimoilta. Avainsanat taisivat olla C++, X ja Motif — tai jotain siihen suuntaan. Vuosien varrella aika (tai into) ei ole riittänyt koodikynään tarttumiseen uudestaan – ennenkuin aivan hiljakkoin…

Vaikea on oikea

Oma tapani tehdä asioita on monesti hieman ”hankalan kautta”, joten on vain loogista, että koodaamisenkin opettelemista piti alkaa värkkäämään suhteellisen tuoreella iPadilla. Lisätwistiä tähän ”vaikea on oikea” -periaatteeseen syntyi siitä, että valitsin harjoittelun kohteeksi serverless -teknologiat. Tämä ehkä eniten siksi, että pidän käytön mukaan laskutettavien palvelujen idesta, mutta toki niihin liittyy muitakin etuja.

Konkreettinen, ajankohtainen projekti-idea löytyi verrattain helposti harrastuksen parista ja työkalupakkiin alkoi valikoitua pienen mietinnän jälkeen opeteltavaksi

Näiden lisäksi ahkerassa käytössä ovat olleet Google-hakujen kautta löytyneet verkkosivut ja valikoidut Udemyn verkkokurssit.

Pythonista, Working Copy ja GitHub

Applen iOS-pohjaiset käyttöjärjestelmät rajoittavat (ainakin toistaiseksi) sovellukset melko tiukasti omaan ”hiekkalaatikkoonsa”, mutta muutamilla toteututeulla käyttöjärjestelmäpalveluilla on kuitenkin mahdollista pystyttää toimiva kehitysympäristö.

AppStoresta löytyy Pythonista app, joka on täysin toimiva python-skriptien kehitysympäristö. Appsin mukana tulee runsaasti erilaisia esimerkkejä. Pythonista voi tallentaa tiedostoja paikallisesti tai iCloudiin. Jälkimmäinen on hyvä ratkaisu, mikäli Pythonistaa käyttää useammalla laitteella – esimerkiksi iPadilla ja iPhonella.

Pythonistan kaveriksi kannattaa samantien asentaa StaSH, esimerkiksi näitä ohjeita seuraten. StaSH on tarpeen etenkin, jos haluaa asentaa Pythonistaan lisäkirjastoja, kuten AWS boto3:n.

Samalla kun on lähtenyt ohjelmoinnin opettelussa liikkeelle voi (ja kannattaa) opiskella myös nykyaikaisen versionhallinnan periaatteita vaikkapa perustaen itselleen projektin GitHubiin ja hankkien iPadiin esimerkiksi Working Copy appsin, joka toimii Git-clienttina.

Amazon Web Services

Amazon Web Services, tai tuttavallisemmin AWS, tarjoaa monenlaisia palveluita kehittäjien käytettäväksi. Omassa projektissa olen jo päässyt tutustumaan seuraaviin palveluihin:

…ja myöhemmin tutuksi tulevat luultavasti vielä ainakin

Miten koodaaminen iPadilla käytännössä toimii?

iPadissa toimivan iOS-version ominaisuudet ovat verrattain rajalliset tavalliseen kannettavaan tietokoneeseen verrattuna. Etenkin ruutukoon rajallisuus aiheuttaa haasteita, kuten myös se, että ”täppärillä” ei helposti voi pitää montaa ikkunaa auki samaan aikaan. Olen käyttänyt tällä hetkellä tarjolla olevia ominaisuuksia näin.

  1. Kun koodailen Pythonistassa, voin näppäinoikoteillä mm. liikkua helposti näppäinoikoteillä konsolin ja editorin välillä ja käynnistää skriptin ajon.
  2. Kun haluan tallentaa GitHubiin uuden version scripteistäni, vedän ruudun oikeasta reunasta näkyville Slide Overilla Working Copyn (ja työnnän sen pois näkyvistä, kun tallennus on tehty).
  3. Näppäimistöltä aktivoitavan Spotlight -haun (cmd-space) kautta voi nopeasti tehdä nettihakuja ja tietenkin cmd-tab’in avulla siirtyä appsista toiseen.

Pythonistasta löytyy samanlaisia ominaisuuksia kuin muistakin nykyaikaisista kehitysympäristöistä ja IDE’istä, kuten syntaksin korostus, koodin täydennys, tuki useille välilehdille, debuggeri, tuki eri Python-versioille, jne.

Tällä hetkellä tuntuu siltä, että näillä värkeillä pärjää jo melko pitkälle – eikä tämä iPad-setup ole se, joka minua opiskelussa hidastaa. Hiljalleen edeten ja opetellen on tarkoitus saada idea ”tuotantoon” ennen syksyä. Saas nähdä miten käy!

 

Vastaa

Täytä tietosi alle tai klikkaa kuvaketta kirjautuaksesi sisään:

WordPress.com-logo

Olet kommentoimassa WordPress.com -tilin nimissä. Log Out /  Muuta )

Twitter-kuva

Olet kommentoimassa Twitter -tilin nimissä. Log Out /  Muuta )

Facebook-kuva

Olet kommentoimassa Facebook -tilin nimissä. Log Out /  Muuta )

Muodostetaan yhteyttä palveluun %s