domenica 14 marzo 2021

Risultati di oggi

 Oggi i risultati sono:

1) Ho installato GitLab... su Ubuntu 20.04 LTS... facile, non me l'aspettavo

2) Ho visto che sta funzionando Plantuml.jar che si trova dentro /user/share/plantuml

3) E' ufficiale, plantuml funziona anche con i SequenceDiagram... l'ho visto dalla gui

4) Quando docker non funziona, usa SUDO!




martedì 18 febbraio 2020

Aforisma del giorno: A volte non puoi essere albero. Allora cerca di essere il miglior cespuglio.

martedì 27 giugno 2017

Imparare ad usare Git con Heroku preparando un bot Telegram

Ok, anche qui, appunti sparsi.

Cominciate con l'installare l'heroku CLI.
Poi, se proprio avete voglia, andate a creare la vostra app su Heroku.

Poi aprite finestra dos, andare nella directory in cui si desidera sviluppare e scrivere:
git init
Così abbiamo inizializzato il db
Poi un bel

git add .

così mi aggiunge tutto il contenuto

infine, dopo aver configurato la mail ed il proprio nome con:
  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"


Così ho fatto il mio primo commit
git commit -m "partenza"

Poi ho digitato
heroku git:remote -a telegramgathering
E magicamente si è configurato da solo con il git di Heroku, per l'app che avevo creato

a questo punto, gran finale
git push heroku master

Ed abbiamo fatto il "push" del sorgente su Heroku.

Good Luck

CarloS

Esperienza Telegram BOT

Ok, adesso proviamo a fare un bot in telegram.

Prima cosa si deve scegliere la library con la quale avere l'object model di Telegram.
Io ho scelto (abbastanza a caso) questa:
php telegram bot

Ed ho installato sul mio windows apache64 + php + composer.
Ho dovuto abilitare dentro php.ini la dll mbstring.
E poi ho potuto installare dentro la directory prescelta per lo sviluppo, utilizzando composer:

>composer require longman/telegram-bot

Ho intenzione di utilizzare la piattaforma heroku.com
Ho creato lì la mia personal app, di nome TheGatering.
Adesso devo trovare il modo di utilizzare git per fare gli upload e download del sorgente.

Ciaus

venerdì 16 giugno 2017

Come capire il parameter sniffing

set statistics io on;
exec sp_executesql N'select * from [EXPORT].[vGfExpBP_TIT] where TitleId=  cast(@TitleId as varchar(12))
order by [key];',N'@TitleId nvarchar(12),@useInit nvarchar(1)',@TitleId=N'LU1569045039',@useInit=N'1'

giovedì 2 marzo 2017

Stampa 3d

Ebbene si, oggi gioco con le stampe.

