6242

Бывает же...

Примерно неделю назад делал правки на сайте. Работа обычная, ничего сложного, справился за один день. Сижу кушаю печеньки с чаем, раздаётся звонок, поднимаю трубку, мужской голос:


- Алло, это Такой-то-Такойнович?

- Да это я.

- Вы там совсем охуели?!


После такого вопроса, я право слово, охуел...


- Простите, а кто это?! Что вы хотели?!

- Вы неделю назад нам делали правки! Какого хуя ещё ничего не сделано?!

- Как не сделано, я всё за один день закончил!

- Как вы могли закончить, если ничего не изменилось!

- Вы кеш сбрасывали в браузере?

- Кого бля?!

- Кеш!

- Хуешь! Ты мне сука зубы заговариваешь?! Когда, блядь, работа будет сделана?!

- Просто нажмите на клавиатуре ctrl + f5...

- ...

- Ну что у вас там?

- Да всё работает... Извините... Но вы всё равно сильно не хуейте!


И положили трубку.

Бывает же... Правки, Веселые клиенты, Заказчики, Бывает

Найдены дубликаты

340 комментариев

по актуальности
+656

Ну, ты себя на его место поставь: он вообще не отдупляет, что такое Кеш!

раскрыть ветку 148
+260
- Вы кеш сбрасывали в браузере?
- Ты, сука, еще и кэш захотел?!!! Тебе на карту перечисляли!!!11
раскрыть ветку 2
+40

И тут приходит СМС от банка.

Вам переведено 10000 рублей от ФИО. Сообщение отправителя:"Сука, на еще бабки. Только быстро сделай правки, нахуй!"

раскрыть ветку 1
+357

Кстати да, один звонок в стиле "проверяйте, такие то кнопочки нажмите" убил бы проблему в зародыше

раскрыть ветку 85
+282

Ну так и было, только работу принимал зам, а это я так понял руководитель вернулся.

раскрыть ветку 72
+44

Пользователь не должен ничего нажимать специально. это его работа программиста/верстальщика сбрасывать кеши. Есть много способов обхода клиентского кеширования.

раскрыть ветку 8
+29

Версионирование файлов уж точно убило бы проблему.

раскрыть ветку 2
+44

Ну скорее всего так и есть, по голосу мужику было лет 50, но культура общения меня просто убила...

раскрыть ветку 42
+187

Ну, ты себя на его место поставь: ты отрыжка 90-х, бабки заплатил, а тебя кинули конкретно)

ещё комментарии
+40
Мне всего 30 и я не знал, что кэш можно обновить нажав ctrl+f5
раскрыть ветку 13
+7
культура общения меня просто убила...

Жаль. Хороший человек был. Земля тебе пухом.

Иллюстрация к комментарию
+7
Я хз из какой он конторы, но я вот уже 2 года по работе общаюсь с представителями различных госорганов - вот такие 50-60 летние ребята базар вообще не фильтруют. Ты им по жизни должен, короче. Не знаю только, где я столько взаймы брал.
+4
А версионирование добавить не? Или каждому их поситителю кэш чистить? )
+12
Ну вообще-то при такого рода апдеитах нужно менять no cache версию или что-то вроде того, чтобы клиенты, всегда получали последнюю версию, так что я бы сказал, что это bad design practics.
+3

Ну ты сильно не хуей, а то мало ли!

раскрыть ветку 2
+2
Зато вежливый. Извинился ведь?
(Чпок)
0

А можно ведь после выполненной работы отправлять письмо, мол, обновите кэш или проверьте правки с другого устройства, чтобы не было таких звонков.

0
В следующий раз будь культурнее:
- Алло, это Такой-то-Такойнович?
- Нет, это Хуйойто Хуйойтович.
-6
Для 50-тилетних это нормальное общение.
раскрыть ветку 4
ещё комментарии
+3

разве он не видел фильмец "Танго и Кеш"

+4

