Dicembre 2018 archive

WordPress 5 e Gutenberg

Beh alla fine doveva succedere. Ho appena installato la versione 5.01 di WordPress e, come sponsorizzato da tempo, si è installato anche il nuovo editor “a blocchi” chiamato Gutenberg. Lascio perdere la diatriba che è nata nel modo degli utilizzatori di WordPress tra i favorevoli e tra i detrattori di questo nuovo editor e voglio abbracciare la nuova tecnologia con spirito positivo. Al momento ho deciso di utilizzare il nuovo editor e questo è il primo articolo scritto con Gutenberg. Sicuramente il fatto di dover (o potere) utilizzare meno plugin rappresenta un punto di forza del nuovo editor. Staremo a vedere quali saranno gli sviluppi futuri.


Permanent link to this article: http://www.andrea.rustichelli.name/wordpress-5-e-gutenberg/

Roger… il primo bot per Telegram scritto in Python

Partiamo con il primo bot per Telegram scritto in python.

Come prima cosa utilizzare il bot BotFather di Telegram per creare un nuovo bot e copiare il codice di attivazione che dovrà essere inserito nel codice del programma.

Questo bot farà una cosa molto semplice, ovvero analizza il formato del messaggio digitato e non farà altro che riproporlo nel formato:

Roger... TESTO DIGITATO SU TELEGRAM... passo...

Oltre ad interagire direttamente all’interno di Telegram, il programma visualizzaerà anche i messaggi digitati all’interno della finestra dove lo script è in esecuzione.

Anticipo che Telegram può essere scaricato per qualsiasi piattaforma compreso iOS e Linux… in questo modo è possibile utilizzare dispositivi più comodi rispetto al solito smartphone.

Qui di seguito è riportato il testo funzionante di questo primo e semplice bot.

import time
import telepot
import json
from telepot.loop import MessageLoop

def handle(msg):
content_type, chat_type, chat_id = telepot.glance(msg)
print(content_type, chat_type, chat_id)

if content_type == 'text':
text = msg['text']
bot.sendMessage(chat_id, 'Roger... ' + text + '...passo...')
print(msg["from"] ["first_name"] + " ha scritto " + msg["text"])

bot = telepot.Bot('COPIARE_CODICE_ATTIVAZIONE_BOT')
MessageLoop(bot, handle).run_as_thread()
print('BOT in ascolto ...')
# Questo ciclo itera il programma (agisce come un processo sempre attivo)
while 1:
time.sleep(10)

Questa è una schermata tratta da Telegram (questa è la versione per linux)

e questo è lo stesso output che si può leggere nella console.

Permanent link to this article: http://www.andrea.rustichelli.name/roger-il-primo-bot-per-telegram-scritto-in-python/

Facciamo un salto nel passato ed evolviamoci a 3-tier

Giusto per capirci, l’architettura a 3 livelli o “3-tier architecture” non è proprio un paradigma dell’ultima ora. Possiamo dire che si è affermata sul finire del XX° millennio e nei primi anni 2000 con la grandissima diffusione di internet (e quindi di applicazioni di rete con accesso ad un database) e con l’affermarsi del paradigma di programmazione OOP ovvero Object Oriented Programming. Grazie soprattutto all’espansione continua e inarrestabile del linguaggio Java e del pattern MVC (Model View Controller) tutto è stato separato in 3 livelli diversi, ciascuno con la propria specificità.

In particolare, come si può vedere dai file allegati, già nella versione 5 e 6 del JBuilder (epico IDE della Borland per lo sviluppo di applicazioni Java) si parla di architetture a 3 livelli e sono citate tecnologie e “best practice” per programmare architetture in formato “3-tier”.  Se consideriamo che il JBuilder 5 e 6 risalgono all’anno 2001 direi che è facile capire come questa architettura sia tutt’altro che recente.

Lo schema dell’architettura è tratto dal sito https://security.stackexchange.com ed è stata rilasciata con copyleft e quindi riutilizzabile.

Permanent link to this article: http://www.andrea.rustichelli.name/facciamo-un-salto-nel-passato-ed-evolviamoci-a-3-tier/