Bonnes Pratiques Web & Cloud
73.5K views | +0 today
Bonnes Pratiques Web & Cloud
Administration cloud et développement web
Curated by Mickael Ruau
Your new post is loading...
Your new post is loading...

Popular Tags

Scooped by Mickael Ruau
January 20, 2022 2:21 AM
Scoop.it!

Why I’m Using HTTP Basic Auth in 2022

Why I’m Using HTTP Basic Auth in 2022 | Bonnes Pratiques Web & Cloud | Scoop.it
Some online resources mention that HTTP Basic Authentication is deprecated, but that’s a misunderstanding. Only passing username and password as part of the URL is deprecated. It’s still perfectly valid to pass the credentials in the HTTP header and that’s what I’ll be doing. This method works in every modern browser.

As an additional aside, modern browsers still support credentials in the URL, even though the practice is deprecated. To prevent certain fishing attacks, they hide those credentials from the user in various ways, but it tends to work anyway. I wouldn’t personally use credentials in the URL though; who knows how long browsers will continue to support that.

Because Basic Authentication sends the username and password with each HTTP request, it’s insecure unless the credentials are served over an encrypted HTTPS connection. These days HTTPS is the norm for many of our projects, but it’s something you need to be aware of. You don’t want to use this over a regular HTTP connection because anyone on the same network can see the unencrypted values. Because HTTPS requests are encrypted, this isn’t a problem over HTTPS.

I’ve created a template for a simple application that implements HTTP Basic Authentication in Go.

I’ve also created a template for a simple application that implements HTTP Basic Authentication in PHP.
No comment yet.
Scooped by Mickael Ruau
January 14, 2022 4:50 AM
Scoop.it!

Une backdoor invisible en JavaScript

Une backdoor invisible en JavaScript | Bonnes Pratiques Web & Cloud | Scoop.it
Une backdoor invisible en JavaScript
No comment yet.
Scooped by Mickael Ruau
December 30, 2021 1:57 AM
Scoop.it!

Five Reasons I'm Excited about Astro

The Right Amount of Opinion

For me, what it boils down to is that I feel like Astro brings the right degree of opinion to its framework. It knows that there are widespread preferences for lower-level tooling, and so it leaves options. But it provides a solid framework for implementing those options.

Now, granted, I've only built a few proofs of concept, but these are the five reasons I'm so excited about Astro:

Static-first, with progressive enhancement
Supporting multiple component frameworks
Native markdown support
A foundation for styling
Reduced boilerplate code

Let's take a quick look at each of these ideas.
Mickael Ruau's insight:

Astro lets you build your website with modern front-end component frameworks, like React and Vue, but it doesn't assume you want to run JavaScript in the browser.

That's my struggle with frameworks like Gatsby and Next.js. They are super powerful, but they assume interactivity and always include JavaScript files in your built site.

Astro assumes the opposite. It makes you, the developer, tell it when you need interactivity. Otherwise it renders static HTML. That means that even though there is some magic that happens during the build, you are still in control of your HTML code for the most part.

No comment yet.
Scooped by Mickael Ruau
December 30, 2021 1:40 AM
Scoop.it!

Tutoriel pour apprendre les bases du deep learning

Tutoriel pour apprendre les bases du deep learning | Bonnes Pratiques Web & Cloud | Scoop.it
Ce tutoriel est la deuxième partie d’une série de cours pour vous apprendre quelques avantages du machine learning dans l’analyse de données et les journaux d’évènements, pour améliorer votre proactivité dans la détection et la résolution d’anomalies sur vos systèmes connectés.
No comment yet.
Scooped by Mickael Ruau
December 29, 2021 5:13 AM
Scoop.it!

Pomm - PHP / Postgresql object model manager | home

Pomm - PHP / Postgresql object model manager | home | Bonnes Pratiques Web & Cloud | Scoop.it
Pomm is an open source database access framework in PHP dedicated to the Postgresql™ database. It offers an alternative approach than ORM to using database in web developments.
Pragmatic approach

