Marraskuusta 2016 toivuttua

Ei enää harmita juuri, että palautettuani tuon WordPress -opinnätetyöni marraskuussa 2016, siinä ei luonnollisestikaan ole yhtään viitettä tai mainintaa tuosta WordPress REST Apista, kun se näki päivänvalon joulukuussa 2016, ja olen tässä nyt käyttänyt öitäni dokumenttien haltuunottoon.
toi WP REST Api tarjoaa aika laajat, jotkut puhuu rajattomista uusista mahdollisuuksista, niin front-end -teemojen kehittämiseen, kuin jos suunnitelee noita liitännäisiä.
Aloin seuraamaan myös tuota WordPressin emoyhtiön ylläpitämää ajantasaista uhka/turvallisuus logia, vaikka en ole tilannut sieltä uutiskirjettä, niitä tulee aina uusia haavoittuvuuksia ei nyt ihan yhtä viikossa, mutta aika pian ne saadaan paikattua, kun joku aukko havaitaan uusimmassa versiossa. Aloin seuraamaan aktiivisesti vasta viime vuoden jouluaattoa edeltävinä päivinä tota logia, kun joku pimeän puolen nörttien ohjelmoima botti oli kaatanut tuon tuntikirjuri-sivuni.

Nythän taas se on pysynyt verkossa vakaana ilman käyttökatkoksia, kun parantelin turvallisuutta ja tein muita toimia, jotta ainakaan sama haxi ei toimi jatkossa eikä JSON -data ole julkista, joka on ollut julkista ilman lisätoimenpiteitä ylläpitäjältä joulukuun 2016 WordPress -version päivityksen jälkeen.

Pistin rohkaistuneena uudesta WP REST Api-oppimastani Poutapilvi Design Oy:lle rekrytointi-puolelle sähköpostia, jos pääsisi joko erikseen laskutettuna alihankintana, tai te-toimiston työllisyystuella johonkin liitännäis-projektiin ottamaan oppia käytännön projekteista enemmän, kun olin siellä jo haastattelussa viimeksi, kun ne haki plugin-kehittäjää sinne, mutta sillä kertaa ne etsi kokeneempaa tekijää, ja lopuksi päädyttiin siihen, että ehkä jatkossa sitten jossain muussa yhteydessä minun kaltaiselleni tietojenkäsittelyn koodivelholle on käyttöä, ja moikataan kun tavataan kaupungilla.
Toi Poutapilvi Design taitaa olla Turun yksi vanhimmista web-suunnitelulla ainakin alottaneita yrityksiä, ja niillä on toimipiste ihan ydinkeskustassa Aurakadulla.

Kävi mielessä, että jahka olen käynyt tuon REST Apin dokuentaation läpi, voisi alkaa suunnittelemaan jonkinlaisia liitännäis-boilerplateja, WordPress Plugin Boilerplate, puhutaan alan termistössä niinkuin virallisesti, että jos asiakkaani tarpeet tuo esiin jonkin sellaisen pluginin kehittämistä, jota ei vielä löydy sopiviin tarkoituksiin, niin ei tarvitsisi kaikkea nollasta ohjelmoida Jotain yleiskäyttöistä ja elämää helpottavaa siis, että mielenterveys pysyisi edes ennallaan. Eihän pyörää kannata aina keksiä uudestaan.
En tiedä, mitään muita kaupallisia markkinoita yleishyödyllisille pohjille olekaan noiden pluginien osalta, paitsi se, että nopeuttaa sitten oman pluginin tarpeen tullessa esiin niin sen luomista, kun on jotain yleiskäyttöistä jo valmiina. Sehän on yksi ohjelmoinnin teorian perusideoista, että koodin tulisi olla mahdollisimaan hyvin sopivaa uudelleenkäytettäväksi, yleiskäyttöistä koodia pitäisi olla, ja sitten vielä, jos pohtii modulaarisuuden periaatteita, pitäisi pirstoa kaikki ongelmat top-down-menetelmällä mahdollisimman pieniin osa-ongelmiin. Less is More in modular, object-oriented approached programming if you wanna be the Number One Man standing appealing for resuable code.

