Creare una slug con google spreadsheet

Come ottenere uno slug a partire da una stringa in un foglio Google (spreadsheet) Excel? Si può con una serie di funzione annidate, trovi la riga copia-incollabile nel post.

Se dovete ottenere uno slug, anche detto machine_name, a partire da una stringa di testo nel vostro bel foglio excel, potete utilizzare questo snippet, sostituendo ovviamente “A2” con la vostra cella.

Che cos’è uno slug?

Nella filosofia del blogging made in WordPress, una URL SEO-Friendly è ricavata dal titolo del post, attraverso una specifica funzionalità che ne consente l’unicità (vedi wp_unique_post_slug).

Uno “slug” è letteralmente una lumaca (una di quelle senza guscio), adesso capisco perché nel cartone Futurama, dell’illuminato Matt Groening, la bevanda Slurm è chiamata così.
Se non l’avete fatto guardatevi questa puntata di Futurama … è meravigliosa … c’è un Fry in grande forma.

Ecco la funzione:

=LOWER(REGEXREPLACE(REGEXREPLACE(REGEXREPLACE(TRIM(A2),"[^a-zA-Z0-9]+","-"), "-{2,}", "-"), "^-+|-+$", ""))

Ricorda di cambiare “A2” con la cella che ti interessa.

Riferimenti:

  • Crediti: https://compile.blog/google-sheets-formula-to-slugify-text/
  • Definizione di slug per Yoast SEO: https://yoast.com/slug/

The Impact of Cloud Computing on Modern Businesses

Cloud computing has become a cornerstone of modern business operations, offering unparalleled flexibility, scalability, and efficiency. In this article, we will explore how cloud computing is transforming businesses and the key advantages it provides.

1. What is Cloud Computing?

Cloud computing refers to the delivery of computing services over the internet, including storage, processing power, and software applications. Instead of maintaining physical servers and infrastructure, businesses can access these resources on-demand from cloud service providers.

2. Benefits of Cloud Computing

  • Cost Efficiency: One of the primary benefits of cloud computing is the reduction in capital expenditure. Businesses no longer need to invest heavily in physical hardware or worry about maintenance costs. Instead, they can pay for the resources they use on a subscription basis.
  • Scalability: Cloud services allow businesses to scale their operations up or down based on demand. This flexibility is particularly beneficial for handling seasonal workloads or sudden spikes in user activity without significant investments in infrastructure.
  • Accessibility: With cloud computing, employees can access data and applications from anywhere with an internet connection. This accessibility supports remote work and collaboration, making it easier for teams to work together regardless of location.
  • Security: Leading cloud providers offer robust security measures, including data encryption, regular backups, and compliance with industry standards. These features help protect sensitive business data from cyber threats and ensure continuity in case of data loss.

3. Applications of Cloud Computing in Business

  • Data Storage and Management: Cloud storage solutions like Amazon S3 and Google Cloud Storage offer reliable and scalable options for storing vast amounts of data. Businesses can easily manage and access their data without the constraints of physical storage.
  • Software as a Service (SaaS): SaaS platforms, such as Salesforce and Microsoft Office 365, provide businesses with access to software applications over the internet. This model eliminates the need for local installation and simplifies software updates and maintenance.
  • Infrastructure as a Service (IaaS): IaaS providers like AWS and Microsoft Azure offer virtualized computing resources over the internet. Businesses can rent virtual servers, storage, and networking capabilities, reducing the need for physical infrastructure.
  • Platform as a Service (PaaS): PaaS solutions, such as Google App Engine and Heroku, provide a platform for developing, testing, and deploying applications. These services streamline the development process and enable businesses to focus on innovation rather than infrastructure management.

4. Future Trends in Cloud Computing

The cloud computing landscape is continually evolving, with emerging trends that promise to further enhance its impact on businesses:

  • Artificial Intelligence and Machine Learning: Cloud providers are integrating AI and ML capabilities into their services, enabling businesses to leverage advanced analytics and automation to drive decision-making and operational efficiency.
  • Edge Computing: As the Internet of Things (IoT) expands, edge computing is becoming more prevalent. This approach processes data closer to its source, reducing latency and improving performance for real-time applications.
  • Serverless Computing: Serverless architectures allow businesses to build and deploy applications without managing the underlying infrastructure. This model offers greater flexibility and efficiency, as resources are automatically allocated based on demand.

