Skip to content

Instantly share code, notes, and snippets.

@anttiviljami
Last active December 13, 2018 08:33
Show Gist options
  • Star 9 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anttiviljami/6697dad5bf0c862ec46f6bb344947479 to your computer and use it in GitHub Desktop.
Save anttiviljami/6697dad5bf0c862ec46f6bb344947479 to your computer and use it in GitHub Desktop.
Innowise CMS vs. WordPress (annotoitu)

Linkki alkuperäiseen artikkeliin: http://www.innowise.fi/fi/innowise-cms-vs-wordpress/

part1

part2

part3

1)

WordPress tukee out-of-the-box useita erilaisia käyttäjäryhmiä jotka on jaettu eri rooleihin. Pääkäyttäjän rooli on tarkoitettu sivuston tekniselle ylläpitäjälle, kun taas roolien Päätoimittaja, Kirjoittaja ja Avustaja ylläpitonäkymät on karsittu vähemmän teknisille ylläpitäjille sopiviksi. WordPressin rooleilla voi myös rajoittaa eri ryhmien käyttöoikeuksia esimerkiksi antamalla Avustaja-roolin vain muokata sivuja, muttei julkaista niitä ilman Päätoimittajan tai Pääkäyttäjän lupaa.

2)

Avoin koodilisenssi ei tarkoita, että koodi olisi automaattisesti julkista. On äärimmäisen epätodennäköistä, että WordPress-toimittaja julkaisee asiakkaalleen kehittämänsä ja asiakkaan omistaman lähdekoodin ilman lupaa, koska se on "Avointa".

WordPressin ytimen koodi on toki julkista, mutta siitä haavoittuvuuden löytyessä normaalitapauksessa ilmoitetaan WordPressin tietoturvatiimille, eikä sitä julkaista kaikkien nähtäville ennen kuin korjaus on julkaistu ja kaikki ovat ehtineet päivittää sivustonsa.

Niissä tapauksissa kun ilkeämielinen hakkeri toimii vastuuttomasti käytäntöjen vastaisesti ja julkistaa haavoittuvuuden ennen sen korjaamista normaalissa release-syklissä, on kyseessä ns. 0-day -haavoittuvuus, johon WordPressin turvallisuustiimi julkaisee mahdollisimman pian security patch -korjauksen, johon sivustot päivittyvät tavallisesti 24-tunnin sisällä.

Lisää aiheesta: https://make.wordpress.org/core/handbook/testing/reporting-security-vulnerabilities/

Avoin koodilisenssi ei missään tapauksessa vähennä järjestelmän tietoturvaa. Päinvastoin.

Avoimen lähdekoodin järjestelmien, kuten WordPressin turvallisuudesta voi olla varma, sillä niihin luottavat myös suuret maailmanlaajuiset organisaatiot, jotka jatkuvasti investoivat järjestelmän tietoturvan ylläpitoon. WordPressiä käyttävät esimerksi massiiviset uutissivustot, kuten BBC, New York Times ja Fortune Magazine.

Lisää esimerkkejä organisaatioista, jotka luottavat WordPressiin: https://wordpress.org/showcase/

Suljetuissa järjestelmissä järjestelmän tietoturva on ainoastaan toimittajan varassa, ja tietoturvaongelmat jäävät helposti huomaamatta kunnes on liian myöhäistä. On totta, että suljettuihin järjestelmiin kohdistuu harvemmin kevyitä automatisoituja hyökkäyksiä, jotka kokeilevat onneaan vanhentuneiden ohjelmistoversioiden kanssa. Siksi onkin ensisijaisen tärkeää pitää WordPress ja lisäosat aina päivitettynä uusimpaan versioon. Kohdistetut, paljon massabottiskannereita vahingollisemmat hyökkäykset onnistuvat paljon helpommin suljettuun koodikantaan, jota ei auditoi sadat tai jopa tuhannet ihmiset ja yritykset päivittäin.

Paras tapa varmistaa, että koodissa ei ole virheitä on lukea se.

Suljetussa järjestelmässä, varsinkin sellaisessa jossa "lähdekoodi asennetaan asiakassivustoille suojatussa muodossa -- edes asiakkaamme eivät pääse tutkimaan julkaisujärjestelmän ytimen lähdekoodia ja etsimään mahdollisia haavoittuvuuksia", asiakas on täysin toimittajan armoilla tietoturvan suhteen.

Kuten tietoturvapiireissä sanotaan:

Security through obscurity is not security.

3)

Avointa lähdekoodia eivät kehitä "hyvät tyypit", vaan useat ohjelmistoalan ammattilaiset, joille maksetaan ohjelmistojen kehittämisestä ja ylläpitämisestä.