Posted in Aktivismi, Blogi, Demokratia, Facebook, Hupi, Internet, Koulutus, Ohjelmat, Ohjelmointi, Uncategorized, Wordpress, Yritys | Leave a comment

Updating my Linkedin -profile

Today I took my time and Updated my Linkedin -profile.

Straight and permanent link to my professional history profile is located on:

https://www.linkedin.com/in/jere-sumell-51b008a5

Posted in Aktivismi, Blogi, Demokratia, Internet, Koulutus, Linkkivinkki, Markkinointi, Mobiili, nettivinkki, Politiikka, Talous, Tasa-arvon toteutuminen, Tulevaisuus, Yritys | Leave a comment

Hustling and Buzzing with Java (Simple Sample coding by Barley and Malt (Brewed, Homebrewed,Blended and Single) Holistic Student aged 36) [Not drunk on business days {Studying at school -days}]

Source code:

import java.util.*;
import org.json.*;


public class Testi {

//Attributes
private Map<String, String> relations = new HashMap<String, String>();
private String finalJSON;

//Constructor
public Testi() {
generateKeysAndValues();
generateJSON();
}

//setters and getters
public void setFinalJSON(String x) {
this.finalJSON = x;

}

public String getFinalJSON() {
return this.finalJSON;
}

//Other Methods
public void generateKeysAndValues() {
String key = “STUDENT”;
String values =”001,John,Smith”;
relations.put(key, values);
}

public void generateJSON() {
JSONStringer x = new JSONStringer();
Collection colle = relations.values();
Object[] sArr = colle.toArray();
x.object().key(“STUDENT”).value((String)sArr[0]).endObject();
this.setFinalJSON(x.toString());
}

//Overriding String-method
public String toString() {
return “” +this.getFinalJSON();
}

public void run() {
System.out.println (this.toString());
}

public static void main(String[] args) {
Testi testApp = new Testi();
testApp.run();
}
}

Output (JSON Notational):

{"STUDENT":"001,John,Smith"}

Posted in Blogi, Hupi, Internet, Linux, Ohjelmat, Ohjelmointi, Tietokannat, Tulevaisuus, Turvallisuus | Leave a comment

From ER-Model to Relational model in Database design and finally generating SQL-code automatically (And in reversed way SQL to Models) -tools

Nyt kun yliopiston tietokanta-kurssini on puolessa välissä, tuli vastaani ER-mallista Relaatiomalliin muuntamisen algoritmi. AMK-opinnoissa tietokanta-kurssilla käytettiin ilmaista Windows-työkalua, joka generoi ohjelmassa tehdystä ER-kaaviosta valmiin sql-tiedoston, joka sitten voitiin ajaa Linuxissa syötteenä tietokanta-palvelimelle, josta saatiin lopputuloksena tietokanta, jota hyödynnettiin sitten ohjelmoimalla Java-ohjelma, joka louhii tietokannasta tietoa.

Katsoin hakukoneella, että kyseisiä työkaluja on olemassa niin kaupallisia, kuin ilmaisiakin, esimerkiksi Microsoftin Visio ja tuli hakukoneesta muutamia muita kaupallisia ilmaisen kokeilujakson tarjoavia verkkopalveluita mainos-osiossa vastaan.

Yksi, josta en tiedä, onko ilmainen vai mikä ansaintalogiikka on erdplus.com -palvelulla, kun hinnoista ei puhuta mitään, kun sielläkin luvataan koodin generointi Relaatio-mallista. Palvelun osoite on https://www.erdplus.com

Toisaalta tuolla erdplus.comissa myydään kyseiseen työkaluun liittyvää kirjaa myös, joten palvelun ylläpitäjät voivat saada kirjatilauksia.

Toisinpäin myös, eli sellaisiakin löytyy käänteisen ohjelmistokehityksen -tiimoilta, että SQL-koodista saadaan generoitua Relaatio-malli, ja siitä taas tuo ER-mallista ->Relaatio-malliin onnistuu käänteisalgoritmin kautta.

Netistä löytyy tuosta ER-mallin muuntamisesta relaatio—malliin esityksiä mm. GeeksforGeeks.orgista, artikkeli löytyy tämän linkin takaa.

https://www.geeksforgeeks.org/mapping-from-er-model-to-relational-model/

