Ethereum pour les développeurs Web2 – Ce qu’il faut savoir

Daniel KambaleDaniel Kambale
4 min read

Web2 → Web3 : une nouvelle manière de penser le développement

Imagine un développeur Web2 classique – appelons-le Jean. Jean est à l’aise avec JavaScript, les API REST, les bases de données comme MySQL, et déploie des apps sur Firebase ou Vercel.

Puis, un jour, Jean entend parler de Web3.

“Des contrats intelligents ? Une blockchain publique ? Des transactions qui coûte du gas ? Quoi ?”

Si tu es comme Jean (ou Jeanette), ce guide est pour toi. On va faire le pont entre ton univers Web2 et l’univers Web3 avec Ethereum-style.

⬆️ Si tu n’as pas encore lu les articles précédents, fais-toi une faveur : commence par Pourquoi Ethereum et pas seulement Bitcoin ? et Comprendre les comptes externes vs contrats intelligents.

1. La principale différence ? L’ÉTAT est sur la BLOCKCHAIN

Dans Web2 :

  • Tu stockes l’état de ton app sur un serveur ou une base de données.

  • Tu peux modifier les données comme tu veux.

Dans Web3 :

  • L’état est sur Ethereum.

  • Chaque modification est une transaction enregistrée publiquement, avec un coût (gas).

  • Pas de base de données centralisée. Le contrat est la logique et la base de données.

⚡ Exemple : créer un utilisateur Web2 = POST /user avec un body JSON.
Créer un utilisateur Web3 = appeler une fonction "createUser" sur un contrat intelligent à travers une transaction Ethereum.

2. Tu codes en Solidity, pas en JS (mais JS reste là)

Les contrats intelligents sont écrits en Solidity, un langage inspiré de JavaScript/C++.

Exemple simple de contrat en Solidity

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract BonjourWeb3 {
    string public message = "Salut les devs Web2!";

    function updateMessage(string memory _newMessage) public {
        message = _newMessage;
    }
}

Ce contrat permet de stocker et mettre à jour un message. L’état (le message) est public et visible sur la blockchain. Pas besoin d’API, ni de base de données externe.

3. Frontend : React, toujours, mais avec Ethers.js/Web3.js

Tu continueras probablement à coder en React.js, mais tu devras apprendre à interagir avec Ethereum via des bibliothèques comme Ethers.js ou Web3.js.

Exemple avec Ethers.js

import { ethers } from "ethers";

const provider = new ethers.BrowserProvider(window.ethereum);
const signer = await provider.getSigner();

const contractAddress = "0x...";
const abi = ["function updateMessage(string _newMessage)"];

const contract = new ethers.Contract(contractAddress, abi, signer);
await contract.updateMessage("Hello Web3");

Ici, tu envoies une transaction qui met à jour le message dans le contrat. Chaque interaction peut coûter du gas (fais gaffe !).

4. Backend ? Optionnel, ou différent

Tu peux utiliser un backend pour :

  • Sauvegarder des métadonnées (NFT, users, stats)

  • Gérer des features off-chain (emails, notifs)

  • Agir comme "relayer" (envoyer des txs pour les utilisateurs)

Mais l’idéal en Web3 est d’avoir un frontend qui parle directement à la blockchain, sans serveur.

Tu peux utiliser des services comme Infura, Alchemy ou un propre nœud Ethereum.


5. Pas de login avec email / password

Forget that. Welcome to Sign in with Ethereum.

Les utilisateurs signent un message avec leur wallet (MetaMask, WalletConnect, etc.). Tu vérifie ensuite leur identité via leur adresse publique.

C’est plus secure. Pas de mot de passe à voler. Pas de base de données à hacker.

6. Tout est transparent – même tes bugs

Ton contrat déployé est public à jamais. Si tu fais une erreur, elle sera visible et souvent irréversible.

Donc :

  • Teste bien avec Hardhat (ou Foundry)

  • Sois paranoïaque

  • Utilise des librairies comme OpenZeppelin pour sécuriser ton code

7. Culture Dev : transparence, communauté, open-source

Les devs Web3 sont obsédés par :

  • L’open-source (GitHub est roi)

  • Le verifiable code (les gens peuvent vérifier ton contrat sur Etherscan)

  • Les standards (ERC-20, ERC-721, etc.)

  • Le composability (ton contrat peut être utilisé par d’autres devs)

C’est un shift culturel à ne pas sous-estimer.

🌐 Prochain étape : Installer Hardhat et créer ton premier projet

Tu veux passer à la pratique ? Le prochain article te montre à installer Hardhat, le framework de dév Ethereum, et créer ton premier projet smart contract.

🔗 Installer Hardhat et créer son premier projet

✨ Récapitulatif de la série

Section 1 : Introduction à Ethereum

  • Pourquoi Ethereum et pas seulement Bitcoin ? ✅

  • Comprendre les comptes externes vs contrats intelligents ✅

  • Ethereum pour les développeurs Web2 – Ce qu’il faut savoir ✅

  • Installer Hardhat et créer son premier projet ⏳

💬 Appel à l’action

Et toi, tu viens de Web2 ? Qu’est-ce qui t’a le plus surpris dans Web3 ? Est-ce que ce nouveau paradigme te motive ? Te fait peur ? Intrigue ?

Viens en discuter avec nous sur Twitter : @DeWeb2aWeb3

Et surtout, partage cet article, tag ton pote développeur JS, et dis-nous ce que tu veux apprendre dans les prochains articles.

💪 Ensemble, on construit la francophonie Web3 !

56
Subscribe to my newsletter

Read articles from Daniel Kambale directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Daniel Kambale
Daniel Kambale

Hello! I’m Daniel, a Web3 developer specializing in Solidity and smart contract development. My journey in the blockchain space is driven by a vision of a fully decentralized world, where technology empowers individuals and transforms industries. As a Web3 ambassador , I’m committed to fostering growth and innovation in this space, helping to shape a future that values transparency and security. Fluent in both English and French, I enjoy connecting with diverse communities and sharing my insights across languages. This is why you’ll find some of my articles in French, while others are in Swahili, as I believe knowledge should be accessible to all. I use my Hashnode blog to document my learning process, explore decentralized solutions, and share practical tutorials on Web3 development. Whether it's diving deep into Solidity, discussing the latest in blockchain, or exploring new tools, I’m passionate about contributing to a decentralized future and connecting with others who share this vision. Let’s build the future together!