- Tutto
- cybersecurity
- ISO 9001
- Non categorizzato
- Politica
- Programmazione
- Svelte
Svelte: Costrutti condizionali e Cicli (Lez. 3)
In questa lezione ci concentreremo sull’uso di costrutti condizionali e dell’Each statement , che ci consente di gestire cicli e ripetizioni all’interno delle nostre applicazioni web. Nello specfico: Costrutti condizionali (If) Utilizzo di else if Applicare stili condizionali Reattività con le variabili Each Statement, sintassi di base Gestire Dati Complessi: Array di Oggetti Utilizzo delle Keys nell’Each Statement Mescolare i Nomi: Libreria Lodash Vantaggi delle Chiavi in Situazioni Dinamiche Costrutti condizionali (If) Svelte permette di usare blocchi condizionali if direttamente nel markup HTML. Per avviare un blocco if, si utilizza #if seguito dalla condizione, e per chiuderlo si utilizza /if. Per aggiungere condizioni alternative, possiamo usare {:else}. Esempio di base: determinare se un utente è maggiorenne o minorenne. <script> //Lezione 3 – App 1 let age = 10; // Variabile che rappresenta l’età </script> <main> {#if age >= 18} <h2>Sei maggiorenne</h2> {:else} <h2>Sei minorenne</h2> {/if} </main> In questo esempio, se age è maggiore o uguale a 18, visualizzeremo il messaggio “Sei maggiorenne”, altrimenti “Sei minorenne”. Utilizzo di else if Con Svelte, possiamo gestire più condizioni utilizzando {:else if}. Un esempio potrebbe essere la verifica se un numero è positivo, negativo o pari a zero. <script> let number = 0; </script> <main> {#if number > 0} <h2>Il numero è positivo</h2> {:else if number < 0} <h2>Il numero è negativo</h2> {:else} <h2>Il numero è pari a 0</h2> {/if} </main> Applicare stili condizionali Possiamo anche applicare classi CSS condizionali in base alla logica dei nostri blocchi if. Ad esempio, cambiamo il colore del testo a seconda che un utente sia maggiorenne o minorenne. In questo caso, age viene utilizzato per determinare se la classe CSS sarà “green” o “red”. Reattività con le variabili In Svelte, possiamo rendere una variabile “reattiva” utilizzando il simbolo $:. Questo significa che la variabile aggiornerà automaticamente il suo valore ogni volta che una delle variabili da cui dipende cambia. La reattività è un aspetto cruciale per rendere dinamiche le interfacce utente. In questo caso, ogni volta che age cambia, il valore di color sarà automaticamente aggiornato e, di conseguenza, il colore del testo cambierà. Questo meccanismo consente di semplificare la gestione degli aggiornamenti dinamici senza dover scrivere codice complesso. Costrutto Each intassi di base Il costrutto each permette di iterare su array o liste di dati, creando dinamicamente gli elementi corrispondenti nel DOM. In questo esempio, ogni voce dell’array nazioni viene iterata e visualizzata come un elemento <h2>. Questo è un modo efficiente per gestire liste di elementi dinamici senza dover scrivere manualmente ogni elemento nel codice HTML. Gestire Dati Complessi: Array di Oggetti Se lavoriamo con dati più complessi, come array di oggetti, possiamo accedere alle proprietà di ogni oggetto all’interno del blocco each. In questo esempio, utilizziamo la “dot notation” per accedere alle proprietà di ciascun oggetto all’interno dell’array capitali. Inoltre, aggiungiamo un indice index per numerare automaticamente ogni elemento. Utilizzo delle Keys nell’Each Statement L’uso delle chiavi (key) è fondamentale per garantire che Svelte gestisca correttamente le modifiche in una lista di elementi dinamici, soprattutto quando gli elementi vengono rimescolati, aggiunti o eliminati. Senza una chiave univoca, Svelte potrebbe riutilizzare o rimuovere elementi in modo inefficiente. In un ciclo each, se non si fornisce una chiave, Svelte utilizzerà automaticamente l’indice dell’array come chiave. Tuttavia, questo può causare problemi in situazioni dinamiche, come la riorganizzazione degli elementi. Per risolvere questo, è consigliabile utilizzare una chiave personalizzata. Ecco un esempio in cui utilizziamo la libreria Lodash per mescolare una lista di nomi: n questo esempio, usiamo il nome di ogni calciatore come chiave. Questo garantisce che, quando i calciatori vengono mescolati, Svelte riesca a mantenere correttamente il collegamento tra i dati e gli elementi visivi. Mescolare i Nomi: Libreria Lodash Per dimostrare ulteriormente l’importanza dell’uso delle chiavi, possiamo installare la libreria Lodash e utilizzare la funzione shuffle per mescolare una lista di nomi. Installiamo la libreria eseguendo il seguente comando da terminale: npm install lodash npm install –save-dev @types/lodash Una volta installata la libreria, possiamo importare la funzione shuffle per mescolare i nomi tramite un pulsante. Vantaggi delle Chiavi in Situazioni Dinamiche L’utilizzo delle chiavi è essenziale anche in altre situazioni dinamiche, come: Eliminare elementi dalla lista. Aggiungere nuovi elementi. Inserire elementi in posizioni specifiche. Grazie alle chiavi, Svelte può mantenere il corretto collegamento tra i dati e la loro rappresentazione visiva, garantendo che gli elementi vengano aggiornati o riordinati correttamente. In questo modo, possiamo evitare errori nella gestione delle liste dinamiche, come campi di input che rimangono associati ai valori sbagliati dopo un rimescolamento.
Svelte: Contenuti dinamici e gestione eventi (Lez. 2)
In questa lezione affronteremo i seguenti argomenti: Le variabili Iniettare codice HTML dinamico Gestire attributi dinamici Disabilitare un bottone dinamicamente Gestire classi CSS dinamiche anche tramite operatore ternario Le Variabili computed Le variabili Per lavorare con contenuti dinamici, nella nostra applicazione web dobbiamo sfruttare la parte <script> di un file Svelte, dove possiamo dichiarare variabili e inserire la logica dell’applicazione. Per dichiarare una variabile utilizzeremo let. Ecco un esempio: <script> //Lezione 2 – App 1 let nome = ‘Daniele’; </script> <h1>Ciao {nome}</h1> In questo caso, stiamo dichiarando una variabile nome e visualizzandola nel nostro HTML utilizzando le parentesi graffe {}. Le parentesi graffe { } in Svelte hanno un ruolo molto importante percè vengono utilizzate per interpolare JavaScript all’interno del markup HTML, permettendo di rendere dinamica l’interfaccia utente. Se vario il valore della variabile in “Tiziano”, la pagina si aggiorna automaticamente mostrando il nuovo valore. Svelte è in grado di interpretare espressioni all’interno delle parentesi graffe. Ad esempio: <h1>{7 * 7}</h1> Visualizzerà “49”, poiché tutto ciò che è racchiuso tra parentesi graffe vien e interpretato come codice JavaScript. Iniettare codice HTML dinamico Svelte consente anche di iniettare codice HTML dinamico. Supponiamo di avere una variabile che contiene una stringa HTML: <script> //Lezione 2 – App 1 let codice = ‘<strong> <h1>Benvenuto nella piattaforma</h1> </strong>’; let nome = ‘Daniele’; </script> <main> <div>{@html codice}</div> <h2>Ciao {nome}</h2> </main> In questo caso, il contenuto della variabile codice verrà renderizzato come HTML, grazie alla direttiva {@html}. Questo è utile se si ha la necessità di iniettare codice HTML dinamicamente, ma attenzione a non utilizzare questa tecnica con contenuti non sicuri, poiché può esporre l’applicazione a vulnerabilità di tipo XSS (cross-site scripting). Gestire attributi dinamici Possiamo anche aggiungere attributi dinamici agli elementi HTML. Supponiamo di voler impostare dinamicamente l’ID di un elemento: <script> //Lezione 2 – App 1 let codice = ‘<strong> <h1>Benvenuto nella piattaforma</h1> </strong>’; let nome = ‘Daniele’; let headingID = ‘heading1′; </script> <main> <div>{@html codice}</div> <h2>Ciao {nome}</h2> <h2 id={headingID}>Questo è il mio primo heading</h2> </main> In questo esempio, il valore dell’attributo id viene assegnato dinamicamente dalla variabile headingID. Se modifichiamo il contenuto della variabile, l’attributo verrà aggiornato automaticamente.È possibile visualizzare dalla console di Chrome il niovo valore dell’ID Svelte ci permette di scrivere meno codice grazie a una sintassi abbreviata. Se il nome della variabile coincide con il nome dell’attributo, possiamo scrivere il codice in modo più compatto: <h2 {headingID}>Questo è il mio primo heading</h2> Disabilitare un bottone dinamicamente Un altro esempio pratico di gestione degli attributi è disabilitare o abilitare un bottone dinamicamente: <script> //Lezione 2 – App 1 let codice = ‘<strong> <h1>Benvenuto nella piattaforma</h1> </strong>’; let nome = ‘Daniele’; let headingID = ‘heading1’; let disabled = true; </script> <main> <div>{@html codice}</div> <h2>Ciao {nome}</h2> <h2 id={headingID}>Questo è il mio primo heading</h2> <button {disabled}>Cliccami</button> </main> Se il valore di disabled è true, il bottone sarà disabilitato. Se cambiamo disabled a false, il bottone sarà abilitato. Gestire classi CSS dinamiche Svelte ci permette di gestire dinamicamente anche le classi CSS. Possiamo associare una classe a un elemento in base al valore di una variabile. Ad esempio: <script> //Lezione 2 – App 1 let codice = ‘<strong> <h1>Benvenuto nella piattaforma</h1> </strong>’; let nome = ‘Daniele’; let headingID = ‘heading1’; let disabled = true; let color = ‘red’; </script> <main> <div>{@html codice}</div> <h2>Ciao {nome}</h2> <h2 id={headingID}>Questo è il mio primo heading</h2> <button {disabled}>Cliccami</button> <h2 class={color}>Questo è un testo colorato</h2> </main> <style> .red { color: red; } </style> Se colore è impostato su “red”, il testo sarà rosso. Se cambiamo il valore della variabile a “green”, il testo diventerà verde. Possiamo rendere l’assegnazione della classe ancora più dinamica usando l’operatore ternario: <script> //Lezione 2 – App 1 let codice = ‘<strong> <h1>Benvenuto nella piattaforma</h1> </strong>’; let nome = ‘Daniele’; let headingID = ‘heading1’; let disabled = true; let color = ‘red’; let controllo = true; </script> <main> <div>{@html codice}</div> <h2>Ciao {nome}</h2> <h2 id={headingID}>Questo è il mio primo heading</h2> <button {disabled}>Cliccami</button> <h2 class={color}>Questo è un testo colorato</h2> <h2 class={controllo ? ‘green’ : ‘white’}>Testo dinamico</h2> </main> <style> .red { color: red; } .green { color: green; } .white { color: white; } </style> In questo esempio, se controllo è true, il testo avrà la classe “green”. Se è false, avrà la classe “white”. Questo permette di applicare stili diversi in base a una condizione logica. Gestione degli Eventi in Svelte Per lavorare con la gestione degli eventi in Svelte useremo come esempio un semplice con un contatore che può essere incrementato o decrementato tramite dei pulsanti. Step 1: Setup di base Partiamo con un semplice setup: Creiamo una variabile per il contatore e visualizziamola nel nostro browser. Aggiungiamo due pulsanti: uno per incrementare e uno per decrementare il valore del contatore. <script> //Lezione 2 – App 2 let count = 0; </script> <main> <p>{count}</p> <button>Incrementa</button> <button>Decrementa</button> </main> Abbiamo creato una variabile count inizializzata a 0 e la stiamo mostrando in un elemento <p>. Ora vediamo come gestire l’evento click sui pulsanti. Step 2: Aggiunta degli Eventi click Cliccando su un pulsante, vogliamo che il valore del contatore cambi. Svelte ci permette di gestire gli eventi utilizzando la sintassi on:evento. Per il pulsante decrementa, possiamo usare una funzione inline che diminuisce il valore del contatore. <button on:click=”{() => count -= 1}”>Decrementa</button> Questa è una soluzione funziona ma non è ideale, infatti è meglio evitare di scrivere il codice inline all’interno dell’attributo on:click perché rende il codice difficile da mantenere. Per uil pulsante incrementa per una migliore gestione, possiamo definire una funzione separata per il pulsante incrementa. <script> //Lezione 2 – App 2 let count = 0; function incrementa() { count += 1; } </script> <p>{count}</p> <button on:click=”{incrementa}”>Incrementa</button> <button on:click=”{() => count -= 1}”>Decrementa</button> Step 3: Passaggio di Parametri alle Funzioni Gestite dagli Eventi Ora vogliamo aggiungere un pulsante che incrementi il contatore di un valore specifico, ad esempio 5. Per farlo, dovremo passare dei parametri alla funzione gestita dall’evento. Aggiungiamo una variabile che rappresenta il valore di incremento: <script> //Lezione 2 – App 2 let count = 0; […]
Svelte: Introduzione al Framework (Lez. 1)
Svelte (svelte.dev)è un framework JavaScript che sfrutta Node.js per la gestione dell'infrastruttura di sviluppo. A differenza dei framework tradizionali come React o Vue.js, Svelte si comporta più come un compilatore. Durante la fase di build, trasforma i componenti in codice JavaScript altamente ottimizzato, eseguito direttamente nel browser. Questo approccio riduce significativamente il carico computazionale rispetto ai framework che utilizzano il Virtual DOM. Le principali caratteristiche distintive di Svelte Compilato: Svelte sposta il carico di lavoro dal browser alla fase di compilazione. Questo consente di avere applicazioni più leggere e veloci, poiché non è necessario mantenere e aggiornare un layer aggiuntivo come il Virtual DOM durante l'esecuzione dell'applicazione. Compatto: Permette di scrivere componenti in modo estremamente conciso, utilizzando linguaggi semplici come HTML, CSS e JavaScript. Le dimensioni dei bundle risultano notevolmente ridotte, migliorando ulteriormente le prestazioni complessive. Completo: Integra funzionalità native come stili con scope isolato, gestione dello stato, animazioni e binding tra moduli, eliminando la necessità di cercare pacchetti esterni su npm per queste funzionalità di base. L'assenza del Virtual DOM Una delle caratteristiche distintive di Svelte è che non utilizza il Virtual DOM. Mentre framework come React o Vue.js mantengono una copia virtuale del DOM per aggiornare selettivamente le parti modificate, Svelte genera direttamente codice che aggiorna il DOM reale. Questo approccio elimina il bisogno di processi come il diffing e la reconciliation, riducendo il carico computazionale nel browser. Il DOM e il Virtual DOM Il DOM (Document Object Model) rappresenta la struttura di un documento HTML o XML sotto forma di albero. Il browser costruisce il DOM quando carica una pagina e, grazie a JavaScript, è possibile manipolarlo dinamicamente. Ad esempio, è possibile cambiare il contenuto di un elemento <p> con il seguente codice: javascriptCopia codicedocument.getElementById("testo").innerHTML = "Testo modificato dal DOM"; Nel DOM esistono vari tipi di nodi: Nodo Elemento: Ogni tag HTML, come <div>, <p>, <h1>, rappresenta un nodo di tipo elemento. Nodo Testo: Il contenuto testuale di un elemento HTML è un nodo di tipo testo. Nodo Attributo: Gli attributi come id o class sono rappresentati come nodi. Il Virtual DOM, una versione astratta del DOM reale speculare ad esso, che viene utilizzato da framework come React e Vue.js per capire quali porzioni del DOM sono cambiate e ottimizzare le operazioni di aggiornamento delle interfacce utente. Tuttavia, il processo di "diffing", necessario per confrontare il Virtual DOM con il DOM reale e aggiornare solo le parti modificate, può essere computazionalmente dispendioso, soprattutto per applicazioni complesse. Il vantaggio di Svelte Svelte adotta un approccio diverso: anziché calcolare le differenze tra il DOM reale e quello virtuale, tutte le ottimizzazioni vengono effettuate durante la fase di compilazione. Questo permette a Svelte di generare codice che sa già quali parti del DOM devono essere aggiornate, rendendo l'esecuzione nel browser molto più leggera e rapida. La Reattività di Svelte Svelte semplifica anche la gestione dello stato attraverso una reattività nativa. Gli "store" di Svelte sono strumenti potenti che permettono di gestire lo stato globale o condiviso tra i componenti in modo intuitivo, eliminando la necessità di implementare soluzioni complesse come nei framework concorrenti. Svelte rende la gestione dello stato particolarmente intuitiva attraverso la sua reattività nativa. Questo significa che quando una variabile o uno store viene aggiornato, l'interfaccia utente si aggiorna automaticamente per riflettere le modifiche, senza che lo sviluppatore debba esplicitamente indicare come e quando aggiornare il DOM (come accade in altri framework). Oltre alla gestione dello stato, Svelte facilita la reattività degli input, la gestione delle animazioni e l'applicazione di stili CSS isolati per ciascun componente, prevenendo conflitti nello spazio globale del progetto. Bundle più piccoli e prestazioni migliori Svelte genera bundle notevolmente più piccoli rispetto a React o Vue.js, grazie all'assenza del Virtual DOM e alle ottimizzazioni effettuate durante la compilazione. Questo si traduce in tempi di caricamento più rapidi e un minor consumo di risorse da parte del browser. Stili con scope nativo Svelte include la possibilità di applicare stili con scope nativo, garantendo che ogni componente abbia i propri stili isolati, evitando conflitti con altri componenti o stili globali. In altri framework, questa funzionalità richiede configurazioni aggiuntive. Configurazione degli strumenti di sviluppo Se seguissimo le indicazioni ufficiali dal sito di Svelte,dovremmo installare SvelteKit, che include anche la possibilità di gestire un backend, ma questo può risultare più complicato per il nostro obiettivo che è quello di creare una semplice applicazione frontend. Per semplificare, invece di utilizzare SvelteKit, creeremo un'applicazione usando Svelte puro, senza un backend. E' consigliabile installare alcune estensioni per l'IDE di sviluppo:In Visual Studio Code per facilitare lo sviluppo con Svelte, suggerisco le seguneti estensioni: Svelte for VSCode: per migliorare il supporto a Svelte Svelte Intellisense: per suggerimenti di codice più precisi Svelte Transpiler: per una compilazione efficiente Svelte Auto Import: per importare automaticamente i componenti La prima applicazione Svelte Creiamo una cartella di progetto chiamandola "svelte" e al suo interno creiamo una sottocartella chiamata "my-app". Crea una nuova cartella: all'interno di Visual Studio Code, crea una nuova cartella chiamata "lezione_1". Apri il terminale: Posizionati nella cartella appena creata usando il terminale. Puoi farlo con il comandocd lezione_01 Usa Vite (tool per inizializzare progetti frontend) per creare il progetto:npm create vite Segui le istruzioni e dai un nome al progetto, ad esempio "app_01". Quando viene chiesto di selezionare il framework, scegli Svelte e imposta il linguaggio su JavaScript. Dopo aver creato il progetto, spostati nella cartella "app_01" e installa le dipendenze con il comando:cd app_01npm install Installate le dipendenze, avvia il server di sviluppo con:npm run devQuesto avvierà l’applicazione che sarà accessibile tramite un indirizzo locale, mostrato nel terminale (ad esempio, http://localhost:3000). Struttura del progetto Diamo un’occhiata alla struttura del progetto: Public: Cartella che contiene risorse statiche come immagini o file che verranno serviti direttamente. Src: Cartella dove si trova il codice sorgente dell’applicazione. src/App.svelte: Componente principale della tua applicazione. src/app.css: Contiene lo stile globale dell'applicazione. src/main.js: File di ingresso, indica dove viene inserita l’applicazione nel DOM (in questo caso nel div con id "app" definito nel file index.html). Rimuovere componenti non [...]
VOTIAMO DA AQUILE!
Roberto Alaimo nel suo libro “Palermo è una cipolla” divide gli isolani in due categorie: isolani di scoglio e isolani di mare aperto… un pò come i gabbiani.“Chi parte considera chi resta un provinciale destinato al peggior fallimento esistenziale, e chi resta parla di chi è partito come di un disertore che ha abbandonato la prima linea per rifugiarsi nelle retrovie.” Domenica 12 giugno non facciamo i gabbiani….votiamo da aquile! Prima andiamo a votare per DANIELE MONDELLO e ORNELLA SPATA al consiglio comunale POI INDOSSIAMO LA MAGLIA E FORZA PALERMO!!!!
Referendum e amministrative a Palermo
Lunedì 13 giugno oltre a votare per me Daniele Mondello e Ornella Spata e il candidato sindaco Ferrandelli:𝗫 𝘀𝘂 𝗙𝗘𝗥𝗥𝗔𝗡𝗗𝗘𝗟𝗟𝗜 𝗦𝗜𝗡𝗗𝗔𝗖𝗢𝗫 𝘀𝘂 𝗙𝗘𝗗𝗘𝗥𝗔𝗭𝗜𝗢𝗡𝗘 𝗣𝗜𝗨̀ 𝗘𝗨𝗥𝗢𝗣𝗔-𝗔𝗭𝗜𝗢𝗡𝗘 𝘀𝗰𝗿𝗶𝘃𝗲𝗻𝗱𝗼 MONDELLO e SPATA 𝗮𝗹 𝗖𝗢𝗡𝗦𝗜𝗚𝗟𝗜𝗢 [scheda azzurra] o fare il voto disgiunto ad esempio 𝗫 𝘀𝘂 MICELI 𝗦𝗜𝗡𝗗𝗔𝗖𝗢𝗫 𝘀𝘂 𝗙𝗘𝗗𝗘𝗥𝗔𝗭𝗜𝗢𝗡𝗘 𝗣𝗜𝗨̀ 𝗘𝗨𝗥𝗢𝗣𝗔-𝗔𝗭𝗜𝗢𝗡𝗘 𝘀𝗰𝗿𝗶𝘃𝗲𝗻𝗱𝗼 MONDELLO e SPATA 𝗮𝗹 𝗖𝗢𝗡𝗦𝗜𝗚𝗟𝗜𝗢 [scheda azzurra] potrai esprimerti su tre referendum con 5 quesiti; i tre referendum sono stati promossi dalla Lega e dal Partito radicale e gli elettori dovranno esprimere la propria opinione su cinque quesiti che chiedono di abrogare alcune norme sul funzionamento dell’ordinamento giudiziario. Referendum n. 1 – Scheda di colore rosso: abrogazione del Testo unico delle disposizioni in materia di incandidabilità e di divieto di ricoprire cariche elettive e di Governo conseguenti a sentenze definitive di condanna per delitti non colposi;Se passasse il sì al quesito referendario anche i condannati in via definitiva potrebbero candidarsi o continuare il proprio mandato, e verrebbe eliminata la sospensione automatica dall’incarico per gli amministratori locali in caso di condanna non definitiva. Referendum n. 2 – Scheda di colore arancione: limitazione delle misure cautelari: abrogazione dell’ultimo inciso dell’art. 274, comma 1, lettera c), codice di procedura penale, in materia di misure cautelari e, segnatamente, di esigenze cautelari, nel processo penale;Il quesito chiede di esprimersi sulla modifica delle basi su cui possono essere disposte le “misure cautelari”, ossia i provvedimenti che un giudice può disporre su richiesta del pubblico ministero verso una persona, non ancora condannata in via definitiva, per esigenze “di cautela” come gli arresti domiciliari, la custodia cautelare in carcere etc. Se vincesse il si, un giudice potrebbe disporre la custodia cautelare in carcere, per esempio, solo se ritenesse ci sia il concreto pericolo che l’indagato possa commettere reati con l’uso di armi, con la criminalità organizzata o contro l’ordine costituzionale. Referendum n. 3 – scheda di colore giallo: separazione delle funzioni dei magistrati. Abrogazione delle norme in materia di ordinamento giudiziario che consentono il passaggio dalle funzioni giudicanti a quelle requirenti e viceversa nella carriera dei magistrati;Attualmente in Italia i magistrati seguono lo stesso iter formativo e possono decidere di cambiare funzione, passando dal ruolo di giudice a quello di pm, fino a 4 volte durante la propria carriera. Se passasse il sì, il magistrato dovrà scegliere se esercitare giudice o Pubblico Ministero, e non potrà poi modificare la sua decisione. I sostenitori del sì, sostengono che questo aiuterebbe a garantire una maggiore imparzialità dei giudici. Referendum n. 4 – scheda di colore grigio: partecipazione dei membri laici a tutte le deliberazioni del Consiglio direttivo della Corte di cassazione e dei consigli giudiziari. Ogni 4 anni ii magistrati ricevono una valutazione sul loro operato che può essere:“positiva”, “non positiva”, “negativa”. Le valutazioni sono effettuate dai consigli giudiziari, organi “ausiliari” del Csm; a questi componenti “togati” si aggiungono avvocati e professori universitari, che partecipano come membri “laici”. Attualmente, solo i membri “togati” partecipano alla valutazione dei magistrati. Il referendum chiede che anche gli avvocati e i professori universitari, possano partecipare alle valutazioni. Referendum n. 5 (scheda di colore verde): abrogazione di norme in materia di elezioni dei componenti togati del Consiglio superiore della magistratura. Attualmente è necessario che ogni candidatura dei magistrati al CSM sia accompagnata da almeno 25 firme raccolte tra altri magistrati. Il quesito chiede di abrogare quest’obbligo, facilitando quindi le procedure. Secondo i sostenitori del sì, è importante eliminare l’obbligo delle firme per attenuare il potere delle correnti all’interno del CSM.
DIGITALIZZIAMO PALERMO!
L’obiettivo che mi prefiggo con la mia candidatura al consiglio comunale è quello di digitalizzare Palermo.
Credential stuffing e wordlist per trovare password
Caccia alle password! Credential stuffing e wordlist sono strumenti utili per trovare password. La "credential stuffing" è una delle tecniche di password cracking più usate per ottenere le credenziali di accesso di un utente. Nel "credential stuffing" violato un sito web e il database che contiene le credenziali di accesso al sito web con molti utenti si provano le stesse su altri siti. Infatti molti utenti hanno la cattiva abitudine di riutilizzare la stessa password su servizi differenti. Ovviamente questa è una tecnica illegale e le password si trovano in vendita nel dark web. E' poi possibile utilizzare diversi software per provare le credenziali su diversi servizi; uno dei più utilizzati è Shard () che permette di utilizzare le stesse credenzialui su diversi servizi. Una wordlist permette di avere una lista di parole che possono essere utilizzate come password dai tools che tentano l'accesso in automatico ai siti web. Statisticamente è risaputo che molte password si basano su parole di uso comune come nomi di persone: nomi di animali, marche, termini sportivi etc. Sul web sono inoltre presenti diverse wordlist che possono essere utilizzati all'interno dei nostri applicativi come quelli elencati di seguito. Sconsiglio di unire più wordlist per averne una unica: è preferibile, se si conosce chi ha inserito la password usare singolarmente le wordlist, più affini. SeclLists: contiene nomi utente, password, URL, modelli di dati sensibili, fuzzing payload, shell web e molto altro. ` Openwall: è il risultato dell'elaborazione di molte centinaia di wordlist di pubblico dominio provenienti da più fonti . Nellaa raccolta sono inclusi elenchi di parole di oltre 20 lingue umane ed elenchi di password comuni (oltre 5 milioni di voci, che occupano oltre 50 MB). Esiste anche una versione a pagamento con un enorme elenco di tutte le password e le parole comuni di tutte le lingue con regole di manipolazione delle parole applicate (altre password probabili sono formate, ad esempio, aggiungendo maiuscole o numeri) . Viene fornito un unico file di testo (quasi 500 MB con oltre 40 milioni di voci). FuzzDB: FuzzDB è il dizionario originale e più completo di modelli di attacco e primitive payload, "resorces pattern" prevedibili, backdoor Web, modelli regex per risposte del server e PII e documentazione. Assetniote Tuttavia sono aggiornate mensilmente dal team di Assetnote e si tratta di una mole di dati impressionante. https://wordlists.assetnote.io/ PayloadsAllTheThings: elenco esaustivo di payload che possono essere usati per la ricerca di xss o sql injection.
Contesto dell’organizzazione
Introduzione “Contesto dell’organizzazione” è il titolo del quarto punto della norma ISO 9001:2015 dopo i primi tre che possiamo definire introduttivi. Bisogna considerare che nella norma vi sono 10 punti principali da esaminare singolarmente per implementare un Sistema di Qualità basato su questa norma. Il punto 4.0 Contesto dell’organizzazione Nel punto 4 della ISO 9001:2015 è definito il contesto dell’organizzazione. La norma richiede all’organizzazione di valutare se stessa e il contesto in cui opera. Si devono perlomeno identificare le influenze dei diversi elementi che possano riflettersi su: Sistema Qualità, obiettivi e finalità, flusso dei processi e informazioni, dimensioni dell’organizzazione, mercati Il punto rappresenta, così, anche il primo strumento per individuare rischi e opportunità relativi al contesto di business. In particolare Il capitolo 4 è il primo a includere requisiti normativi da rispettare. Sono evidenziare le esigenze per : capire organizzazione e contesto; determinare chiaramente scopo dell’organizzazione e dei suoi processi; cogliere questioni interne ed esterne rilevanti per gli scopi dell’azienda e sua direzione strategica. comprendere necessità e aspettative di parti interessate (clienti, fornitori, personale, etc). monitorare e riesaminare periodicamente le informazioni derivanti da queste attività Per comprendere meglio il contesto, il capitolo prosegue con: 4.1 dell’organizzazione e del suo contesto 4.2 delle necessità di capire i bisogni e le aspettative delle parti interessate 4.3 determinare lo scopo del Sistema Qualità 4.4 Sistema Qualità e i suoi processi Conclusioni In sintesi è fondamentale all’interno del proprio sistema di gestione della qualità aziendale definire il contesto dell’organizzazione considerando necessario farlo all’inizio dell’implementazione del sistema ; infatti la stesura delle informazioni necessarie permetterà di gestire il resto delle procedure focalizzandosi sulla peculiarità punti di forza e punti di debolezza della stessa. Vuoi certificare la tua azienda secondo lo schema ISO 9001:2015l? PROVA GRATIS LA NOSTRA PIATTAFORMA Sei già certificato ISO 9001 e vorresti aggiungere un altro schema di Certificazione? Ti aiutiamo noi! 13485 LIVE
Formazione per ISO 9001 on line e off line
La formazione per lo schema di certificazione ISO 9001 è erogata da diversi enti e risulta essere utile per conoscere la norma. Molti corsi risultano utili per persone e professionisti che intendono conoscere maggiormente la certificazione. I corsi sono ideali per chi vuole una panoramica sulla norma ISO 9001 o è coinvolto nell’implementarla in una organizzazione. Solo un corso abilita allo svolgimento di verifiche ispettive per un organismo di certificazione: Tra i corsi segnaliamo: Lead Auditor ISO 9001 Corso di 4 o 5 giorni che permette di conoscere la norma ed effettuare verifica ispettiva su sistemi di gestione. Un corso accreditato con esame finale abilita a divenire auditor autorizzato per un organismo di certificazione. Auditor interno ISO 9001 Dura 2 o 3 giorni, simile al corso precedente ma senza esame; utile per effettuare verifiche interne in una organizzazione. Corso di implementazione della ISO 9001 Si tratta di corsi di uno o due giorni che possono essere erogati sia “on line” che “off line”. Sono corsi che forniscono una conoscenza di base della ISO 9001 e su come implementarla. Questi corsi danno la possibilità a chi necessita di avere le basi per implementare la norma nella propria organizzazione. Esistono numerose organizzazioni di formazione accreditate nel mondo presso cui è possibile ottenere le certificazioni personali relative alla ISO 9001. Per proseguire la carriera di Lead Auditor in un ente oltre la certificazione è necessario affiancare un team di verifica. Sarà presto disponibile un corso in FAD con rilascio di certificato sulla nostra piattaforma di formazione nanocorsi.it Prova gratis la nostra applicazione
Come arrivare alla verifica ispettiva per certificazione ISO 9001 con tranquillità
Si sa che la verifica ispettiva per la certificazione ISO 9001, almeno la prima volta, porta parecchia ansia in azienda. Vediamo di seguito come arrivare tranquillamente all’appuntamento in SETTE STEP 1 STEP Preparazione e revisione documentazione SGQ – Completare e revisionare la documentazione, aver implementate procedure descritte e controllare le registrazioni. 2 STEP Effettuare una verifica ispettiva interna – Con il proprio Responsabile della qualità è necessario fare un audit interno per verificare i processi del SGQ. Si deve verificare che i documenti descrivano correttamente i processi in atto in maniera conforme alla norma e che vi siano le registrazioni. 3 STEP Risoluzione Azioni correttive – Se l’audit produce in output Non Conformità si devono prevedere Azioni Correttive. Le Azioni Correttive sono necessarie per apportare modifiche al SGQ e renderlo compliant alla norma o per migliorare le “performances”. 4 STEP Riesame della direzione – Le evidenze dell’ audit interno sono riportate al management per valutare i risultati in relazione ai processi del SGQ, così da prendere decisioni adeguate e predisporre le risorse necessarie. Conclusi i precedenti step è possibile richiedere ad ente accreditato verifica per attestare l’adeguatezza del SGQ alla norma ISO 9001. L’Audit esterno dell’ente di certificazione si svolge in due fasi: FASE A Verifica della documentazione – il team di Verifica che può anche essere composto da una persona sola controllerà che la documentazione sia conforme ai requisiti della ISO 9001. FASE B Verifica ispettiva – il team di verifica controllerà che i processi siano il linea con la norma ISO 9001 e con documentazione, registrazioni e politiche aziendali. Alla fine della verifica il team rilascerà un report con attività svolte ed evidenzierà Non Conformità, Azioni correttive e miglioramenti. Se riterrà maturo ed adeguato il SGQ, il team proporrà all’ente l’emissione del certificato per lo specifico settore dell’organizzazione.
Quale è la procedura per ottenere la certificazione ISO 9001?
Ottenere la certificazione ISO 9001 non è difficile. Di seguito gli step necessari per implementare un Sistema di Gestione Qualità e farlo certificare secondo la norma ISO 9001. Prima di implementare un SGQ in azienda il management dovrà definire la politica per la qualità e gli obiettivi della qualità, che insieme definiscono lo scopo generale. All’interno del SGQ dovranno essere preparate le procedure obbligatorie e quelle aggiuntive utilizzate dall’organizzazione per progettare, realizzare e fornire il proprio prodotto o servizio. Nella realizzazione dei documenti a supporto del SGQ, sei documenti sono obbligatorie devono essere presenti, mentre altri sono aggiunti se necessari. Dopo che procedure e processi sono descritte e in uso nell’organizzazione sarà necessario utilizzare l’SGQ per un periodo di maturazione. Raccolte le evidenze tramite le registrazioni è possibile passare a verificare e riesaminare il sistema. Le verifiche (audit) possono essere interne se eseguite dall’organizzazione stessa o esterne. Per ottenere la certificazione è necessario un audit esterno di un ente di certificazione accreditato. La verifica interna è molto importante perché può risultare più efficace rispetto a quella dell’organismo di certificazione. perché va a vedere i processi più spesso e più approfonditamente di quanto l’organismo di certificazione abbia il tempo di fare. Sarà presto disponibile un corso in FAD con rilascio di certificato sulla nostra piattaforma di formazione nanocorsi.it Prova gratis la nostra applicazione
Perché la ISO 9001 è un vantaggio per la tua organizzazione?
È impossibile esagerare nel sottolineare i vantaggi della ISO 9001: aziende grandi e piccole hanno utilizzato questa norma con ottimi risultati, scoprendo e realizzando incredibili risparmi in termini di costi ed efficienza. Di seguito, vediamo alcuni di tali vantaggi: Migliorare la tua immagine e credibilità – Quando i clienti vedono che sei certificato da un organismo autorevole, capiscono che hai implementato un sistema focalizzato sulla soddisfazione dei requisiti del cliente e sul miglioramento. Questo aumenta la loro fiducia nella tua capacità di fare ciò che prometti. Migliorare la soddisfazione dei clienti – Uno dei principi chiave degli SGQ ISO 9001 è concentrarsi sul miglioramento della soddisfazione del cliente, individuando e soddisfacendo i suoi requisiti e bisogni. Migliorando la soddisfazione, aumenti la fidelizzazione dei clienti. Completa integrazione dei processi – Usando l’approccio per processi della ISO 9001, non si prendono in considerazione solo i singoli processi nella propria organizzazione, ma anche le interazioni di tali processi. Così facendo, è più facile identificare le aree per il miglioramento e i risparmi in termini di risorse nell’ambito della propria organizzazione. Uso di decisioni basate sui fatti – Assicurare di prendere decisioni basate sui fatti reali è una chiave del successo per un SGQ ISO 9001. In questo modo, si possono mirare meglio le risorse per correggere al meglio i problemi e migliora la propria efficienza ed efficacia organizzativa. Creare una cultura di miglioramento continuo – Con il miglioramento continuo come principale output dell’SGQ, puoi raggiungere risultati sempre maggiori in termini di risparmio di tempo, denaro e risorse. Introducendo questa cultura nella tua azienda, puoi far concentrare la forza lavoro sul miglioramento dei processi di cui sono direttamente responsabili. Coinvolgere le persone – Chi meglio delle persone che lavorano nell’ambito di un processo può trovare le soluzioni più efficaci per migliorare tale processo? Concentrando l’impegno della tua forza lavoro, oltre che sul mantenimento, anche sul miglioramento dei processi, il personale sarà più coinvolto nei risultati dell’organizzazione.
Cosa è la norma ISO 9001?
La ISO 9001 è la norma internazionale per i Sistemi di Gestione per la Qualità (SGQ), pubblicata dall’ISO (International Organization for Standardization). Per la norma ISO 9001 l’ultimo aggiornamento è del 2015. La norma appartiene a una serie di normative (9000) sviluppate dalla ISO che definiscono i requisiti per realizzare un sistema di gestione della qualità, per condurre processi aziendali, migliorare l’efficacia e l’efficienza e nella realizzazione del prodotto e nell’erogazione del servizio e ottenere e incrementare la soddisfazione del cliente. Il Sistema di Gestione per la Qualità ( SGQ) , è una raccolta di politiche, procedure,, istruzioni e registrazioni, infatti nel SGQ sono definite le regole interne con cui l’organizzazione crea e fornisce il prodotto o il servizio ai clienti. L’SGQ è personalizzato per ogni organizzazione nonostante la norma fornisca linee guida omogenee per ogni tipo di organizzazione. La norma ISO 9001:2015 può essere usata dalle organizzazioni di qualunque dimensione o settore, ed è riconosciuta universalmente. Molte aziende richiedono ai loro fornitori di essere certificati 9001 cosi da essere sicuri che questi siano impegnati in un miglioramento continuo. L’ottenimento della certificazione premia l’impegno di tutto il personale inoltre impegna l’azienda in un continuo processo di miglioramento dei propri processi. Fondamentale in un buon sistema di qualità risulta tenere costantemente monitorate tutte le procedure aziendali sin dalla fase di progettazione dei nuovi prodotti/servizi. Un’organizzazione che desideri certificarsi si sottopone a una verifica di terze parti eseguita da un organismo di certificazione accreditato indipendente. La verifica si esegue in base ai requisiti della ISO 9001 al termine della quale, se non vengono rilevate non conformità (NC) importanti, viene emesso un certificato. Sarà presto disponibile un corso in FAD con rilascio di certificato di frequenza sulla nostra piattaforma di formazione nanocorsi.it Prova gratis la nostra applicazione
Com’è organizzata la ISO 9001?
L’organizzazione della norma ISO 9001 presenta una divisione in 10 capitoli, in particolare le prime 3 introduttive, le altre 7 con i requisiti per un Sistema Gestione della Qualità (GSQ). Ecco una breve analisi dei capitoli: Capitolo 4: Contesto dell’organizzazione – requisiti di base per comprendere l’organizzazione di un SGQ. Sono identificati input interni ed esterni, stakeholders e loro aspettative, scopo del SGQ e processi. Capitolo 5: Leadership – stabilisce requisiti e aspettative del Management per guidare l’azienda con l’impegno nei confronti del SGQ. La Direzione deve garantire attenzione al cliente, definendo e comunicando la politica per la qualità. Capitolo 6: Pianificazione – il management pianifica il buon funzionamento del SGQ, valutando rischi e opportunità del SGQ. E’ necessario identificare obiettivi per il miglioramento e le modalità su come conseguire tali obiettivi. Capitolo 7: Supporto – tratta tutto ciò (risorse umane, edifici, infrastrutture, risorse per monitoraggio e misurazione, know-how e informazioni documentate) che è di supporto alla pianificazione di un Sistema Qualità. Capitolo 8: Attività operative – In questo capitolo sono affrontati gli aspetti su pianificazione e sviluppo di servizio o prodotto. Si cerca così di avere un approccio sistematico in particolare i processi per pianificare, realizzare e consegnare prodotti e/o servizi forniti. Capitolo 9: Valutazione delle prestazioni – contiene i requisiti per monitorare le performances del SGQ. Tanti sono i requisiti come monitoraggio e misurazione dei processi, valutazione della soddisfazione del cliente, audit interni e riesame del SGQ. Capitolo 10: Miglioramento – include requisiti per migliorare il SGQ cioè “Generalità” e “Miglioramento Continuo” che l’organizzazione deve determinare. L’azienda deve selezionare opportunità di miglioramento di prodotti, servizi e prestazioni. L’ organizzazione della norma ISO 9001:2015, rispetto alla ISO 9001:2008, è più prescrittiva nel miglioramento continuo. Sarà presto disponibile un corso FAD con rilascio di certificato sulla nostra piattaforma nanocorsi.it Prova gratis la nostra applicazione