Myös Tutorialspoint esittää 6-vaiheisena saman asian. https://www.tutorialspoint.com/dbms/er_model_to_relational_model.htm#

Jahka SQL tulee selkäytimestä, jota tosissaan se ei vielä tule, en sitten tiedä, jos ja kun aikaa taas on käyttää enemmän harrastuksiin, eikä alati uuden opiskeluun, olisiko mitään kaupallista markkinarakoa kaupallisen ohjelmiston valmistukseen, missä olisi ER-mallinnuksesta Relaatiomallin kautta valmiiseen SQL-koodiin -automatisoitu prosessi loppukäyttäjälle mahdollinen, ja sitten taas käänteisenä käyttäjän syöttäessä SQL-kooditiedosto, siitä generoituisi halutut kaaviot. Ohjelma saattaa olla aika työläs ohjelmoitavaksi, enkä tiedä, minkälainen kysyntä sillä olisi, kun kerta niitä on jo olemassa.

Kaupallisten ohjelmien valmistuksessa yleensä ainakin työpöytäsovelluksissa on se ongelma, että ne päätyvät tavallisesti ennen julkaisua jo vertaisverkkoihin piraattien hankittavaksi, jos ohjelma on hyvä, ja sitten taas kun työpöytä-ohjelmistot ovat vanhentunutta tekniikkaa, verkko-alustaisena voisi toimia jollain kuukausimaksuisella automaattilaskutus-periaatteella?

Posted in Aktivismi, Demokratia, Internet, IoT, Koulutus, Linkkivinkki, Linux, Markkinointi, Matematiikka, nettivinkki, Ohjelmat, Ohjelmointi, Talous, Tietokannat, Tulevaisuus, Turvallisuus, Windows, Yritys | Leave a comment

Kaikki periytyy Object-luokasta Javassa

En ymmärrä yhtään, miksi tytöillä ja naisilla on teknologia hankalaa: Onhan siellä Javaa kun opiskellaan, niin jos lähtee tutkimaan Java API -luokkahierarkiaa, niin Object-luokka KAIKKIEN luokkien kanta-isä, jonka kaikki perii. Myös itse määritellyt luokat tai niistä periytyneet luokat.

Object kaksi ensimmäistä merkkiä on on Ob, joka on tyttöjen ja naisten tamponi-label, niin tuntuu siltä, että he aristavat teknologia-aihetta: Eihän meillä ollut AMK-opinnoissa enää yhtään naisopiskelijaa jäljellä valmistumisvaiheessa: Se on ikävää, koska ihminen sitä käyttää 3 vuotta takuueläkkeellä ja aumistuella eläen loppuelämänsä (Ko. Tulot eivät anna mahdollisuutta harrastaa mitään järkevää, jossa tapaisi ihmisiä, esim. käydä elokuvissa, kun liput maksaa liikaa.)

No, sitten kun siirrytään tietojenkäsittelyyn perusteisiin, Algoritmistä ajattelua opiskellaan aluksi: Alkkareita. Ohjelmoinnin peruskurssit kiitettävän algoritmisen ajattelun jälkeen lähtee merkkijonojen pyörittelystä, eli pitäisi suunnitella String-Algoritmi, siellä väänellään merkkijonoja. Eli: String-Algoritmit, eli String-Alkkarit tulee ensimmäisenä. String-Alkkarit tulee siis seuraavaksi.

Tietokanta-kurssi kuuluu nykyään vuoden 2005 jälkeen perusopintoihin vuonna 2020, niin siellä on kuvitteellisen yrityksen tietokanta jopa tenttiin asti, jossa mikään kantaan lisättävä perheenjäsenen DEPEDENT tai bisnes-maailmassa ”BusinessAffairs” (Sidosryhmät) -relaatio, tai ”FamilyAffIairs” -relaatio ei riitä edes moni-arvoisena attribuuttina minimi-avain-attribuutiksi: Jos esimerkiksi perheeseen syntyy vaimon ja isännän hankittua lapsia esimerkiksi kaksoset mitä ne syntyy parin minuutin välein: Kurssilla on esimerkki-yrityksessä perhesiteissä riittää Foreign-key:ksi pelkkä nimi: Tosi – Maailmassa ei ole näin: Kuinka monta John Smithmiä tai Kevin Murphyä eläkään vielä tänä päivänä In-Common-Law- perusteisissa maissa?

