• Как сочетать BEM и динамический контент?

    @matperez
    Не важно сколько у вас посетителей в месяц. Применение BEM означает, что вы можете переместить блок в любое место без необходимости в менять разметку. В этом плане элемент .article__p выглядит по меньшей мере странно. Я с вами согласен: если у вас есть блок внутренности которого не меняются, нет смысла добавлять к ним дополнительные классы или идентификаторы, достаточно просто .article p {}.
    Ответ написан
    Комментировать
  • Стоит ли изучать фронтенд сразу по методологии БЭМ?

    Tavion
    @Tavion
    front-end developer
    БЭМ полезно знать, хотя бы за тем, чтобы понимать какие задачи он решает. Разобравшись с ним и его задачами, вы сможете выработать и более подходящие вам\ситуации методы решения этих задач (изоляция стилей, ясность кода и проч.) или использовать тот же БЭМ, если он вас всем устроит.

    В общем, ознакомиться стоит в любом случае.
    Ответ написан
    Комментировать
  • Почему не устанвливаются зависимости через npm i?

    @ayapergenov Автор вопроса
    Разобрался сам. Оказывается надо перейти в скаченную папку do-it-yourself-workshop и запустить комманду оттуда
    Ответ написан
    Комментировать
  • Прочитал книгу по PHP, что дальше?

    SowingSadness
    @SowingSadness
    web-разработчик
    Стругацких, Пикник на обочине
    Ответ написан
    2 комментария
  • Как починить: Error: EPERM, lstat 'e:\System Volume Information' at Error (native)?

    MarcusAurelius
    @MarcusAurelius Куратор тега Node.js
    автор Impress Application Server для Node.js
    По той ссылке, что Вы дали и лежит решение, т.к. на венике могут встречаться файлы и каталоги с разными правами доступа, то нужно выделять из общего потока ошибок EPERM и игнорировать их. Полное игнорирование ошибок: finder.on('error', function (err) {}); Если глушить только EPERM то наверно так:
    finder.on('error', function (err) {
        if (err.code !== 'EPERM') finder.stop();
    });
    Ответ написан
    3 комментария
  • Онлайн сервис для JavaScript экспериментов с дебагом кода?

    disc
    @disc
    веб-разработчик
    Можете использовать встроенный в браузеры инструменты веб-разработчика, хороши как в FF так и в хроме. Внутри есть JS дебаггер, можете навешать точки останова и дебажить по ним.
    В дополнении скажу про js выражение debugger, который действует схожим с точками останова образом.
    Ответ написан
    Комментировать
  • Ноль впереди сам удаляется в столбце типа (int) в mysql, как исправить?

    SagePtr
    @SagePtr
    Еда - это святое
    Добавить полю аттрибут zerofill, тогда оно будет с нулями возвращаться.
    Ответ написан
    5 комментариев
  • Javascript backend frameworks or vanilla js?

    MarcusAurelius
    @MarcusAurelius Куратор тега Node.js
    автор Impress Application Server для Node.js
    Посмотрите вот этот мой развернутый ответ: Подсоветуйте фреймворк для node?
    Инструментов можно набрать тут: nodeframework.com и тут https://github.com/sindresorhus/awesome-nodejs и тут https://github.com/vndmtrx/awesome-nodejs

    По БД рекомендую MongoDB, если у Вас данные аморфные, сложной или часто изменяющейся структуры с этими драйверами: https://www.npmjs.com/package/mongodb А если данные имеют редко меняющующуюся структуру и хорошо ложатся в таблицы, то берите реляционку, лучше PostgreSQL, с драйверами: https://www.npmjs.com/package/pg Но я не люблю и не рекомендую ORM, обычно от них больше проблем, тормозов и дополнительной работы больше, чем выгоды от их внедрения. Если уж приспичит, то для монги есть mongoose: mongoosejs.com это ODM, аналог ORM для документных баз, а для PG есть много вариантов, которые основаны на том же драйвере pg.

    Паттерн MVC он вообще изначально был изобретен для графических интерфейсов пользователя, и там он еще как-то себя оправдывает, да и то кривенько, почитайте эти мои статьи: habrahabr.ru/post/204958 и habrahabr.ru/post/117791 Для ноды это вообще противоестественно. GUI и бекенд должны быть разделены сетевым API, на которое вешаются что мобильные приложения, что браузерные, что оконные, это уже без разницы.
    Ответ написан
    Комментировать
  • С чего начать обучение для фриланса/удаленки: java или javascript?

    seoperin
    @seoperin
    Full stack web developer. Laravel / Vue
    Есть куда более быстрые способы стать фрилансером, но и финансовый потенциал ниже.
    Например:
    seo, вёрстка (html+css), простенькие сайты на бесплатных движках (wordpress)...
    Если выбирать между java и javascript, то я бы выбрал второе. Области применения намного шире
    Ответ написан
    7 комментариев
  • Тяжело ли, зная язык программирования на уровне джуниора, найти удаленную работу?

    Если кинуть объявление, что обучаю бесплатно программированию для web с последующим трудоустройством, то начинают ломиться просто толпы народа. Результат? 99% из них пропадают через месяц. Потому что не хотят или не умеют работать и учиться самостоятельно (при оказании любой консультативной помощи). Потому что не могут заниматься периодически не очень увлекательными вещами, потому что распыляются. Так через месяц они захотят стать дизайнерами, еще через месяц фотографами и т.п.
    К чему я это говорю? Вы столкнетесь с тем же самым. Сдюжите? Самостоятельно обучаться сложно и надо иметь fun, как говорят американцы, с этого должно переть. Иначе будет фигня... Надоест все через месяц.
    Ответ написан
    7 комментариев
  • Тяжело ли, зная язык программирования на уровне джуниора, найти удаленную работу?

    @Alexey_Kutepov
    Разработчик программного обеспечения
    Удалённую работу никогда не искал, так как при всём её удобстве есть один большой минус: Вы не можете двигаться по карьерной лестнице (горизонтальный рост я имею ввиду). Удалёнка как временное решение идеальна, но не забывайте что к 40 годам Вам всё сложнее будет по знаниям догонять молодых специалистов (на эту тему написана не одна статья) и тут напрашивается переход на руководящую должность.
    Ответ написан
  • Тяжело ли, зная язык программирования на уровне джуниора, найти удаленную работу?

    Ronnie_Gardocki
    @Ronnie_Gardocki
    Я у мамы фронтендщик.
    Конкретно удаленку (а не фриланс) найти просто. Причем даже не нужны какие-то крутые знания, просто ищите работу "мастера на все руки". Будете поддерживать сайты, пилить новые и все такое (о том как при этом развиваться, написано ниже). Только платить будут мало. Точнее будут платить мало по меркам москвапитера, но для какого-нибудь небольшого городка вы будете чувствовать себя чуть ли не богачем на фоне большинства знакомых, и при этом работать по 3-6 часов в день.
    По поводу развития - все зависит от вас. Если вы жить не можете без постоянной помощи более опытных сотрудников, то вам будет тяжело. Если же вы умеете гуглить (а это на самом деле немногие умеют), любите читать все возможные статьи/книги/обсуждения и имеете тягу к запиливанию демок/велосипедов, то "прокачка" будет идти намного быстрее чем в какой-нибудь стандартной "местной веб-студии". Говорю это по своему опыту. Еще год назад я покинул местную "топовую веб-студии города" (топ40 студий по битриксу в России если не ошибаюсь, хотя на деле там печально) будучи зеленым джуном с 5 месяцами опыта работы, тут же устроился по удаленке (прям тем же вечером), а сейчас я бывшим коллегам каждую неделю показываю свои фронт-энд демки и они считают меня магистром (правда тут важно уточнить, что работая по удаленке, я вообще не напрягался, пахал по 10-20 часов в неделю и большую часть времени тратил на саморазвитие, ибо задачи там были тоже не особо развивающие).
    Так что мое мнение таково, что будучи джуном вам важно лишь думать об эффективности своего развития, и если работа по удаленке кажется вам удобным вариантом роста, то ищите не раздумывая.
    Ответ написан
    4 комментария
  • Как правильнее парсить результаты ajax запроса?

    65536
    @65536
    я делаю так. все состоит из блоков, где каждый блок это какое-то хтмл, к которому прилагается свой джаваскрипт, который на этот блок лично навешивает всякие обработчики. есть два случая: загрузка страницы целиком (то есть всех блоков со всеми своими джаваскриптами) и перезагрузка отдельных блоков в фоновом режиме (аджаксом так называемым). в первом случае собственно загружается страница и по готовности отрабатывают все скрипты, которые прилагаются к блокам из которых она состоит. во втором блок загружается на страницу (вставляется в нужное место, реплейсится, аппендится или еще как) и опять же отрабатывают его скрипты (именно его а не все). если в этих скриптах есть биндинги событий, то их сначала нужно отбиндить, потому что блок может перезагружаться сколько угодно раз и с каждым разом события будут навешиваться повторно и нажатие на кнопку будет слать не один запрос а столько сколько раз был перезагружен блок. никогда не было доверия ко всяким .on() .live() и тд. проще и надежнее заменить кусок кода на странице и заребиндить все что его касается.

    дополнительное преимущество такое, что вся логика происходит на стороне пхп, а на стороне браузера только работа с домом, никаких вычислений, ну либо только такие, которые не будут теряться после перезагрузки блока или заставлять писать одно и то же 2 раза. только простые манипуляции и отработка событий которые будут сообщать серверу об изменениях. например, какая-нибудь форма отправки заказа, сколько ужаса я повидал, когда условия доставки рассчитываются на странице джаваскриптом а потом это отправляется на сервер (то есть я могу подменить стоимость в запросе) или на сервере подобный алгоритм считает все это еще раз чтоб типа проверить, в результате имеется зеркало алгоритма на другом языке и что-то менять нужно в 2 местах ломая голову. или жмем случайно ф5 и все слетает потому что о данных в полях кроме страницы никто не знал. как правильно в данном случае (имхо конечно же), допустим форма такая, 2 поля имя и телефон и один переключатель доставка/самовывоз. делаем для нее в сессии массив которых способен хранить состояние этих полей и переключателя, задаем дефолтные значения там же. при загрузке страницы с этой формой она просто выводится со значениями которые находятся в сессии. к ней прилагается джаваскрипт который ребиндит событие кейап на полях и событие клик на переключателе. по событию кейап отправляется значение поля чтоб сохранить его в сессии (в ответ ничего не происходит, здесь не нужно). по клику на переключателе так же шлется запрос который меняет в сессии его состояние и в ответ перезагружается вся форма (на основании актуальных данных в сессии) и все на ней заново ребиндится. не знаю смог ли объяснить, короче проще всего отправлять каждый пук пользователя на сервер, обработать его там, и перезагрузить нафиг всё на что он мог повлиять.

    все эти килобайты и миллисекунды полная ерунда, все споры на эту тему это отстаивание своих знаний определенных технологий. как по мне если программа на пхп то вся логика в пхп и должна происходить а джс только обслуживать интерфейс и не более того
    Ответ написан
  • Синтаксис по БЭМ?

    isqua
    @isqua
    Научу HTML, CSS, JS, BEM и Git
    Конструкции типа
    ul.hero__slider
        			li.slider__item

    не по БЭМу. slider__item — это элемент item блока slider. А где блок slider? Если что, hero__slider не сойдёт за блок slider, ведь это элемент slider блока hero, а не самостоятельный блок. Аналогичная проблема в
    .slider__pagination
        			a.pagination__item

    В остальном неплохо.
    Ответ написан
    5 комментариев
  • NodeJS: растет потребление heapTotal. Утечка памяти?

    Не является.
    heapTotal это общая память, выделенная V8. Эта память, в основном, освобождается только при выходе. Выделение памяти происходит медленно, поэтому V8 не возвращает ее, предполагая, что она снова может понадобиться. Если на сборщик мусора приходится большая нагрузка, V8 пытается увеличить память, чтобы запускать его реже.
    Ответ написан
    1 комментарий
  • Сокрытие расширения PHP файлов?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Этот дебильный раздел давно надо бы убрать из документации.
    Потому что никакая защищенность от этого не повышается.

    Не говоря уже о том, что уже много-много лет стандартом де-факто является адресация через ЧПУ, при которой никаких .php файлов в любом случаеснаружи не видно.
    Ответ написан
    4 комментария
  • Трансляция видео стрима с помощью HTML5 Websockets?

    viwoam
    @viwoam Автор вопроса
    I solve problems!
    Вопрос закрыт.
    Можно реализовать с помощью WebRTC
    Tем не менее пока что flash доминирующая технология.
    Ответ написан
    Комментировать
  • Друзья, есть ли какие задачи для практики по JavaScript?

    @naneri
    PHP разработчик.
    иди решай задачи на codeeval.com - выбери язык JS и вперёд. Даже сама логика парсинга данных из текстового файла помогает прокачать скилл (я потом разрабрался как данные парсятся из УРЛА в пхп)
    Ответ написан
    Комментировать
  • Как динамически добавить новый блок на страницу?

    @Artcl
    BEMDOM.append("куда", BEMHTML.apply({ block : 'bla' }));
    или к примеру какой-то domElem.append(BEMHTML.apply({ block : 'bla' }));
    BEMDOM - зависимость i-bem__dom. Доступ к BEMHTML, на пример, можно получить, подключив *.bemhtml.js. В твоем случае может быть немного другой append, но самое важное - это BEMHTML.apply
    Ответ написан
    2 комментария
  • Стоит ли ставить крупный сайт на node.js? Не рано ли?

    rumkin
    @rumkin
    Работал над крупным проектом с охватом аудитории в несколько миллионов пользователей в сутки, использовался nodejs. Полет нормальный, единственный минус – кадры. Нужен сильный nodejs программист в комманде.
    На том же express (django для ноды) работают очень нагруженные сайты, например MySpace. Полный список: expressjs.com/applications.html.
    Ответ написан
    Комментировать