• DELETE FROM KEYWORDS WHERE ID_DOMAINE=28430131
  • DoneDoneDone

    URL:putaindecode.io

    Connection: keep-alive
    Date: Mon, 20 Jan 2025 17:58:09 GMT
    Via: 1.1 varnish
    Content-Length: 162
    Content-Type: text/html
    Accept-Ranges: bytes
    Age: 0
    Location: https://putaindecode.io/
    Server: GitHub.com
    Vary: Accept-Encoding
    X-GitHub-Request-Id: FDFD:1B35E:73DC3D5:74F3D56:678E8EB0
    X-Served-By: cache-cdg-lfpb1150025-CDG
    X-Cache: MISS
    X-Cache-Hits: 0
    X-Timer: S1737395889.010291,VS0,VE108
    X-Fastly-Request-ID: 0573f53ca57ca81f0976a9f3b8fdde2e202516b4
    
    
    Location => https://putaindecode.io/
    Status => 301
    <html>
    <head><title>301 Moved Permanently</title></head>
    

    (vide) Tentative en https

    https://putaindecode.io/

    <!DOCTYPE html><html lang="fr"><head><title data-react-helmet="true">Putain de code</title><meta data-react-helmet="true" charset="UTF-8"/><meta data-react-helmet="true" content="width=device-width, initial-scale=1, shrink-to-fit=no, viewport-fit=cover" name="viewport"/><meta data-react-helmet="true" content="Blog participatif de la communauté dev" name="description"/><meta data-react-helmet="true" content="summary_large_image" name="twitter:card"/><meta data-react-helmet="true" content="Putain de code !" property="og:site_name"/><meta data-react-helmet="true" content="@putaindecode" name="twitter:site"/><meta data-react-helmet="true" content="Putain de code" property="og:title"/><meta data-react-helmet="true" content="Putain de code" name="twitter:title"/><meta data-react-helmet="true" content="https://putaindecode.io/public/images/website/share.jpg" property="og:image"/><meta data-react-helmet="true" content="https://putaindecode.io/public/images/website/share.jpg" name="twitter:image"/><meta data-react-helmet="true" content="1500" property="og:image:width"/><meta data-react-helmet="true" content="777" property="og:image:height"/><link data-react-helmet="true" title="RSS Feed" href="/api/articles/feeds/desc/feed.xml" rel="alternate" type="application/rss+xml"/><link data-react-helmet="true" href="/favicon.ico" rel="shortcut icon"/><link data-react-helmet="true" href="https://putaindecode.io/" rel="canonical"/><script>window.PAGES_BOOT_MODE="hydrate";</script></head><div id="root"><style data-emotion="rpcss zx73cm 1lc6tyj 28v1b4">@-webkit-keyframes animation-zx73cm{from{opacity:0;-webkit-transform:translateY(20px);-moz-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px);}}@keyframes animation-zx73cm{from{opacity:0;-webkit-transform:translateY(20px);-moz-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px);}}:root{--page-background-color:#fff;--page-slightly-accented-background-color:#F9F6F6;--page-accented-background-color:#E4EBEE;--page-text-color:#46515B;--link-text-color:#E51D58;--gradient-red-top:#E51D58;--gradient-red-bottom:#CC0613;--code-background-color:#FAF3E1;--one-percent-contrast-color:rgba(0, 0, 0, 0.1);--half-percent-contrast-color:rgba(0, 0, 0, 0.05);}@media (prefers-color-scheme: dark){:root{--page-background-color:#222;--page-slightly-accented-background-color:#171717;--page-accented-background-color:#111;--page-text-color:#ddd;--link-text-color:#F87098;--gradient-red-top:#E51D58;--gradient-red-bottom:#CC0613;--code-background-color:#4F3804;--one-percent-contrast-color:rgba(255, 255, 255, 0.1);--half-percent-contrast-color:rgba(255, 255, 255, 0.05);}}body{padding:0;margin:0;background-color:var(--page-background-color);color:var(--page-text-color);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;min-height:100vh;overflow-x:hidden;}html{font-size:1em;line-height:1.4;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;}a{color:var(--link-text-color);-webkit-text-decoration:underline;text-decoration:underline;}a:hover{-webkit-text-decoration:none;text-decoration:none;}#root{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}*,*:before,*:after{box-sizing:border-box;}pre,.hljs{color:#adbac7;background:#22272e;}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#f47067;}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#dcbdfb;}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#6cb6ff;}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#96d0ff;}.hljs-built_in,.hljs-symbol{color:#f69d50;}.hljs-comment,.hljs-code,.hljs-formula{color:#768390;}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#8ddb8c;}.hljs-subst{color:#adbac7;}.hljs-section{color:#316dca;font-weight:bold;}.hljs-bullet{color:#eac55f;}.hljs-emphasis{color:#adbac7;font-style:italic;}.hljs-strong{color:#adbac7;font-weight:bold;}.hljs-addition{color:#b4f1b4;background-color:#1b4721;}.hljs-deletion{color:#ffd8d3;background-color:#78191b;}</style><style data-emotion="rpcss 9vhaby">.rpcss-9vhaby{background-color:var(--gradient-red-bottom);background-image:linear-gradient(to bottom right, var(--gradient-red-top), var(--gradient-red-bottom));}</style><header class="rpcss-9vhaby"><style data-emotion="rpcss 1qqk0tr">.rpcss-1qqk0tr{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);}</style><div class="rpcss-1qqk0tr"><style data-emotion="rpcss qx7dny">.rpcss-qx7dny{width:100%;max-width:1024px;margin:0 auto;padding:0 10px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;}</style><div class="rpcss-qx7dny"><style data-emotion="rpcss 7s9om2">.rpcss-7s9om2{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;padding:20px 0 50px;}</style><div class="rpcss-7s9om2"><style data-emotion="rpcss gdpa5c">.rpcss-gdpa5c{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-text-decoration:none;text-decoration:none;}</style><a class="rpcss-gdpa5c" href="/"><style data-emotion="rpcss 1lm4738">.rpcss-1lm4738{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-text-decoration:none;text-decoration:none;padding-bottom:10px;}</style><div class="rpcss-1lm4738"><style data-emotion="rpcss 13o7eu2">.rpcss-13o7eu2{display:block;}</style><svg class="rpcss-13o7eu2" height="36px" width="36px" viewBox="0 0 36 36"><defs><linearGradient id="PutainDeCodeLogoGradient" x1="50%" x2="50%" y1="0%" y2="127.223881%"><stop offset="0%" stop-color="#E41D57"></stop><stop offset="100%" stop-color="#C60000"></stop></linearGradient></defs><circle cx="18" cy="18" fill="url(#PutainDeCodeLogoGradient)" r="17" stroke="#FFFFFF" stroke-width="2"></circle><polygon fill="#FFFFFF" points="15.9033203 18.2246094 15.9033203 18.3710938 11.2304688 20.5317383 11.2304688 22.8095703 18.0566406 19.184082 18.0566406 17.4116211 11.2304688 13.7788086 11.2304688 16.0639648"></polygon><rect height="14" width="2" fill="#FFFFFF" x="22" y="11"><animate attributeName="opacity" begin="100ms" calcMode="discrete" dur="2s" repeatCount="indefinite" values="1;0"></animate></rect></svg><style data-emotion="rpcss 4cf197">.rpcss-4cf197{width:10px;height:10px;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;}</style><div class="rpcss-4cf197"></div><style data-emotion="rpcss u5k24">.rpcss-u5k24{font-size:22px;color:#fff;font-weight:800;}</style><div aria-level="1" class="rpcss-u5k24" role="heading">Putain de code !</div></div><style data-emotion="rpcss 1nyebg4">.rpcss-1nyebg4{font-size:14px;color:rgba(255, 255, 255, 0.8);text-align:center;}</style><div class="rpcss-1nyebg4">Blog participatif de la communauté dev</div></a></div></div></div></header><style data-emotion="rpcss ljqwcc">.rpcss-ljqwcc{position:relative;top:-30px;}</style><div class="rpcss-ljqwcc"><div><div class="rpcss-1qqk0tr"><div class="rpcss-qx7dny"><style data-emotion="rpcss 7qxdft">.rpcss-7qxdft{display:block;position:relative;margin:10px;background-color:#F1F6FC;border-radius:14px;padding-bottom:31.25%;box-shadow:0 15px 15px -5px rgba(0, 0, 0, 0.2);-webkit-text-decoration:none;text-decoration:none;overflow:hidden;}.rpcss-7qxdft:active::before{content:"";position:absolute;pointer-events:none;top:0;left:0;right:0;bottom:0;background-color:rgba(0, 0, 0, 0.3);}@media (max-width: 720px){.rpcss-7qxdft{padding-bottom:56.25%;}}</style><a class="rpcss-7qxdft" href="/articles/le-web-merite-de-meilleures-primitives" style="background-image:linear-gradient(to bottom right, hsl(217, 100%, 35%), hsl(180, 100%, 30%))"><style data-emotion="rpcss 1e1hlv8">.rpcss-1e1hlv8{position:absolute;top:0;left:0;right:0;bottom:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}</style><div class="rpcss-1e1hlv8"><style data-emotion="rpcss 18wu0nj">.rpcss-18wu0nj{font-size:16px;color:#fff;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}</style><div class="rpcss-18wu0nj"><style data-emotion="rpcss uco8i7">.rpcss-uco8i7{width:32px;height:32px;border-radius:100%;margin-right:10px;}</style><img class="rpcss-uco8i7" alt="zoontek" src="https://avatars.githubusercontent.com/zoontek?size=64"/><div>zoontek<!-- --> <!-- -->•<!-- --> <!-- -->2021/04/12</div></div><style data-emotion="rpcss 6zb1xg">.rpcss-6zb1xg{color:#fff;font-size:32px;font-weight:800;text-align:center;padding:20px;padding-top:0;}@media (max-width: 720px){.rpcss-6zb1xg{font-size:18px;}}</style><div class="rpcss-6zb1xg">Le web mérite de meilleures primitives</div></div></a></div></div><style data-emotion="rpcss 11e144s">.rpcss-11e144s{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;position:relative;z-index:1;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;width:100%;max-width:1024px;margin:0 auto;padding-left:calc(10px + env(safe-area-inset-left));padding-right:calc(10px + env(safe-area-inset-right));padding-bottom:10px;}@media (max-width: 920px){.rpcss-11e144s{-webkit-box-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;}}</style><div class="rpcss-11e144s"><style data-emotion="rpcss 248jc4">.rpcss-248jc4{scroll-snap-align:center;-webkit-flex-basis:33.333%;-ms-flex-preferred-size:33.333%;flex-basis:33.333%;min-width:300px;padding:10px;}</style><div class="rpcss-248jc4"><style data-emotion="rpcss m8hhfy">.rpcss-m8hhfy{position:relative;display:block;overflow:hidden;background-color:#F1F6FC;border-radius:14px;padding-bottom:56.25%;box-shadow:0 15px 15px -5px rgba(0, 0, 0, 0.2);}.rpcss-m8hhfy:active::before{content:"";position:absolute;pointer-events:none;top:0;left:0;right:0;bottom:0;background-color:rgba(0, 0, 0, 0.3);}</style><a class="rpcss-m8hhfy" href="/articles/le-vrai-probleme-des-web-components" style="background-image:linear-gradient(to bottom right, hsl(316, 100%, 35%), hsl(263, 100%, 30%))"><div class="rpcss-1e1hlv8"><style data-emotion="rpcss 18ygu8q">.rpcss-18ygu8q{position:absolute;top:10px;left:10px;}</style><div class="rpcss-18ygu8q"><div class="rpcss-18wu0nj"><img class="rpcss-uco8i7" alt="bloodyowl" src="https://avatars.githubusercontent.com/bloodyowl?size=64"/><div>bloodyowl<!-- --> <!-- -->•<!-- --> <!-- -->2021/02/15</div></div></div><style data-emotion="rpcss 1dhpo20">.rpcss-1dhpo20{color:#fff;font-size:18px;font-weight:800;text-align:center;padding:20px;padding-top:30px;}</style><div class="rpcss-1dhpo20">Le vrai problème des Web Components</div></div></a></div><div class="rpcss-248jc4"><a class="rpcss-m8hhfy" href="/articles/retour-sur-plusieurs-annees-de-css-in-js" style="background-image:linear-gradient(to bottom right, hsl(148, 100%, 35%), hsl(123, 100%, 30%))"><div class="rpcss-1e1hlv8"><div class="rpcss-18ygu8q"><div class="rpcss-18wu0nj"><img class="rpcss-uco8i7" alt="bloodyowl" src="https://avatars.githubusercontent.com/bloodyowl?size=64"/><div>bloodyowl<!-- --> <!-- -->•<!-- --> <!-- -->2021/02/08</div></div></div><div class="rpcss-1dhpo20">Retour sur plusieurs années de CSS-in-JS</div></div></a></div><div class="rpcss-248jc4"><a class="rpcss-m8hhfy" href="/articles/2021-01-29-ecrivez-du-code-stupide" style="background-image:linear-gradient(to bottom right, hsl(77, 100%, 35%), hsl(64, 100%, 30%))"><div class="rpcss-1e1hlv8"><div class="rpcss-18ygu8q"><div class="rpcss-18wu0nj"><img class="rpcss-uco8i7" alt="bloodyowl" src="https://avatars.githubusercontent.com/bloodyowl?size=64"/><div>bloodyowl<!-- --> <!-- -->•<!-- --> <!-- -->2021/01/29</div></div></div><div class="rpcss-1dhpo20">Écrivez du code stupide</div></div></a></div><div class="rpcss-248jc4"><a class="rpcss-m8hhfy" href="/articles/scaling-stories-comment-les-startups-se-sont-plantees" style="background-image:linear-gradient(to bottom right, hsl(340, 100%, 35%), hsl(282, 100%, 30%))"><div class="rpcss-1e1hlv8"><div class="rpcss-18ygu8q"><div class="rpcss-18wu0nj"><img class="rpcss-uco8i7" alt="cyppan" src="https://avatars.githubusercontent.com/cyppan?size=64"/><div>cyppan<!-- --> <!-- -->•<!-- --> <!-- -->2020/06/02</div></div></div><div class="rpcss-1dhpo20">Scaling stories - comment les startups se sont plantées</div></div></a></div><div class="rpcss-248jc4"><a class="rpcss-m8hhfy" href="/articles/peut-on-securiser-app-frontend" style="background-image:linear-gradient(to bottom right, hsl(178, 100%, 35%), hsl(148, 100%, 30%))"><div class="rpcss-1e1hlv8"><div class="rpcss-18ygu8q"><div class="rpcss-18wu0nj"><img class="rpcss-uco8i7" alt="Aschen" src="https://avatars.githubusercontent.com/Aschen?size=64"/><div>Aschen<!-- --> <!-- -->•<!-- --> <!-- -->2020/04/02</div></div></div><div class="rpcss-1dhpo20">Est-il possible de sécuriser une application front-end ?</div></div></a></div><div class="rpcss-248jc4"><a class="rpcss-m8hhfy" href="/articles/responsive-sans-media-queries" style="background-image:linear-gradient(to bottom right, hsl(198, 100%, 35%), hsl(165, 100%, 30%))"><div class="rpcss-1e1hlv8"><div class="rpcss-18ygu8q"><div class="rpcss-18wu0nj"><img class="rpcss-uco8i7" alt="MoOx" src="https://avatars.githubusercontent.com/MoOx?size=64"/><div>MoOx<!-- --> <!-- -->•<!-- --> <!-- -->2019/10/30</div></div></div><div class="rpcss-1dhpo20">Du responsive sans media queries</div></div></a></div></div><style data-emotion="rpcss x4iqxe">.rpcss-x4iqxe{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;text-align:center;padding:20px;}</style><div class="rpcss-x4iqxe"><style data-emotion="rpcss gein6x">.rpcss-gein6x{font-size:20px;-webkit-text-decoration:none;text-decoration:none;color:#1E49B5;}</style><a class="rpcss-gein6x" href="/articles">Découvrir les 135 articles →</a></div></div></div><style data-emotion="rpcss 1fhpwz9">.rpcss-1fhpwz9{background-color:var(--page-accented-background-color);}</style><div class="rpcss-1fhpwz9"><div class="rpcss-1qqk0tr"><div class="rpcss-qx7dny"><style data-emotion="rpcss 13amqmf">.rpcss-13amqmf{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;padding-top:20px;padding-bottom:20px;}@media (max-width: 720px){.rpcss-13amqmf{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;}}</style><div class="rpcss-13amqmf"><style data-emotion="rpcss 1jpyalf">.rpcss-1jpyalf{-webkit-flex-basis:150px;-ms-flex-preferred-size:150px;flex-basis:150px;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;padding:10px;}@media (max-width: 720px){.rpcss-1jpyalf{padding-bottom:0;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;}}</style><div class="rpcss-1jpyalf"><img alt="" height="150" src="/public/images/website/podcast.svg" width="150"/></div><style data-emotion="rpcss yumkow">.rpcss-yumkow{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;padding:10px;}@media (max-width: 720px){.rpcss-yumkow{padding-top:0;}}</style><div class="rpcss-yumkow"><style data-emotion="rpcss 1cq8adm">.rpcss-1cq8adm{font-size:48px;font-weight:800;margin-bottom:20px;}@media (max-width: 720px){.rpcss-1cq8adm{text-align:center;}}</style><div aria-level="2" class="rpcss-1cq8adm" role="heading">Podcast</div><style data-emotion="rpcss 10ivtgq">.rpcss-10ivtgq{margin-bottom:10px;background-color:var(--page-background-color);border-radius:10px;padding:20px;display:block;-webkit-text-decoration:none;text-decoration:none;color:var(--page-text-color);width:100%;position:relative;overflow:hidden;box-shadow:0 15px 15px -5px rgba(0, 0, 0, 0.2);}.rpcss-10ivtgq:active::after{content:"";position:absolute;pointer-events:none;top:0;left:0;right:0;bottom:0;background-color:rgba(255, 255, 255, 0.5);}</style><a class="rpcss-10ivtgq" href="/podcasts/s03e03-remote-confinement"><style data-emotion="rpcss cf4fsp">.rpcss-cf4fsp{font-size:18px;font-weight:800;margin-bottom:10px;}</style><div class="rpcss-cf4fsp">S03E03 Remote et Confinement</div><img class="rpcss-uco8i7" alt="bloodyowl" src="https://avatars.githubusercontent.com/bloodyowl?size=64"/><img class="rpcss-uco8i7" alt="jojmaht" src="https://avatars.githubusercontent.com/jojmaht?size=64"/><img class="rpcss-uco8i7" alt="zoontek" src="https://avatars.githubusercontent.com/zoontek?size=64"/><img class="rpcss-uco8i7" alt="MoOx" src="https://avatars.githubusercontent.com/MoOx?size=64"/></a><a class="rpcss-10ivtgq" href="/podcasts/s03e02-privacy"><div class="rpcss-cf4fsp">S03E02 Privacy</div><img class="rpcss-uco8i7" alt="bloodyowl" src="https://avatars.githubusercontent.com/bloodyowl?size=64"/><img class="rpcss-uco8i7" alt="jojmaht" src="https://avatars.githubusercontent.com/jojmaht?size=64"/><img class="rpcss-uco8i7" alt="zoontek" src="https://avatars.githubusercontent.com/zoontek?size=64"/><img class="rpcss-uco8i7" alt="MoOx" src="https://avatars.githubusercontent.com/MoOx?size=64"/></a><a class="rpcss-10ivtgq" href="/podcasts/s03e01-open-source-organisation"><div class="rpcss-cf4fsp">S03E01 Open-Source et organisation</div><img class="rpcss-uco8i7" alt="bloodyowl" src="https://avatars.githubusercontent.com/bloodyowl?size=64"/><img class="rpcss-uco8i7" alt="jojmaht" src="https://avatars.githubusercontent.com/jojmaht?size=64"/><img class="rpcss-uco8i7" alt="zoontek" src="https://avatars.githubusercontent.com/zoontek?size=64"/><img class="rpcss-uco8i7" alt="MoOx" src="https://avatars.githubusercontent.com/MoOx?size=64"/></a><div class="rpcss-x4iqxe"><a class="rpcss-gein6x" href="/podcasts">Découvrir les 17 épisodes →</a></div></div></div></div></div></div><div class="rpcss-1qqk0tr"><div class="rpcss-qx7dny"><style data-emotion="rpcss 1vau6rl">.rpcss-1vau6rl{margin:20px 0;background-color:var(--page-accented-background-color);border-radius:10px;padding:20px;}</style><div class="rpcss-1vau6rl"><style data-emotion="rpcss 1gz1i1h">.rpcss-1gz1i1h{font-size:32px;font-weight:800;margin-bottom:20px;text-align:center;}</style><div aria-level="2" class="rpcss-1gz1i1h" role="heading">Ne rien rater</div><style data-emotion="rpcss 1wbispj">.rpcss-1wbispj{font-size:18px;margin-bottom:10px;text-align:center;}</style><div aria-level="3" class="rpcss-1wbispj" role="heading">Sur les réseaux</div><style data-emotion="rpcss 1hyoz7m">.rpcss-1hyoz7m{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}</style><div class="rpcss-1hyoz7m"><a href="https://twitter.com/PutainDeCode"><img alt="Twitter" height="48" src="/public/images/website/twitter.svg" width="48"/></a><div class="rpcss-4cf197"></div><a href="https://facebook.com/putaindecode"><img alt="Facebook" height="48" src="/public/images/website/facebook.svg" width="48"/></a><div class="rpcss-4cf197"></div><a href="https://github.com/putaindecode"><img alt="Facebook" height="48" src="/public/images/website/github.svg" width="48"/></a><div class="rpcss-4cf197"></div><a href="https://itunes.apple.com/fr/podcast/putain-de-code-!/id1185311825"><img alt="Apple Podcast" height="48" src="/public/images/website/apple-podcast.svg" width="48"/></a><div class="rpcss-4cf197"></div><a href="https://soundcloud.com/putaindecode"><img alt="Soundcloud" height="48" src="/public/images/website/soundcloud.svg" width="48"/></a></div><div aria-level="3" class="rpcss-1wbispj" role="heading">Sur le chat</div><div class="rpcss-1hyoz7m"><a href="https://discord.gg/jtbGNNc"><img alt="Discord" height="48" src="/public/images/website/discord.svg" width="48"/></a></div></div></div></div><style data-emotion="rpcss zs8kw7">.rpcss-zs8kw7{background-color:#222;padding:20px 0;}</style><footer class="rpcss-zs8kw7"><div class="rpcss-1qqk0tr"><div class="rpcss-qx7dny"><style data-emotion="rpcss 79elbk">.rpcss-79elbk{position:relative;}</style><div class="rpcss-79elbk"><style data-emotion="rpcss 1hle0ni">.rpcss-1hle0ni{position:absolute;left:0;top:50%;color:#fff;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-text-decoration:none;text-decoration:none;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}</style><a class="rpcss-1hle0ni" href="/api/articles/feeds/desc/feed.xml"><style data-emotion="rpcss lvyu5j">.rpcss-lvyu5j{margin-right:10px;}</style><img class="rpcss-lvyu5j" alt="Flux RSS" height="16" src="/public/images/website/rss-feed.svg" width="16"/><style data-emotion="rpcss um3i31">@media (max-width: 400px){.rpcss-um3i31{display:none;}}</style><div class="rpcss-um3i31">Flux RSS</div></a><style data-emotion="rpcss 12cp4l7">.rpcss-12cp4l7{color:rgba(255, 255, 255, 0.5);text-align:center;font-size:14px;}</style><div class="rpcss-12cp4l7">© 2021 Putain de code !</div><style data-emotion="rpcss 1w98uy3">.rpcss-1w98uy3{position:absolute;right:0;top:50%;color:#fff;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-text-decoration:none;text-decoration:none;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}</style><a class="rpcss-1w98uy3" href="https://github.com/putaindecode/putaindecode.io">GitHub</a></div></div></div></footer></div><script id="initialData" type="text/data">{"lists":{"k":"articles","v":{"k":"desc","v":{"k":1,"v":{"_0":{"TAG":0,"_0":{"hasPreviousPage":false,"hasNextPage":true,"totalCount":135,"items":[{"slug":"le-web-merite-de-meilleures-primitives","filename":"2021-04-12-le-web-merite-de-meilleures-primitives","title":"Le web mérite de meilleures primitives","date":"Mon, 12 Apr 2021 00:00:00 GMT","draft":false,"meta":{"title":"Le web mérite de meilleures primitives","date":"2021-04-12T00:00:00.000Z","author":"zoontek","slug":"le-web-merite-de-meilleures-primitives"},"summary":"<p>Il est souvent reproché aux développeurs front-end d'utiliser des abstractions\ninutilement complexes sous couvert d'une volonté de &quot;s'amuser&quot; avec celles-ci\nplutôt que de concevoir des sites simples, accessibles et performants.</p>\n<p>Personnellement, j'ap</p>\n"},{"slug":"le-vrai-probleme-des-web-components","filename":"2021-02-15-le-vrai-probleme-des-web-components","title":"Le vrai problème des Web Components","date":"Mon, 15 Feb 2021 00:00:00 GMT","draft":false,"meta":{"title":"Le vrai problème des Web Components","date":"2021-02-15T00:00:00.000Z","author":"bloodyowl","slug":"le-vrai-probleme-des-web-components"},"summary":"<p>Les Web Components sont souvent vendus comme <strong>l'alternative</strong> des standards\nface aux <strong>frameworks</strong> qui ont envahi le dévelopemment front-end depuis\nplusieurs années. C'est un discours commercial (ou un discours d'<em>advocate</em>\ncomme on appelle ça dans</p>\n"},{"slug":"retour-sur-plusieurs-annees-de-css-in-js","filename":"2021-02-08-retour-sur-plusieurs-annees-de-css-in-js","title":"Retour sur plusieurs années de CSS-in-JS","date":"Mon, 08 Feb 2021 00:00:00 GMT","draft":false,"meta":{"title":"Retour sur plusieurs années de CSS-in-JS","date":"2021-02-08T00:00:00.000Z","author":"bloodyowl","slug":"retour-sur-plusieurs-annees-de-css-in-js"},"summary":"<p>Voilà maintenant plus de 4 ans, je vous partageais <a href=\"/articles/pourquoi-j-ai-arrete-d-utiliser-css/\">les raisons me poussant à me détourner de mon amour initial pour CSS</a>, alors que je m'en allais vers des alternatives qui proposaient des solutions au</p>\n"},{"slug":"2021-01-29-ecrivez-du-code-stupide","filename":"2021-01-29-ecrivez-du-code-stupide","title":"Écrivez du code stupide","date":"Fri, 29 Jan 2021 00:00:00 GMT","draft":false,"meta":{"title":"Écrivez du code stupide","date":"2021-01-29T00:00:00.000Z","author":"bloodyowl"},"summary":"<p>Dans les premières années de nos carrières, on se concentre souvent sur le fait\nde faire du code dont on peut être fier. Du code propre. Du code élégant. Du\ncode intelligent.</p>\n<p>J'ai passé des heures à essayer que mon code fasse des trucs intelligents,</p>\n"},{"slug":"scaling-stories-comment-les-startups-se-sont-plantees","filename":"2020-04-02-scaling-stories-comment-les-startups-se-sont-plantees","title":"Scaling stories - comment les startups se sont plantées","date":"Tue, 02 Jun 2020 00:00:00 GMT","draft":false,"meta":{"date":"2020-06-02T00:00:00.000Z","title":"Scaling stories - comment les startups se sont plantées","author":"cyppan","slug":"scaling-stories-comment-les-startups-se-sont-plantees"},"summary":"<blockquote>\n<ul>\n<li>&quot;Ca ne fonctionne pas, mes enfants n'arrivent pas à se connecter à votre service !&quot;</li>\n<li>&quot;Nous sommes désolé notre équipe technique est mobilisée à 100% sur ce problème c'est une situation exceptionnelle… Nous vous tenons au courant.&quot;</li>\n</ul>\n</blockquote>\n<p>C'est le g</p>\n"},{"slug":"peut-on-securiser-app-frontend","filename":"2020-03-27-peut-on-securiser-une-application-frontend","title":"Est-il possible de sécuriser une application front-end ?","date":"Thu, 02 Apr 2020 00:00:00 GMT","draft":false,"meta":{"date":"2020-04-02T00:00:00.000Z","title":"Est-il possible de sécuriser une application front-end ?","author":"Aschen","slug":"peut-on-securiser-app-frontend"},"summary":"<p>Je suis toujours très surpris d'entendre parler de la sécurité des applications frontend parce que précisément une application frontend s'exécute sur le périphérique de l'utilisateur et ne peut donc pas être sécurisée. Elle doit même être considérée</p>\n"},{"slug":"responsive-sans-media-queries","filename":"2019-10-30-responsive-sans-media-queries","title":"Du responsive sans media queries","date":"Wed, 30 Oct 2019 00:00:00 GMT","draft":false,"meta":{"date":"2019-10-30T00:00:00.000Z","title":"Du responsive sans media queries","author":"MoOx","slug":"responsive-sans-media-queries"},"summary":"<p>Aujourd'hui, il est assez difficile d'imaginer faire des designs web responsive\nsans avoir recours aux media queries. Cette idée vieille de 1994, devenue\nrecommendation du W3C en 2012 (une fois supportée par tous les navigateurs) a\npris son temps et</p>\n"}]}}},"h":1,"l":{"RE_PRIVATE_NONE":true},"r":{"RE_PRIVATE_NONE":true}},"h":1,"l":{"RE_PRIVATE_NONE":true},"r":{"RE_PRIVATE_NONE":true}},"h":2,"l":{"RE_PRIVATE_NONE":true},"r":{"k":"podcasts","v":{"k":"desc","v":{"k":1,"v":{"_0":{"TAG":0,"_0":{"hasPreviousPage":false,"hasNextPage":true,"totalCount":17,"items":[{"slug":"s03e03-remote-confinement","filename":"S03E03-remote-confinement","title":"S03E03 Remote et Confinement","date":"Thu, 18 Feb 2021 00:00:00 GMT","draft":false,"meta":{"date":"2021-02-18T00:00:00.000Z","title":"S03E03 Remote et Confinement","participants":["bloodyowl","jojmaht","zoontek","MoOx"],"slug":"s03e03-remote-confinement","soundcloudTrackId":"985048273"},"summary":"<p>Un épisode sur le télétravail. Entre forcé par les conditions actuelles et voulu, la limite est complexe, et on aborde ce sujet entre avec différents points de vue, et différentes expériences.</p>\n<ul>\n<li>Maxime (<a href=\"https://twitter.com/MoOx\">https://twitter.com/MoOx</a>)</li>\n<li>Mathieu (https://</li>\n</ul>\n"},{"slug":"s03e02-privacy","filename":"S03E02-privacy","title":"S03E02 Privacy","date":"Wed, 30 Dec 2020 00:00:00 GMT","draft":false,"meta":{"date":"2020-12-30T00:00:00.000Z","title":"S03E02 Privacy","participants":["bloodyowl","jojmaht","zoontek","MoOx"],"slug":"s03e02-privacy","soundcloudTrackId":"951203677"},"summary":"<p>Un épisode sur la vie privée sur le web et les plateformes natives. On parle de cookies, de permissions et de StopCovid/TousAntiCovid, et des GAFA.</p>\n<ul>\n<li>Maxime (<a href=\"https://twitter.com/MoOx\">https://twitter.com/MoOx</a>)</li>\n<li>Mathieu (<a href=\"https://twitter.com/Zoontek\">https://twitter.com/Zoontek</a>)</li>\n<li>Georges (<a href=\"https://twitt\">https://twitt</a></li>\n</ul>\n"},{"slug":"s03e01-open-source-organisation","filename":"S03E01-open-source-organisation","title":"S03E01 Open-Source et organisation","date":"Mon, 11 May 2020 00:00:00 GMT","draft":false,"meta":{"date":"2020-05-11T00:00:00.000Z","title":"S03E01 Open-Source et organisation","participants":["bloodyowl","jojmaht","zoontek","MoOx"],"slug":"s03e01-open-source-organisation","soundcloudTrackId":"816955675"},"summary":"<p>Comment se gère un projet open-source ? Comment répondre aux demandes, les arbitrer sans crouler sous la pression. On aborde ces problématiques avec :</p>\n<ul>\n<li>Maxime (<a href=\"https://twitter.com/MoOx\">https://twitter.com/MoOx</a>)</li>\n<li>Mathieu (<a href=\"https://twitter.com/Zoontek\">https://twitter.com/Zoontek</a>)</li>\n<li>Georges (<a href=\"https://twi\">https://twi</a></li>\n</ul>\n"},{"slug":"s02e04-css-layout","filename":"S02E04-css-layout","title":"S02E04 CSS layout","date":"Mon, 08 Apr 2019 00:00:00 GMT","draft":false,"meta":{"date":"2019-04-08T00:00:00.000Z","title":"S02E04 CSS layout","participants":["bloodyowl","DaPo","zoontek","MoOx"],"slug":"s02e04-css-layout","soundcloudTrackId":"629607747"},"summary":"<p>Un épisode avec :</p>\n<ul>\n<li>Maxime (<a href=\"https://twitter.com/MoOx\">https://twitter.com/MoOx</a>)</li>\n<li>Mathieu (<a href=\"https://twitter.com/Zoontek\">https://twitter.com/Zoontek</a>)</li>\n<li>Cyril (<a href=\"https://twitter.com/IAmNotCyril\">https://twitter.com/IAmNotCyril</a>)</li>\n<li>Matthias (<a href=\"https://twitter.com/bloodyowl\">https://twitter.com/bloodyowl</a>)</li>\n</ul>\n<p>Liens:</p>\n<ul>\n<li>Flexbox: <a href=\"https://css-tricks.com/snippets/css/a-guide-to-fle\">https://css-tricks.com/snippets/css/a-guide-to-fle</a></li>\n</ul>\n"},{"slug":"s02e03-server-side-rendering","filename":"S02E03-server-side-rendering","title":"S02E03 Server-Side-Rendering","date":"Mon, 08 Apr 2019 00:00:00 GMT","draft":false,"meta":{"date":"2019-04-08T00:00:00.000Z","title":"S02E03 Server-Side-Rendering","participants":["bloodyowl","jojmaht","zoontek","MoOx"],"slug":"s02e03-server-side-rendering","soundcloudTrackId":"601957689"},"summary":"<p>Un épisode avec :</p>\n<ul>\n<li>Maxime (<a href=\"https://twitter.com/MoOx\">https://twitter.com/MoOx</a>)</li>\n<li>Mathieu (<a href=\"https://twitter.com/Zoontek\">https://twitter.com/Zoontek</a>)</li>\n<li>Georges (<a href=\"https://twitter.com/jojmaht\">https://twitter.com/jojmaht</a>)</li>\n<li>Matthias (<a href=\"https://twitter.com/bloodyowl\">https://twitter.com/bloodyowl</a>)</li>\n</ul>\n<p>Les liens:</p>\n<ul>\n<li>Le nouveau site: <a href=\"https://putaindecode.io\">https://putaindecode.io</a></li>\n<li>Comment on l'a</li>\n</ul>\n"},{"slug":"s02e02-css-css-css","filename":"S02E02-css-css-css","title":"S02E02 CSS-CSS-CSS","date":"Fri, 01 Mar 2019 00:00:00 GMT","draft":false,"meta":{"date":"2019-03-01T00:00:00.000Z","title":"S02E02 CSS-CSS-CSS","participants":["bloodyowl","jojmaht","zoontek","MoOx","DaPo"],"oldSlug":"podcast/s02e02","slug":"s02e02-css-css-css","soundcloudTrackId":"583228821"},"summary":"<p>Un nouvel épisode sur l'évolution de CSS et de l'usage qu'on en fait.</p>\n<ul>\n<li>Matthias, <a href=\"https://twitter.com/bloodyowl\">https://twitter.com/bloodyowl</a></li>\n<li>Mathieu, <a href=\"https://twitter.com/Zoontek\">https://twitter.com/Zoontek</a></li>\n<li>Georges, <a href=\"https://twitter.com/jojmaht\">https://twitter.com/jojmaht</a></li>\n<li>Maxime, <a href=\"https://twitter.com/MoOx\">https://twitter.com/MoOx</a></li>\n<li>Cyril, <a href=\"https://twitter\">https://twitter</a></li>\n</ul>\n"},{"slug":"s02e01-nouveautes-react-now-framer-x","filename":"S02E01-nouveautes-react-now-framer-x","title":"S02E01 Nouveautés React, Now et Framer X","date":"Wed, 12 Dec 2018 00:00:00 GMT","draft":false,"meta":{"date":"2018-12-12T00:00:00.000Z","title":"S02E01 Nouveautés React, Now et Framer X","participants":["bloodyowl","jojmaht","zoontek","MoOx"],"oldSlug":"podcast/s02e01","slug":"s02e01-nouveautes-react-now-framer-x","soundcloudTrackId":"543558951"},"summary":"<p>Une nouvelle saison qui débute avec plein de nouveautés React, une nouvelle\nversion de Now (Zeit) et Framer X.</p>\n<ul>\n<li>Matthias, <a href=\"https://twitter.com/bloodyowl\">https://twitter.com/bloodyowl</a></li>\n<li>Mathieu, <a href=\"https://twitter.com/Zoontek\">https://twitter.com/Zoontek</a></li>\n<li>Georges, <a href=\"https://twitter.com/jojmaht\">https://twitter.com/jojmaht</a></li>\n<li>Maxime, https://</li>\n</ul>\n"}]}}},"h":1,"l":{"RE_PRIVATE_NONE":true},"r":{"RE_PRIVATE_NONE":true}},"h":1,"l":{"RE_PRIVATE_NONE":true},"r":{"RE_PRIVATE_NONE":true}},"h":1,"l":{"RE_PRIVATE_NONE":true},"r":{"RE_PRIVATE_NONE":true}}},"items":{"RE_PRIVATE_NONE":true},"listsRequests":{"data":{"RE_PRIVATE_NONE":true}},"itemsRequests":{"data":{"RE_PRIVATE_NONE":true}}}</script><head><script defer="defer" src="/public/main.56c69761a03eb0112696.js"></script></head></html>
  • 20/01/2025 18:58:08: delta titre foireux
  • Putain de code

    Recherche META Description de la page

    Blog participatif de la communauté dev

    Recherche META Keywords de la page

    UPDATE DOMAINES SET server='GitHub.com',redirection='https://putaindecode.io/',Status='200',err='',[TITRE]=N'Putain de code',[DESCRIPTION]=N'Blog participatif de la communauté dev',[KEYWORDS]=N'' WHERE id=28430131
  • 0

    Putain de code Blog participatif de la communauté dev

  • 0. Putain (6)
  • --------->0
  • 1. de (2)
  • --------->0
  • 2. code (4)
  • --------->0
  • 3. Blog (4)
  • --------->0
  • 4. participatif (12)
  • --------->0
  • 6. la (2)
  • --------->0
  • 7. communauté (10)
  • --------->0
  • 8. dev (3)
  • --------->0
    INSERT INTO KEYWORDS (keyword,id_domaine) VALUES (N'Putain',28430131),(N'de',28430131),(N'code',28430131),(N'Blog',28430131),(N'participatif',28430131),(N'la',28430131),(N'communauté',28430131),(N'dev',28430131)