Tired of your ORM limitations ?
Since 6 years, Pomm sets the database at developers fingertips without the arduousness of an abstraction layer.
It grants developers with unlimited access to SQL and database features while proposing a high level API.

Efficient & easy

Be productive in a matter of seconds.
With its client oriented kernel, Pomm2 gives an easy access to powerful Postgresql features. It also proposes a CLI tool to help developers inspect database structures and generate mapping classes.
Using a modular distribution is the best way to comply with everyone's way of doing the things.
Enterprise ready

On the shoulders of giants
Pomm is dedicated to let developers the full usage of Postgresql™, the most advanced open source database.
It has a comprehensive documentation and modules to be used with Symfony™. Pomm2 complies with PSR-2, semver standards and proposes a controlled cycle of releases.
No comment yet.
Scooped by Mickael Ruau
December 28, 2021 5:10 AM
Scoop.it!

Pomm, The Postgresql object model manager for PHP

Pomm, The Postgresql object model manager for PHP | Bonnes Pratiques Web & Cloud | Scoop.it
Pomm is an open source database access framework in PHP dedicated to the Postgresql™ database. It offers an alternative approach than ORM to using database in web applications developments.

Imagine an ORM but upside down. That’s what Pomm is.

When ORM appeared in the PHP world, they brought with them a lot of good practices in addition of sticking to a purely object oriented model which, at the time, was missing in most of PHP projects.

ORM are widely used today because they ease the development of large applications. But they also come with pitfalls that lead to badly designed data structures, complex processes and more generally, performances issues.

Pomm came with a pragmatic approach setting the database at developers fingertips without the arduousness of an abstraction layer. It grants developers with unlimited access to SQL and database features while proposing a high level API.

Pomm2 also gives an easy access to the powerful features of Postgresql via a CLI tool that help developers inspect database structures and generate mapping classes. Using a modular distribution is the best way to comply with everyone’s way of doing the things.
No comment yet.
Scooped by Mickael Ruau
December 28, 2021 1:53 AM
Scoop.it!

Building a Photo Uploader: A Practical Introduction to the JAMSTACK with Vue.js

In this tutorial, you will learn how to build JAMSTACK apps with a feature to upload images. You will use Cloudinary to power the upload functionality and Auth0 for authentication. This can come in handy when building photo albums, e-commerce applications, and business websites.

For a brief introduction to Vue.js, you can check out this article, Getting Started with Vue JS: The Progressive JavaScript Framework.

Prerequisites

  1. A machine with Node.js and npm) installed.

  2. Basic familiarity with JavaScript, and ES6 and Vue.js).

  3. A text editor. E.g. Sublime Text, Visual Studio Code, Atom, etc.

  4. A Cloudinary account. You can sign up for a Cloudinary account for free.

  5. An Auth0 account. You may create a free Auth0 account here.

No comment yet.
Scooped by Mickael Ruau
December 27, 2021 2:34 AM
Scoop.it!

Analyse des données structurées et non structurées pour mieux comprendre et anticiper le comportement client

Analyse des données structurées et non structurées pour mieux comprendre et anticiper le comportement client | Bonnes Pratiques Web & Cloud | Scoop.it
Comment analyser conjointement vos données transactionnelles et les données non structurées de votre écosystème ?

Comment contextualiser vos données CRM en les rapprochant de vos données issues des réseaux sociaux - Facebook, Twitter -, du web et des e-mails ?

Comment bénéficier du cloud pour votre environnement big data en combinant des approches de gestion de données SQL et NoSQL stockées dans Hadoop ?

Philippe Nieuwbourg, Analyste expert en business intelligence et fondateur du site Decideo et Sébastien Demanche, Consultant TIBCO Spotfire répondent à ces questions lors de ce webinar.
No comment yet.
Scooped by Mickael Ruau
December 27, 2021 1:02 AM
Scoop.it!

Learn About Teespring’s E-commerce Jamstack Migration Story

Learn About Teespring’s E-commerce Jamstack Migration Story | Bonnes Pratiques Web & Cloud | Scoop.it
One of the most popular speakers from Jamstack Conf will be sharing an update on Teespring’s journey to the Jamstack, including their new explorations with Next.js.
No comment yet.
Scooped by Mickael Ruau
December 24, 2021 11:04 AM
Scoop.it!