Siinä vaiheessa, kun pitäisi määritellä alkeis, -alkkarikurssin harjoituksessa sukupuoli -attribuutti, pitää päättää onko se Boolean, kaksiarvoinen, vai  SQL:ssä CHARACTHER, eli String Sex ohjelmistokehittäjän näkökulmasta, niin se ajaa loputkin naiset ulos omastani elämästä. Tekniikka ei kiinnosta naisia.

Boolean sex ei enää toimi vuonna 2020, kun Antti Rinteen hallituksen aikakaudella Rinne lupasi, että trans-laki etenee, ja jos on ”Muu” -sukupuolinen, mitä itse en ole, sillä olen syntynyt miessukupuoleen, ja tunnen olevani Mies maskulisiisine piirteineen ja peniksenkin omistan, ja olen siitä kiitollinen, niin en tiedä pitäisikö sukupuoli sex määritellä tuohon SQL-harjoitukseen: ”Sex Integer (4);?”

Mä tajuan pimut ihmisenä ihmiselle mä yritän aina niihin tutustua, mutta ei teidän tarvitse tätä teknologiaa siäkähtä, vaikka tällä on teille ehkä arka-luonteisia termejä nörttien perustamana? Kuukautiset on ihan luonnollinen juttu, ja käytätte mitä käytätte, en etsi muuta kuin Tutoriaali-seuraa, ehkä luentojen jälkeen johonkin kivaan kahvilaan päiväteelle ja voitaisiin ostaa jotkut kivat leivonnaiset: Mä tiedän yhden kivan kahvilan tuossa jokirannassa, jossa on edullista, ja sieltä saa edullisen teepannun ja ostetaan jotkut kivat leivokset tai leivät mun piikkiin sieltä. Keskusteluseuraa opintojen aiheesta! (Data Analysis, FM-student)

Posted in Aktivismi, Blogi, Darknet, Demokratia, Facebook, Hupi, Internet, IoT, Konekieli, Koulutus, Linux, Markkinointi, Naisnörtit, Ohjelmointi, Uncategorized, Windows | Leave a comment

Breaking the illusion of Data EnCapsulation in OOP Java Programming with Reflection API (Java 7-8 API)

Eilen tuli vastaan rekursiivinen liittymätyyppi tietokanta-kurssilla tietokantojen ER-mallinnukseen liittyen, ja ohjelmistotekniikan jonkinlaisena asiantuntijana sitä kolme vuotta opiskelleena Turun AMK:ssa siitä myös valmistuhyhteistyön, kun AMK-opinoissa oli kiitettävästi ohjemistokehitystä, ohjeimistotuotantoa ja tietoturvaa,  sekä myös verkkosovellus tietoturva: Koko eilinen iltani kului netissä surffaten päätyen kysymykseen hakukoneelta: ”Is the Java Reflection breaking up the Data Encapsulation principle?”

StackOverFlow -keskustelufoorumilla, jossa maineeni on päälle muutamia satoja, niin joku asiantuntija vastasi, että ”Kyllä ja ei”.

Tiedon kapseloinnissahan on kyse ominaisuuksien asettamiseksi yksityisiksi, kun taas metodit ovat julkisia, joiden kautta päästään käsiksi sitten parametrien arvoihin, tai niitä voidaan manipuloida: Mutta, tutustuin java.lang.refer -luokkaan.

Pääsääntöisesti sitä ei normi-ohjelmoijan tulisi käyttää, sillä se heikentää turvallisuutta, mutta kävi mielessä jokin työkalun luonti Javalla, tuo refer. java-lang – alipaketti –tarjoaa mahdollisuuksia mnipuloida yksityisiä attribuutteja miten tahtoo, joten sekin avaa uusia mahdollisuuksia vielä jos ohjelmiston ja luokat toteuttaa java.net –paketin tarjoamia mahdollisuuksia käyttäen.

Esimerkiksi JUnitJava –testaus ja  ja Spring – Framework -hyödyntää Java Reflectionia.