Da ricordarsi gli accessori: la penna che aggiunge PLA nei punti venuti male : LIX (un po' cara)
https://lixpen.com/

E la penna per staccare i supporti e rifinire la stampa: si chiama ritocco
ritocco


martedì 22 novembre 2016

Trucchetto SQL

Find what: {(.*)},
Replace With: \1 = sourceTable.\1,

Flag delle regular expression attivato.

Così è possibile rapidamente scrivere SQL quando si hanno soltanto i nomi dei campi separati da virgola e si vuole magari scrivere un update

P.S.
Il trucco di prima funziona fino al 2012
Sul 2016 diventa:

Find what: (.*),
Replace With: $1 = sourceTable.$1,




mercoledì 10 dicembre 2014

SPARQL

Volete sapere come si fa a cercare su dbpedia un posto che si chiama Sciacca?

Facile, basta copiare ed in collare questa query.


prefix d0: <http://www.ontologydesignpatterns.org/ont/d0.owl#>
prefix dbpedia-owl: <http://dbpedia.org/ontology/>
prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
prefix dbpprop: <http://dbpedia.org/property/>

select * where
{
 ?tutti rdf:type d0:Location.
 ?tutti dbpprop:name ?dafiltrare
 filter regex(str(?dafiltrare),"Sciacca","i").
}
limit 10

lunedì 17 novembre 2014

Exist-DB counting and grouping

xquery version "3.0";
<nodes>
{
    let $nodes := //classCode
    for $nodo in $nodes
    let $count := count($nodo)
    group by $nomeNodo := $nodo/text()
    order by $nomeNodo
    return
        <nodo>
            <nodeId>
            {string($nomeNodo)}
            </nodeId>
            <counter>
            {string($count)}
            </counter>
        </nodo>
}
</nodes>

lunedì 29 settembre 2014

Exist-DB:Giochiamo con i file

Vogliamo vedere se esite un file?

xquery version "3.0";
file:exists("c:\")


Se invece vogliamo direttamente scrivere l'output ottenuto con eXsistdb

return  file:serialize($contentToSave,concat
                          ("c:\",$referenceId,".xml"),("omit-xml-declaration=yes", "indent=yes"))

giovedì 25 settembre 2014

Exist-DB: Cercare dentro il database per tag

Come fare per cercare dentro il database da una lista di tag contenuta dentro un file xml?

xquery version "3.0";
<files>
{
    for $nodeToExplore in doc('/apps/demo/data/XMLEurovoc.xml')//*[@id='4222']
for $subNode in $nodeToExplore//*
    let $attributeId := string($subNode/@id)
    let $attributeName := string($subNode/@description)
        for $listOfNodeContaining in //classCode[text()=$attributeId]
    return
        <file id="{$listOfNodeContaining}" description="{$attributeName}" >
        {document-uri(root($listOfNodeContaining))}
        </file>
}
</files>

Exist-DB: stampare un attributo

Ebbene, per stampare un attributo a video vi occorre trasformarlo in stringa

xquery version "3.0";
for $test in doc('/apps/demo/data/XMLEurovoc.xml')//*[@id='4222']
return string($test/@description)

Exist-DB: come cercare per un singolo file

Se volete cercare per un singolo file ecco la sintassi:
xquery version "3.0";
doc('/apps/tutorial/prove/Doc151.xml')/*

mercoledì 24 settembre 2014

Exist-DB: come trovare il nome del file dato un tag

Di seguito la query da eseguire su eXide

xquery version "3.0";
for $test in //classCode[text()='2143']
return document-uri(root($test))


In sostanza, faccio una becera richiesta di tutti i tag classCode esistenti nel db, che abbiano il contenuto '2143', e poi mi faccio restituire il path in cui sono contenuti i file

giovedì 22 marzo 2012

Ma il cloud?

Mi chiedo...
Ma sarà utile 'sto cloud anche a me? Ho fatto qualche conto con il cloud Aruba.
Secondo le mie stime posso avere un server Windows 2008 r2 con una spesa tra 475 e 1000 euro... a seconda che lo usi 10 ore al giorno per i giorni lavorativi (molto spannometicamente) piuttosto che tenerlo acceso tutto il tempo.

Io che sono senza ufficio (per il momento) ed a casa vivo in un ambiente ristretto non posso avere 100 computer in casa. L'adsl anche se a 20MB non sarebbe professionale. Tra switch, firewall, server, ambiente refrigerato, gruppi di continuità etc... almeno 5000€ di spese iniziali ci sono, senza contare che si dovrebbero affittare dei locali (10k euro l'anno per dire una cifra ridicola)... mi sembra che convenga eccome...
Chissà se qualche anima pia lascia qualche commento :-)

Okkey adesso un altra VM

Già avevo fatto una VM con Windows 8 Consumer preview. Adesso  mi metto sviluppare con i tools di Visual Studio 11 integrati con TFS 2010. Cheffatica...

lunedì 19 marzo 2012

TFS 2010 e SCRUM template

Che fatica, ma alla fine comincia a funzionare.
La mia solita VM e questa volta ho installato:
1) Windows Server 2008 r2
2) Effettuato la DCPromo (Ho bisogno del dominio AD altrimenti Sharpoint non si installerà in modalità farm con l'assegnazione di un account che non sia  di dominio)
3) Installazione di SQL Server 2008 r2
4) Installazione di Sharepoint Foundation 2010
4.1) Configurazione di Sharepoint in modalità farm, avendo cura di installare i db dentro la istanza di SQL precedentemente installata
5) Installazione di TFS Servre 2010.
5.1) Prima configurazione
6) Installazione di Visual Studio 2010
7) Download dei template SCRUM 1.0

Finalmente si inizia a fare qualcosa di pratico sulla teoria di SCRUM

Inserisci il gettone bambino...

Ve lo ricordate quando si andava ai baracconi, e si inseriva il gettone nella apposita feritoia e l'automobilina si muoveva per la felicità di noi bambini....
Ebbene più o meno mi chiedo se proverò la stessa felicità attivando un abbonamento a cloud.it per avere delle macchine virtuali su cui sviluppare le applicazioni per clienti.
Sarà davvero conveniente? Mah... adesso mi studio un po' i contratti. A prima vista, lavorando per 10 ore al giorno, per 20 giorni lavorativi mensili, per avere un windows server, 8 GB di RAM, 2 microprocessori, si paga 26 euro... sarebbe davvero conveniente... in fondo...