1 points par GN⁺ 2025-03-17 | 1 commentaires | Partager sur WhatsApp

Cette fois où j’ai recréé Photoshop en C++

  • Contexte du projet

    • À l’été 2006, après avoir terminé un cursus sur le C++ et l’API Windows, l’auteur a commencé à développer une application de lecture de mangas utilisable uniquement à la souris. Cette application s’appelait Fiew.
    • À l’automne, il fallait choisir un sujet de mémoire, et fort du succès du développement de Fiew, il a décidé de créer un éditeur d’images. L’objectif était d’implémenter des fonctionnalités similaires à celles d’Adobe Photoshop.
  • Développement de Fedit

    • Fedit a été développé en C++, avec l’API Windows et la bibliothèque graphique GDI+.
    • Il a été conçu comme un exécutable unique ne nécessitant aucune installation, consommant peu de ressources système et pouvant être lancé directement depuis une clé USB.
    • Il reproduisait une interface similaire à celle de Photoshop et incluait des fenêtres d’outils librement déplaçables, un sélecteur de couleurs, la gestion des calques et des filtres d’image.
    • Une fonction de visualisation d’une vaste bibliothèque d’images, reprise de Fiew, y a également été ajoutée.
  • Défis et réussites du développement

    • Le développement a rencontré de nombreux problèmes, mais ils ont été résolus par l’auteur lui-même grâce à l’analyse et au débogage.
    • L’implémentation de l’interface utilisateur a été la partie la plus difficile, et il s’est efforcé de reproduire un workflow proche de celui de Photoshop.
    • Au final, le mémoire a été soutenu avec succès et Fedit a reçu des retours positifs en ligne.
  • Résultats et suite de carrière

    • Grâce au succès de Fedit et Fiew, l’auteur a travaillé chez GoldenLine comme développeur C++, où il a été chargé de développer une application WinAPI gérant des téléversements massifs d’images.
    • Le code source de Fedit et Fiew est disponible sur GitHub, et le document du mémoire est proposé au format PDF.
  • Parcours du développeur

    • L’auteur a obtenu en 2008 un master en informatique à l’Oxford University Computing Laboratory et a depuis participé à divers projets.

1 commentaires

 
GN⁺ 2025-03-17
Commentaires sur Hacker News
  • Lire la phrase « suit cinq règles : un seul exécutable, sans installateur, archive, clé de registre ni runtime supplémentaire » m’a donné une sensation chaleureuse et heureuse
    • Je comprends la raison d’être du registre et la façon dont fonctionne l’écosystème logiciel Windows actuel, mais l’époque où les logiciels de bureau étaient ainsi me manque
    • De nos jours, j’essaie d’utiliser des installations portables quand c’est possible, mais j’aimerais que ce soit plus courant
    • Je finis par éviter de réinstaller Windows à cause du temps, des désagréments et de l’incertitude quant à la possibilité de restaurer entièrement tous les réglages
  • Photoshop a énormément de fonctionnalités, mais quelques filtres d’image ne sont pas considérés comme une réinvention
  • Voici un lien direct vers ce superbe programme : fedit-image-editor
  • « Mais je n’en ai pas fait la promotion. Quelques mois plus tard, j’ai obtenu un emploi en C++. Finalement, tous mes efforts ont porté leurs fruits »
    • On sait instinctivement que nos efforts devraient être récompensés, mais c’est regrettable de voir que les développeurs open source investissent souvent beaucoup d’efforts dans leur code sans être récompensés
    • Cela explique pourquoi ils cherchent de la reconnaissance, pourquoi NPM a ajouté une fonctionnalité du type « vous devriez peut-être faire un don à l’auteur de cette bibliothèque », et pourquoi GitHub a mis en place Patreon
    • Il faut un meilleur modèle qui n’exploite pas de jeunes penseurs naïfs mais travailleurs
  • Il y avait au début des années 2000 un projet appelé « pixel32 », ensuite renommé « Pixel Studio Pro »
    • Il a été vendu en accès anticipé, mais c’est devenu un vaporware ; les personnes qui avaient payé étaient très en colère, et son créateur est rapidement passé du statut de héros à celui de méchant
    • Lien connexe sur Pixel Studio Pro
  • Il arrive que des gens ne fassent pas connaître ce qu’ils ont créé
    • Je suis heureux que ce soit sur GitHub, et c’est très impressionnant
  • Question : est-ce que ça plantait toutes les 30 minutes ?
    • Si non, je me demande combien ils le vendent
  • Je recommande de jeter un œil à Photopea
    • Je l’utilise tous les jours, et la personne qui l’a créé est formidable
  • L’auteur de l’article dit être diplômé de l’Université de technologie de Varsovie
    • Elle a toujours été considérée comme l’une des meilleures universités du pays
    • J’ai récemment rédigé un mémoire dans une autre université technologique d’une grande ville, et 90 % des mémoires d’ingénierie étaient d’une qualité très médiocre
  • Fonctionne bien sous Wine