Да честно говоря и я не понял, хотя простите и комп на ходу соберу и горящий системник починю. Так-с сказать, за 10+ лет с компом в рот не ебал что надо ктрл+ф5 жать.

раскрыть ветку 2
+2

я и сам не знал. тока тссссс.....

раскрыть ветку 1
+2
Наличка?
раскрыть ветку 1
+2

Хуичка!

+1

Хуеш!

0
отдупляет не отдупляет, а так общаться с человеком свинство чистой воды
0

Кеша на взлет!

раскрыть ветку 2
0
Гарош, отвали
0
Иллюстрация к комментарию
0
Он и не должен так-то)
0
Ты чо совсем охуел там что ли? Где комментарий про "тупых клиентов"?
0
Я вряд ли стал в такой ситуации сходу орать матом
-1
А вдруг они попугая Кешу скинули в окно
-2
Кеш - это деньги с английского.
+165
А к стилям и т.п. приписать какое-нибудь ?v=1.07 никак?
Чтобы у тех кто ранее посещал сайт просто всё работало без очистки кэшей.
раскрыть ветку 86
+100

Совершенно верно. Программист обязан обеспечить корректное обновление стилей и скриптов (особенно скриптов) на стороне клиента. Всем же пользователям Ctrl+F5 не нажмешь. Так что в посте как раз косяк исполнителя явный. И если заказчик и не прав по форме общения, но сама суть претензии адекватная.

раскрыть ветку 2
+18
Плюс.
Реально "охуеешь", если каждый раз "всякие ваши кэши" сбрасывать. Так что клиент, пусть грубо, но прав.
+6
Но теперь исполнитель знает, как правильно делать. И я тоже, хоть сайты и не делаю. #пикабупознавательный
+14

О_о я наверно сильно зелёный, не так давно работаю в этой сфере, можно поподробней? Буду признателен =)

раскрыть ветку 75
+37

если правятся скрипты/стили, которые любит кэшировать браузер на долго, то делается что-то типа такого style.css?1, и при каждом изменении цифра увеличивается.


но по хорошему все это делается на стороне цмс/фреймворка

раскрыть ветку 23
+59

Общее правило - твои правки должны работать всегда вне зависимости от того, знает пользователь про кеш или нет. Поэтому кеш - это тоже твоя проблема, которую ты сам должен решать.


Про инвалидацию кеша тебе хорошо написали - браузер кеширует статику жестко, поэтому самый бронебойный метод - изменить урл любым доступным образом.

раскрыть ветку 5
+7

Один из азов при работе с "фронтом": делая изменения - не ломай работу у клиента.
Вам надо было просто добавить get аргумент к изменённым подключаемым скриптам/стайлам. Т.е. для того, чтобы принудительно "прибить" кешу и показать изменения, надо, к примеру,  заменить строку вида <link rel="stylesheet" href="/css/style.css">, на строку вида  <link rel="stylesheet" href="/css/style.css?v=3">. Т.е. вы, условно, "говорите" браузеру, что у вас новая версия стайлов и необходимо тянуть её вместо кеша. Ну или совсем "идиотский" вариант, если вам "совсем не нужно" кеширование браузером - аргумент подставлять динамический (т.е. к примеру таймстамп). И да, аргумент необязательно должен быть "v" можете хоть "?huy=49i5" написать туда.
Да, естественно, это всё весьма грубо и приближённо, но общее понятие даёт.

раскрыть ветку 13
+17

Подробности - абсолютно твой косяк. Допустим даже что ты делал внутренний сервис для компании. А если у тебя сайт на тыщи посетителей, ты про каждого будешь пост на Пикабе делать, какой он тупой?

Меняешь картиночки - переименуй их.

Меняшь скрипты стили - добавь версии.

Мужик то прав был на все сто.

раскрыть ветку 3
+4

Вы осознаете, что большинство пользователей сайта до сих пор не видят правок?)

+4

