• [^] # Re: ... et pas qu'un ...

    Posté par (site web personnel) . En réponse au journal Du développement full-stack en Java. Évalué à -4.

    Alors, je ne suis pas sûr que tu apprécies des masses ce message mais ça fait plusieurs fois que ce que tu dis me choque un peu. Et comme tu en remets une couche régulièrement, je vais me permettre.

    Oh, ne t'en fait pas. Je suis habitué à ce genre de message. Il n'y a qu'à voir les commentaires en réponses aux journaux dont j'ai donné la liste dans mon précédent commentaire. Beaucoup ont essayé de me convaincre, avec des arguments à l'emporte-pièce, que je faisais fausse route, sans jamais réussir à étayer leurs affirmations avec des éléments concrets. On va voir si ça va être différent cette fois-ci...

    Or, les SSII (pardon, les ESN) ne veulent pas de moi, à cause de mon profil atypique (C++, ce n'est pas ce qu'il y a de plus populaire et, en plus, j'utilise mes propres bibliothèques, et pas celle fournies en standard), bien qu'ils reconnaissent que j'ai une approche qui me permettent d'être bien plus polyvalent que la majorité des développeurs.

    Ben oui, c'est un problème de ne vouloir utiliser que ses propres bibliothèques plutôt que ce qui est universellement reconnu comme standard. C'est contre productif et je ne pense pas que cela t'aide à progresser non plus.

    OK, c'est un problème d'utiliser mes propres bibliothèques plutôt que celles standards. C'est bien ce que j'explique dans mon commentaire. Par contre, vu mon historique par rapport au C++, que je détaille dans ce commentaire, je ne vois pas en quoi c'est contre productif et que cela ne m'aide pas à progresser...

    Et je ne pense pas que ce soit ce qu'on peut appeler être polyvalent...

    Ce que j'appelle être polyvalent, c'est être en mesure de développer n'importe quel type d'application. Et je pense qu'on est plus efficace si l'on utilise toujours le même langage quelque soit le type d'application, plutôt que d'avoir à jongler entre plusieurs langages selon le type d'applications à développer... On maîtrise plus facilement un langage seul que plusieurs...

    C'est aussi un problème de vouloir utiliser un marteau (le C++) pour visser (faire du web). Il y a un moment, il faut savoir choisir un outil adéquat. D'autant qu'entre PHP, Ruby, Python, NodeJS, Java... il y a quand même un sacré choix de composants pour faire du web avec énormément de saveurs différentes. Alors, oui, je suis sûr qu'on peut trouver des frameworks C++ pour faire du web mais cela reste hyper confidentiel et mon humble avis est que ce n'est pas hyper adapté.

    Les outils C++ existants ne sont en effet guère adaptés pour faire du développement web. Mais cela ne signifie pas que le C++ lui-même n'est guère adapté pour faire du web. D'ailleurs, la bibliothèque que j'ai développé, moi, je la trouve parfaitement adaptée au web. Bien plus que celles qu'on trouve (et qui sont d'ailleurs plus souvent des frameworks) pour, je cite, PHP, Ruby, Python, NodeJS, Java... Et question diversité, on repassera. Avec ces langages, soit on fait du web à l'ancienne, du type CGI, soit on est obligé de se coltiner du JavaScript pour le front-end ou un des ces encombrants frameworks MVC. Il y en a qui trouve ça adapté, mais, désolé, je ne suis pas de cette avis. Et je ne suis pas le seul...

    Un autre souci, c'est que, même si tes technologies sont libres, tu ne libères pas tes clients mais tu les enfermes car personne d'autre que toi ne les maîtrise. Et vu la manière dont elles sont conçues, je ne pense pas que cela change ni que ce soit un problème de communication seulement.

    Tes arguments sont applicables à toute technologie naissante, y compris tous les langages que tu as cités précédemment. À leur lancement, peu de personnes les maîtrisaient. Si leurs concepteurs s'étaient arrêtés à des arguments comme les tiens, aucun de ces langages n'aurait percé...

    Rien que le fait que tu essaies de marier du C++ et du NodeJS, ça va faire fuir la majorité des gens : très peu de développeurs web font du C++. Et encore moins du C++ custom avec tes bibliothèques à toi. Recoupe ça avec les développeurs NodeJS et tu comptes tes potentiels utilisateurs sur les doigts de la main.

    Node.js, c'est développé en C++, donc ma bibliothèque n'est pas une union contre nature ! Et ma bibliothèque n'est qu'un module de plus parmi tout ceux que l'on trouve sur http://npmjs.com/, et elle s'utilise comme n'importe lequel de ces modules. Les utilisateurs n'ont pas plus à se préoccuper du fait qu'elle soit codée en C++ que pour n'importe lequel des modules fournis en standard avec Node.js.

    Si tu veux répondre au mieux aux besoins de tes clients, essaie d'utiliser des projets Open Source existants avec une vraie communauté : tu te concentreras sur leur besoin et ils auront une solution plus pérenne et plus de capacité à changer de presta si nécessaire. De plus, ce sera l'occasion d'apprendre plein de choses, je ne jugerai pas ton C++ vu que je n'y connais rien mais pour ce qui est du Java, il y a énormément de lacunes et pas que des lacunes dues à la méconnaissance du langage.

    Déjà, mes clients sont tout à fait satisfait de mes prestations ; ce n'est donc pas ça le problème. Surtout parce que, avec ce que je leur ai réalisé, je répondais mieux à leur besoin que ce que n'importe quel autre développeur a pu leur proposer (je sais que ça fait prétentieux, mais je ne fais que répéter ce qu'ils m'ont dit). Entre un logiciel pérenne qui ne répond pas à leurs besoins, et un autre, peut-être moins pérenne, mais qui répond parfaitement à leurs attentes, ils ont vite choisi...

    Ça fait la troisième fois (en comptant la version Node.js) qu'ont dit que mon code est nettement perfectible (ce dont j'ai parfaitement conscience, comme je l'ai à maintes fois indiqué). Je veux bien, mais est-ce que quelqu'un aurait la bonté de me montrer ne fût-ce qu'un exemple de ce qui ne va pas, et comment le corriger, histoire que j'ai l'occasion d'améliorer mon code ? Ou alors je vais finir pas penser que mon code n'est peut-être pas aussi mauvais que certains le prétendent !

    Dans une veine assez proche de ce que tu veux faire, il y a Wicket, qui est un petit projet Apache très sympa dont les principes sont assez simples et qui est très bien conçu. Ca et du Spring Boot et tu auras quelque chose de plus attrayant.

    Possible, mais j'aimerais savoir en quoi c'est plus attrayant. Et, pour aussi attrayant que ce soit, ça n'a pas l'air d'être beaucoup utilisé (comparativement à d'autres solutions). Donc, il est tout à fait possible que, pour certains, ma solution soit plus attrayante que la plupart de celles qui existent, y compris Wicket.

    Ca n'est évidemment que mon avis mais je pense que tu devrais t'ouvrir à d'autres choses et t'ouvrir à apprendre et à être plus flexible, plutôt que rester arquebouté sur ce que tu connais.

    À travers cette bibliothèque, et parce qu'elle est implémentée en C++, j'ai pu m'ouvrir à Java, Node.js, PHP. Et ce n'est qu'un début. Comme le C++ s'interface avec quasiment la totalité des langages existants, j'ai des perspectives d'ouverture (pour moi, et pour ma bibliothèque) quasi infinies. Alors, désolé, mais je reste à mon C++. Je ne pense pas qu'il y ai beaucoup de développeurs Java qui peuvent s'ouvrir à PHP de cette manière...

    C'est ça la polyvalence.

    Être obligé de jongler avec plusieurs langages en fonction du type d'application à développer ? Non merci, je préfère pouvoir développer tout type d'application en utilisant un seul langage ; c'est beaucoup plus efficace.

    Désolé si c'est un peu dur mais je pense que c'est important que ça te soit dit.

    Encore une fois, beaucoup d'affirmations sans aucun élément concret pour les étayer.

    Rien que pour revenir à ma bibliothèque, celle-ci étant un binding Java d'une bibliothèque C++, C++ qui n'est soit-disant pas adapté au web. Il ne devrait pas être difficile de coder l'équivalent de l'application Hello, World! présentée dans ce journal, en Java, ou d'ailleurs avec n'importe quel autre langage, en s'appuyant sur les technos existantes, et qui mette en évidence la supériorité de cette implémentation sur à celle que j'ai réalisée avec ma bibliothèque. Ça ne devrait pas prendre plus de cinq minutes, vu que mon implémentation se code en moins de temps que ça, installation comprise... Bien entendu, il faut que cette implémentation offre les mêmes possibilités d’accès aux ressources du langage sélectionné que mon implémentation. Une page web, avec du code JavaScript, ça se réalise en moins de cinq minutes, mais ça ne répond pas au cahier des charges...

    Zelbinium: pour la génération qui crée, pas celle qui scrolle...