Jamstack Showcase and Examples | Jamstack

Jamstack Showcase and Examples | Jamstack | Bonnes Pratiques Web & Cloud | Scoop.it
Check out a showcase of a variety of Jamstack-drive web properties and examples. Get inspired about building your next web project on the modern web architecture.
No comment yet.
Scooped by Mickael Ruau
December 23, 2021 7:58 AM
Scoop.it!

What is the Jamstack and What Can It Do for You?

What is the Jamstack and What Can It Do for You? | Bonnes Pratiques Web & Cloud | Scoop.it

Don’t over-architect a site to make it fit into Jamstack paradigm as you may find such the solution brittle and difficult to maintain. Don’t offload the majority of your content display to client-side API calls as you’ll find this can negate some of the benefits of Jamstack’s static, CDN-based approach. These are guidelines, not hard and fast rules, but they can help you evaluate if the benefits of Jamstack outweigh the drawbacks for your project. For most projects, I’m certain they will, but in some cases they may not.

Now that we understand some of the benefits of choosing to use the Jamstack you might be asking yourself how you can use it.

The nature of the Jamstack means that there’s no easy answer to that question. A myriad of combinations of tools and services that you can use to create a site that qualifies as “Jamstack.” This is why many books and tutorials about Jamstack tend to gravitate towards a single solution. The goal of The Jamstack Book, however, is to give you the information and “real-world” usage to be able to evaluate what tools and services best meet your specific needs. Let’s get coding!

Mickael Ruau's insight:

 

When Jamstack May Not Be the Right Choice

Recently, it has become far more difficult to make a clear-cut recommendation about when to use Jamstack. The improved capabilities of Jamstack tools and services make almost any type of site possible using a Jamstack approach. In fact, tools such as Next.js, make it possible to create a hybrid solution that give developers the option to make some routes static and others server-side rendered. That being said, there are times when a Jamstack approach may not make sense.

  1. An application that relies heavily on user-generated content. It’s entirely possible to build user generated content as static assets or pulled via an API. Examples of Jamstack sites adding things like user-generated comments or posts are written to files that trigger a rebuild or pulled dynamically from an API. This can make sense in cases where the user-generated content is periodic and supplemental, but for sites primarily focused on user-generated content, a Jamstack solution may be overly complex and difficult to implement.
  2. An application where content is continually updated. Similar to a site with user-generated content, a site with constantly updated content (for example, a real-time news site) may not be ideal for a Jamstack approach. Yes, this content could be updated live via client-side API calls, but this can be difficult to properly implement and may negate some of the overall performance benefits of the Jamstack.
  3. A dashboard that relies heavily on server-side processing. Some dashboard applications make perfect sense as Jamstack. In many cases, these dashboards call APIs to populate charts and data tables that make sense to process on the client-side. In other cases this may unnecessarily put too heavy a load on the client and not be an optimal solution.
No comment yet.
Scooped by Mickael Ruau
December 23, 2021 1:54 AM
Scoop.it!

⚡️ Free Next.js responsive landing page template for SaaS products made using JAMStack architecture.

⚡️ Free Next.js responsive landing page template for SaaS products made using JAMStack architecture. | Bonnes Pratiques Web & Cloud | Scoop.it


Everything you need to build a great landing page / marketing website for your startup. Great SEO metrics, Green WebVitals, � Performance, Clean & Pragmatic Codebase out of the box.
� Features

⚡ Next.js - React framework for static rendering
� Best SEO setup - Meta Tags, JSON-LD and Open Graph Tags
✅ Optimized for Web Vitals
� Blog with MDX
� Mailchimp Integration - for newsletters
� Sendgrid Integration - for sending emails
� Dark mode - and customizable themes!
� No UI library - just styled components, so you don't have to learn any new syntax
� One click deployment - with Vercel or any other serverless deployment environment
� Eslint - with Next.js's recommended settings and imports sorting rule
� Prettier
Mickael Ruau's insight:

Checkout the source code https://github.com/Blazity/next-saas-starter (stars are greatly appreciated :D).
It contains far more pages and components than the ones showed on homepage, so please checkout other pages too :D

Features: https://next-saas-starter-ashy.vercel.app/features
Pricing: https://next-saas-starter-ashy.vercel.app/pricing
Contact: https://next-saas-starter-ashy.vercel.app/contact
Privacy policy: https://next-saas-starter-ashy.vercel.app/privacy-policy
Blog index: https://next-saas-starter-ashy.vercel.app/blog
Blog post: https://next-saas-starter-ashy.vercel.app/blog/test-article-2

No comment yet.
Scooped by Mickael Ruau
December 21, 2021 7:28 AM
Scoop.it!

Learning JavaScript Design Patterns

Learning JavaScript Design Patterns | Bonnes Pratiques Web & Cloud | Scoop.it
The classic JavaScript design patterns book, updated to ES2015+ syntax.
No comment yet.
Scooped by Mickael Ruau
January 14, 2022 5:12 AM
Scoop.it!

Une règle fail2ban contre la vuln log4j

Une règle fail2ban contre la vuln log4j | Bonnes Pratiques Web & Cloud | Scoop.it
Une règle fail2ban contre la vuln log4j
No comment yet.
Scooped by Mickael Ruau
January 7, 2022 2:34 AM
Scoop.it!

Comment rendre son site WordPress plus rapide à charger

Comment rendre son site WordPress plus rapide à charger | Bonnes Pratiques Web & Cloud | Scoop.it
Si tu souhaites améliorer la performance de ton ou de tes sites WordPress, tu es au bon endroit ! Je vais te dévoiler ici mes recommandations et astuces pour rendre [...]Lire la suite »
No comment yet.
Scooped by Mickael Ruau
December 30, 2021 1:50 AM
Scoop.it!

PHP : Industrialisation et bonnes pratiques

PHP : Industrialisation et bonnes pratiques | Bonnes Pratiques Web & Cloud | Scoop.it
Contrôler sa dette technique, ses temps de développement ou plus simplement maintenir une qualité logicielle suffisante exige de respecter certains processus et bonne pratique
No comment yet.
Scooped by Mickael Ruau
December 29, 2021 8:50 AM
Scoop.it!

The Jamstack Jammies Awards

The Jamstack Jammies Awards | Bonnes Pratiques Web & Cloud | Scoop.it
The Jammies Awards recognize individuals, companies, projects and initiatives that are pushing forward the modern web and Jamstack ecosystem. Final voting is now open.
No comment yet.
Scooped by Mickael Ruau
December 29, 2021 1:38 AM
Scoop.it!

Créer un classificateur du langage naturel pour détecter des spams

Créer un classificateur du langage naturel pour détecter des spams | Bonnes Pratiques Web & Cloud | Scoop.it
Avec l'avènement de l'informatique cognitive et des machines intelligentes, l'apprentissage automatique de ses algorithmes et des techniques connexes est très important. Nous pouvons utiliser l'apprentissage automatique pour nous aider à comprendre et extraire des informations utiles dans une abondance de données en constante évolution. L'apprentissage automatique peut être utilisé pour reconnaître et identifier des modèles complexes, pour générer des prédictions, pour apprendre au fil du temps, et finalement nous aider à mieux faire en prenant de meilleures décisions.

IBM fournit maintenant un certain nombre de services cognitifs sur Bluemix. Dans cet article, je présente le service Natural Language Classifier de Watson (classificateur du langage naturel). Il s'agit d'un classificateur d'apprentissage automatique qui combine les réseaux neuronaux complexes en convolution avec un modèle de langage sophistiqué pour apprendre et comprendre le langage. Malgré sa complexité interne, ce classificateur est très facile à utiliser.

Dans cet article, nous allons créer une application de classification de spams en créant une nouvelle instance du classificateur de Watson, ensuite l'entrainer à la distinction entre le spam et non-spam puis nous allons tester son exactitude.
No comment yet.
Scooped by Mickael Ruau
December 28, 2021 5:09 AM
Scoop.it!

Pomm - PHP / Postgresql object model manager | Pomm reported to work with MySQL !

