Repository with sources and generator of https://larlet.fr/david/ https://larlet.fr/david/
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234
  1. <!doctype html>
  2. <html lang=fr>
  3. <head>
  4. <!-- Always define the charset before the title -->
  5. <meta charset=utf-8>
  6. <title>À la recherche du site parfait — Biologeek — David Larlet</title>
  7. <!-- Define a viewport to mobile devices to use - telling the browser to assume that the page is as wide as the device (width=device-width) and setting the initial page zoom level to be 1 (initial-scale=1.0) -->
  8. <meta name="viewport" content="width=device-width, initial-scale=1"/>
  9. <!-- Fake favicon, to avoid extra request to the server -->
  10. <link rel="icon" href="data:;base64,iVBORw0KGgo=">
  11. <link type="application/atom+xml" rel="alternate" title="Feed" href="/david/log/" />
  12. <link rel="manifest" href="/manifest.json">
  13. <link rel="stylesheet" href="/static/david/css/larlet-david-_J6Rv.css" data-instant-track />
  14. <noscript>
  15. <style type="text/css">
  16. /* Otherwise fonts are loaded by JS for faster initial rendering. See scripts at the bottom. */
  17. body {
  18. font-family: 'EquityTextB', serif;
  19. }
  20. h1, h2, h3, h4, h5, h6, time, nav a, nav a:link, nav a:visited {
  21. font-family: 'EquityCapsB', sans-serif;
  22. font-variant: normal;
  23. }
  24. </style>
  25. </noscript>
  26. <!-- Canonical URL for SEO purposes -->
  27. <link rel="canonical" href="https://larlet.fr/david/biologeek/archives/20060704-a-la-recherche-du-site-parfait">
  28. </head>
  29. <body>
  30. <div>
  31. <header>
  32. <nav>
  33. <p>
  34. <small>
  35. Je suis <a href="/david/" title="Profil public">David Larlet</a>, <a href="/david/pro/" title="Activité professionnelle">artisan</a> du web qui vous <a href="/david/pro/accompagnement/" title="Activité d’accompagnement">accompagne</a><span class="more-infos"> dans l’acquisition de savoirs pour concevoir des <a href="/david/pro/produits-essentiels/" title="Qu’est-ce qu’un produit essentiel ?">produits essentiels</a></span>. <span class="more-more-infos">Discutons ensemble d’une <a href="/david/pro/devis/" title="En savoir plus">non-demande de devis</a>.</span> Je partage ici mes <a href="/david/blog/" title="Expériences bienveillantes">réflexions</a> et <a href="/david/correspondances/2017/" title="Lettres hebdomadaires">correspondances</a>.
  36. </small>
  37. </p>
  38. </nav>
  39. </header>
  40. <section>
  41. <h1 property="schema:name">À la recherche du site parfait</h1>
  42. <article typeof="schema:BlogPosting">
  43. <div property="schema:articleBody">
  44. <img src="/static/david/biologeek/images/logos/site_parfait.png" alt="vignette" style="float:left; margin: 0.5em 1em;" property="schema:thumbnailUrl" />
  45. <p>Comme <a href="https://larlet.fr/david/biologeek/archives/20060527-il-va-y-avoir-du-changement/">vous le savez</a>, je suis en pleine réflexion sur l'avenir de ce site. Au risque de spoiler un peu la suite, j'aimerais avoir votre avis sur quelques points car après tout <strong>vous</strong> êtes les principaux intéressés non&nbsp;? ;-)</p>
  46. <p>L'utilisation de <a href="http://www.djangoproject.com/">Django</a> en guise de moteur modifie complètement ma conception de création d'un site en séparant distinctement les trois parties principales que sont&nbsp;: le modèle des données, les vues permettant d'y accéder et les templates mettant tout ça en forme.</p>
  47. <h2>Modèle de données</h2>
  48. <p>Commençons par le principal, le contenu.</p>
  49. <p>Je suis assez frustré avec Dotclear depuis pas mal de temps car j'aimerais disposer de billets longs (articles) et de billets cours (brèves). Je sais bien que c'est possible avec cet outil mais ça demande pas mal de bidouilles. Et les bidouilles, il faut généralement les réitérer à chaque mise à jour ce qui peut s'avérer délicat (et long !) lorsqu'elles deviennent un peu trop importantes.</p>
  50. <p>Avec Django c'est très simple à faire, il suffit de deux classes (bon malheureusement pour l'instant on ne peut pas utiliser l'héritage ce qui serait bien-pratique-mais-en-développement). Les articles seront assez semblables aux billets actuels et les brèves comporteront une majorité de liens avec quelques commentaires associés (une sorte de blogroll enrichie avec commentaires possibles pour parler le blogueur).</p>
  51. <p>Enfin, les articles seront regroupés par tags avec une catégorie principale qui nous sera utile par la suite. Pour les brèves, je pense qu'il est inutile de les classer. Je veux aussi avoir la possibilité de créer une arborescence avec mes tags.</p>
  52. <p>Ok, donc maintenant qu'on a la trame, passons à l'accès aux données.</p>
  53. <h2>Vues et URLs</h2>
  54. <p>C'est la partie encore indécise, partant du principe que les articles sont quasi-intemporels (contrairement aux brèves), j'ai pensé qu'il serait plus significatifs de placer dans l'URL la catégorie principale de l'article. On aurait ainsi&nbsp;:</p>
  55. <pre> /Logiciels-libres/Ubuntu/comment-casser-xorg</pre>
  56. <p>Ce qui permettrait d'accéder directement ensuite à la catégorie concernée (Ubuntu), voire à son parent (Logiciels libres). En revanche au niveau des brèves, ce serait plutôt&nbsp;:</p>
  57. <pre> /2006/07/04/les-designs-gris-ont-la-cote</pre>
  58. <p>Ce qui permettrait d'accéder aux archives de la même manière. Les archives devront regrouper les articles et les brèves donc je ne sais pas encore si je vais conserver le jour dans l'URL étant donné que je poste moins d'un article par jour.</p>
  59. <p>Mais pourquoi ne pas avoir fait comme tout le monde une arborescence qui commence par <q>/archives</q>, <q>/post</q> et <q>/breve</q>&nbsp;? Tout simplement car c'est à mon avis inutile (surtout en termes de référencement) et que Django me permet de m'en passer assez facilement.</p>
  60. <h2>Template et design</h2>
  61. <p>J'ai beaucoup d'idées, surtout en termes d'ergonomie et pas mal d'inspiration à force de parcourir les sites de pointures du web design mais rien n'est encore définitif. A priori, le site sera scindé en deux colonnes principales consacrées aux articles à gauche et aux brèves à droite (pas vraiment original mais bon quand c'est bien... c'est bien). En ce moment j'hésite beaucoup entre un fond clair ou un fond foncé. Le foncé était plutôt à la baisse ces dernières années mais j'ai l'impression qu'il revient en force en ce moment (dans la palette des gris notamment). L'idéal étant peut-être d'alterner les deux&nbsp;? de proposer les deux fonds&nbsp;? J'aimerais avoir votre avis là-dessus.</p>
  62. <p>Voila où j'en suis dans la refonte, lorsque j'aurais terminé je détaillerais beaucoup plus le code qui m'aura permis d'arriver au résultat. Le <a href="https://larlet.fr/david/biologeek/archives/20060617-traduction-francaise-de-la-documentation-de-django-le-framework-web-python/">tutoriel sur Django</a> étant très bien pour comprendre comment ça marche mais de reflétant pas vraiment la complexité de création d'un véritable site.</p>
  63. </div>
  64. </article>
  65. <footer>
  66. <h6 property="schema:datePublished">— 04/07/2006</h6>
  67. </footer>
  68. </section>
  69. <section>
  70. <div>
  71. <h3>Articles peut-être en rapport</h3>
  72. <ul>
  73. <li><a href="/david/biologeek/archives/20080423-biologeek-enfin-propulse-par-django/" title="Accès à Biologeek (enfin) propulsé par Django">Biologeek (enfin) propulsé par Django</a></li>
  74. <li><a href="/david/biologeek/archives/20070623-ajout-des-flux-rss-du-sitemap-et-des-commentaires-avec-django/" title="Accès à Ajout des flux RSS, du sitemap et des commentaires avec Django">Ajout des flux RSS, du sitemap et des commentaires avec Django</a></li>
  75. <li><a href="/david/biologeek/archives/20070523-de-dotclear-a-django-migration-des-donnees-et-redirections/" title="Accès à De Dotclear à Django : migration des données et redirections">De Dotclear à Django : migration des données et redirections</a></li>
  76. </ul>
  77. </div>
  78. </section>
  79. <section>
  80. <div id="comments">
  81. <h3>Commentaires</h3>
  82. <div class="comment" typeof="schema:UserComments">
  83. <p class="comment-meta">
  84. <span class="comment-author" property="schema:creator">pouype</span> le <span class="comment-date" property="schema:commentTime">04/07/2006</span> :
  85. </p>
  86. <div class="comment-content" property="schema:commentText">
  87. <p>Pour ce qui est du fond, bien souvent on a la possibilité de &quot;choisir&quot; un thème d'affichage, alors pourquoi pas proposer deux type d'affichage ? ;-)</p>
  88. </div>
  89. </div>
  90. <div class="comment" typeof="schema:UserComments">
  91. <p class="comment-meta">
  92. <span class="comment-author" property="schema:creator">David, biologeek</span> le <span class="comment-date" property="schema:commentTime">04/07/2006</span> :
  93. </p>
  94. <div class="comment-content" property="schema:commentText">
  95. <p>C'est ce que j'entendais par « de proposer les deux fonds » mais bon c'est le double de boulot :)</p>
  96. </div>
  97. </div>
  98. <div class="comment" typeof="schema:UserComments">
  99. <p class="comment-meta">
  100. <span class="comment-author" property="schema:creator">Tam</span> le <span class="comment-date" property="schema:commentTime">04/07/2006</span> :
  101. </p>
  102. <div class="comment-content" property="schema:commentText">
  103. <p>Je vote pour clair !!! J'aime pas trop les fonds foncés, ça me met de mauvaise humeur... mais bon c'est personnel hein !<br />
  104. Sinon je trouve que c'est une bonne idée les articles et les brèves... les URL me semblent assez bien aussi...<br />
  105. Bref pas d'autre commentaire :)</p>
  106. </div>
  107. </div>
  108. <div class="comment" typeof="schema:UserComments">
  109. <p class="comment-meta">
  110. <span class="comment-author" property="schema:creator">giz404</span> le <span class="comment-date" property="schema:commentTime">04/07/2006</span> :
  111. </p>
  112. <div class="comment-content" property="schema:commentText">
  113. <p>Pour le fond, ça ne fait pas nécessairement deux fois plus de boulot, si la CSS est bien construite, il n'y a que quelques couleurs à ajuster.<br />
  114. <br />
  115. Idéalement, utiliser une grosse CSS commune à tout le site pour le positionnement, les tailles etc. et deux petites, construites sur le même et qui gèreront uniquement les couleurs. <br />
  116. Comme ça, un petit coup de rechercher-remplacer, et tu mets à jour facilement l'une ou l'autre, et l'architecture même du site ne se gère qu'une seule fois ...</p>
  117. </div>
  118. </div>
  119. <div class="comment" typeof="schema:UserComments">
  120. <p class="comment-meta">
  121. <span class="comment-author" property="schema:creator">lordphoenix</span> le <span class="comment-date" property="schema:commentTime">04/07/2006</span> :
  122. </p>
  123. <div class="comment-content" property="schema:commentText">
  124. <p>Pourquoi ne jéterais tu pas un oeil du coté de Wordpress car en plus de la publication de billet il permet de faire des pages supplémentaires à coté.<br />
  125. Par contre elles échappent totalement à la chronologie du blog a toi de voir si c'est un problème. Cela t'éviterait en plus de redévelopper quelque chose qu existe déjà.<br />
  126. Si tu veux un exemple vas voir les pages supplémentaires de mon blog accessible par le menu en haut à gauche. De plus dans la dernière version il y a un mécanisme antispam assez performant.<br />
  127. Et tu as même un site pour les utilisateurs francophone maintenant :<br />
  128. <a href="http://www.wordpress-fr.net" title="http://www.wordpress-fr.net" rel="nofollow">www.wordpress-fr.net</a></p>
  129. </div>
  130. </div>
  131. <div class="comment" typeof="schema:UserComments">
  132. <p class="comment-meta">
  133. <span class="comment-author" property="schema:creator">David, biologeek</span> le <span class="comment-date" property="schema:commentTime">04/07/2006</span> :
  134. </p>
  135. <div class="comment-content" property="schema:commentText">
  136. <p>@giz404 : oui je sais bien :)<br />
  137. <br />
  138. @lordphoenix : en effet, je vais voir ce qui se fait avec Wordpress, ça faisait un moment que je ne m'y étais pas intéressé et ça a bien évolué ! Bon l'intérêt c'était aussi de tester Django en production, des fois redévelopper quelquechose permet de mieux maîtriser son sujet.</p>
  139. </div>
  140. </div>
  141. <div class="comment" typeof="schema:UserComments">
  142. <p class="comment-meta">
  143. <span class="comment-author" property="schema:creator">GandalfoS</span> le <span class="comment-date" property="schema:commentTime">04/07/2006</span> :
  144. </p>
  145. <div class="comment-content" property="schema:commentText">
  146. <p>Et pourquoi pas tout faire toi même plutôt que d'utiliser des machines à tout faire ...?</p>
  147. </div>
  148. </div>
  149. <div class="comment" typeof="schema:UserComments">
  150. <p class="comment-meta">
  151. <span class="comment-author" property="schema:creator">xave</span> le <span class="comment-date" property="schema:commentTime">05/07/2006</span> :
  152. </p>
  153. <div class="comment-content" property="schema:commentText">
  154. <p>Je ne cherche à garder personne dans le giron de notre religion, mais je tenais quand même à signaler qu'un système de brèves dans Dotclear est tout à fait faisable directement dans le thème, pas de hacks, pas de problème de mise-à-jour. Voilà, c'était juste pour ne pas laisser trainer un contre-vérité. :)</p>
  155. </div>
  156. </div>
  157. <div class="comment" typeof="schema:UserComments">
  158. <p class="comment-meta">
  159. <span class="comment-author" property="schema:creator">David, biologeek</span> le <span class="comment-date" property="schema:commentTime">05/07/2006</span> :
  160. </p>
  161. <div class="comment-content" property="schema:commentText">
  162. <p>@GandalfoS : réinventer la roue vaut parfois le coup mais là j'ai pas non plus tout l'été pour faire ce site, il faut bien gagner sa croûte ;)<br />
  163. <br />
  164. @xave : j'ai bien vu (et admiré !) le boulot fait pour embruns : <a href="http://embruns.xave.org/" title="http://embruns.xave.org/" rel="nofollow">embruns.xave.org/</a> (d'ailleurs tu avoues toi-même que c'était pas simple non ?)<br />
  165. <br />
  166. Mais ce changement de « religion » est plus une somme de petites frustrations accompagnées de désaccords avec les développeurs. Je ne veux pas m'étendre davantage là-dessus, Dotclear est un formidable outil qui m'a servi pendant de nombreuses années et qui restera de toute façon utilisé ici.</p>
  167. </div>
  168. </div>
  169. <div class="comment" typeof="schema:UserComments">
  170. <p class="comment-meta">
  171. <span class="comment-author" property="schema:creator">NiCoS</span> le <span class="comment-date" property="schema:commentTime">07/07/2006</span> :
  172. </p>
  173. <div class="comment-content" property="schema:commentText">
  174. <p>Ton descriptif me fait furieusement pensé à SPIP ( <a href="http://www.spip.net/fr" title="http://www.spip.net/fr" rel="nofollow">www.spip.net/fr</a> ) sorti il y a peu en version 1.9 et qui contient par défaut la notion de brève ou article et un mécanisme d'urls propres telles que tu les cites...<br />
  175. <br />
  176. Mes 2 cents...</p>
  177. </div>
  178. </div>
  179. <div class="comment" typeof="schema:UserComments">
  180. <p class="comment-meta">
  181. <span class="comment-author" property="schema:creator"> experts CMS spip</span> le <span class="comment-date" property="schema:commentTime">14/12/2010</span> :
  182. </p>
  183. <div class="comment-content" property="schema:commentText">
  184. <p>Personnellement, je proposerais comme argument de poids, la faible consommation de bande passante, la totale modulabilité/adaptabilité de Spip. </p>
  185. </div>
  186. </div>
  187. </div>
  188. </section>
  189. <footer>
  190. <nav>
  191. <p>
  192. <small>
  193. Je réponds quasiment toujours aux <a href="m&#x61;ilto:d&#x61;vid%40l&#x61;rlet&#46;fr" title="Envoyer un email">emails</a> (<a href="/david/signature/" title="Ma signature actuelle avec possibilité de chiffrement">signés</a>) et vous pouvez me rencontrer à Montréal. <span class="more-infos">N’hésitez pas à <a href="/david/log/" title="Être tenu informé des mises à jour">vous abonner</a> pour être tenu informé des publications récentes.</span>
  194. </small>
  195. </p>
  196. </nav>
  197. </footer>
  198. </div>
  199. <script src="/static/david/js/larlet-david-3ee43f.js" data-no-instant></script>
  200. <script data-no-instant>InstantClick.init()</script>
  201. </body>
  202. </html>