Kuka tahansa voi ehdottaa korjauksia WordPressiin, mutta kaikki muutokset eivät tietenkään päädy ohjelmistoon. Joka ikinen muutos avoimen lähdekoodin arvioidaan, ja sen käy läpi tiimi ammattilaisia ja tarvittaessa hylkää tai tekee muutoksia ehdotettuun lisäykseen. Linkitetty artikkeli antaa nimenomaan esimerkin tapauksesta, jossa koodikannan parhaiten tunteva ohjelmistoammattilainen ei hyväksy mielestään laaduttomia muutoksia ohjelmistoon. Artikkeli ei myöskään mitenkään kommentoi avoimen koodin tietoturvaa, toisin kuin alkuperäinen kirjoitus vihjaa.

4)

"Kuka tahansa" ei kelpaa tekemään muutoksia WordPressiin. Myös jokainen WordPress.org:ssa julkaistava lisäosa arvioidaan ja saatetaan hylätä plugin review -tiimin toimesta ennen julkaisua.

Lisää aiheesta: https://make.wordpress.org/plugins/

5)

WordPress tukee myös kolmannen osapuolen lisäosien päivittämistä automaattisesti, ja useat palveluntarjoajat suosittelevatkin ominaisuuden käyttöä. Tarvittaessa WordPressin ydintiimi voi myös sivuston asetuksista riippumatta pakottaa kaikkia lisäosan käyttäjiä päivittämään uusimpaan versioon, kuten kävi esimerkiksi tässä huippusuositun Yoast SEO -lisäosan tapauksessa:

https://yoast.com/wordpress-seo-security-release/

6)

WordPress-ohjelmisto on ilmainen asentaa, mutta kukaan WordPress-toimittaja ei varmasti tarjoa WordPress-sivustoja ilmaiseksi. On hassua edes olettaa että jollekin WordPressin "ilmaisuus" olisi mikään valintaperuste toimittajaa valitessa; varsinkin kun keskimääräiset ammattilaisen tekemät sivustot liikkuvat kustannuksiltaan tyypillisesti tuhansissa euroissa.

WordPress nimenomaan antaa ostajalle mahdollisuuden valita omalle lompakolleen sopivan toteuttajan. Halvimmillaan WordPress-sivuston saa muutamalla hassulla satasella ulkomaiselta freelancerilta, ja räätälöityihin tarpeisiin saa vaikka miljoonaluokan toimituksia sekä kaikkea siltä väliltä.

Kustannustehokkuuden varmistaa kilpailuttamalla toteutuksen, mikä on mahdotonta suljetun järjestelmän ostamisen jälkeen vendor-lockissa, jossa ainoastaan ohjelmiston toimittaja voi toteuttaa jatkokehitystä ja räätälöintiä mielivaltaisella hinnalla ilman koko sivuston siirtämistä uudelle alustalle.

7)

Olisi kiva saada esimerkki "valuviasta" tai puutteesta, joka estää kehittyneiden sivustojen toteutuksen WordPressillä. Tämä väite tuntuu olevan täysin hihasta vedetty.

8)

Vertailutaulukko on harhaanjohtava, koska siihen on valikoitu nimenomaan ominaisuuksia jotka WordPressillä tyypillisesti toteutetaan käyttämällä lisämoduuleja mutta löytyy kirjoittajan suljetusta tuotteesta.

WordPress on alusta asti suunniteltu modulaariseksi, eli sivustolle tarvittavat lisäominaisuudet otetaan tavallisesti käyttöön yksittäisinä plugineina sen sijaan että ominaisuus löytyisi valmiina kaikista asennuksista. Vaikka WordPressiä voi myös käyttää kokonaan ilman lisäosia, ei sitä ole missään tapauksessa ole tarkoitettu käytettävän niin.

Ei ole millään mittarilla rehellistä vertailla modulaariseksi suunniteltua ja monoliittista tuotetta keskenään niiden ydinasennukseen kuuluvien ominaisuuksien perusteella. Jokaisessa allaolevassa esimerkissä ominaisuuden puuttuminen WordPressin ytimestä ei ole puute, vaan design-päätös pitää ominaisuus omana moduulinaan.

Taulukosta on näppärästi myös jätetty pois monta WordPressin killer-featurea, joista esimerkkeinä vakiona tulevat:

  • Laajennettava REST-API -rajapinta
  • Automaattiset varmuuskopiot sisällöistä
  • Helppokäyttöinen ulkoasunmukautin live-esikatselulla (Customizer)
  • Ylläpitäjän massamuokkaustoiminnot
  • Rikkinäisten linkkien tarkistustyökalu editorissa
  • Kuvatiedostojen muokkaustyökalu

