En tant que développeur, c’est un exercice relativement standard. Tout le monde peut imaginer quels sont les fonctionnalités d’un blog, mais qu’en est-il de tout mettre en oeuvre, de la 1er ligne de code à la mise en ligne ? J’ai déjà un blog, mais Japandoudou.com ne représente que mon identité de développeur de jeu vidéo amateur, et non ma présence professionnelle.

Un blog est une plateforme en ligne qui offre plusieurs fonctionnalités pour partager des articles enrichissants et interagir avec les lecteurs. Parmi ces fonctionnalités essentielles, on retrouve la possibilité de rédiger des articles (surprenant non ?) et de les organiser en utilisant des tags de manière à faciliter la recherche et le filtrage par thèmes. De plus, les lecteurs peuvent laisser des commentaires pour engager des discussions qui je l’espére seront captivantes !

En plus de ces fonctionnalités courantes, le blog pourra également offrir des spécificités qui le distinguent. Par exemple, une section « Projets » permet de présenter mon portfolio de réalisations, mettant en avant des travaux, des créations ou des réalisations passées. Cela offre aux visiteurs une opportunité unique d’explorer mon parcours professionnel et de découvrir mes compétences dans différents domaines. Ces projets seront organisés par ordre chronologique : une timeline de mes réalisations ! Et cela sera filtrable par compétence.

Une autre spécificité intéressante est la section « Compétences » qui propose des icônes représentatives des … compétences clés, mais aussi des technologies employées. Ces icônes permettent aux visiteurs de filtrer les projets en fonction de leurs propres intérêts et de se focaliser sur les réalisations qui correspondent à leurs besoins spécifiques. Je voulais une représentation en icônes car elles sont souvent représentées par une marque. Symfony, Docker, Jira, ils ont tous une identité propre.

Enfin, un blog peut également inclure une rubrique de contact pour faciliter les échanges et les requêtes de la part des visiteurs. Cela permet à vos lecteurs de vous contacter directement et de partager leurs commentaires, questions ou opportunités de collaboration. Je n’expose jamais mon E-mail, cela créera donc une requête dans le back-office.

Bien sur le tout sera administrable, et donc un back-office sera mis à disposition avec une connection par email et mot de pass, avec la possibilité de changer son mot de pass si on l’oublie.

Le choix des technologies sera le suivant :

  • PHP8.2 pour le langage serveur (dernière version de php) afin d’utiliser ses dernières spécificités
  • Mysql pour la base de donnée
  • Le framework Symfony en version 6.3 (la dernière) pour développeur la plateforme
  • Front en :
    • Javascript
    • html
    • css
    • Dans le templating twig de Symfony
  • Le tout dockerisé afin de faciliter son déploiement et son développement lorsque je change de PC, ou pour partager le projet gratuitement.
  • Et le tout en mode « Professionnel » comme si un client me payait pour, avec donc une traçabilité, et la mise d’une CI / CD afin de développer mes compétences de dev ops.

La CI/CD, ou Intégration Continue et Livraison Continue, est une approche de développement logiciel qui vise à automatiser le processus de construction, de test et de déploiement d’une application. En utilisant cette approche, les développeurs peuvent travailler de manière plus collaborative et itérative, en intégrant fréquemment leurs modifications de code dans le projet global.

La CI/CD repose sur l’utilisation d’un ensemble d’outils et de technologies qui permettent d’automatiser chaque étape du cycle de vie d’une application, depuis le moment où le code est écrit jusqu’à son déploiement sur les serveurs de production. L’intégration continue consiste à construire et à tester automatiquement les modifications de code dès qu’elles sont intégrées au code source principal. Cela garantit que les problèmes sont détectés rapidement et que l’application reste stable et fonctionnelle en permanence.

La livraison continue, quant à elle, consiste à automatiser le déploiement des nouvelles versions de l’application sur les serveurs de production. Cela permet de réduire les erreurs humaines, d’accélérer le processus de déploiement et de garantir des mises à jour régulières et fiables.

En résumé, la CI/CD est une méthode qui permet d’automatiser et de simplifier le processus de développement et de déploiement d’une application, en garantissant une gestion efficace des changements et une amélioration continue de la qualité. C’est un élément essentiel d’une pratique de développement moderne et agile, auquel je compte me familiariser.

En résumé, un blog est bien plus qu’un simple espace d’écriture en ligne. C’est une plateforme dynamique qui m’offre la possibilité de partager mes idées, mes choix, de susciter des discussions et de mettre en valeur mes compétences et réalisations. C’est aussi un exercice important dans la vie d’un développeur afin de se montrer que l’on maîtrise des compétences parfois jamais pratiquées au quotidien. Que vous soyez un développeur, un passionné d’art ou un expert dans un domaine spécifique, un blog est un outil puissant pour vous connecter avec votre public et créer une présence en ligne authentique. J’espère que la mienne sera vraiment singulière !

Mon future blog professionnel

Laisser un commentaire