[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"categories-menu":3,"posts-\u002Fposts-{\"pagination\":{\"pageSize\":10}}-1":114},[4,24,98],{"id":5,"documentId":6,"name":7,"slug":8,"desc":9,"published":10,"uri":11,"showmenu":10,"createdAt":12,"updatedAt":13,"publishedAt":14,"locale":15,"heading":9,"order":16,"posts":17},4,"dw88ipzixowg4rbtqhna1fck","Личное","self",null,true,"\u002Fself","2026-05-17T11:06:55.868Z","2026-05-19T09:58:08.297Z","2026-05-19T09:58:08.291Z","en",0,[18,21],{"id":19,"documentId":20},61,"otr8hblo0fac9ovggct48osv",{"id":22,"documentId":23},76,"z77qh8cg0mcz533087epr6xu",{"id":25,"documentId":26,"name":27,"slug":28,"desc":9,"published":10,"uri":29,"showmenu":10,"createdAt":30,"updatedAt":31,"publishedAt":32,"locale":15,"heading":9,"order":33,"posts":34},2,"oxow5hzkizd4dgongka7hxvf","Рабочее","work","\u002Fwork","2026-05-15T07:43:18.016Z","2026-05-19T09:58:08.301Z","2026-05-19T09:58:08.295Z",1,[35,38,41,44,47,50,53,56,59,62,65,68,71,74,77,80,83,86,89,92,95],{"id":36,"documentId":37},71,"tciv16vv801l5eg5m4rx3gal",{"id":39,"documentId":40},80,"x8y72z9yibyjcllzwes23h43",{"id":42,"documentId":43},81,"v06yaukpbxnypv0bh0s48osu",{"id":45,"documentId":46},82,"wgd4f0022pq1pwbvq04rq0x0",{"id":48,"documentId":49},83,"i8wiipabpbxtcofme04ncqjy",{"id":51,"documentId":52},84,"ny1dz9tknms3219nrc5oaahy",{"id":54,"documentId":55},89,"igz67vanm4ke94cilkgrts2i",{"id":57,"documentId":58},95,"fa4sibhpf6ohmet6qo3s4ywx",{"id":60,"documentId":61},96,"u7g77d0bu0rv1u67qea9kglu",{"id":63,"documentId":64},98,"exnbib5xi3fgt7mku9q8ithc",{"id":66,"documentId":67},99,"bja31j10up0ffiqw1j5nfr79",{"id":69,"documentId":70},100,"ztrhdkce10c349k6jngsqz72",{"id":72,"documentId":73},101,"gsf74mv1zc39kkejpvy70lfk",{"id":75,"documentId":76},102,"m7c1icp5gt0x73ssyc67atvc",{"id":78,"documentId":79},103,"yz8vml65wloblc0dsp1okc8l",{"id":81,"documentId":82},104,"lquxceynryigq9wdydiwby7f",{"id":84,"documentId":85},105,"yy6x55uwn90hzkzz0786ev1q",{"id":87,"documentId":88},106,"ns37ttwnqxfc86lw6355bx9n",{"id":90,"documentId":91},107,"bjlqk6v41quti6geq9hs4ta6",{"id":93,"documentId":94},108,"ztumsu968y7otczfxrol0o19",{"id":96,"documentId":97},109,"xxxi8etz2ay3839xvw2oz9ym",{"id":99,"documentId":100,"name":101,"slug":102,"desc":9,"published":10,"uri":103,"showmenu":10,"createdAt":104,"updatedAt":105,"publishedAt":106,"locale":15,"heading":9,"order":25,"posts":107},3,"cat0obshestvennoe000001","Общественное","public","\u002Fpublic","2026-05-15T18:29:50.696Z","2026-05-19T09:58:05.992Z","2026-05-19T09:58:05.985Z",[108,111],{"id":109,"documentId":110},74,"u55grcuibxa3e64ymhoaav2v",{"id":112,"documentId":113},92,"rcz3w4mhmhb54ps3o8j462fp",{"data":115,"pagination":373},[116,200,213,233,247,267,294,320,340,354],{"publishedDate":117,"id":96,"documentId":97,"title":118,"slug":119,"desc":120,"intro":121,"coverCaption":122,"uri":120,"published":10,"showComments":10,"canComment":10,"category":123,"cover":124,"tags":173,"author":183,"comments":16,"reactions":199},"2026-06-23T12:33:57.561Z","Как вайб-кодер превратил CDN за 500 рублей в счёт на 25К","stupid-coding-1","","Ко мне пришёл клиент с задачей: у него VPS, с которого раздаются архивы. Проблема была в том, что сервис открывался не из всех стран и регионов.\n\nДо меня он уже обратился к вайб-кодеру. Тот прикрутил Selectel CDN и формально задачу решил: доступность стала лучше, архивы начали стримиться там, где раньше были проблемы.\n\nНо у клиента появилась другая боль...","Вайбкодеры",{"id":25,"documentId":26,"name":27,"slug":28,"desc":9,"published":10,"uri":29,"showmenu":10,"createdAt":30,"updatedAt":31,"publishedAt":32,"locale":15,"heading":9,"order":33},{"id":125,"documentId":126,"name":127,"alternativeText":128,"caption":120,"width":129,"height":130,"formats":131,"hash":166,"ext":133,"mime":136,"size":167,"url":168,"previewUrl":9,"provider":169,"provider_metadata":9,"folderPath":170,"createdAt":171,"updatedAt":171,"publishedAt":172,"locale":9},13,"c1bpeoadahqu6npa0kvn6idf","stupid-coding-cdn-cost.jpg","CDN-сеть превращает поток трафика в огромный счёт",1672,941,{"large":132,"small":142,"medium":150,"thumbnail":158},{"ext":133,"url":134,"hash":135,"mime":136,"name":137,"path":9,"size":138,"width":139,"height":140,"sizeInBytes":141},".jpg","\u002Fuploads\u002Flarge_stupid_coding_cdn_cost_c76131190c.jpg","large_stupid_coding_cdn_cost_c76131190c","image\u002Fjpeg","large_stupid-coding-cdn-cost.jpg",99.46,1000,563,99464,{"ext":133,"url":143,"hash":144,"mime":136,"name":145,"path":9,"size":146,"width":147,"height":148,"sizeInBytes":149},"\u002Fuploads\u002Fsmall_stupid_coding_cdn_cost_c76131190c.jpg","small_stupid_coding_cdn_cost_c76131190c","small_stupid-coding-cdn-cost.jpg",30.56,500,281,30556,{"ext":133,"url":151,"hash":152,"mime":136,"name":153,"path":9,"size":154,"width":155,"height":156,"sizeInBytes":157},"\u002Fuploads\u002Fmedium_stupid_coding_cdn_cost_c76131190c.jpg","medium_stupid_coding_cdn_cost_c76131190c","medium_stupid-coding-cdn-cost.jpg",61.15,750,422,61150,{"ext":133,"url":159,"hash":160,"mime":136,"name":161,"path":9,"size":162,"width":163,"height":164,"sizeInBytes":165},"\u002Fuploads\u002Fthumbnail_stupid_coding_cdn_cost_c76131190c.jpg","thumbnail_stupid_coding_cdn_cost_c76131190c","thumbnail_stupid-coding-cdn-cost.jpg",4.11,160,90,4111,"stupid_coding_cdn_cost_c76131190c",242.68,"\u002Fuploads\u002Fstupid_coding_cdn_cost_c76131190c.jpg","local","\u002F","2026-07-10T13:23:23.724Z","2026-07-10T13:23:23.726Z",[174],{"id":175,"documentId":176,"name":177,"slug":178,"textcolor":9,"bgcolor":9,"published":10,"uri":179,"createdAt":180,"updatedAt":180,"publishedAt":181,"locale":15,"heading":182,"desc":120},31,"dcyh9y95rmthzo6oip4ftoez","AI","ai","\u002Fai","2026-05-30T10:54:12.198Z","2026-05-30T10:54:12.192Z","Искусственный интеллект",{"id":33,"documentId":184,"username":185,"provider":120,"confirmed":10,"blocked":186,"telegramId":187,"telegramData":188,"icon":9,"firstname":192,"lastname":191,"phone":189,"locale":9,"role":193,"avatar":9},"mr9zlrq1858u3k1t8r6dmlly","pavelgvozdb",false,"133652371",{"id":187,"phone":189,"premium":186,"language":190,"lastname":191,"username":185,"firstname":192},"77025551199","ru","Гвоздь","Павел",{"id":99,"documentId":194,"name":195,"description":196,"type":197,"createdAt":198,"updatedAt":198,"publishedAt":198,"locale":9},"agv9d9dnu7pxc9ked3amj647","Admin","Главный админ блога — полный доступ к управлению на фронтенде","admin","2026-05-15T18:45:58.088Z",{"like":25,"dislike":16},{"publishedDate":201,"id":93,"documentId":94,"title":202,"slug":203,"desc":120,"intro":204,"coverCaption":205,"uri":120,"published":10,"showComments":10,"canComment":10,"category":206,"cover":9,"tags":207,"author":209,"comments":33,"reactions":212},"2026-05-30T10:52:37.129Z","Модель GPT 5.5 всё-таки тупая","stupid-gpt-1","Перешёл с Claude Code на Codex. Повёлся на хайп вокруг GPT-5.5.\n\nВот уже примерно неделю, может дней пять, юзаю только GPT-5.5 — и, честно, охуеваю от его тупизны.\n\nКогда я только начинал использовать агентов, я как раз начинал с ChatGPT. И в какой-то степени даже кайфовал. Потом попробовал Claude Code на Sonnet — и просто охуел, насколько он разумнее. Насколько он лучше учитывает мелочи, контекст, соседний код, общую логику задачи.\n\nПосле этого я без особых раздумий послал Codex нахуй и ушёл на нормального Claude.\n\nЮзал Sonnet. Потом перешёл на Opus. И там ещё сильнее охуел от его разумности.","GPT 5.5 vs Claude Opus",{"id":25,"documentId":26,"name":27,"slug":28,"desc":9,"published":10,"uri":29,"showmenu":10,"createdAt":30,"updatedAt":31,"publishedAt":32,"locale":15,"heading":9,"order":33},[208],{"id":175,"documentId":176,"name":177,"slug":178,"textcolor":9,"bgcolor":9,"published":10,"uri":179,"createdAt":180,"updatedAt":180,"publishedAt":181,"locale":15,"heading":182,"desc":120},{"id":33,"documentId":184,"username":185,"provider":120,"confirmed":10,"blocked":186,"telegramId":187,"telegramData":210,"icon":9,"firstname":192,"lastname":191,"phone":189,"locale":9,"role":211,"avatar":9},{"id":187,"phone":189,"premium":186,"language":190,"lastname":191,"username":185,"firstname":192},{"id":99,"documentId":194,"name":195,"description":196,"type":197,"createdAt":198,"updatedAt":198,"publishedAt":198,"locale":9},{"like":5,"dislike":16},{"publishedDate":214,"id":87,"documentId":88,"title":215,"slug":216,"desc":120,"intro":217,"coverCaption":218,"uri":219,"published":10,"showComments":10,"canComment":10,"category":220,"cover":9,"tags":221,"author":229,"comments":16,"reactions":232},"2025-02-23T17:30:00.000Z","Програмно отправить письмо на MODX","programno-otpravit-pismo-na-modx","Код для програмной отправки письма штатными средствами MODX.","SendEmail","\u002Fmodx\u002Fmail",{"id":25,"documentId":26,"name":27,"slug":28,"desc":9,"published":10,"uri":29,"showmenu":10,"createdAt":30,"updatedAt":31,"publishedAt":32,"locale":15,"heading":9,"order":33},[222],{"id":223,"documentId":224,"name":225,"slug":226,"textcolor":9,"bgcolor":9,"published":10,"uri":9,"createdAt":227,"updatedAt":227,"publishedAt":228,"locale":15,"heading":9,"desc":9},6,"mau3qzs4gq9pxckgymu674yr","MODX","modx","2026-05-16T10:03:44.164Z","2026-05-16T10:03:44.154Z",{"id":33,"documentId":184,"username":185,"provider":120,"confirmed":10,"blocked":186,"telegramId":187,"telegramData":230,"icon":9,"firstname":192,"lastname":191,"phone":189,"locale":9,"role":231,"avatar":9},{"id":187,"phone":189,"premium":186,"language":190,"lastname":191,"username":185,"firstname":192},{"id":99,"documentId":194,"name":195,"description":196,"type":197,"createdAt":198,"updatedAt":198,"publishedAt":198,"locale":9},{"like":99,"dislike":16},{"publishedDate":234,"id":84,"documentId":85,"title":235,"slug":236,"desc":120,"intro":237,"coverCaption":238,"uri":239,"published":10,"showComments":10,"canComment":10,"category":240,"cover":9,"tags":241,"author":243,"comments":16,"reactions":246},"2025-01-28T09:20:00.000Z","Кнопка \"Авторизоваться\" в списке пользователей в админке","knopka-avtorizovatsya-v-spiske-polzovateley-v-adminke","Данный плагин реализует возможность, находясь в админке, авторизоваться под любым существующим юзером на фронтенде.","ManagerAuthAs","\u002Fmodx\u002Fauth-as",{"id":25,"documentId":26,"name":27,"slug":28,"desc":9,"published":10,"uri":29,"showmenu":10,"createdAt":30,"updatedAt":31,"publishedAt":32,"locale":15,"heading":9,"order":33},[242],{"id":223,"documentId":224,"name":225,"slug":226,"textcolor":9,"bgcolor":9,"published":10,"uri":9,"createdAt":227,"updatedAt":227,"publishedAt":228,"locale":15,"heading":9,"desc":9},{"id":33,"documentId":184,"username":185,"provider":120,"confirmed":10,"blocked":186,"telegramId":187,"telegramData":244,"icon":9,"firstname":192,"lastname":191,"phone":189,"locale":9,"role":245,"avatar":9},{"id":187,"phone":189,"premium":186,"language":190,"lastname":191,"username":185,"firstname":192},{"id":99,"documentId":194,"name":195,"description":196,"type":197,"createdAt":198,"updatedAt":198,"publishedAt":198,"locale":9},{"like":99,"dislike":16},{"publishedDate":248,"id":81,"documentId":82,"title":249,"slug":250,"desc":120,"intro":251,"coverCaption":252,"uri":253,"published":10,"showComments":10,"canComment":10,"category":254,"cover":9,"tags":255,"author":263,"comments":16,"reactions":266},"2024-06-21T20:03:00.000Z","Ставим ноду Farcaster Warpcast","stavim-nodu-farcaster-warpcast","Farcaster — это экспериментальный протокол децентрализованных социальных сетей, который разрабатывается для создания более свободных и безопасных онлайн-сообществ. Его основная цель — предоставить пользователям контроль над своими данными и взаимодействиями, снизив зависимость от централизованных платформ и их ограничений.\r\n\r\nВ попытке претендовать на дроп от проекта Farcaster и соцсети [Warpcast](https:\u002F\u002Fwarpcast.com\u002F~\u002Finvite-page\u002F494760?id=75d42e8f), можно попробовать развернуть ноду. Постарался написать подробную инструкцию, предусмотрев множество вопросов, которые не раскрываются в других источниках.","Farcaster Node","\u002Fcrypto\u002Ffarcaster-node",{"id":25,"documentId":26,"name":27,"slug":28,"desc":9,"published":10,"uri":29,"showmenu":10,"createdAt":30,"updatedAt":31,"publishedAt":32,"locale":15,"heading":9,"order":33},[256],{"id":257,"documentId":258,"name":259,"slug":260,"textcolor":9,"bgcolor":9,"published":10,"uri":9,"createdAt":261,"updatedAt":261,"publishedAt":262,"locale":15,"heading":9,"desc":9},30,"xkffo03bgoiimugiwqgryrx0","Крипта","kripta","2026-05-16T10:33:48.241Z","2026-05-16T10:33:48.237Z",{"id":33,"documentId":184,"username":185,"provider":120,"confirmed":10,"blocked":186,"telegramId":187,"telegramData":264,"icon":9,"firstname":192,"lastname":191,"phone":189,"locale":9,"role":265,"avatar":9},{"id":187,"phone":189,"premium":186,"language":190,"lastname":191,"username":185,"firstname":192},{"id":99,"documentId":194,"name":195,"description":196,"type":197,"createdAt":198,"updatedAt":198,"publishedAt":198,"locale":9},{"like":25,"dislike":16},{"publishedDate":268,"id":78,"documentId":79,"title":269,"slug":270,"desc":120,"intro":271,"coverCaption":272,"uri":273,"published":10,"showComments":10,"canComment":10,"category":274,"cover":9,"tags":275,"author":290,"comments":257,"reactions":293},"2024-01-11T05:14:00.000Z","Поднимаем ShadowSocks сервер на Debian или Ubuntu","podnimaem-shadowsocks-server-na-debian-ili-ubuntu","ShadowSocks – это очень быстрый, лучший в своём роде прокси сервер, который способен обходить Великий Китайский Фаервол, в отличие от большинства VPN поставщиков. ShadowSocks настолько хорошо маскирует трафик под HTTPS-соединение, что в сравнении с VPN трафиком, Великий Фаервол не способен его идентифицировать и соответственно заблокировать. Чего не скажешь о подавляющем числе VPN серверов, которые благодаря наученным нейросетям Китайский Фаервол легко обнаруживает.\r\n\r\nВ этой небольшой статье я показываю, как поднять свой ShadowSocks сервер и тем самым обезопасить своё пребывание в Интернете. Статья является исключительно ознакомительной и не призывает использовать данный инструмент для нарушения законодательства!","ShadowSocks","\u002Flinux\u002Fshadowsocks",{"id":25,"documentId":26,"name":27,"slug":28,"desc":9,"published":10,"uri":29,"showmenu":10,"createdAt":30,"updatedAt":31,"publishedAt":32,"locale":15,"heading":9,"order":33},[276,283],{"id":277,"documentId":278,"name":279,"slug":280,"textcolor":9,"bgcolor":9,"published":10,"uri":9,"createdAt":281,"updatedAt":281,"publishedAt":282,"locale":15,"heading":9,"desc":9},15,"aju4latl5hi6906pt0ktlb1g","Linux","linux","2026-05-16T10:03:45.426Z","2026-05-16T10:03:45.422Z",{"id":284,"documentId":285,"name":286,"slug":287,"textcolor":9,"bgcolor":9,"published":10,"uri":9,"createdAt":288,"updatedAt":288,"publishedAt":289,"locale":15,"heading":9,"desc":9},16,"czaf643kmvvab1xf4gx3ddh9","VPN","vpn","2026-05-16T10:03:45.455Z","2026-05-16T10:03:45.446Z",{"id":33,"documentId":184,"username":185,"provider":120,"confirmed":10,"blocked":186,"telegramId":187,"telegramData":291,"icon":9,"firstname":192,"lastname":191,"phone":189,"locale":9,"role":292,"avatar":9},{"id":187,"phone":189,"premium":186,"language":190,"lastname":191,"username":185,"firstname":192},{"id":99,"documentId":194,"name":195,"description":196,"type":197,"createdAt":198,"updatedAt":198,"publishedAt":198,"locale":9},{"like":33,"dislike":16},{"publishedDate":295,"id":75,"documentId":76,"title":296,"slug":297,"desc":120,"intro":298,"coverCaption":299,"uri":300,"published":10,"showComments":10,"canComment":10,"category":301,"cover":9,"tags":302,"author":316,"comments":16,"reactions":319},"2022-01-04T06:49:00.000Z","Sass MediaScreen — Определяем девайсы на CSS","sass-mediascreen-opredelyaem-devaysy-na-css","Я считаю, что в последнее время разница размера экранов между разными группами устройств всё больше размывается. Не смотря на это я попытался написать инструмент для определения, как групп устройств (мобильники, планшеты, лаптопы, десктопы), так и конкретных девайсов (iPhone 5, iPhone X, iPad Pro 12 и т.д.). Получилась, на мой взгляд, довольно удобная пачка SASS-миксинов. И что немаловажно, инструмент прост в использовании, а также позволяет расширять список устройств своим без правки исходников.","sass-mediascreen","\u002Fcss\u002Fsass-mediascreen",{"id":25,"documentId":26,"name":27,"slug":28,"desc":9,"published":10,"uri":29,"showmenu":10,"createdAt":30,"updatedAt":31,"publishedAt":32,"locale":15,"heading":9,"order":33},[303,309],{"id":125,"documentId":304,"name":305,"slug":306,"textcolor":9,"bgcolor":9,"published":10,"uri":9,"createdAt":307,"updatedAt":307,"publishedAt":308,"locale":15,"heading":9,"desc":9},"qolbs7a9lkvr15oytyy3gj03","CSS","css","2026-05-16T10:03:45.289Z","2026-05-16T10:03:45.283Z",{"id":310,"documentId":311,"name":312,"slug":313,"textcolor":9,"bgcolor":9,"published":10,"uri":9,"createdAt":314,"updatedAt":314,"publishedAt":315,"locale":15,"heading":9,"desc":9},14,"lz1k1ridxwxre34lzf0jfl3t","SASS","sass","2026-05-16T10:03:45.319Z","2026-05-16T10:03:45.314Z",{"id":33,"documentId":184,"username":185,"provider":120,"confirmed":10,"blocked":186,"telegramId":187,"telegramData":317,"icon":9,"firstname":192,"lastname":191,"phone":189,"locale":9,"role":318,"avatar":9},{"id":187,"phone":189,"premium":186,"language":190,"lastname":191,"username":185,"firstname":192},{"id":99,"documentId":194,"name":195,"description":196,"type":197,"createdAt":198,"updatedAt":198,"publishedAt":198,"locale":9},{"like":33,"dislike":16},{"publishedDate":321,"id":72,"documentId":73,"title":322,"slug":323,"desc":120,"intro":324,"coverCaption":325,"uri":326,"published":10,"showComments":10,"canComment":10,"category":327,"cover":9,"tags":328,"author":336,"comments":33,"reactions":339},"2021-05-19T05:28:00.000Z","Компилим SASS в PhpStorm на MacOS","kompilim-sass-v-phpstorm-na-macos","Иногда нет возможности поставить ни Webpack, ни Gulp, ни чего-то ещё на хостинг сайта, но стили на препроцессоре писать хочется. Для этого в PhpStorm придуманы Watcher-ы. Можно при сохранении скомпилить SASS файл в CSS.","SASS + PhpStorm","\u002Ftools\u002Fmac-phpstorm-sass",{"id":25,"documentId":26,"name":27,"slug":28,"desc":9,"published":10,"uri":29,"showmenu":10,"createdAt":30,"updatedAt":31,"publishedAt":32,"locale":15,"heading":9,"order":33},[329],{"id":330,"documentId":331,"name":332,"slug":333,"textcolor":9,"bgcolor":9,"published":10,"uri":9,"createdAt":334,"updatedAt":334,"publishedAt":335,"locale":15,"heading":9,"desc":9},20,"georvivt518jgm5vp8rcv0kv","Инструменты","instrumenty","2026-05-16T10:33:46.941Z","2026-05-16T10:33:46.938Z",{"id":33,"documentId":184,"username":185,"provider":120,"confirmed":10,"blocked":186,"telegramId":187,"telegramData":337,"icon":9,"firstname":192,"lastname":191,"phone":189,"locale":9,"role":338,"avatar":9},{"id":187,"phone":189,"premium":186,"language":190,"lastname":191,"username":185,"firstname":192},{"id":99,"documentId":194,"name":195,"description":196,"type":197,"createdAt":198,"updatedAt":198,"publishedAt":198,"locale":9},{"like":33,"dislike":16},{"publishedDate":341,"id":69,"documentId":70,"title":342,"slug":343,"desc":120,"intro":344,"coverCaption":345,"uri":346,"published":10,"showComments":10,"canComment":10,"category":347,"cover":9,"tags":348,"author":350,"comments":16,"reactions":353},"2020-11-26T07:13:00.000Z","Исправляем ошибки сертификата безопасности при оплате PayPal","ispravlyaem-oshibki-sertifikata-bezopasnosti-pri-oplate-paypal","При попытке оплатить через PayPal, он не редиректит на страницу оплаты и возвращает ошибки вида `Peer's Certificate issuer is not recognized` или `SSL certificate problem: unable to get local issuer certificate` при обращении к API через curl.\n\nПроблема связана с устаревшим сертификатом безопасности, выпущенным центром сертификации DigiCert. Ещё в далёком 2018 году они обновили требования.\n\nИсправить это просто!","miniShop2 + PayPal cert","\u002Fmodx\u002Fminishop2-paypal-cacert",{"id":25,"documentId":26,"name":27,"slug":28,"desc":9,"published":10,"uri":29,"showmenu":10,"createdAt":30,"updatedAt":31,"publishedAt":32,"locale":15,"heading":9,"order":33},[349],{"id":223,"documentId":224,"name":225,"slug":226,"textcolor":9,"bgcolor":9,"published":10,"uri":9,"createdAt":227,"updatedAt":227,"publishedAt":228,"locale":15,"heading":9,"desc":9},{"id":33,"documentId":184,"username":185,"provider":120,"confirmed":10,"blocked":186,"telegramId":187,"telegramData":351,"icon":9,"firstname":192,"lastname":191,"phone":189,"locale":9,"role":352,"avatar":9},{"id":187,"phone":189,"premium":186,"language":190,"lastname":191,"username":185,"firstname":192},{"id":99,"documentId":194,"name":195,"description":196,"type":197,"createdAt":198,"updatedAt":198,"publishedAt":198,"locale":9},{"like":16,"dislike":16},{"publishedDate":355,"id":66,"documentId":67,"title":356,"slug":357,"desc":120,"intro":358,"coverCaption":9,"uri":359,"published":10,"showComments":10,"canComment":10,"category":360,"cover":9,"tags":361,"author":369,"comments":16,"reactions":372},"2020-09-29T06:13:00.000Z","Webpack or Vue or React: Permission denied","webpack-or-vue-or-react-permission-denied","Иногда при запуске Node.js приложения в терминале (даже из под рута) возникает ошибка *Permission denied*. Не совсем понятно, с чем именно это связано. Ребята удаляют папку `node_modules` и командуют `npm i` так и не разобравшись, в чём была проблема. А потом в чатах советуют этот карго-культ, произнося волшебную мантру «Помогает от 90% проблем».","\u002Fnodejs\u002Fwebpack-vue-react-permission-denied",{"id":25,"documentId":26,"name":27,"slug":28,"desc":9,"published":10,"uri":29,"showmenu":10,"createdAt":30,"updatedAt":31,"publishedAt":32,"locale":15,"heading":9,"order":33},[362],{"id":363,"documentId":364,"name":365,"slug":366,"textcolor":9,"bgcolor":9,"published":10,"uri":9,"createdAt":367,"updatedAt":367,"publishedAt":368,"locale":15,"heading":9,"desc":9},29,"l9ruh02w7yl3rvez05s8ndv7","Node.js","node-js","2026-05-16T10:33:47.947Z","2026-05-16T10:33:47.944Z",{"id":33,"documentId":184,"username":185,"provider":120,"confirmed":10,"blocked":186,"telegramId":187,"telegramData":370,"icon":9,"firstname":192,"lastname":191,"phone":189,"locale":9,"role":371,"avatar":9},{"id":187,"phone":189,"premium":186,"language":190,"lastname":191,"username":185,"firstname":192},{"id":99,"documentId":194,"name":195,"description":196,"type":197,"createdAt":198,"updatedAt":198,"publishedAt":198,"locale":9},{"like":16,"dislike":16},{"page":33,"pageSize":374,"pageCount":99,"total":375},10,25]