Pomm - PHP / Postgresql object model manager | Pomm reported to work with MySQL ! | Bonnes Pratiques Web & Cloud | Scoop.it


I must say, I am impressed. Some people reported they have been able to use Pomm with Mysql just by changing the way the DSN was handled by PDO in the Connection class. Of course the database introspection does not work, but they used Postgres to generate their model files and just change the DSN to get it to work with MySQL.

All basic types like string, int, timestamp seem to work, I have no information yet on float and boolean and I have no hope HStore, Circle and other unsupported data type will work with MySQL. Anyway it may cover 90% of simple webstite's needs ;)

No comment yet.
Scooped by Mickael Ruau
December 28, 2021 1:35 AM
Scoop.it!

BigData et Hadoop au secours de téraoctets de logs inexploitables

BigData et Hadoop au secours de téraoctets de logs inexploitables | Bonnes Pratiques Web & Cloud | Scoop.it
Bien souvent, quand on parle de logs, c'est pour en déplorer l'absence. Mais imaginez à présent la situation inverse où vous auriez tellement de traces qu'au final il ne serait plus possible d'en extraire la moindre information.

Cette situation Pablo Lopez (architecte technique) l'a vécue. Et c'est au cours d'une présentation au Devoxx France 2012 qu'il nous a exposé la solution à ce raz-de-marée de traces.

Tout d'abord parlons chiffres. Les traces mentionnées ici proviennent d'un site Web marchand traitant environ 61 millions de commandes/an avec des pics d'activité montant jusqu'à 10 commandes par seconde.

Ce site représente 500 serveurs en production faisant tourner 80 applications à raison de cinq JVM par serveur en moyenne. Rajoutez par dessus jusqu'à 13 niveaux de load-balancing et vous comprendrez pourquoi il est au final quasiment impossible de suivre le parcours d'un utilisateur tout au long de sa navigation.

Trois niveaux de logs cohabitent :

les logs techniques qui regroupent les exceptions techniques, les temps de réponse par fonction, etc. ;
les logs fonctionnels qui indiquent les opérations réalisées par les utilisateurs. Exemple : l'utilisateur a finalisé une commande pour un montant de x euros :
les logs analytiques qui répondent à des problématiques telles que “Sachant que l'on a présenté à l'utilisateur la publicité P, quel a été le taux de conversion ?”.

Malheureusement avec une moyenne de sept Go par serveur et par jour on se rend compte que :

la rotation des fichiers est trop rapide et un fichier ne couvre pas plus de 30 minutes d'activité du site ;
les transferts sont fastidieux et encombrent le réseau du fait de leur taille :
l'analyse doit se faire sur des données éparpillées : pas de fil d'Ariane pour suivre un utilisateur au fur et à mesure de sa navigation.

Tous ces facteurs dégradent et retardent la prise de décision alors que parfois la situation est critique et exige une réponse immédiate.

Partant de ces constats Pablo et son équipe ont alors enclenché une vraie réflexion sur cette problématique.
No comment yet.
Scooped by Mickael Ruau
December 27, 2021 1:51 AM
Scoop.it!

Build a full-stack Jamstack Application

Tech Stack

Jamstack is unique because it allows you to integrate several technologies to create a full-stack application. You will use the following technologies to create this scrapbook:

Next.js is a React framework that extends the amazing powers of React for creating multiple page apps easily. Without using any backend frameworks like Express, you may use Next.js and its serverless functions to develop your app's frontend and backend.
Chakra-UI provides a plethora of stylish and accessible react components for styling your web application.
You'll be using Airtable as a database solution for this application. Airtable is a spreadsheet/database hybrid with a fantastic API for integrating it into your application.
Cloudinary is a cloud media management platform where you'll upload photos of your scrapbook.
Auth0 enables you to integrate a user authentication system into your app. It uses OAuth 2.0 and provides a secure OAuth layer for your app.

Auth0 and Cloudinary both offer free plans. You can create an account and use it for free to develop this application.
Mickael Ruau's insight:

