Препроцессор HTML jade теперь называется Pug. В связи с этим предлагаю сделать метку pug основной, jade её синонимом.
Есть другой JADE — Java Agent DEvelopment framework — но по нему вопросов я не нашёл, поэтому полагаю, что занимать метку jade для вопросов, которые неизвестно, будут ли ещё на с...
@DmitryKozlov то есть делается две разные разметки и они друг друга заменяют, срываясь и наоборот появляясь? Я блин пару часов назад об этом спрашивал и мне сказали что нужно стили переопределять.. Да ЭТО ЖЕ ВЫ И БЫЛИ!) Так как нужно делать? — Ivan PetrovAug 22 at 16:48
> минусуют убогие задроты которые даже не понимают о чем вопрос и именно это их задевает до такой степени, что у них начинается желочный позыв, который возможно только в виде минуса выразить. Да? Подрочите! – Ivan Petrov 11 часов назад
@Grundy жаль) придется сегодня без самоудовлетворения)
@Grundy хотя флагнуть оказывается можно и удаленные комменты в удаленном вопросе)
> Идет третий вечер моего погружения в rxjs и честно признаюсь я не могу найти ответы даже на самые просты вопросы. А те ответы что я нахожу, мне кажется что они в корне не правильны
@Grundy о, опять он. Особо уверенный в себе субъект, не понимающий, что он не понимает, что требует тыкать его носом прямо в решение, чтобы он остыл. По заявлениям "вы бот" ещё и vas'а напоминает.
@Grundy уга-а-ар. А ещё недавно он так радовался тому, что он ошибался на счёт rx и он видимо просто не умеет им пользоваться. Тот закрытый вопрос с дискуссией он стёр и... пошёл создавать другой, с примерно той же окраской? Похож на скучного тролля, рассчитывающего на недоступность удалённых вопросов.
Алексей, вы - гений! Еще раз благодарю вас за правку кода. Если я могу вас как-то отблагодарить, скажем, бросить вам платеж на телефон или на электронный кошелек, то сообщите мне. — Anastasia26 mins ago
Дать ей ссылку чтоль на кошелек с WM где я собираю на клавиатуру? xD
@АлексейШиманский можно извратиться, и в ответ вставить картинку заблёреную, типа с ответом, и ссылку на оплату, кстати похожий где-то сайт такой всплывает время от времени в гугле
@VladimirGamalian обычно в случае таких остановок можно заметить какую-нибудь фигню подозрительную в логах. забавно, конечно, что только на liveusb. но, кстати, вполне возможно, что на liveusb просто место в логах кончается, например, если аудиосистема что-нибудь логирует
@strangeqargo попробую посмотреть. Попка в том, что проявляется не сразу, и каждый пук - это на ночь оставлять включенным комп, чтобы к утру увидеть результат.
@VladimirGamalian я вообще комп не выключаю. зачем? может у меня качается что-нибудь или там тор-узел развернут.
@VladimirGamalian а вот забавно было бы проверить, будет ли такой же баг, если загрузить virtualbox с live usb, если баг возникнет - значит это или недостаток места / софтверный баг, если не возникнет - значит это хардверный баг.
@strangeqargo так-то да, но флешка загрузочная, тут или ruso, или liveusb )
@strangeqargo да, была идея, пробовал на virtual box, но пока не вышло образ как флешку смонтировать, по гуглу что-то вроде sudo VBoxManage internalcommands createrawvmdk, но пока не удалось завести
@strangeqargo на этом этапе и проблема, т.е. есть dd образ, сделать из него файл виртуального жесткого диска, чтобы подключить к виртуальной машине, не выходит пока что
подключаешь usb-iso через гуй, в настройках машины расшариваешь папку с твоим приложением с хостовой машины или забираешь его каким-нибудь wget-ом, запускаешь и ждешь
@strangeqargo образ флешки не хочет как cd монтировать (( тоже и если к USB контроллеру (вновь добавленному). Попробую с обычного ISO загрузится и сбросить приложение рсинком
@strangeqargo ага. Хотел изначально для чистоты эксперимента сэмулировать liveUSB флешку
@strangeqargo расшарить - это установка guest additions/пересборка модулей ядра, вдруг повлияет на багу, поэтому просто подмонтировал обычную флешку и скопировал с неё
@VladimirGamalian да я думаю, достаточно просто проверить что не вырубается на первый раз, если дубликатов наплодишь, то у тебя кстати будет еще проблема, что толпа виртуалок пишет в реальное аудио-устройство
@avp тоже за, чтобы все таки прошлись по C перед плюсами, а то потом начинаются вместо свободных функций классы со одним статическим методом (особенно когда с шарпа люди приходят)
@avp нет, читал про них, примерно понимал о чем там, но никогда всерьез не занимался и не пробовал, уже после того как более-менее с крестами познакомился, посмотрел на голые сишные либы и ужаснулся.
@VladimirGamalian надо не с шарпа переходить или с сей, а учить плюсы. хороших учебников уйма, жаль, что свежие версии доступны только на инглеше, в основном
изнанку тоже надо знать и уметь применять, но важно не привыкать использовать лоу-левел в высокоуровневых проектах
точно так же, как вам не нужно знать, когда вы на питоне кодите, как внутри устроен какой-нибудь dict или list
@strangeqargo может тогда плюсы и ненужны, если задача высокоуровневая? На том же питоне будет быстрее и проще наверняка. Или даже (теперь уже) на javascript.
@VladimirGamalian плюсы вполне себе высокоуровневый язык с поддержкой, кажется, всех парадигм, которые от высокоуровневых языков требуются. только они быстрее и строже.
чем слаботипизированные языки
а метапрограммирование на шаблонах есть только в плюсах и D
@VladimirGamalian то, что железо доросло до такого увроня, что языки прототипирования можно использовать в слабонагруженных проектах - не означает, что надо использовать их для всех случаев
@D-side нормально, я тоже люблю длинные, развернутые ответы. используй стаковерфлоу как бложек, потом можно будет записи перенести :)
@strangeqargo для новичка не очевидно что в плюсах высокоуровневое, а что нет. И там, где надо пользоваться автоматичски выделяемой памятью или готовыми контейнерами начинаются new/delete/указатели/утечки
@VladimirGamalian вот поэтому и надо начинать с нормальных современных книг по плюсам, где new/delete не рекомендуется использовать кроме как для определенных случаев, а не с книг по сям, которые учат сначала mallloc/free, а потом new/delete
@strangeqargo да, с этой стороны если смотреть, наверное только вред от сей ) С другой стороны, если человек взял плюсы, наверное ему все таки нужно было как-то памятью манипулировать. И выучить new/delete все равно придется.
@VladimirGamalian потом, когда освоишь более высокий уровень абстракции, изучить c - полезно, и наверное даже, обязательно. тут вопрос не в том, как мы, видимо, соглашаемся, какой язык изучать сначала, а какие привычки и стиль кодинга нужно получить, чтобы не писать лапшекод с багами
@VladimirGamalian недавно писал аукцион баннеров для тренировки, потом посмотрел ради интереса, не увидел там ни одного голого указателя, ни одного new/malloc только unique_ptr
@VladimirGamalian более того, GSL кажется, пытается избавиться от unique_ptr вообще - в смысле спрятать детали реализации под семантикой владения/разделения.
@Abyx вот мне надо будет подробно вчитаться видимо, и начать применять. в твитторах там некоторые спецы ругаются мол слишком большой стал core guidelines, аж 430 страниц, но у меня такое ощущение, что страуструп хочет сделать последнее большое усилие перед увольнением чтобы улучшить язык
@Abyx ну не совсем 101, скорее.. улучшенный 101 для нового C++, там все-таки много предлагается новшеств и изменений стиля кода, и та же либа под это заточенная, которую, надеюсь, протащат в стандарты
все-таки, конечно, разница в самом процессе разработке языков, допустим, типа php/python/c++/java очень интересная
в с++ - много компаний и комитет, в java - в основном - одна компания-хозяин, в php - основатель, потом толпа любителей + компания, в python - диктатор
@strangeqargo а может лучше наоборот? Мне один парень рассказывал, что пока их не стали учить ассемблеру, он так и не мог постичь, как же все-таки писать на фортране, который изучал до этого. А потом, говорит, как пелена с глаз упала.
@avp может у него просто не было в принципе понятия как на низком уровне машина работает? ну там, биты-байты-регистры-память? у многих этого нет и с сями и с плюсами и с пыхами тем более, сплошная магия
@avp но это основы, которые надо знать, не важно, какой язык ты учишь
@avp ну т.е. можно изучать асм, а потом c++, но изучать c, а потом с++ и опираться на с - в с++ плохо, потому, что плохие кодерские привычки возникают, вместо изучения мощи языка
@strangeqargo конечно не было. Понимание машины приходит с ассемблером (но можно и с Си, потом ассемблер (наверное, сам-то я так не пробовал) легче пойдет)
@avp там такой флэймвор развернулся. но я не могу высказаться на эту тему авторитетно, поскольку не читал исходники zmq. возможно, автор переходил с сей на плюсы, написал криво и сожалеет теперь. возможно, что если бы он написал это на сях - поддерживать было бы очень трудно.
@strangeqargo обратили внимание на Now, almost 5 years later, I would like to publicly admit that using C++ was a poor choice and explain why I believe it is so. 5 лет, это немало (многие все же понимают быстрее, хотя иным этого не постичь никогда)
>C++ exceptions just didn't fill the bill. They are great for guaranteeing that program doesn't fail — just wrap the main function in try/catch block and you can handle all the errors in a single place.
@strangeqargo кстати, не в курсе, были какие-то инициативы от Страуструпа, по созданию style чекера для гайдлайнов, типа как Pycharm например по PEP8 анализирует исходники, есть ли что-то уже для студии/clion/qtcreator ?
@strangeqargo их вообще не должно быть. Нужен новый, с реальной поддержкой компилятором (а не темплейтами в инклюдах) конструируемых пользователем типов (но, это уже AI)
@VladimirGamalian Я её не пробовал. Но мне приходилось администрировать Убунту удалённо, это занятие не для тех, кто не умеет находить ответ на 15-ой странице гугловывода.
@VladD для меня этот баг уже как родной, в первый раз мы с ним познакомились в ubuntu10.04, шесть лет назад. Тогда ещё был первый SDL. Год за годом, была надежда, что ну вот еще один релиз, и все исправится. Теперь смысл моей жизни - найти источник проблемы.
@VladD ни разу не было проблем, которые бы не решались после небольшого гуглинга. лет пять на убунте сижу, на куче разных компов. у коллег на работе тоже много убунт
@VladimirGamalian ты не думал, что можно например, раз в n минут переинициализировать аудио-устройство не выходя из приложения, раз уж оно без звука никак?
@Abyx все деструкторы должны быть очень хорошо согласованы, т.о. реальный проект усложняется, а когда он растет и меняется разными людьми возникают проблемы. Т.е. в идеале все это должно работать, а вот в нашей жизни...
@Abyx в смысле, все ресурсы при исключении должны освобождаться в правильном порядке. А если таймаут? А если он должен обрабатываться callback? С сетью это частенько бывает.
@Abyx с исключениями? Напрямую. Уходим по исключению из области существования объекта, вызывается деструктор. В теории все ОК. На практике объект может быть "недоинициализирован" и деструктор делает какую-то фигню.
@Abyx при правильном дизайне да. Не всегда он оказывается таким. Часто -- "хотели как лучше, а получилось ...". Отсутствие исключений позволяет исправлять такие ошибки (я рассматриваю N-ю модификацию программы) меньшей кровью.
@avp наоборот, отсутствие исключений заставляет усложнять код и вносить множество ошибок в других местах. Так же самая ошибка с нарушением инварианта может быть сделана и без исключений
@Abyx ошибки могут быть всюду. А что сложнее? Наверное зависит от конкретных элементов пары: программист-программа.
@Abyx кстати, может путаю, но что-то вспомнилось, будто гугл в своих правилах кодирования скорее советует избегать исключений (во, как обтекаемо я написал! -)).
У них много легаси кода, в который невозможно добавить исключения не сломав его, и некоторые программисты в гугле просто неосилии исключения, как и другие запрещенные там фичи языка
@Abyx т.е. упрощая язык можно не загружать лишними сущностями программистов и получать тот же результат? (что наглядно Go от того же Google показывает)
@VladimirGamalian ты какого конечного пользователя имеешь в виду? пользователя-программиста библиотеки? ему будет легче жить от эксепшенов, не разгадывая твои коды ошибок
@VladimirGamalian пользователь приложения ничего не увидит
@strangeqargo ну для библиотеки исключения так вообще сразу ограничат использование только плюсами, а писали бы без них, легко бы сбиндили ещё к десятку языков
@Abyx с try/catch в этом плане получше. Но похуже на счет вариантов действий в зависимости от места исключения. Т.е. придется какие-то флажки вводить, либо дополнительные try/catch с пробросом уже дополненого исключения
т.е. try-catch может быть внутри библиотеки, а оттуда можно получать исключение ввиде ошибки
вообще исключения и ошибки можно преобразовывать друг в друга, т.е. всегда можно написать try { f(); return nil; } catch(exc) { return exc; } или наоборот throw err;
Ещё один минус, как правильно заметил @avp, это потеря уверенности, что твой код будет выполнен в определенном порядке, а не прервется на каком-то исключении внутри вызванной функции (особенно чужой и в большом проекте).
Ребят, вот кто подскажет? Надо на сервер отправлять через HTML-форму файл, и принимать его с помощью PHP. Всю логику сделал, всё работает, но с одним жирным НО. Файлы больше 2-ух метров не заливаются. Полез я в php.ini, увеличил post_max_size до 300М и upload_max_filesize до 100М. Ребутнул httpd, даже сервер ребутал - хоть бы хны. Файлы больше двух метров идут лесом.
@AK Совсем заработался я... Вот что значит работать неделю без выходных... Ладно, завтра выходной, а в понедельник выставлю конфиг nginx-а и опять продолжу писать скрипт...
Хорошо, что руководство не смыслит в PHP и линях - косяки не сразу заметны, и я могу их спокойно решать спустя время... :)
@AK в чём прикол, так в том, что я сам лично ставил nginx перед апачем. И забыл про него... Спасибо вам за напоминание. :)
Так, пойду гляну анимеху, и отсыпаться. Всем спокойной ночи. :)
@Abyx Синтаксически — да (если система типов языка настолько богата, чтоб поддерживает автоподнятие функций). Но ведь реальный код будет протаскивать проверку ошибки на каждой операции. В отличие от этого исключения — это сразу нелокальный переход.
@Abyx Это и так есть в библиотеках, а select обсуждался roslyn team (но не придумали, что делать с невыигравшими тасками).
@Abyx То есть да, и коды ошибок кажутся мне неэффективными.
@Abyx Ну, как бы это увеличение вдвое количества кода. И динамическая проверка типа на каждом шаге (если Option не реализован как tagged union), что тоже не ускоряет программу.
У меня к вас вопрос воспитательного характера, вы специально заложили в коде парочку мощных несовершенств, чтобы ТСу было что объяснять тем, кто ему эту задачу дал? :) — D-side12 secs ago
...опечатку уже пофиксил, не обращайте внимания :)
@Abyx процессор на самом деле ведет статистику и делает (не делает) переход по ней, а если не угадал, тогда приходится откатываться и это останавливает конвейер. А likely (если проц это позволяет) говорит, не надо тут твоей статистики -- иди сразу вот туда.