Muuttokuormasta löytyy myös palanen historiaa. Kaiken krääsän ja piirikorttien seasta löytyi kolme ohjelmointiopasta, joilla olen joskus aloittanut.
Muuttokuormasta löytyy myös palanen historiaa. Kaiken krääsän ja piirikorttien seasta löytyi kolme ohjelmointiopasta, joilla olen joskus aloittanut.
Kun seuraa Linux'in päivityksiä, niin välillä on mukava tarkistaa, että mitä tietokoneessa oikein tapahtuu. Tämä on mahdollista Linux'in ohjesivujen kautta (manuaalit, man-pages).
Kuinka väärässä voikaan vanha nörtti olla!
Toki Facebook selaimen asiakasohjelma (Front-end) on kirjoitettu JavaScript-kielellä, kuten melkein kaikki muutkin sosiaalisen median palvelut (Twitter, Wikipedia, Yahoo, WordPress). Mutta taustalla (Back-end) toimii LAMP-palvelin [ Linux, Apache, MySQL(MariaDB), PHP ]. Tai ainakin toimi vielä 2012. Vieläpä Facebook'in itse koodaama ja virittämä versio [ Hack, PHP, Python, C++, Java, Erlang, D, XHP, Haskell ]
Lähde: https://en.wikipedia.org/wiki/Programming_languages_used_in_most_popular_websites
Joudun säännöllisen epäsäännöllisesti testaamaan kaikki hengentuotteeni erilaisilla järjestelmillä. Testit täytyy tehdä erilaisilla käyttöjärjestelmillä (Windows 7/8/10, MacOS ja Linux), erilaisilla laitteilla (PC, Laptop, Mobiilit) sekä erilaisilla selaimilla (ja niitähän riittää). Vaikka kehitystyö ja käyttö tehdäänkin internetissä, niin ohjelman käyttäytyminen asiakkaan laitteella riippuu noista kaikista tekijöistä. Osa toiminnoista kun on sidottu järjestelmään, eikä siihen pääse kehittäjä vaikuttamaan. Vielä 1990-luvulla piti "vain" tietää, että millaiseen Windows versioon ohjelma tullaan asentamaan. Nykyaika ei ole tuonut tähän ainakaan helpotusta. Etenkin mobiililaitteet ovat tyhjentäneet hiukset päästä. Tässä eräänä päivänä (nyt) ajattelin testata erästä tuotetta vanhassa Windows 7 ja 8.1 koneessa. Huomasin kyllä, että selain oli toki päivittynyt uudempaan versioon (IE 11.x). Mutta sitä en muistanut, että kuinka hankalaa on Windows 7 koneelle kertoa, että WiFi verkon reititin ja salasana ovat vaihtuneet. Se vai haluaa itse ratkaista verkon ongelmat, eikä päästä käyttäjää väliin. Kun tein saman testin uudemmalla Windows 10 koneella, niin se oli jo sujuvampaa. Win 10 osasi kysyä WiFi verkon salasanaa kun vanhalla ei enää päässyt verkkoon.
Tästä satunnainen lukija huomaa, että minulla saattaa olla useampi tietokone käytössä. Oikeassa on hän. Nopeasti laskettuna niitä on kaikkiaan kahdeksan (8) erilaista. Kaikissa hieman erilainen järjestelmä. Onneksi suurin osa laitteista on hankittu kierrätyksestä.
Hups! On taas aikaa kulunut kun olen tänne kirjoittanut.
On niin monta paikkaa, mihin tekstejä täytisi muistaa päivittää.
Olen sentään jotakin oppinut tästä tietokoneiden ohjelmoinnista.
Viimeisen 20 vuoden aikana ohjelmointi on siirtynyt työasemasta (Windows) internettiin ja pilvipalveluihin (Cloud Service). Erilaisia sovelluksia käytetään nyt oman tietokoneen selaimella (Browser), eikä ohjelmia enää asenneta kiinteästi omalle tietokoneelle. Lisäksi mukaan ovat tulleet mobiililaitteilla käytettävät sovellukset (Applications). Ei taida olla mitään sellaista elämän aluetta, mitä ei voisi käyttää puhelimella tai tabletilla, jopa henkilökohtaisella älykellolla tai rannekkeella.
Joka tapauksessa. Kun nykyaikana aloittaa rakentamaan erilaisia sovelluksia, niin on otettava huomioon muutama seikka jo alusta alkaen. Riippumatta siitä, että millä ohjelmointikielellä tai millä ympäristöllä (IDE) ohjelmia kehität ja tuotat. 1) Kaikki tieto tulee tallentaa tietokantaan (Database). 2) Sovellusta pitää pystyä käyttämään monella eri kielellä (Languages). 3) Sovelluksesta pitää pystyä tuottamaan erilaisia raportteja ja listauksia ja niissä tulee ottaa huomioon listauksen sivutukset (Pagination). Muuten olet samassa liemessä kuin se "vanha" rallikuljettaja, joka ei asunut Laukaassa vaan Laukaalla.
Otetaan alusta.1) Kun kaikki tieto, tekstit, kuvat ja tapahtumat ovat tietokannassa, niin muutokset on "helppo" suorittaa ja antaa ne jopa käyttäjän itsensä tehtäväksi, harkitusti ja rajoitetusti.2) Edellisestä johtuen, myös erilaisten kieliversioiden toteuttamisen tekee tietokanta huomattavasti helpommaksi. Kielen vaihtaminen näytöllä tulee paljon helpommaksi kun kieliversiot on tallennettu tietokantaan.3) Kun tietoa tallennetaan, niin on tyypillistä, että sitä kertyy ajan kanssa huomattavia määriä. Silloin on tärkeää, että halutun tiedon löytäminen pitää tehdä helpoksi. Kaikkiin raporteihin ja listauksiin tulee järjestää tiedon hakemiseen (Search) ja sivunumerointiin (Pagination) tarvittavat välineet.
Tämän kohdan 3) kanssa olen jumpannut viimeisen kuluneen viikon aikana. Kiitän luojaani (??) ja itseäni siitä, että olen ottanut huomioon kohdat 1) ja 2) jo alkuvaiheessa.
Siitä huolimatta siihen kuluu yllättävän paljon aikaa. Kyllä tekniikan saa toimimaan suhteellisen nopeasti, mutta ennen kuin raportti on luettavassa muodossa, siistin näköinen ja muutenkin selkeä, niin kyllä aikaa ja kahvia kuluu. Onneksi en polta tupakkaa
Yksi esimerkki on internet sivulla vierailleiden kävijöiden seuranta (Visitor Tracker). Vaikka mitään tarkkaa ja yksityistä tietoa ei tallenneta, niin on mukava seurata, että mistäpäin maailmaa, mihin aikaan, millä laitteella ja millä tekniikalla ihmiset verkossa liikkuvat. Taisin jo mainostaa tätä sovellusta aikaisemmin. Oheisessa kuvassa on kuitenkin viime yön aikana (noin 1:30) jälkeen omalla sivullani vierailleet käyttäjät. Listassa on kymmenen viimeistä tapahtumaa. Jo tästä näkee aikaeron, tekniikan ja vierailijan sijainnin (IP osoitteen perusteella). Listalta on poistettu kaikki tunnetut robotit (Botit, joita minun tiedossa on noin 4650) sekä minun omat käynnit. Aikaerosta johtuen on aamukahvin aikana mukava seurata, että ketä kaikkia on sivulla vieraillut.
Että onko tästä mitään hyötyä? Ei yhtään mitään. Tämä puuhastelu on pelkkää ajan kuluttamista sekä uusien asioiden ja tekniikoiden oppimista. Uskokaa tai älkää, niin kyllä vanhakin koira oppii uusia temppuja.