Summing up

Cloud computing is revolutionizing the way businesses operate, offering numerous advantages that drive efficiency, innovation, and growth. By understanding and leveraging cloud technologies, businesses can stay competitive and adapt to the rapidly changing digital landscape. Embrace the cloud to unlock new opportunities and transform your business for the future.

5 pratiche di sicurezza per sviluppare con Javascript

Un breve, brevissimo, memo di orientamento sul versante browser in 5 piccoli punti.

Lo sviluppo di applicazioni web moderne implica spesso l’uso estensivo di JavaScript per aggiungere interattività e dinamicità alle pagine web. Tuttavia, con la crescente complessità delle applicazioni JavaScript, è essenziale adottare le migliori pratiche di sicurezza per proteggere i tuoi utenti e i loro dati.

In questo articolo, esploreremo alcune delle migliori pratiche di sicurezza di sviluppo lato client e, con i framework moderni e NodeJS, anche lato server.

letture consigliate

“JavaScript: The Good Parts” di Douglas Crockford – Questo libro offre una panoramica approfondita delle migliori pratiche di JavaScript, concentrandosi sugli aspetti del linguaggio che possono migliorare la sicurezza e l’affidabilità del codice.

“Web Security for Developers: Real Threats, Practical Defense” di Malcolm McDonald e James R. Kettle – Questo libro fornisce una guida pratica alla sicurezza web per gli sviluppatori, coprendo una vasta gamma di argomenti, tra cui XSS, CSRF, SQL Injection e altro ancora.

“The Tangled Web: A Guide to Securing Modern Web Applications” di Michal Zalewski – Un libro avanzato che esplora le sfide uniche della sicurezza delle applicazioni web moderne e fornisce strategie e tecniche per mitigare i rischi.

1. Validazione lato client e server

Una delle prime linee di difesa contro le vulnerabilità di sicurezza è la validazione dei dati sia lato client che lato server. Utilizza le funzionalità di validazione fornite dai framework JavaScript come Express.js per verificare che i dati inviati dagli utenti siano conformi alle aspettative del tuo sistema e per prevenire attacchi come l’inserimento di script dannosi (XSS) o l’iniezione di SQL.

Una SQL injection in realtà aumentata (fonte)

2. Utilizzo di librerie e framework sicuri

Quando scegli librerie e framework JavaScript per il tuo progetto, assicurati di selezionare quelli che sono regolarmente aggiornati e supportati dalla comunità. Evita di utilizzare librerie obsolete o non mantenute, poiché potrebbero contenere vulnerabilità di sicurezza note.

3. Gestione sicura delle password

Se il tuo sito web richiede la gestione di password degli utenti, assicurati di utilizzare pratiche di hashing sicure come bcrypt per proteggere le password memorizzate nel database. Evita di memorizzare le password in chiaro o utilizzare algoritmi di hash deboli che possono essere facilmente compromessi.

SecurityHeaders.com
Un sito che fornisce informazioni su come implementare correttamente le intestazioni di sicurezza HTTP, come Content Security Policy (CSP), per proteggere le tue applicazioni web da attacchi XSS e altre minacce.

4. Protezione contro attacchi XSS

Gli attacchi XSS (Cross-Site Scripting) sono comuni nelle applicazioni JavaScript e possono consentire agli aggressori di eseguire script dannosi sul browser dell’utente. Per proteggerti da questi attacchi, utilizza sempre l’escape dei dati in output e applica Content Security Policy (CSP) per mitigare il rischio di esecuzione di script non autorizzati.

5. Aggiornamenti regolari e monitoraggio della sicurezza

Infine, assicurati di mantenere il tuo codice JavaScript aggiornato e di monitorare regolarmente la sicurezza del tuo sito web per individuare e risolvere tempestivamente eventuali vulnerabilità. Se vuoi diventare un esperto di sicurezza informatica dovrai poter contare su risorse e strumenti affidabili, mantenendoti aggiornato e sempre al passo con lo stato dell’arte. Pertanto non mancare di consultare e mettere tra i preferiti risorse come OWASP (open Web Application Security Project) e Mozilla Developer Network (MDN).