Пиздец. Хорошо, что вы не врач - угрозы жизням нет

+3

Так что совет правильный. Дядька хоть и быдлан, но косяк твой =)

раскрыть ветку 1
+2

если что-то на продакшене меняешь, то просто сделай другой путь, самый простой способ - ввести версию, нумерацию любую можно делать, главное чтобы отличалась от прежних, которые "закешированные" у юзверей

Иллюстрация к комментарию
раскрыть ветку 19
+1

А в Хроме уж давно Ctrl+F5 только при открытой панели F12 работает.

-1

Если ты не знаешь что такое кэш, то скорее всего сбрасывать его надо не из кода, а из админки CMS. Где-нибудь в "Настройки - сбросить кэш".

раскрыть ветку 1
+1

да-да, разработчик тупой еблан, при этом ещё и выёбывается.

или он думает что все пользователи сайта тоже будут ctrl+F5 нажимать при просмотре сайта?

все css/js всегда должны иметь ?v=2

+1

Как меня пугает кол-во плюсов, и кол-во минусов у этого поста.

раскрыть ветку 1
+5

АППРОБАРЕФОБИЯ – боязнь одобрения (плюсов)

КРИТИКОФОБИЯ – боязнь критики (минусов)


http://psyhologytoday.ru/stories/fobii/spisok-fobii/

0
В андройдовском хроме не помогает
-1

А что заставит браузер загрузить новую версию самой страницы? «У меня распечатка никак не обновляется!!»

раскрыть ветку 1
+2
Хотел начать ответ с "пользователи тупее и тупее с каждым годом", но переформулирую :)

Интерфейсы становятся юзабельнее и юзабельнее. Порог вхождения для пользователя снижается.

Технически нет проблем js скриптом раз в N секунд делать ajax запрос к серверу и уточнять актуальность информации.

Меня прекрасно автоматически разлогинивает в интернет-банках через какое-то время бездействия, web интерфейсы почты показывают новые письма без перезагрузки страницы, а когда я переключаюсь во вкладку, открытую ещё утром, там уже актуализированные блоки контекстной рекламы и таких примеров много.

Резюмируя. Интернет-ресурсы перестают быть документами с разметкой и становятся полноценными приложениями. Пройдет немного времени и твоя конкретная жалоба на "тупого юзера" будет порождать аргументированные ответы "сам дурак" :)
-1
А это идея! Для вот я дибил.
+22

ну ты сильно то уж не хуей!

раскрыть ветку 2
0
Ладно, не буду
раскрыть ветку 1
0
*положили трубку*
+20

Нет бы нормально кеширование на сервере настроить ... Но нет, конечно же виноват "тупой клиент", который должен знать что это вообще такое, и что надо жать Ctrl+F5.

раскрыть ветку 1
+11

Зато "разработчик" срубил плюсов на пикабе :-/

+15

Вместо тысячи слов: Cache-Control header

раскрыть ветку 3
+8
Ка-ка-хи!
раскрыть ветку 2
+4

Каме-Хаме-Ха!

раскрыть ветку 1
+29

Он, конечно, ебанутый, но по сути абсолютно прав: не будут же все посетители ctrl+f5 делать, это задача разработчика, как уже правильно заметили, добавлять версию (?v=XXX) к статике.

раскрыть ветку 2
0

да можно еще время жизни кеша указывать что будет оочень правильно

-2

Ага. Добавлять версию к каждому файлу (css и js), либо юзать фреймворки, в которых ассеты генерируются сами. Например, Yii2.

+21
Разработчик в 2017 году не умеет управлять кешем, а виноват заказчик?
Ну ну...
раскрыть ветку 4
+3

Я не так давно работаю в этой сфере, что бы знать это. К сожалению узнал только сегодня. И я заказчика ни в чем не обвинял. Где хоть одно слово в котором я обвиняю заказчика? Просто поделился забавным диалогом.

раскрыть ветку 3
+11
Тебе же сказали сильно не хуеть
+1