9)

WordPress on saatavilla 164 eri kielelle. Jotta samalla sivustolla voidaan käyttää useampaa kieltä, tulee WordPressille ottaa käyttöön ilmainen monikielisyyslisäosa.

10)

Do-it-yourself henkisille tyypeille on saatavilla yksityiskohtaiset ohjeet verkosto-asennuksiin. Tyypillisesti teknisempi WordPress-toimittaja hoitaa asennuksen, jonka jälkeen vähemmän tekninen käyttäjä voi luoda uusia sivustoja verkostoon omilla verkkotunnuksilla ilman erikoisosaamista.

Tuskin kirjoittajan tuotteella onnistuu lennosta uuden sivuston julkaisu kokonaan ilman teknistä apua sivuston toimittajalta.

11)

Ominaisuus on saatavilla ilmaisena lisäosana.

12)

Myös WordPress-toimituksissa tehdään sivutyypit aina tarpeiden mukaan. Sivutyypit eli WordPressissä sivupohja tai sisältötyypit ovat vakio-ominaisuuksia jotka määritellään sivuston ulkoasuteemaa kehitettäessä.

13)

WordPressin vakio-ominaisuuksiin kuuluu sivun lisäkentät (custom fields). Ulkoasuteema määrittää montako sisältökenttää yhteen sivupohjaan kuuluu.

14)

WordPressin vakiotoimintoihin kuuluu pikatoiminnot kaikkien sivutyyppien luomiseen.

15)

"Pienellä muokkauksella" ei varmaankaan tarkoita, että asiakas saa ilmaiseksi ja helposti sivustolleen käyttöön minkä tahansa netistä löytämänsä ulkoasun.

16)

Ominaisuus on saatavilla ilmaisena lisäosana.

17)

"Hakukoneoptimoinnin toiminnot" on pelkästään jo todella valtava kokonaisuus, joka sisältää jatkuvasti muuttuvan määrän erilaisia parannuksia sivustolle. WordPressin vakio-ominaisuuksiin kuuluu runsaasti hakukoneoptimointiin liittyviä toimintoja, kuten esimerkiksi kauniit url-rakenteet, dynaaminen robots.txt -hallinta ja automaattinen kuvakoiden optimointi, mutta saatavilla on myös runsas valikoima työkaluja hakukoneoptimointiin lisäosina.

18)

Ominaisuus on saatavilla ilmaisena lisäosana.

19)

Räätälöidyt 404-sivut kuuluu WordPressin vakio-ominaisuuksiin. 404-sivun ulkoasu periytyy automaattisesti ulkoasuteemasta, tai sille voidaan määrittää kokonaan oma ulkoasu.

20)

Sivujen uudelleenohjaukset kuuluu WordPressin vakio-ominaisuuksiin. Uudelleenohjauksien keskitettyyn hallintaan on myös saatavilla useita ilmaisia työkaluja lisäosina.

21)

Tästä jää hieman epäselväksi mitä ominaisuudella tarkoitetaan. WordPressin vakio-ominaisuuksiin kuuluu mm. kirjoitetun sisällön automaattinen tallennus ja varmuuskopionti selaimen välimuistiin jos internet-yhteys katkeaa. Myös käyttäjän tekemät muutokset näkymiin pysyvät käyttökertojen välillä.

22)

Eli rehellisesti kommentointiominaisuus on saatavilla vain kolmannen osapuolen palveluna, johon löytyy integraatio.

23)

Ominaisuus on saatavilla ilmaisena lisäosana.

24)

Ominaisuus on saatavilla ilmaisena lisäosana.

25)

WordPress.com on kolmannen osapuolen kaupallinen palvelu, joka sattuu hyödyntämään avointa WordPress-alustaa. Sen tarjoamat ominaisuudet eivät heijasta WordPress-projektin tarjoamia mahdollisuuksia.

26)

WordPressille löytyy runsaasti suomalaisia tukipalveluita ja sivustontoimittajia. WordPressin kehitykseen osallistuu aktiivisesti myös useat suomalaiset henkilöt, ja Suomessa on hyvin aktiivinen WordPress-ammattilaisten yhteisö.

27)

Tavallaan totta, mutta hassu peruste. Vähän sama kuin vertailisi traktoria ja lapiota. Molemmilla saa tarvittaessa aikaan samoja juttuja, ja lapio on aika helppoa tuntea työkaluna ihan läpikotaisin, mutta se ei vielä kerro kummasta on omistajalle enemmän hyötyä.

