Вы видите копию треда, сохраненную 1 августа 2021 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
@
ЗАПИЛИЛ ВЕСЬ ПРОЕКТ ЦЕЛИКОМ САМ
@
КАБАН КАБАНЫЧ СВЕТИТСЯ ОТ СЧАСТЬЯ
@
КИШОЧКИ ПРОЕКТА:
@
POST /products/create_product?name=Тапки
@
200 OK { "error": "Тапки уже существуют" }
@
НИКАКОГО ГИТХАБА
@
GIT FORMAT-PATCH
@
GIT SEND-EMAIL
@
ВЕСЬ ПРОЦЕСС ЧЕРЕЗ ПОЧТОВУЮ РАСУЛКУ
@
РЕВЬЮ ПОЧТОЙ
@
НОВЫЕ ВЕРСИИ ПОЧТОЙ
@
НИКАКИХ АТТАЧЕЙ, ВСЁ ПЛЕЙНТЕКСТОМ
@
@
@
@
@
А ВРОДЕ И УДОБНО...
@
БОЛЬШУЮ ЧАСТЬ ТЕСТОВОГО КОДА СОСТАВЛЯЮТ МОКИ ДЛЯ ВЫЗОВА СТОРОННИХ СЕРВИСОВ, БАЗЫ ДАННЫХ И АПИШЕК
@
ИНФРАСТРУКТУРУ ДЛЯ ИНТЕГРАЦИОННЫХ ТЕСТОВ ДЕЛАТЬ НИКОМУ НЕ ОХОТА
@
СЫЧЕВ, ПОЧЕМУ ТАК ДОЛГО??? КОГДА БУДЕТ ГОТОВО????
РЕТРО РАЗ В НЕДЕЛЮ
@
ПРОЦЕССЫ ИДУТ ПО ПИЗДЕ, ПОЛНО ЗАМЕЧАНИЙ, НЕДОВОЛЬСТВА И ПРЕДЛОЖЕНИЙ ПО УЛУЧШЕНИЮ
@
"А ДАВАЙТЕ НА ЭТОЙ НЕДЕЛЕ БЕЗ РЕТРО, А ТО ПО РЕЛИЗУ НЕ УСПЕВАЕМ"
@
ТАК ПОВТОРЯЕТСЯ КАЖДУЮ НЕДЕЛЮ УЖЕ ПОЛ ГОДА
>Ретро
>Раз в неделю
А хули там каждую неделю обсуждать? Не успевает же нового за неделю накопиться.
Блядь почти жизненно.
ПИШИТЕ E2E ТЕСТЫ
@
ИНФРАСТРУКТУРУ ПОДНИМАТЬ НИКОМУ НЕ ОХОТА ДА И ВООБЩЕ ВРЕМЕНИ НЕТ
@
ТЕСТЫ СРУТ НА СЕРВЕРЕ С КОТОРЫМ РАБОТАЮТ ТЕСТИРОВЩИКИ ПРЯМО ВО ВРЕМЯ ИХ РАБОТЫ
ПИШЕШЬ ЮНИТ ТЕСТЫ КОДОГЕНЕРАТОРОМ
@
ТИМЛИД ДУМАЕТ ЧТО ПИШЕШЬ РУКАМИ, ХВАЛИТ КАЧЕСТВО И СТАВИТ В ПРИМЕР ДРУГИМ
@
АНТИБУГУРТ
@
В НОНВОЙ ВЕРСИИ ПЛАГИН СЛОМАЛСЯ И ПРИХОДИТСЯ ПИСАТЬ РУКАМИ
>РЕТРО РАЗ В НЕДЕЛЮ
Хули вы так часто митингуете? Ментов на вас нет, не те митинги они разгоняют
НАПИСАЛ ОХУИТЕЛЬНЫЕ Е2Е ТЕСТЫ
@
ПРОИНТЕГРИРОВАЛ ИХ С CI/CD
@
ТЕСТЕРЫ СТАЛИ СКУЧАТЬ И НИХУЯ НЕ ДЕЛАТЬ
@
КАБАН УВИДЕЛ ВСЕ ЭТО И РЕШИЛ НЕ ПРОДЛЯТЬ ИМ КОНТРАКТЫ
@
ПОХВАЛИЛ И ДАЛ БАБЛА НА ПЕЛЬМЕНИ
@
АНТИБУГУРТ
Как минимум то, что релизы тухнут. За неделю подвижек особо нет
@
ПРОГРАММИРОВАНИЕ - 80%
@
ПОИСК ИНФОРМАЦИИ И ИЗУЧЕНИЕ ФРЕЙМВОРКОВ - 20%
@
ДВАДЦАТЫЕ ГОДЫ
@
ПРОГРАММИРОВАНИЕ - 5%
@
ИЗУЧЕНИЕ НОВЫХ ФРЕЙМВОРКОВ И ТЕХНОЛОГИЙ, ИСПРАВЛЕНИЕ ИЛИ ОБХОЖДЕНИЕ ИХ ГЛЮКОВ (Т.К. ВСЕ ПО КРАЙНЕЙ МЕРЕ ЗАПАДНЫЕ КАБАНЫ ХОТЯТ РАЗРАБАТЫВАТЬ ТОЛЬКО НА САМОМ НОВОМ, А ПОЭТОМУ СЫРОМ), NOSQL БАЗ, ОБЛАЧНЫХ ХОСТИНГОВ, ОБЛАЧНЫХ БАЗ, НЕБА И АЛЛАХА - 95%
@
ОЙ, ТУТ БОЛЕЕ ВАЖНАЯ ТАСКА, ПЕРЕКЛЮЧАЕШЬСЯ НА НЕЁ
@
ПЛАН РАБОТЫ ПО ПРЕДЫДУЩЕЙ ТАСКЕ В ГОЛОВЕ: ДА ПОШЁЛ Я НАХУЙ
@
ОЙ ТУТ БАГ, НАДО СРОЧНО ИСПРАВИТЬ
@
ОЙ, А ДАВАЙ ПОКА ПЕРЕКЛЮЧИМСЯ НА ЭТО
@
А ТУТ НИЧЕГО НЕ РАБОТАЕТ - ПЫТАЕШЬСЯ ВЫТАЩИТЬ ИЗ ЧЕЛОВЕКА ИНФОРМАЦИЮ О ТОМ, ЧТО КОНКРЕТНО НЕ РАБОТАЕТ - ОН МОЛЧИТ КАК ПАРТИЗАН ИЛИ ПРИСЫЛАЕТ КАКИЕ-ТО СКРИНШОТЫ, ПО КОТОРЫМ НИХУЯ НЕ ПОНЯТНО
@
ТЕСТИРУЕШЬ ВСЁ САМ, ЧТОБЫ ПОНЯТЬ, ЧТО НЕ ТАК
@
ЗА НЕДЕЛЮ СДЕЛАЛ ПОЛТОРА ТАСКИ
@
ВИКЛИ МИТИНГ
@
ОЙ, ПУК, СРЕНЬК
Потому что в нулевых программирование было представлено байтослесарьством и раскидыванием php скриптов по папкам
ДВАДЦАТЫЕ ГОДЫ
@
ПРОГРАММИРОВАНИЕ - 5%
@
ОСТАЛЬНОЕ - МИТИНГИ И ПОПЫТКИ ВЫЯСНИТЬ, ЧТО ИМЕЛ В ВИДУ ПИСАВШИЙ ТЗ
Так это проеб менеджера, что тебя с таски на таску пересаживают и на дают закончить
Такой прайс может быть, если ты в резюме указал желаемую ЗП. А я именно ее указал в 2013 и не менял, а когда закончил вуз и меня на собес позвали и сразу по рукам хлопнули я как-то не особо хотел вступать в конфликт и говорить, что это ЗП за 2013 год, до того как я магистратуру закончил и научился таки программировать, и сейчас хотелось бы чуть больше.
Для всего есть своё применение. Если у тебя данные релеационные - используй SQL базу. Если у тебя просто кеш в формате key-value, то и используй kv базу. Если ты хранишь слабо структурированную хуйню типа логов - то и используй соответствующую базу.
Чего баттхёртить то?
Что за газлайтинг? Будто быть неконфликтным человеокм - что-то плохое.
Иди лечись, а то найду и обоссу.
Точно, вот в джаве, шарпе и петухоне вовсе не тащишь триллион зависимостей на каждый ссаный круд.
В жс разбиение пакетов на много маленьких кусков нужно для того, что бы лишние килобайты на браузер не тянуть. В бекенде во первых пакетов гораздо меньше, а во вторых, не похуй ли что там лишние 10-20 мегабайт при деплое нужно будет на сервер заливать.
Ну, покажи гитхаб. Либо если не хочешь диванона, расскажи про самый интересный баг, который тебе встретился в работе.
Так он и не на собеседовании, а на дваче. Можно подумать, что я его возьму после поста тут. Сначала надо посмотреть друг на друга, яйца хуй и очко должны быть выбриты.
Ах да, забыл. Так и есть. Дэйли скрам митинги, викли скрам митинги, груминги-хуюминги, ретро-хуетро. Я нахуй шлю клиентов, которые такое практикуют. Если только минимальный скрам - викли, тогда это ещё можно терпеть
>В жс разбиение пакетов на много маленьких кусков нужно для того, что бы лишние килобайты на браузер не тянуть
Во-первых, нпм был сделан для ноды, которая не на фронте а на сервере крутится.
Во-вторых на фронте всё это говно лет 5 не актуально, потому что все используют esm, которые tree shakeable.
>В бекенде во первых пакетов гораздо меньше
С хуяли?
>а во вторых, не похуй ли что там лишние 10-20 мегабайт при деплое нужно будет на сервер заливать.
Началось маняврирование и moving the goalpost.
Та у меня скучные все баги были.
Самый "интересный" это когда был при включенном логировании за ночь откуда-то набегало 10 гигов сожранной оперативки(при выключенном программулина 100мб жрала), ну и оказалось что логирование велось с помощью самописного логгера в SQLite, а чтобы ограничить размер файла - его просто удаляли при достижении предела, попытка залогировать что-то после приводила к тому, что создавался новый файл, но в нем не было таблицы для лога, это кидало эксепшн, который тоже пытался логгироваться. Короче, вот такой вот "интересный" баг.
Скучно у меня короче. Никаких там потерь на миллион долларов из-за того что в проде что-то обнаружилось, никаких неотлавливаемых вещей, все вот так вот как-то и ловилось на этапе тестирования перед получением заключения от отдела качества ПО.
По задачам.
def hello(...,hello_version=hello_version)
@ 300 строк
if hello_version == 2:
@ 300 строк
if hello_version == 3:
@ 300 строк
def _hello(pupa, lupa, kwargs):
@ 300 строк
hello(..,kwargs)
@ 300 строк
def build_hello(config):
@ 300 строк
_hello(config.get_pupa(), config.get_lupa(), config.get_kwargs())
class Config:
@
...
Ну ты и зажрался, чел. Мне бы хотя бы понять какая hello_version исполняется в этой портянке на 1к строк… Если оно хотя бы не зависит от ENV — то уже бизнес-класс, я открываю шампанское…
В КОМАНДУ ПРИХОДИТ НОВЫЙ ПРОДАКТ-МЕНЕДЖЕР
@
ДАВАЙТЕ ДЕЛАТЬ ВСЕ ПО ФЕН-ШУЮ
@
ДАЕШЬ КОД-РЕВЬЮ
@
ДАЕШЬ ГАЙДЛАЙНЫ И ВИКИ
@
ДАЕШЬ ТЕСТИРОВАНИЕ
@
В ОБЩЕМ, ПАЦАНЫ, БОСС СКАЗАЛ "ХУЛИ ТАК ДОЛГО?"
@
ПОХУЙ РЕВЬЮ
@
ПОХУЙ ТЕСТИРОВАНИЕ
@
ГАЙДЛАЙНЫ НЕ НУЖНЫ
@
СИНЬОРЫ ЗАШИВАЮТСЯ? НАЙМЕМ ЕЩЕ ДЖУНОВ!
@
ОТДАЕМ ДЖУНАМ СИНЬРСКИЕ ЗАДАЧИ
@
ДЖУНЫ ХУЯРЯТ В МАСТЕР
@
РОНЯЮТ ПРОДАКШЕН НЕСКОЛЬКО РАЗ НА ДНЮ
@
ЗАТО НАТЯНУЛИ НОВЫЙ ДИЗАЙН
@
СЛЕДУЮЩИЙ ДИЗАЙН УЖЕ НА ПОДХОДЕ
@
У ПРОИЗВОДСТВЕННИКОВ РАСПИДОРАСИЛО АДМИНКУ
@
ПОДОЖДУТ, У НАС ВСЕ ПРОГРАММИСТЫ ЗАНЯТЫ
@
ПРОИЗВОДСТВЕННИКИ УВОЛЬНЯЮТСЯ
@
ДА И ХУЙ С НИМИ, ЛУЧШЕ НАЙМЕМ ЕЩЕ ДЖУНОВ
@
IT-ОТДЕЛ САМЫЙ БОЛЬШОЙ В КОМПАНИИ
В КОМАНДУ ПРИХОДИТ НОВЫЙ ПРОДАКТ-МЕНЕДЖЕР
@
ДАВАЙТЕ ДЕЛАТЬ ВСЕ ПО ФЕН-ШУЮ
@
ДАЕШЬ КОД-РЕВЬЮ
@
ДАЕШЬ ГАЙДЛАЙНЫ И ВИКИ
@
ДАЕШЬ ТЕСТИРОВАНИЕ
@
В ОБЩЕМ, ПАЦАНЫ, БОСС СКАЗАЛ "ХУЛИ ТАК ДОЛГО?"
@
ПОХУЙ РЕВЬЮ
@
ПОХУЙ ТЕСТИРОВАНИЕ
@
ГАЙДЛАЙНЫ НЕ НУЖНЫ
@
СИНЬОРЫ ЗАШИВАЮТСЯ? НАЙМЕМ ЕЩЕ ДЖУНОВ!
@
ОТДАЕМ ДЖУНАМ СИНЬРСКИЕ ЗАДАЧИ
@
ДЖУНЫ ХУЯРЯТ В МАСТЕР
@
РОНЯЮТ ПРОДАКШЕН НЕСКОЛЬКО РАЗ НА ДНЮ
@
ЗАТО НАТЯНУЛИ НОВЫЙ ДИЗАЙН
@
СЛЕДУЮЩИЙ ДИЗАЙН УЖЕ НА ПОДХОДЕ
@
У ПРОИЗВОДСТВЕННИКОВ РАСПИДОРАСИЛО АДМИНКУ
@
ПОДОЖДУТ, У НАС ВСЕ ПРОГРАММИСТЫ ЗАНЯТЫ
@
ПРОИЗВОДСТВЕННИКИ УВОЛЬНЯЮТСЯ
@
ДА И ХУЙ С НИМИ, ЛУЧШЕ НАЙМЕМ ЕЩЕ ДЖУНОВ
@
IT-ОТДЕЛ САМЫЙ БОЛЬШОЙ В КОМПАНИИ
> ДЖУНЫ ХУЯРЯТ В МАСТЕР
Не верю - первым делом же их ознакомят с правилами работы с репозиторием, в котором будет написано, что всё через мердж реквесты делается и в принципе ничего в мастер джунами не должно вливаться - ты хочешь сказать, что они прочтут это и хуйнут в мастер свои правки?
@
ОДИН ТЕСТ ПИШЕТСЯ НЕДЕЛЮ, В ЛУЧШЕМ СЛУЧАЕ ПОЛОВИНУ НЕДЕЛИ
@
ИЗ-ЗА ЛЮБОГО МИНОРНОГО ИЗМЕНЕНИЯ В ДИЗАЙНЕ ФРОНТА ПРИХОДИТСЯ ПЕРЕПИЛИВАТЬ ВСЕ ТЕСТЫ
Поначалу джуны как положено делают реквесты. Синьоры заворачивают большую часть из них. Реквесты ходят по кругу туда-сюда от разработчика к ревьюверу. Очередь на ревью копится. В итоге все синьоры занимаются исключительно ревью, потому что джунов в два раза больше чем синьоров. Продакт паникует, говорит сроки горят, давайте релизить так, похуй на кодстайл, похуй что баги - потом починим. В итоге у джунов права на коммита в мастер без согласования с олдами. Я сам не верил, но факт
Олдовые админы умели сами расследовать и фиксить проблемы в коде, а так же писать мониторинги и всякую автоматизацию. Нафиг нужен скриптушный мальчик, который просто побежит разрабам жаловаться?
Ну и вообще конкретно девопс - это разраб + админ своего же поделия (development & operations).
Пиздец. Это ж мало того что дохуя времени занимает, так ещё и не даёт погрузиться в работу. Как ты там работаешь?
Что плохого в том, чтобы просто писать код, вместо того, чтобы вкатывать в новый фреймворк или технологию каждый месяц?
1k-2k строк не хочешь?
Если тебе это неинтересно, то есть большая вероятность, что ты выбрал не ту профессию.
Ну я писал ось на ассемблере и си ещё и сделал этот проект дипломным, лол, но допиливать одни из миллионов строк ядра линупса - по-моему скучно
Мне надо решить мою конкретную проблему, потому что за меня сложновоспроизводимый баг никто не пофиксит, да и маргинальную фичу не сделает. Так что берешь и фигачишь.
Разверни мысль, базированный ты наш.
Со старта проиграл
Там зависимости меньше, но они жирее. Вон в той же Жабе есть Спринг, который как комбайн делает вообще всё. Аналогично с Джанго в питоне исключение - Го, где всё еще можно маленькие пакеты с одной четкой задачей, почти по тому же принципу как GNU утилиты
@
МОЖЕТ ЕЩЁ КУПЛЮ КАБРИОЛЕТ, ЧТОБЫ КАЙФОВАТЬ В ЖАРУ
@
В ОДНОЙ ИЗ МАШИН СДОХ МОТОР, ПОТРАТИЛ КУЧУ ДЕНЕГ НА ПОКУПКУ НОВОГО И ЗАМЕНУ
@
КАК РАЗ МОЖНО БЫЛО НА ЭТИ ДЕНЬГИ КУПИТЬ КАБРИОЛЕТ
@
ПОПРОСИЛИ ПОСКОРЕЕ ВЕРНУТЬ ДОЛГ НА ПАРУ КИЛОБАКСОВ
@
НУЖНО ПЛАТИТЬ КРЕДИТ, ХОТЬ И НЕБОЛЬШОЙ, НО ТОЖЕ РАСХОДЫ
@
ЛЕТНИЙ ОТДЫХ: ДА ПОШЁЛ Я НАХУЙ
ОБРАТНАЯ СОВМЕСТИМОСТЬ
уже достаточно
Если речь про бекенд в т.ч. для мобилок, то кабанчики часто хотят поддерживать 3.5 слоупоков, которые не хотят обновляться
>НАПИСАЛ ОХУИТЕЛЬНЫЕ Е2Е ТЕСТЫ
>@
>ПРОИНТЕГРИРОВАЛ ИХ С CI/CD
>@
>ТЕСТЕРЫ СТАЛИ СКУЧАТЬ И НИХУЯ НЕ ДЕЛАТЬ
>@
>КАБАН УВИДЕЛ ВСЕ ЭТО И РЕШИЛ НЕ ПРОДЛЯТЬ ИМ КОНТРАКТЫ
>@
>ПОХВАЛИЛ И ДАЛ БАБЛА НА ПЕЛЬМЕНИ
>@
>АНТИБУГУРТ
Если бы это было так, то все компании радовались, что тестеры не нужны и прогеры умеют в "без багов".
Так тестеры и не нужны. Особенно в тех количествах, в которых их нанимают в России. Просто нужно жен откуда-то брать анальникам.
Кэтбойчиков на всех не хватает (
Деревья верчёные или О-большое точёные?
Ты прав, но только в одном случае - прогер, как ты выполняет покрытие автотестами. Ну в случае с твоей программой небольшого размера ты сидел и покрывал автотестами на 100%. Ну а кабанчик обрадовался, подумав, что он сэкономил на тестерах.
По идее тебя поэксплуатировали, вместо того, чтобы за тебя тесты писал тест-автоматизации.
Но если у вас в команде одни мануальщики сидели, тогда оправдано
Прогер и тестер должны быть два разных человека. Тестер может быть прогером.
Если у тебя нет накопленного бабла на >6 месяцев жизни вообще без работы, то ты хуй собачий, а не синьор.
У меня есть, но я мидл и без тянучки. С тянучкой вообще невозможно копить деньги, всё проебываеться, что не отдал за кредиты.
Мы жуки-плавунцы или мужики российские гречневые гребцы? Али не выйдем на недоплачиваемые таски? За гроши совестью мужицкой приторговали? Да нет, я по глазам вашим мужицким вижу, что тут токсичных нет.
Не та порода! Тут закал девелоперовский. Тут рабочие ноуты жужжат по низам! Тут гребец свою галеру, свой git и свою IDE стережет накрепко! Тут заради блага легкомысленного, заради спринта легкого и тимбилдингов унылых никто не пошевелится даже! Тут иные мотивации, другие нравы произрастают!
Тут кодер единоначалие блюдет. Сами мы што – джуны? Нас kanban по задачам понесет, мы и затеряться можем. Нас техлид корнями крепит к продуктовой среде, как вековой дуб корневище! С тимлидом мы любые баги вытерпим. А от того и сами его блюдем – со своей стороны, с программерской.
Если увидаем мы, как техдиру нехорошо, так последний макбук долой из рюкзака – «Носи, командир!» Нам, мужикам, и бизнесланч в горло не лезет, коли погонщика нужда грызет! А кто супротив нашего погонщика лезет, кто смуту разводит в команде – того мы вот так: за шеяку – и к hr! Потому что смута выгодна юрким, вертлявым, сладковатым и мятеньким. Тем, кто как гадюка в аджаил лезет наш. Кто мокрицею в кашу норовит в опенспейс упасть. Чуждо нам это! Не те сказки нам скрам мастер баил на митингах! Иные песни мы на стендапах запевали!
Давай, ребята, подходи подписывать переработки! Завтра по две таски на себя в жире ассайним, безлактозный кофе в перерыве обеспечим, бачки прямо к офису подвезут.
Сыты будем, а остальное что нам разрабам, – переживем, заработаем, в вейп сольем, да в перерыве запарим.
А вот это тогда зачем?
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type
Чтобы веб-сервер раздавал файлы разниых типов - картинки, иекст, экзещники. Как думаешь файлообменники работают?
Валидационная ошибка на уровне приложение, приложение сообщает веб-серверу данные, которые надо отдавать, веб-сервер их отдаёт со статусом 200.
<Сигнатура>
length: <размер данных в байтах>
protocol: <название протокола прикладного уровня>
data: <сырые данные>
Всё же это про API. Хотелось бы более универсальный протокол. Например, чтобы тот же гипертекст тоже можно было передавать:
length: 14
protocol: raw:text/html
data: <h1>Hello</h1>
Тем, что http плохо подходит для построения API без натягивания совы на глобус. Понятно, что толку от велосипеда нет, даже graphql не смог потеснить рест, куда уж моему vasyan/1.0
>http плохо подходит для построения AP
Давеча в мвп треде выяснилось, что вкатуны не знают http от слова совсем. И потом они пишут, что http плохо подходит для апи, попутно переизобретая тот же самый http... Фейспалм блджад
> graphql не смог потеснить рест
У него не было такой задачи. У графКъюЛ по факту нет аналога, и он решает совсем отличные от реста задачи.
Вот у gRPC была задача заменить HTTP, и он с ней справился. Другое дело, что вы - не гугл, и вам он не нужен.
Рекомендую использовать вместо HTTP подходящий протокол для своего приложения с валидационными ошибками.
Чел, а как ты накрутишь мониторинг количества ошибок авторизации? Наверное будешь регекспами выдирать из трафика фразу "запросите доступ к тапкам у бати".
@
ЩАС БАТЯ ВАМ ПОКАЖЕТ КАК ДЕЛАТЬ ПРОТОКОЛЫ
@
ПОДЕРЖИТЕ МОЕ ПИВО
@
ТААКС. ДЛЯ НАЧАЛА НАМ НУЖЕН CONTENT-TYPE И CONTENT-LENGTH
@
НУ И КОД РЕЗУЛЬТАТА НЕ ПОМЕШАЛ БЫ
@
ПАДАЖЖИ БЛЯ. АУТЕНТИФИКАЦИЯ? ЩАС НАВЕЛОСИПЕДИМ
@
КЭШИРОВАНИЕ? ЩА БУДЕТ В САМОМ ЛУЧШЕМ ВИДЕ, НЕ ССАТЬ
@
ВЕРСИОНИРОВАНИЕ? КОМУ ЭТО ВАЩЕ НАДО, ВЕРСИОНИРОВАНИЕ ДЛЯ ЛОХОВ
@
БЕЗОПАСНОСТЬ? ДЛЯ ТРУСОВ
@
...
@
ЕЩЁ ЧЕРЕЗ ПАРУ ЛЕТ ОНО БУДЕТ РАБОТАТЬ
@
ЩАС БАТЯ ВАМ ПОКАЖЕТ КАК ДЕЛАТЬ БЫСТРЫЕ БАЗЫ ДАННЫХ
@
ПОДЕРЖИ МОЕ ПИВО
@
...
@
$mergeObjects: [ { $arrayElemAt: [ "$fromItems", 0 ] }, "$$ROOT" ]
@
НУ ТАК СМЕНИ БРАУЗЕР
@
РЯЯ, НО НА IE НЕ РАБОТАЕТ
@
НО МЫ ЕГО И НЕ ПОДДЕРЖИВАЕМ
@
РЯЯЯ IE МНЕ УДОБНЕЕ, Я ПРИВЫК
@
ПРЕДЛАГАЕШЬ ПЕРЕПИСАТЬ ТЗ И ВНЕСТИ IE В ТРЕБОВАНИЯ
@
НО МНЕ ЖЕ ПРИДЕТСЯ НАЧАЛЬНИКУ ВСЕ ОБЪЯСНЯТЬ.... ПУК ПУК
> КЭШИРОВАНИЕ? ЩА БУДЕТ В САМОМ ЛУЧШЕМ ВИДЕ, НЕ ССАТЬ
> @
ОТВЕТ СЕРВЕРА ЗАПИСЫВАЕТСЯ В ФАЙЛИК
@
ЕСЛИ ФАЙЛИК СУЩЕСТВУЕТ И В НЁМ ЧТО-ТО ЕСТЬ, ОБРАЩЕНИЯ К СЕРВЕРУ НЕТ - ОТВЕТ СРАЗУ БЕРЁТСЯ ИЗ ФАЙЛИКА
@
НИКАКОГО ОБНОВЛЕНИЯ КЭША НЕТ НЕТ
@
УБЕДИЛ МАНАГЕРШУ/ПРОДАКТОВНЕРШУ, ЧТО БЕЗ ТЕСТОВ ПРОЕКТУ ГРОБ ГРОБ КЛАДБИЩЕ
@
ТЕПЕРЬ ВАМ НАДО 95% COVERAGE ИНАЧЕ КОД НЕ ПУШИТСЯ В РЕПУ
@
МОКОВЫЕ МОКИ ТЕСТИРУЮТСЯ НА ДРУГИХ МОКАХ
@
ТЕСТЫ ДЛЯ ГЕТТЕРОВ И СЕТТЕРОВ
@
НОВЫХ ФИЧЕЙ НЕТ УЖЕ ПОЛГОДА
@
УВОЛЬНЯЮТ НАХУЙ ВМЕСТЕ С МАНАГЕРШЕЙ
@
РАССКАЖИТЕ, КАКИЕ ДОСТИЖЕНИЯ У ВАС БЫЛИ НА ПРЕДЫДУЩИХ ПРОЕКТАХ?
>НОВЫХ ФИЧЕЙ НЕТ УЖЕ ПОЛГОДА
НАКОНЕЦ-ТО БЛЯДЬ
как же заебали эти охуительные "обновления", одно охуительнее другого
Андрей Викторович, тушите задницу
Просто у него крепкая университетская база, вот тридцатилетние гречневые уебаны с курсов и бомбят в тредах
Какой еще блядь протокол? Зачем, если есть РЕСТ? Иди ты нахуй.
Вес только через графпиздюель возвращается.
@
ТАСКИ ВЫДАЮТ ВАЖНЫЕ ДЛЯ ПРОЕКТА
@
В СРОКИ УКЛАДЫВАЕШЬСЯ
@
СЧИТАЕШЬ, ЧТО ХРЕНОВО РАБОТАЕШЬ
@
НЕ УВЕРЕН, МОЖЕШЬ ЛИ ТЫ СКАЗАТЬ, ЧТО ТЯНЕШЬ РАЗРАБОТКУ ПРОЕКТА
@
СЧИТАЕШЬ ВСЕХ, КТО ОТКРОВЕННО НЕ ТУПИТ, КОМПЕТЕНТНЕЕ СЕБЯ
Клоун с регалиями и БАЗОЙ с лора. Шизик, обоссываем всеми, кому не лень: https://www.linux.org.ru/forum/web-development/13199140
На вкус и запах фломастеры разные.
1. Go пиарит гугл, а D пиарит хуй знает кто.
2. У D не было цели лезть в веб, он задумывался как убийца крестов, как Rust, но в итоге получились те же кресты.
>Есть разница между данными и поведением. HTML — это данные; JS — поведение. Поведение предписывается, ни много ни мало, браузеру пользователя. А он, пользователь, вас об этом просил? Указывать ЕГО браузеру, что делать? А вы у него, пользователя то есть, разрешения спросили на то, чтобы плоды вашего воспалённого воображения в ЕГО браузере запускать? Когда вы на смартфон приложение ставите, у вас система сколько раз разрешения спрашивает? А ещё всякие ключи-подписи-сертификаты проверяет и вопит как резаная, если что-то не сошлось. А тут любая шваль, изучившая пять тэгов и три с половиной оператора, считает своим долгом в МОЁМ браузере развлекаться.
>За это расстрелять мало, за это надо на кол сажать.
320x194, 0:03
Так и было
Хорошо, что всё меньше становится таких долбоёбов, да и поддержка ишака будет официально завершена в следующем году
Как перестать им быть? Хочу во фронт. Я бы может не против быть фуллстеком, но не когда бэк на пыхе
Ладно, с пыхой всё ок - с битриксом проблемы, тк это битрикс. Хочу сбежать с битрикса, но пока только удаётся зп наращивать на битриксе...
Перекатывайся в ноду.
Хотя не, есть проблемы и с пыхой - мне не нравится, как хтмл шаблоны на пхп выглядят. Не всегда удаётся выкроить время и перевести всё на vue.
Вряд-ли - там не только я эти шаблоны трогать буду, люди не поймут. Ну и что-то я не задумывался над пагом для пыхи, хз как это стыкуется. А на вью шаблоны и без пага красивые
емнип автор крутой книжки боевой софт под линух или я путаю с другим автором , но вроде он
Не он, этот шизик высрал тольно 3.5 книги о программировании для школьников и пару методичек для студентов. При этом из опыта программирования промышленного у него пара лет в 90-х и начале нулевых, а не промышленного - пердолинг говна для себя, которое никто больше не использует.
Не на три, а все 5-10.
как на hh обойти анальное ограничение просмотра чужих резюме без регистрации работодателем с подтверждением и оплатой аккаунта?
Никак.
Причем самомнение у столярова абсолютно несоизмеримо с его достижениями. Да, регалии, ага, круто. Но где значимые работы мирового уровня? Где что-нибудь вроде миникса (которая была изначально учебной ОС Таненбаума) или плюсов Страуструпа? Сколько выдающихся людей выросло по его книгам?
Я по праздникам этот тред перечитываю, он как хороший стендап.
У них разные задачи. Задача графкюл - позволять фронтам выгребать по пол базы за один запрос, по тому что 3-4 рест запроса для них сложно и попахивает говнокодом. Задача gRPC - за минимум трафика и времени проца перекинуть одну структурку или стрим структурок с одной микрописечки микросервиса на другую.
Зачем тебе стандартная библиотека? Ты любитель диктатуры? Паникуешь перед неизвестным?
@
ДРУГИЕ ДЕВЕЛОПЕРЫ ДУМАЮТ ЧТО ТЫ ЗАНЯТ
@
НАЧАЛЬНИК ДУМАЕТ ЧТО ТЫ ЗАНЯТ
@
СЕМЬЯ ДУМАЕТ ЧТО ТЫ ЗАНЯТ
@
ОН ПРОГРАММИСТ, ОН ЖЕ ЗАНЯТ
@
СКРОЛЛИШЬ ДВАЧ, ОТКРЫТА ВКЛАДКА БИНАНСА, НЕ ЗАНЯТ
@
АНТИБУГУРТ
Я уже третий день хуи пинаю. Прошлый спринт выполнили на 100%. Этот тоже выполним, скорее всего. Думаю, в следующий понедельник начну работать.
Поделись, пожалуйста, способами наебать все эти жиры-хуиры и менеджеров-хуеренжеров чтобы тоже скролить двачи и антибугуртировать.
Это как прокрастинация, только наоборот. Сначала делаешь, а потом сидишь-пердишь, но делаешь вид, что делаешь.
Ну во-первых я работаю в средней продуктовке, а не в галере ну или в каком-нибудь ФААНГЕ, поэтому у меня никаких переработок и вылезаний из кожи нет.
А так, вот это немного прав: >>10065
Дело в том, что ты можешь быть улиткой, но если допустим тестеры или аналитики обрабатывают таски дольше, чем тебе нужно их сделать, или если средняя скорость разработчиков ниже чем твоя, то у тебя получается избыток времени.
Ну и ещё часто вижу как люди работают неэффективно и пинают хуи до последнего, я же стараюсь закрывать таски очень быстро, отвечать людям сразу и спокойно находиться в режиме ожидания, занимаясь либо проектами для души, либо скролля что-то.
ТЕСТЕРЫ ДУМАЮТ ЧТО ТЫ НЕ ЗАНЯТ
@
ДЖУНЫ ДУМАЮТ ЧТО ТЫ НЕ ЗАНЯТ
@
АНАЛИТИКИ ДУМАЮТ ЧТО ТЫ НЕ ЗАНЯТ
@
ВСЕМ ТОЛЬКО СПРОСИТЬ
@
ПИЛИШЬ ЗАДАЧУ С ЭСТИМЕЙТОМ В ДЕНЬ ТРИ ДНЯ
Нет, там в первом помидор, во втором лид. Миддл с жопой в пене делает 7623-й таск за спринт в овертайме. Джун вообще за 3 месяца спал 10 часов.
@
НЕ ЗНАЕШЬ ОТВЕТЫ, СЛИВАЕШЬСЯ
@
ПОЛУЧАЕШЬ ОФФЕР
@
РАБОТАЕШЬ В ЭТОЙ КОНТОРЕ ГОД
@
ВСЁ ЕЩЁ НЕ ЗНАЕШЬ ОТВЕТА НА ТЕ ВОПРОСЫ
ДЖУНИПЕРЫ НЕ ПРОХОДЯТ СОБЕСЫ
@
СЕНИВОРЫ ПРОХОДЯТ, НО ПОСЫЛАЮТ ВАС НАХУЙ ИЗ-зА ДЕБИЛЬНЫХ ВОПРОСОВ
@
У КАБАНА БОМБИТ ОТ НЕДОКОМПЛЕКТОВАННОЙ КОМАНДЫ
Так ведь он всё правильно написал, что не так-то?
@
РАССКАЗЫВАЕШЬ В ПОДРОБНОСТЯХ
@
ПОТОМ ЕЩЕ ПОЛЧАСА ВОПРОСОВ УРОВНЯ ЧЕМ ГЕТ ОТЛИЧАЕТСЯ ОТ ПОСТА
А потом еще почему канализационные люки круглые и где вы видите себя через пять лет?
Следом задаю вопросы, используют ли они ту хуйню, которую спрашивают.
Где-то в 1/3 случаев вопрос имеет практический смысл. Остальные вопросы - отсеить вкатунов и синьоров, которым остоебенили вопросы по ООП и алго задачки
@
НЕ СПРОСИВ РАЗРАБОТЧИКОВ
@
РАЗРАБЫ ДЕЛАЮТ ПОЛТОРА ГОДА РЕШЕНИЕ, КОТОРОЕ НА НОРМАЛЬНОМ СТЕКЕ ДЕЛАЛОСЬ БЫ 6 МЕСЯЦЕВ
@
НАНЯТЬ НИКОГО НЕ ПОЛУЧАЕТСЯ
@
САМ ПОЛИРУЕШЬ РЕЗЮМЕ ЧТОБ ГЕПНУТЬСЯ НА 2Х
Как бизнес может выбрать стек без разрабов, и главное нахуя? Клиенты/заказчики чтоли поставили условие? нехуй работать на галерах
Класс — это совокупность всех сбережений индивида (или же домохозяйства), то есть суммарная стоимость всего нажитого и унаследованного, всех сбережений в виде, к примеру, наличных денег, криптовалют, балансов банковских счетов (доллары, рубли, ОМС), акций биржевых инвестиционных фондов, дворцов, вилл, домиков, коттеджей, яхт, катеров, лодочных прицепов, моторных и обычных лодок, электро- и обычных велосипедов, автомобилей, вертолётов, земельных участков, акций золотодобывающих корпораций, мерных слитков и инвестиционных монет из драгоценных металлов.
"Я отношусь к среднему классу", — с гордостью говорит человек на Западе, а потом выходит из ветклиники, в которой работает, садится за руль автомобиля и возвращается на свою виллу. На балконе виллы — благоухающие цветы и обеденный столик со стульями.
https://citizen1980.livejournal.com/310.html
"Я отношусь к среднему классу", — с гордостью говорит врач в России, а потом подходит к подъезду, возле двери которого толпится круг из десятка курильщиков, протискивается между ними, входит в свой подъезд, заходит в лифт и нажимает на копчёную, обугленную кнопку, которая изначально была белоснежной (картинки 28 и 29). Лифт поднимает его на 8-й этаж "виллы". Врач выходит из лифта и, сжимая в руке дистанционный электрошокер, протискивается между обезьяночеловеками (картинка 30), которых пригласил в подъезд владелец одной из квартир, и наконец-то добирается до своей двери, открывает замок ключом, входит, включает светильник, закрывает дверь, разувается. На балконе "виллы" — лестница-стремянка, матрац, огнетушитель и старый холодильник, использующийся в качестве шкафа.
Опросили потенциальных клиентов и решили делать продукт на основе решений, которые использует 40% потециальных клиентов. Типа, так продать проще.
Что значит использует 40% клиентов? Пилить фронт для шестого осла, так как клиенты на XP сидят до сих пор?
Значит что 40% клиентов использовали salesforce для менеджмента своего бизнеса, и наш кабанчик решил делать "продукт" в виде пакета для salesforce. Чтоб у них был один инструмент для всего.
У клиента есть ИТ команда на самом деле один дед-ексель и баба-хмлдевелопер Senior Executive Officer Lead Boss -ов.
Они сидят на каком-то говне типа визуалбейсика себе пердят уже десятки лет и поддерживают какой-то буржуйский аналог 1С.
Клиент решил выпустить новый продукт, взял аутсорс СНГ макак.
Senior Executive Officer Lead Bossы решают пилить все на визуал бейсике и MS SQL 2006 ибо новый не купят + поддержка ИЕ6 шоб можно было синтегрировать со старым говном, которое только там работает.
https://www.youtube.com/watch?v=yNUJ3vAeyJQ
Что за хуйню несет тот петуч? Всем испокон веков известно, что инкапсуляция = скрытие реализации, это ответит любой от бегинера-порриджа до пузатого 40-летнего синьора-тимлида. Нахуй этот тип перевернул все с ног на голову, описав абсолютно ебанутым и сложным определением, которое по факту означает 1 в 1 то же самое? Бугурт, в общем
Диплом тупо подтверждает, что ты умеешь каждый день вставать к 8 утра и делать долгосрочные задания.
Нихуя, у меня однокашница полгода не появлялась в 11 классе. Из школы даже долбоеба не исключают, разве что в тюрьму попадет.
Такое и во многих вузах практикуется.
Поиск через гет нужен только для того, что бы другому можно было кверю запроса скинуть другому человек
И для добавления в закладки.
Какую карьеру там начинают малолетние ебланы в 18? Карьеру охранника в пятёрочке? А нет, их даже туда не возьмут, потому что ещё в армейке не были.
Я в конце второго курса вкатился а потом вылетел на зимней сессии, потому что мотивацию учится проебал и пошел на заочку ради корки
Я бы наверно после школы вкатился, если бы не было уверенности в самом начале, что вуз это неебаца какое крутое место
Поэтому надо начинать работать ещё в универе, курса с третьего. Максимум четвёртого. Плюшки и диплома, и опыта.
Можно начинать с первого на заочке, совмещение на очном это пиздец и для работы и для учебы
>Типа, так продать проще.
И не только это, старое говно дольше и сложнее поддерживать а значит больше прибыли галере. Только на работу на такую галеру нужно приглашать 40 летних старперов что бы не сбегали и смогли годами ковырять гавнокод.
Вывод: аттестат не нужен, пустая трата времени.
>Какую карьеру там начинают малолетние ебланы в 18?
Автомеханик, электрик, штукатурщик, укладчик плитки, за 5 лет зп будет минимум 100-200к. А ты после своего гавновуза будешь получать от силы 20к.
Охуеть как толсто.
> позволил начать карьеру на 5 лет позже
Начнём с того, что это хорошо. Работать - это плохо, очевидно же, никто не станет работать без нужды.
Закончим тем, что у большинства карьера это шуршать в торговле за 25-40, в зависимости от региона, тысяч рублей. В месяц. Если кто-то делает хорошую карьеру - вообще неважно, когда он начал, тут это роли не играет.
и не 5 лет, а 4 года - бакалавров разве не больше, чем специалистов? Я вот бакалавр юриспруденции
>>11817
> Автомеханик, электрик, штукатурщик, укладчик плитки, за 5 лет зп будет минимум 100-200к.
Блет, как же хорошо в прекрасной России будущего, аж слёзы наворачиваются. Но это перевернуть надо.
Да, боты же.
>Работать - это плохо, очевидно же
Как бы мне родиться саудовским принцем? Поделись секретиком.
Юнит тесты должен писать сам прогер как аксиома. Но это не панацея.
Одну и ту же пасту мусолят, только поставляют слова.
Почитать про Рякт/Vue, сделать на Рякте/Vue фронт а на пхп пусть будет апишка ну или запрекомпилить реактовские/etc. шаблоны в хтмл и отдавать их из пыхи.
Зато мат или CS вышка не в шараге естессна дает базу для того чтобы пробраться в хорошие конторы. Начать с галеры или васянского стартапа в 18 лет впрочем никто не мешает.
Что лучше - 5 лет свободы в юности или в старости?
@
РЕВЬЮ ЗАВОРАЧИВАЮТ
@
ВОТ ТУТ МОЖНО СДЕЛАТЬ НА ОДНУ СТРОЧКУ КОРОЧЕ
@
НЕПОНЯТНАЯ ТАСКА, КОТОРУЮ ТЫ ДОГАДАЛСЯ СДЕЛАТЬ ТОЛЬКО ЧЕРЕЗ ЖОПУ, МОЖЕТ НА РЕВЬЮ ПОДСКАЖУТ ЧТО-ТО НОРМАЛЬНОЕ
@
ИЗМЕНЕНИЯ ПРИНЯТЫ
Всё правильно, думаешь, кто-то сидит и вникает в твою задачу часами, чтобы понять, что ты там нахуевертил?
Вот осознаёшь ты свою неопытность и надеешься на чувство ответственности мудрых и опытных сеньоров, которые на ревью посоветуют что-нибудь дельное. А не на сеньоров - так на тестировщиков, которые проверят все кейсы, а не отпишутся "вроде норм". Но спустя несколько багов с прода понимаешь, что надеяться можно только на себя
Ревью не нужно.
я не экстраверт
Луговский унижает C++ макаку http://web.archive.org/web/20171028025247/http://www.sql.ru/forum/466654/s
Работать в нашем банке большая честь http://web.archive.org/web/20080613175919/http://forum.ixbt.com/print/0078/002993.html
@
ТЕПЕРЬ НА ТВОИХ КОДРЕВЬЮ ОН ПРИДИРАЕТСЯ КО ВСЕМУ, ЧЕМУ ТОЛЬКО МОЖНО ПРИДРАТЬСЯ
Все так, ревью не для возни с кодом, а несёт гораздо важнейшую цель - установление иерархии
Всегда провожу отличный полезные нетоксичные кодревью.
Часто сам переписываю куски кода и предлагаю коллегам, пишу подробные посты разъяснения со скриншотами и ссылками на источники, такие мини статьи на медиуме.
И всегда прекрасный фидбэк и здоровая атмосфера.
В пир и 360 ревью по отзывам «отличные кодревью» всегда в топе, а это все ведёт к повышению чеке, как вы понимаете
СПИШЬ, НО НЕДОСТАТОЧНО ГЛУБОКО
@
В ГОЛОВЕ КРУГОВОРОТ МЫСЛЕЙ О ТОМ, КАК РЕШИТЬ ТАСКУ
@
ЛЕЖИШЬ С НИМИ ГДЕ-ТО ЧАС, НЕВОЛЬНО ЗАДУМЫВАЕШЬСЯ НАД НИМИ
@
В КОНЦЕ КОНЦОВ ДО ТЕБЯ ДОХОДИТ 2 ФАКТА
@
СЕЙЧАС ВЫХОДНЫЕ
@
ТЫ РЕШАЛ НЕ НАСТОЯЩУЮ ЗАДАЧУ, А ВЫДУМАННУЮ МОЗГОМ ЧИСТО ПО ПРИКОЛУ
ПРОВОДИТСЯ КОД РЕВЬЮ
@
С ЦЕЛЬЮ НАЙТИ БАГИ ВО ВРЕМЯ КОД РЕВЬЮ
@
ПОМИДОРЫ В 20 ЛЕТ ПРИДИРАЮТСЯ К ТОЧКЕ С ЗАПЯТОЙ НЕ В ТОМ МЕСТЕ
@
ГАЙД ЛАЙНЫ ПРОВЕРЯЮТСЯ ПРИ СОЗДАНИИ ПУЛ РЕКВЕСТА СТАТИЧЕСКИМ АНАЛИЗАТОРОМ
У омежки трясутся ручки когда он видит Error и кодом 200, а Альфач уверен в себе и прекрасно понимает что подобные конструкции могут быть внедрены чтобы включить дополнительную обработку на фронте, он Альфа, это он вертит сервак как хочет а не наоборот, он не позволяет кому-то диктовать себе условия, он не живет по законам, он пишет законы
Это не альфач, это неграмотный долбоеб. С кодом >= 400 включить дополнительную обработку на фронте проще ибо при >= 400 fetch генерирует исключение.
У reject у промиса есть точное состояние? Кек.
Вебмакака, спок
Фронт это не только жопаскрипт в вебе. Это еще и мобильные приложения (и в целом любое приложение которое обращается к АПИ)
> (и в целом любое приложение которое обращается к АПИ)
Если мой сервер обращается к другим АПИ, то он тоже фронт?
Маня, это база. Volley для ондроеда также работает
https://developer.android.com/training/volley/request
Ты сейчас обосрешься, но нет.
Кто из них фронт и кто из них бек твое определение не описывает.
>это база
Свой жопаскрипт унеси подальше от нормальных разрабов-мобильщиков. Тебе прямиком в угол к Мойдодыру
Ни исключение, ни reject он не генерирует, и слава богу, что у разработчиков фетча хотя бы хватило ума не хендлить бизнес логику через эксепшены. Ты наверное хотел сказать, что там будет response.ok === false, либо перепутал с каким-нибудь аксиосом. Фетч может выкинуть эксепшен только при реальных ошибках, вроде ошибки подключения к серверу.
НЕПОНЯТНАЯ ТАСКА ВНЕ ТВОЕГО УРОВНЯ КОМПЕТЕНЦИИ, КОТОРУЮ ТЫ МОЖЕШЬ СДЕЛАТЬ ТОЛЬКО ЧЕРЕЗ ЖУТКИЕ КОСТЫЛИ
@
МОЖЕТ СТОИТ ЗАРАНЕЕ СПРОСИТЬ И ПОСОВЕТОВАТЬСЯ С КЕМ-ТО ПООПЫТНЕЕ, КТО ПРОЕКТ ВЕДЕТ И БУДЕТ ЭТОТ ГОВНОКОД РЕВЬЮИТЬ?
@
ДА НЕ, ХУЙНЯ КАКАЯ-ТО, ЛУЧШЕ НАЛЕПЛЮ КОСТЫЛЕЙ СРАЗУ И ПОТОМ В ПУЛЛ-РЕКВЕСТЕ СПРОШУ, КАК НАДО БЫЛО СДЕЛАТЬ
Да проверил в консоли уже... Куда катится мир...
fetch('https://httpstat.us/500')
.then(() => console.log('test'))
— Сервер, я хочу создать пользователя, что скажешь?
— 200 Success
— Заебись!
— { code: error, description: "mne pohui ya alfa" }
Я все жду нормальную поддержку grpc, одна надежда на wa. Сразу в пизду графкуэлы с рестом.
А чем тебе хуйql не нравится? Не заставляет юзать http, вызываешь "операции" (так у них называются процедуры), указываешь, какие поля вернуть, и всё. Разве что оверхед из-за того, что он текстовый.
Схуев ли ты решил, что валидный ответ сервера в принципе должен выбивать какой-то эксепшен?
Сложно сказать что используется, а что нет. Нагородил функцию, которая умеет все на свете возвращать с любой проекцией и потом думаешь как такое поддерживать и тестировать.
Схуев ли ты решил, что васяны, высравшие axios, правы?
Я в курсе, что в аксиосе есть такое отвратительное архитектурное решение, которое нужно вручную выключать в конфиге, вопрос был:
>Схуев ли ты решил, что валидный ответ сервера в принципе должен выбивать какой-то эксепшен?
Ну а хули, говорить сложно, писать говно просто.
Нахуя вызывать "операции" вместо url-эндпоинтов и нахуя указывать поля, вместо того, чтобы иметь стандартизированное REST API, которое любой популярный фреймворк дает реализовать в две строчки, вместо того, чтобы ебаться с виртуальным полям, вайтлистами полей на каждый пук и прочим? Для чего лишние усложнения?
Усложняется все, и фронтенд в том числе, потому что ему теперь приходится перепечатывать поля и в запрос.
Респонс-коды не могут означать никакую другую логику, кроме "бизнес-", потому что выставляются они всегда только конечным сервером и никем другим. Никакая транспортная фея между сервером и клиентом не сидит и не выставляет эти коды. "Ошибка транспорта" в http - это ошибка соединения с сервером или еще какой пиздец. Все остальное, от 200 до 500 - это детали взаимодействия конкретного клиента и сервера, которые означают конкретные вещи в данном контексте, то есть бизнес-логика.
>18 век
>посмотрите сколько людей поддерживают рабство, не может же оно быть чем-то плохим
>21 век
>посмотрите сколько http-клиентов совершили одинаковую архитектурную ошибку, не может же она быть чем-то плохим
Справедливости ради, порой проще написать код и когда есть наглядный пример уже видеть что поправить, чем рассуждать об этом словами. Но это когда какая-то мелкая фича до 50-100 строк
Мне это не нужно, чтобы понять необходимость либерализма, а ты не можешь в простейшую логику.
Любая ошибка сервера - это бизнес-ошибка, которую клиент должен обработать каким-то образом(например отобразить "бэк что-то нахуевертил и там 500тит, пишите в поддержку").
Проиграл
У тебя мышление омежки. Ты себя автомат ассоциируешь с чушкой, которого ебут. У альфача совсем иной майндсет, это он устанавливает правила
Вот типичный Альфа
vscode. vim. ну для извращенцев emacs.
Инструменты разработки стоят дешево по сравнению с зарплатой программиста. Иди в /td спроси сколько их инструменты стоя и какие там анальные ограничения - продажей почки не отделаешься чтобы все это купить.
ИДЕшки стоят 5-10к в год. То есть у среднего кодера они окупаются за 1 (один) рабочий день. Нужно быть м-м-м-максимум пидорахой, чтобы на этом экономить.
Использовать базовые возможности бесплатных ide, а для остального сторонний софт.
Можно, я вот в виме пишу и мне норм.
За цену идеи я могу есть шавермы до конца своих дней!
На работе выдадут лицуху, для личного использования комьюнити версий хватает за глаза
Понимаю, а ты понимаешь, что такое КОНТЕКСТ ОБСУЖДЕНИЯ и почему в контексте обсуждения HTTP-ИНТЕРФЕЙСА любой ответ сервера - это БИЗНЕС ЛОГИКА с точки зрения http-клиента?
Ну у тебя тут случай, когда http статус реально означает статус транспортировки(всего стрима данных целиком), а структура этого стрима данных - это уже отдельная вещь, хоть error там поля, хоть huerror. Тогда обычный не-стримящийся http-запрос - это на 100% атомарная операция с точки зрения и клиента, и сервера, там "ошибка транспорта" может быть только одна - это "соединение с сервером не установлено". Поэтому и глупо говорить, что http-статусы означают некие ошибки транспортировки и что их нужно под это якобы резервировать, таких ошибок нет и быть не может.
В контексте обсуждения к тебе конкретно был вопрос - надо натягивать бизнес-логику на хттп код или нет. Нахуя ты приплел свой сраный ахиох или че там у тебя?
Если уж за бизнес логику цепляться, то она во внутреннем слое лежит и ее вообще ебать не должно http там или азбука Морзе постукиваниями по водопроводному стояку. Но периферия, в данном случае http эндпоинт, отражает состояние бизнес логики (БЛ) в виде представления, например в виде json. Тогда вопросы
1 Достаточно ли для представления БЛ одного только жсона
2 Могут ли http статусы отражать что-либо в БЛ
То есть это все го лишь вопросы дизайна.
Если у нас БЛ генерирует эксепшены, то их обычно во многих бекенд фреймворках трансформируют в http коды >= 400 . Обычно принято не бороться с фреймворком , а писать как положено дизайном фреймворка. Ежели система сложная и как обычно в таких случаях велосипедная, то можно свой дизайн сделать где всегда будет 200 отдаваться.
Весь ответ сервера, включая статус, заголовки, тело и даже обрыв соединения - это одинаковая "бизнес-логика" с точки зрения http-клиента, и всю ее нужно обработать. Ты же пытаешься сказать, что для клиента почему-то текст/байты лежащие в теле ответа - это почему-то некая "бизнес-логика", а байты, лежащие в статус коде - это нечто другое, и абсолютно не понятно, по какому принципу ты их разделил и записал одни туда, а другие сюда. Перед клиентом стоит общая задача "распарсить ответ и получить индикатор его успеха/не успеха", это и есть его "бизнес-логика", ака самая общая и абстрактно сформулированная логика задачи, не включающая в себя конкретные детали имплементации.
Я обычно использую некоторое подмножество HTTP ошибок, только те, которые не могут возникнуть по вине промежуточного слоя, а только из-за ошибок логики.
400 - неправильный запрос от клиента, ошибка валидации
409 - уже выполняется конкурирующий запрос, попробовать позже
401, 403 - понятно, нет авторизации
503 - временно недоступно.
Остальные коды не использую. 500 генерируется в случае непредвиденной ошибки (исключения), 404 - только в случае ошибки пути, ни о каких "объект не найден" речи не идет. Ессно, я не делаю REST.
>которые не могут возникнуть по вине промежуточного слоя, а только из-за ошибок логики.
Весь http-протокол - это "промежуточный слой" между клиентом и сервером. И принципиально у тебя только два варианта - это либо отдать все без исключения коды, от 100 до 599 под некие "статусы транспортного протокола", ака путь 200 { status: "error" }, либо пользоваться ими как частью серверной логики, наравне с тем же телом запроса. Первый пусть заведомо ложный и тупиковый, потому что никаких транспортных автобусов, действующих независимо от твоего сервера, не существует, любые коды, даже сотки и трехсотки и так выставляются твоим сервером по определенной логике(да-да nginx и спрятанный во фреймворке роутинг - это такая же часть сервера, как и самая абстрактная бизнес-логика). И компромисс "буду пользоваться статус кодами, но на полшишечки" - это решение еще хуже, чем вообще статус кодами не пользоваться и хуярить 200 на все, что до сервера дотронулось, потому что второй вариант хотя бы последователен в своей глупости, а вариант с компромиссом распихивает глупость в отдельные выбранные по желанию левой пятки места.
Я тебе так скажу, коды используются для упрощения отладки в первую очередь. Если у тебя 200 - отсутствие ошибки гарантируется, а если нет - ты идешь и смотришь, что там не так. Потому что на самом деле потребителю апи пофигу, что ты там прислал, он все равно по-хорошему должен читать тело запроса. Ну а визуально отличить 200 от не-200 в девтулзах, например, в разы проще.
Рест и json - это разные вещи, в курсе?
>никаких транспортных автобусов
Был у нас как то прокси сервер перед бэком, который решил что некоторые виды запросов недостойны
XMLRPC
Вот если честно я бы как раз выбрал писать автотесты.
Вот серьезно, меня на первой работе посадили пилить кроссплатфоренное приложение на замарине, когда я пришел веб-разрабом. Я замарин нихуя не знал, мне сказали: ШАРП ЖИ, ЧЕ, НЕ РАЗБЕРЕШЬСЯ? В итоге нахуячил до альфы и съебал. Я выбросил трудовую, новую завел, на новом месте пытался делать вид что нигде не работал, типа вот, меня сейчас ничего самого делать не посадят. Угу, вот короче, у нас был проект раньше, чел что пилил - ушел, он оставил техдокументацию и ТЗ, оно у него не работало как надо, потому - выкидываем его код, он же на джаве, переписывай с нуля на шарпе, его код не дадим, типа нужно же чтоб ты доказал что сам можешь кодить, короче, не подглядывай.
В итоге - полгода проебанного времени, оно как-то работает, но там такой пиздец, что мне больно. Клиентам прада похуй, все что нужно делает и заебись. Но когда через год меня попросили добавить пару фич - это был совсем пиздец. Хорошо ччто между тем как допиливать фитчи новые - я успел таки в команде поработать и там таки тимлид понимал что я - долбоеб и какую-никакую культуру кода привил, потому дальше - таки по принципу бойскаута - нашел говно - убрал, работаю, но все равно.
Короче. Я к чему. К тому, что если вы попали на работу и вас посадили писать автотесты - радуйтесь. Это время чтобы разобраться, это время чтобы выработать понимание того как должен выглядить удобный для использования интерфейсы и т.д. А если вас сразу посадили писать код - сами потом будете гореть с того что понаписали.
Вот поетому стоит дрочить литкод и устраиваться сразу в норм контору типа Яндекса, Сбера и пр. где тебя есть нормальный онбординг тем более пока позволяет возраст, нейропластичность. Спасибо скажи что в "ООО Васян Солюшнс" тебя через пару недель на CTO не назначили.
Вы видите копию треда, сохраненную 1 августа 2021 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.