La sicurezza è una parte fondamentale dello sviluppo di qualsiasi applicazione, se è un’applicazione web non ne parliamo proprio! Gli sviluppatori, specie i junior e quelli provenienti da linguaggi di programmazione server-side che non hanno mai usato un linguaggio come JavaScript, devono essere consapevoli dei rischi e delle migliori pratiche per proteggere le loro applicazioni e i loro utenti.

Creazione di un’applicazione web con Django

Se sei un aspirante sviluppatore web o un programmatore alla ricerca di un framework robusto e flessibile per creare applicazioni web dinamiche, allora Django potrebbe essere la soluzione perfetta per te. In questo tutorial, ti guideremo attraverso i passaggi necessari per creare la tua prima applicazione web utilizzando Django.

Passo 1: Installazione di Django

Prima di tutto, assicurati di avere Python installato sul tuo sistema. Dopodiché, puoi installare Django eseguendo il seguente comando:

pip install django

Passo 2: Creazione di un nuovo progetto Django

Una volta installato Django, puoi creare un nuovo progetto eseguendo il seguente comando:

django-admin startproject nomedelprogetto

Questo creerà una nuova directory con il nome del tuo progetto Django e alcuni file di base.

Passo 3: Creazione di un’applicazione Django

Dentro il tuo progetto Django, puoi creare un’applicazione eseguendo il seguente comando:

python manage.py startapp nomedellapplicazione

Questo genererà una nuova directory per la tua applicazione Django insieme a una serie di file predefiniti.

Passo 4: Definizione dei modelli

Uno dei principali vantaggi di Django è il suo sistema di modelli, che ti consente di definire la struttura del database in modo semplice e intuitivo. Definisci i modelli necessari per la tua applicazione all’interno del file models.py della tua applicazione.

Passo 5: Configurazione delle viste

Le viste gestiscono la logica di presentazione della tua applicazione Django. Definisci le viste necessarie all’interno del file views.py della tua applicazione e associale alle URL corrispondenti nel file urls.py.

Passo 6: Creazione dei template HTML

Utilizza i template HTML per definire l’aspetto e la struttura delle pagine web della tua applicazione. Crea i template necessari all’interno della directory templates della tua applicazione.

Passo 7: Esecuzione delle migrazioni

Dopo aver definito i tuoi modelli, esegui le migrazioni per applicare le modifiche al database utilizzando il seguente comando:

python manage.py makemigrations
python manage.py migrate

Passo 8: Avvio del server di sviluppo

Infine, avvia il server di sviluppo Django eseguendo il seguente comando:

python manage.py runserver

Se come ti auguro tutto è andato come doveva hai appena creato la tua prima applicazione web utilizzando Django. Questo è solo l’inizio del tuo viaggio con questo potente framework, e ci sono molte altre funzionalità e concetti da esplorare. Continua a praticare e sperimentare per diventare un esperto sviluppatore Django.

Get rid of Tailwind CSS color warnings on both web browser console and command line.

Are you upset about Tailwind CSS (stupid) warnings? No worries, I have been done as well and I know what you are annoyed about.

If you are here maybe you bumped into the following warning message:

It also occur console side when you compile your project, in my case a Laravel 9.x installation.

Are you tired about that? Here’s the solution, mate, dont worry! Be happy!

In your tailwind.config.js file, edit the first rows. Remove/comment “const colors” in favour of “let colors”.

And add the following lines:

// removing old colors
delete colors.lightBlue;
delete colors.warmGray;
delete colors.trueGray;
delete colors.coolGray;
delete colors.blueGray;

You can then recompile your project ( in my case npm run dev ) and voilà … message will not bore you anymore.

Say bye bye to these messages:

warn - As of Tailwind CSS v2.2, lightBlue has been renamed to sky.
warn - As of Tailwind CSS v3.0, warmGray has been renamed to stone.
warn - As of Tailwind CSS v3.0, trueGray has been renamed to neutral.
warn - As of Tailwind CSS v3.0, coolGray has been renamed to gray.
warn - Update your configuration file to silence this warning.
warn - As of Tailwind CSS v3.0, blueGray has been renamed to slate.
warn - Update your configuration file to silence this warning.