Хм..

Судя по диалогу

- Как вы могли закончить, если ничего не изменилось!
- Вы кеш сбрасывали в браузере?

ты не во время разговора узнал про кэш.


Ладно, заказчику ты сказал "нажмите Ctrl + F5". А тысячам посетителей его сайта ты тоже будешь это говорить?


Это явная твоя ошибка как разработчика, но в диалоге нет твоих извинений.

И что тут забавного?

0
Про кэш знал до этого. Первый запрос в гугле - "принудительная очистка кэша" - все ясно и понятно
+11
Иллюстрация к комментарию
+11

- Алло, это Такой-то-Такойнович.

- Кто?

- Ну я тот, который охуел.

- А-а-а. Здорово.

- Все работает?

- Да, все работает.

- Кэш сбрасывай.

- Чо?

- Кэш сбрасывай, я под окном стою.

- Ты охуел?

- Мы с этого разговор начали.

- Мы же с тобой рассчитались.

- Мы с тобой рассчитались, а вот с налоговой, которая к тебе поднимается ты не рассчитался, поэтому сбрасывай кэш, а то тоже охуеешь.

раскрыть ветку 1
-2
Иллюстрация к комментарию
+8

Если правки делаете редко, но ОБЯЗАТЕЛЬНО нужно убедиться, что все клиенты обновили страницу (например, старый платный пакет ТВ-каналов стал видим только тем, кто его успел подключить), то необходимо использовать заголовок Last-Modified

Например,

<meta http-equiv="Last-Modified" content="Thu, 10 Oct 2017 10:31:28 GMT">


Ещё более сведущие товарищи посоветовали покурить

"Cache-Control"

и/или

"Expires: "

раскрыть ветку 4
+2
Иллюстрация к комментарию
0

и при изменении менять дату в атрибуте content ?

раскрыть ветку 2
+8
Это жутко специфичный случай, чтобы метатегами перебивать Last-Modified.
Я даже удивлён, что этот метатэг кто-то вспомнил и использует :)

Как ранее сказали, стоит один раз разобраться как работает кэширование на стороне браузера и на стороне прокси.
И по ситуации смотреть, как не подставить тех, кто ранее посещал сайт.
+1

лично я указываю время жизни кеша через htaccess что очень упрошяет код и жизнь, что-то типо такого


<FilesMatch "\.(js|css|txt)$">
Header set Cache-Control "max-age=604800"
</FilesMatch>

З.Ы. это не пример моего htaccess, код был взят с хабра, с первой попавшейся похожей нвовости, а именно от сюда https://habrahabr.ru/post/154643/

+4
Как разработчик говорю, это абсолютно твой косяк, делай хотя-бы версионирование, а лучше нормальный бандлинг
раскрыть ветку 3
+1

Согласен, признаю это мой косяк. К сожалению я об этом просто не знал. Но уже объяснили и даже статью скинули, теперь принял на вооружение ) Только вот про бандлинг ничего не говорили. Если не трудно расскажите что это? Можно и ссылку на материал по теме для изучения, буду признателен.

раскрыть ветку 2
0
Бандлинг это когда скрипты в один файл собираются, при этом он автоматически версионируется и минифицируется
0
Речь идёт о сборщиках grunt/gulp, а лучше webpack. Все ваши скрипты и стили надо собирать в один файл бандл и собственно сам сборщик будет следить за его версией
+4

конечно всякий пользователь-тыкальщик-компьютерных-клавиш обязательно знает, что нужно всего лишь сбросить кеш, чтобы сайт свой в бровзере посмотреть...

+14
Я бы на вопрос "вы там совсем охуели что ли" ответил бы "да" и бросил трубку.
раскрыть ветку 3
+14
Ответил бы "да" и охуел
раскрыть ветку 1
+8

Ало, это Шынгыс Сырлыбаев вас беспокоит...

-1

ахахаха а ты хорош!