Olen kuullut kaikkina näinä vuosina ymmärtäen ohjelmoinnin teoriasta Rekursion, mutta reflektiivisyys ohjelmoinnissa on uutta eilisestä saakka. Tietokannoissakin oli jokseenkin uutta, mutta eihän siinä kyse ole, kuin viittaus itseensä toisessa ilmentymässä, esimerkiksi firmassa on työntekijijöitä, jotka osa, ei kaikki, on esimiehenä jossain projektissa, mutta esimies on jonkun esimies ja kuitenkin Eployee – työntekijä -entiteettiin liittyvä ja osallistuva instanssi työntekijän roolissa lisäksi. Näin siis tietokannoissa.

Posted in Aktivismi, Biologia, Demokratia, Hupi, Internet, IoT, Koulutus, Linux, Matematiikka, Naisnörtit, nettivinkki, Ohjelmat, Ohjelmointi, Talous, Tasa-arvon toteutuminen, Tietokannat, Tulevaisuus, Turvallisuus | Leave a comment

WordPress REST API:sta pari sanaa

Aloitin Turun AMK:ssa opinnäytetyöni vuonna 2015, ja se valmistui loppuvuodesta 2016, niin kuin kaikki seuraajani tietävät. Käsiteltyäni vähän vaihtelevalla menestyksellä WordPress -sisällönhallintajärjestelmää ja yhden front-end-kehityskehyksen yhteenliittämistä teeman luonnin muodossa on tapahtunut WordPress -rintamalla aikamoisesti.

Loppuvuodesta 2016, eli opinnäytetyöni olleen jo aivan finaalissa, ne, jotka seurasivat syvemmin WordPressin ympärillä vellovaa keskustelua, varmaan törmäsivät ensimmäisiä kertoja silloin plugin-kehityksestä alkaneeseen avoimen lähdekoodin projektiin WordPress REST API?, joka julkaistiin joulukuussa 2016, kun olin luovuttanut koulun kirjastoon opinnäytetyöni marraskuun puolen välin tienoilla?

WordPress REST Api on ollut siis WordPress -versiosta 4.7 -lähtien kuvioissa mukana mahdollistaen WordPress:in hyödyntämisen ohjelmistokehittäjien keskuudessa aivan uudella tavalla. WordPress -alustan markkina-osuus on huikeasti etumatkalla muihin nähden nykyisin vuonna 2020, ja toki pimeän puolen red-hat -teknologia-orientoituneet ihmiset saavat avattua uudet mahdollisuudet tästäkin.

Peruskomentoina GET,POST,PUT,DELETE voi aikaansaada epätoivottua jälkeä käsissä, jotka haluavat sabotoida toisten luomaa, ja aikaansaada kaaosta Internetissä, ja aiheuttaa toisia ihmisiä vaikeuksiin.

Vielä kaiken lisäksi JSON-formaatissa saatavilla oleva data on avoinna kaikille.

JSON-dataan sivustosta pääsee käsiksi menemällä WordPress -alustalla pyörivän sivuston URL-osoitteeseen:

https://example.com/wp-json

jossa example.com korvataan osoitteella, jonka JSON-muotoiseen dataan halutaan katsaus.

Kävin hiljattain eräällä Linux-aiheisella sivustolla, jonka ylläpitäjä kirjoittaa Linux-aiheisia artikkeleita sivulleen,

Päädyin myös tämän illan aikana pariin otteeseen WordPress -havoittuvuuksista raportoivaan nettisaittiin, joka tarjoaa ilmaisen sähköposti-muistutuksen, mikäli sivustolle tulee päivitys. (Linkki seuraavassa)

https://wpvulndb.com/

Yksi esimerkki WordPress -alustalla toimivasta sivusta ja aiheeseen liittyvät muut sivut:

Vitux – Linux Compendium (Linux-aiheinen WordPress -alustalla toimiva sivusto,)

REST API Handbook (WordPress)

Posted in Aktivismi, Blogi, Demokratia, Hupi, Internet, IoT, Koulutus, Linkkivinkki, Linux, Mobiili, Naisnörtit, nettivinkki, Ohjelmat, Ohjelmointi, Politiikka, Talous, Tasa-arvon toteutuminen, Tietokannat, Turvallisuus, Versionhallinta, Wordpress, Yritys | Leave a comment