Table of Contents

  • Getting Started
  • Connecting Airtable to your app
  • Integrate Airtable with Next.js Serverless functions
  • Uploading files to Cloudinary
  • Create React Context for Posts
  • Setup Authentication with Auth0
  • Next Steps
No comment yet.
Scooped by Mickael Ruau
December 26, 2021 9:16 AM
Scoop.it!

GB Studio : un créateur de jeu vidéo rétro open source pour Nintendo Game boy, disponible sur Mac, Linux et Windows

GB Studio : un créateur de jeu vidéo rétro open source pour Nintendo Game boy, disponible sur Mac, Linux et Windows | Bonnes Pratiques Web & Cloud | Scoop.it
Chris Maltby et les autres contributeurs listent plusieurs avantages pour GB Studio. Ils citent en première position sa facilité de configuration. Dans ce sens, ils annoncent que GB Studio ne requiert aucune dépendance compliquée à installer puisqu’il s’agit juste d’une seule application avec tout ce dont vous avez besoin pour commencer.

Ensuite, ils expliquent qu’en plus d’être construit pour le Web, le logiciel ne nécessite aucune connaissance en programmation, de quoi amuser plus d’un. GB Studio est livré avec un émulateur Web qui fonctionne même parfaitement sur mobile. Vous pouvez rapidement exporter vos jeux pour les jouer dans un navigateur ou même les télécharger sur Itch.io. De plus, GB Studio est aussi conçu pour les non-familiers avec la programmation informatique. Un script visuel simple signifie que vous n'avez pas besoin d'avoir déjà créé un jeu. GB Studio cache également une grande partie de la complexité liée à la création de jeux GB, vous permettant de vous concentrer sur le récit d'une belle histoire, ont expliqué Chris Maltby et ses contributeurs. Voici ci-dessous quelques autres caractéristiques de l’outil GB Studio :

il vous permet de construire vos interfaces graphiques dans n’importe quel éditeur capable de générer des fichiers PNG, tels que Photoshop, Tiled, Aseprite, etc. ;
il comporte des exemples de projet pour commencer rapidement ;
il vous donne la possibilité de créer des jeux d'aventure 2D de style JRPG de toute pièce ;
il vous permet de créer un jeu lisible au format HTML5 qui fonctionne également sur mobile et peut être déployé sur n’importe quel serveur Web ou téléchargé sur Itch.io ;
il prend en charge les modes macOS light et dark.
No comment yet.
Scooped by Mickael Ruau
December 24, 2021 2:12 AM
Scoop.it!

Awesome JAMstack

Awesome JAMstack | Bonnes Pratiques Web & Cloud | Scoop.it

 Curated list of resources: books, videos, articles, speaker decks, tools about using the Jamstack.

No comment yet.
Scooped by Mickael Ruau
December 23, 2021 5:12 AM
Scoop.it!

AFSY - Association Francophone des Utilisateurs de Symfony - calendrier de l'avent 2017 - Jour 11 - Non à la Doctrine, découvrez Pomm et (re-)découvrez PostgreSQL

AFSY - Association Francophone des Utilisateurs de Symfony - calendrier de l'avent 2017 - Jour 11 - Non à la Doctrine, découvrez Pomm et (re-)découvrez PostgreSQL | Bonnes Pratiques Web & Cloud | Scoop.it
Pomm est une alternative aux ORM. Il se définit comme un gestionnaire de modèle objet. La principale ligne de conduite du projet est d'être la moins intrusive possible et la plus simple. Ainsi, vous l'oublierez rapidement pour vous concentrer sur PostgreSQL. Pomm vous permettra de reprendre le contrôle de votre SGBDR et de comprendre ce qu'il s'y passe afin de gagner en performance et bien plus.
Mickael Ruau's insight:

Sommaire :

No comment yet.
Scooped by Mickael Ruau
December 22, 2021 6:17 AM
Scoop.it!

9 Best eCommerce Solutions for Jamstack Websites

Most likely candidates to use Jamstack for their eCommerce?

Brands that have anything between a few hundred to two thousand pages and brands with products that don’t need to be updated regularly. Only when the stock or the product’s prices change.
No comment yet.