Toki myös useat WordPress-toteuttajat ovat intiimisti mukana WordPress-tuotteen kehityksessä, ja tuntevat projektin koodikannan sekä kansainvälisen kehittäjäyhteisön läpikotaisin. Yhteisöstä löytyy useita henkilöitä, jotka ovat olleet WordPressin kehityksessä mukana projektin alkuajoista lähtien, ja osa jopa ennen WordPressin ensimmäisen version julkaisua sitä edeltäneen b2-nimisen CMS:n parista.

Myös suomalaisista WordPress-toimittajista löytyy tekijöitä, joilla on WordPressistä jo yli vuosikymmen kokemusta. Kyse ei varmasti ole siitä, ettei syvällistä WordPress-osaamista löytyisi.

28)

Tuskin yksikään varteenotettava WordPress-talo suosii ilmaisia valmisteemoja asiakasprojekteissa. Valmiita ulkoasuteemoja käyttävät lähinnä nollabudjetilla tekevät yksityishenkilöt ja harrastelijat, joita tuskin myöskään kirjoittajayritys palvelee.

Kirjoittajan kokemus WordPressista toteutuksen alustana tuntuu olevan lähinnä valmisteemojen ja lisäosien purkkapatenttirakentelusta. Kuitenkin nyt vertaillaan WordPressin mahdollisuuksia työkaluna ammattilaisen käsissä.

29)

Kyllä; myös WordPress-taloissa sivuston suunnittelu lähtee designista ja asiakkaan tarpeen ymmärtämisessä, johon WordPress taivutetaan, eikä toisinpäin.

Jokaisella WordPress-toimittajalla on varmasti ihan omat toimintatavat ja omat työkalut sekä pohjat työhönsä. WordPress on ammattilaisen käsissä yksi monipuolinen työkalu muiden joukossa, eikä rajoita toteutuksen lopputulosta.

30)

Tarpeet muuttuvat. Kyse ei ole pelkästään yhden sivustoprojektin tarpeista, vaan alustan tarjoamista mahdollisuuksista.

Verkkosivustotoimituksissa mielenkiintoinen vaihe alkaa vasta julkaisun jälkeen, kun sivuston tai palvelun toimivuus laitetaan testiin ja tulokset mitataan. Äkkiä voidaan huomata että alkuperäinen suunnitelma ei vastannutkaan tarpeita, ja tarvitaan joustavuutta.

Ehkä tarvitaan toinen tapa esittää tiedot etusivulla. Ehkä tarvitaan uusi vieraskielinen versio sivustosta, jota ei ollut alkuperäisessä määrittelyssä. Ehkä tarvitaan jopa verkkokauppa suomalaisilla ja vaikkapa venäläisillä maksutavoilla.

Tässä kohtaa suljetun alustan valinnut asiakas huomaa, että on täysin jumissa toimittajaansa joka voi mielivaltaisesti päättää jatkossa muutosten ja lisätöiden hinnat. Kilpailuttaminen vaatisi kokonaan uuden sivustoprojektin ja toiseen alustaan siirtymisen, mikä tulisi todella kalliiksi.

Kyseessä on Vendor Lock-in.

31)

WordPressin tärkein vahvuus ei ole sen hintalappu tai sille tarjolla oleva iso kasa ilmaisia lisäpalikoita. Suurin vahvuus on vapaus. Asiakas saa päättää aina itse ostaako, kilpailuttaako, tekeekö itse vai kenties käyttää ilmaista ratkaisua tarpeisiinsa.

32)

Kaipailisin näistä puuttuvista ominaisuuksista yhä esimerkkejä.

33)

Kirjoittaja sekoittaa WordPressin kehittäjän ja sivuston omistajan roolit toisiinsa. WordPress on äärimmäisen helppokäyttöinen käyttäjälle, mutta myös joustaa vaativimpiinkin kehitystarpeisiin. Optimaalisessa tilanteessa asiakas ja tekninen toimittaja ymmärtävät toisiaan, ja asiakas voi luottaa tekniset asiat toimittajalle. Jokaisen WordPressin käyttäjän ei missään nimessä tarvitse osata koodata tai asentaa lisäosia. Eikä pidäkään.

34)

Ylläoleva taulukko listaa ansioituneesti kirjoittajan oman CMS-tuotteen ominaisuudet. Jos lukija tietää ettei koskaan tule tarvitsevan sivustollaan lisäominaisuuksia, eikä koe koskaan tarvitsevansa kilpailuttaa toimittajia, valinta on selvä!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment