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

The Short History of World Wild West (Years 1995-????) – It has turned World Wide Wariness.

On the beginning, there was two-tier architecture of compters with very slow telecommunication possibilities. They were slow and devilsh like hell itself is for people with faith in their blue eyes

No laws, no order, weak security. only couple of root servers which ones some groups tried distrbuted denial of sercive attack goaled to first time at the end of the 1990 -decade. Somebody believed that Internet can crash down. Somebody wanted it and earlybirds started to keep it immortal an as The Thing that lasts forever.

Nowdays of the 3/4/5 -layer architechture and more root servers and Online Service Providers added to de-centarizled architecture by them we are living more and more days of Distrbuted cloud-platform solutions time with the hype -keyword ”Big Data” now and future.

Weren’t we happier when we lived life in World Wide West or nowdays when those days have turned to life in Word Wide Wariness? I’m not.

Posted in Aktivismi, Blogi, Darknet, Demokratia, Hupi, Internet, IoT, Koulutus, Naisnörtit, Politiikka, Talous, Tasa-arvon toteutuminen, Tietokannat, Turvallisuus, Yritys | Tagged | Leave a comment

Tarina Heidistä

Aloitin perjantai-illan lukemalla viime viikolla aloittamani tietokanta-kurssin kurssikirjasta viime viikon alueet ja katsoin luentomonisteet läpi.

Katsoin session jälkeen hakukoneella hakutermillä ”GUI db administrators Java Free”, ja löysin URL-sijaintiin https://techtalk.gfi.com/top-10-free-database-tools-for-sys-admins/ missä olikin listattuna SquirrelSQL, joka tukee Javan JDBC-tietokanta-ajuria.

Listassa myöhemmin tuli vastaan Windows-ympäristössä toimiva HeidiSQL, jonka alkuperäinen kehittäjä Ansgar Becker on luultavasti keksinyt nimen naispuolisen ihmisen nimeen perustuen, ehkä hänelläkin on ollut elämässään Heidi -niminen naiskontakti.

Tuli vain mieleen, että edellisen tyttöystäväni etunimi oli Heidi, jonka kanssa sujui kaksi viikkoa mukavissa merkeissä. Sukunimi ei ollut SQL, vaan kyseessä oli ihan aito naispolinen kaikin puolin ihan mukavan tuntuinen tyttö. Etsin hakukoneella myös Heidin sukunimen mukaan SQL-liitteellä, ja Google ei antanut yhtään hakutulosta. Ei tietenkään antanut, vaikka läheisiä hetkiä välillämme oli ihan kiitettävästi.

Ei pelkoa, en lähde suunnittelemaan Heidi2JavaSQL referenssinä HeidiSQL:lle, joka olisi erikoistunut Java-ohjelmointikielen syntaksin täydentämiseen tai luontiin graafisen käyttöliittymän tarjoaman helpomman käytettävyyden ansiosta.

Heidi on taakse jäänyttä elämääni, vaikka samassa asuinlähiössä asummekin nykyisin vielä, vaikka emme tervehdi toisiamme. En tiedä, onko liian julmaa puhua Heidi-entiteetistä, joka laajemmin kai olisi Nainen-entiteetti, ja vielä laajemmin Ihminen-entiteetti, mutta en halua esineellistää naissukupuolen edustajia, koska olen ihmiselle aito ihminen.

Jos olisi naistietokanta, kuten monessa joskus hupipuhelun maksulliselle 0700-linjalle olenkin tehnyt kuunnellakseni, millainen se on ja kaivatessani naisnäkökulmaa keskustelun merkeissä, jossa on sellainen, jossa saa itse kuulla tyttöjen esittelyt, tai sitten pikavalinnalla nauha kertoi linjalla ennen päätymistä live-keskusteluun naisen kanssa, joka lainkaan ei vastannut ennalta luvattua, miksei automaattivastaajaa ole saman tien ohjelmoitu kertomaan naisen kanssa keskustelemaan haluavaa yksinäisyydestä kärsivää miesraukkaa tähän tyyliin ”Nyt asiaan, ohjelmoimme sinulle naisen.”

Posted in Blogi, Hupi, Internet, Linkkivinkki, Mobiili, Naisnörtit, nettivinkki, Ohjelmointi, Politiikka, Tasa-arvon toteutuminen | Leave a comment

Free online cloud – based ER-diagram modelling tool (Chen model) – Works on 32 bit Linux OS via Mozilla Firefox (With JavaScript support enabled)

Yesterday was Sunday evening when I wrote article about searching for ER-diagram modelling tool for Linux alternative to free Dia -Windows environment tool. I’m using 32 bit Lubuntu Linux distro on my nearly 15 years old studying laptop and it seems like there’s not much to do with GNOME-desktop -environment based desktop -applications when it comes to 32 bit software for ER-modelling tools.

After half an hour of using Search Engine, I found web -service draw.io what makes it possible to create own database design by Chen model and save own work to Google Drive or Dropbox or even on your computer.

I’m making comeback to the Turku University and this semester I have two database courses I’ve enrolled in and I’m gonna lay down my bets on Draw.io -web service if there’s something to do with ER-diagrams at the lessons if lecturer doesn’t give any alternative for software to use.

I had some repository problems when tried to install dia-gnome, and my primary computer is running in Windows 10 -environment due to I’m playing some quite a new computer games with my PC too on my spare time and I’ve installed Dia on this computer.

I could try run Dia Windows version on virtual machine software called wine but I’m not gonna lose my sleeptime overnights with this case.

If you are looking for online -cloud based free tool for ER-Diagram modelling (Chen-method), give a chance for draw.io.

Tool’s website is found on https://draws.io

Posted in Aktivismi, Demokratia, Internet, IoT, Koulutus, Linkkivinkki, Linux, Matematiikka, nettivinkki, Ohjelmat, Talous, Tasa-arvon toteutuminen, Tietokannat, Virtualisointi, Windows, Yritys | Leave a comment

Empiriaan perustuva kokemus hyvästä ER-mallinnustyökalusta Windows -ympäristöön (Dia)

Nyt kun olen tekemässä paluuta yliopistoon aloittaessani tietokanta-kurssin tiistain 7.1.2019 Turun Yliopistossa, ajankohtaista on kurssikirjan kirjastosta hankkimisen lisäksi näin sunnuntai-iltana kerrata tietojärjestelmän mallintamiskurssilla haltuunottamani ER-mallinnuskaavio-tekniikka.

Käytän yliopistolla tutoriaaleissa ja demoissa Lubuntu-kannettavaani, mutta Windows-ympäristössä ihan hyödylliseksi kokemani ja selkeä mallinnus-ohjelmisto on Dia, jonka saa ilmaiseksi ladattua netistä.

Suomennetussa versiossa ER-mallin entiteetti -sana on suomennettu oliona, vaikka olio viittaakin suoraan englannin kielen object-sanasta tietokoneohjelmoinnista tuttuun Data Type Instance, tietotyypin ilmentymään, ja siitä luotuun olioon, johon on tietokoneen muistipaikkaan tallennettu viittaus. Joku propellipää tämän lukiessaan tästä artikkelista osaa etsiä hakukoneella tarkemman määritelmän erotukselle Lontoon kielellä ”What’s the difference between entity and object?” -hakutermillä.

En ole perehtynyt sen enempää siihen, kuinka yleisessä käytössä 1976-vuonna Chenin mallinnuksen mukaan, kun ER-malli on otettu käyttöön, enää vuonna 2020 törmää entiteetti-suomennokseen, uusimmassa Dia-ohjelmiston suomi-versiossa entiteetti tosiaan on käännetty olioksi.

Yritin etsiä Linux-järjestelmälle GNOME-työpöytä-ympäristössä toimivaa ER-mallinnustyökalua, mutta Dia -sivuston Linux-linkki ei toiminut, enkä löytänyt vastaavaa Linux-mallinnustyökalua muuta. Varmasti sellainenkin on, tottakai on, joten pitänee jatkaa metsästystä.

Turun AMK:ssa käytettiin tietokantojen suunnittelukurssilla, josta sain kiitettävän nelosen asteikolla 1-5 verkko-pohjaista online-työkalua Lucidchart, josta kyseisellä oppilaitoksella oli ilmeisesti ostettu tarvittava määrä opiskelijakäyttöön lisenssejä. Lucidchart ei ole ilmainen työkalu, joten sitä en voi suositella, yritän pärjätä Dialla. En ole ainakaan toistaiseksi valmis maksamaan mallinnustyökalujen käytöstä, kun ei niille nyt erityisen laajaa tarvetta ole, etenkin kun edessä on pari perusmuotoista tietokantakurssia nyt alkavalla kevät-lukukaudella 2020.

Posted in Blogi, Internet, Koulutus, Linkkivinkki, Linux, Matematiikka, nettivinkki, Ohjelmat, Ohjelmointi, Tietokannat, Windows, Yritys | Leave a comment

Vielä kotisivun varmuuskopioinnista Linux-järjestelmässä

Muutamia postauksia takaperin kirjoitin otsikolla “Kotisivun varmuuskopiointi Linuxissa” -aiheesta, ja kun perehtysin WordPress- aiheeseen syvemmin käyttäen joitain tunteja nettisurffailuun, löysin mielenkiintoisen artikkelin kahdeksan vuoden takaa, jossa on ihan kattava ohje wget – ohjelman hyötykäyttöön erityisesti, jos haluaa varmuuskopion WordPress -sivusta.
.Php -tiedosto on palvelimella ajettava tiedosto, ja joidenkin lähteiden mukaan wget-ohjelma ei tallentaisi lähdekoodia sisältävää tiedostoa, vaikka peilaisi sivuston –mirror -kytkimellä. Tämä on ihan turvallisuussyistäkin näin, koska jos esimerkiksi WordPress -alustan wp-config.php -tiedoston voisi varmuuskopioida käytännössä kuka tahansa, kukaan ei käyttäisi kyseistä sisällönhallintajärjestelmää. Wp-Config.php -tiedostossahan on kovakoodattuna järjestelmän käyttämän tietokannan salasana, käyttäjinimi ja tietokannan nimi, jotka sitten tulee asennuksen jälkeen tieokantaan suolattuna ja hash-muodossa.
En tiedä, voi olla, että eri verkko-isäntien turva-conffeissa on eroja, mutta ainakaan kotimaisen luotetettavani pitämäni verkko-isäntä Suomen Hostingpalvelu Oy ei tarjoa mahdollisuutta ottaa varmuuskopiota WordPress -sivusta Unixin wget -komennolla. Testikohteeni oli oma Tradenomin ammattiblogi.
Mielenkiintoinen artikkeli wget:in hyötykäytöstä löytyi D¨Arcy Normanin kotisivulta osoitteesta https://darcynorman.net/2011/12/24/archiving-a-wordpress-website-with-wget/

Posted in Blogi, Internet, Koulutus, Linkkivinkki, Linux, nettivinkki, Ohjelmat, Ohjelmointi, Tietokannat, Turvallisuus, Wordpress