• Какие вещи можно делать, владея jquery выше среднего уровня?

    longclaps
    @longclaps
    В jquery всего-то ~10000 строк. Но средний жи-кверщик и того не знает.
    Выучи их наизусть - и сможешь выступать в цирке с номером "начните с любой строки, а я продолжу".
    Ответ написан
    Комментировать
  • Z-index: over9999 - зачем?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    Z-index over9000 не нужен вообще. Это костыль, который некоторые люди, не понимающие css, используют для того, чтобы быть уверенными в том, что их элемент будет "сверху". При этом цивилизованные люди ограничиваются небольшими значениями z-index, с которыми проще работать. Иногда используют логические схемы вроде таких:
    • 0-9 - в пределах компонента
    • 10-19 - для всплывающих менюшек, подсказок и.т.д.
    • 20-25 - для выезжающих меню, модалок и.т.д.

    Можно ограничиться только диапазоном 0-9, но такая схема, хоть и является избыточной, позволяет проще ориентироваться в коде.

    А те, кто говорит "Но если используются сторонние плагины, в которых элементы имеют большой z-index, а их надо перекрыть, то ничего другого не остается" в ответах выше ( mletov ) просто решают один костыль подпереть другим. Не стоит утверждать, что ничего другого не остается - в большинстве случаев предпочтительнее в такой ситуации использовать обертку (пример упрощен для наглядности):

    <div class="my-div">My element</div>
    <div class="wrapper">
        <div class="over9000">over9000</div>
    </div>


    div { position: absolute; width: 100%; }
    
    .my-div   { background: #0f0; z-index: 2; }
    .wrapper  { z-index: 1; }
    .over9000 { background: #f00; z-index: 9999 !important; }


    В такой ситуации "мой элемент" будет выше, чем "over9000".
    codepen
    Ответ написан
    2 комментария
  • Заказчик хочет больше работы за фиксированную сумму и не хочет доплачивать. Как урегулировать спор?

    x67
    @x67
    Ваш договор не имеет юридической силы в силу того, что в нем не прописаны ключевые условия. Например, если заключить договор, что Маша должна пачку молока Саше потому что он бука, то такой договор прокатит только в детском садике (потому что у них все серьезно). Правда еще следует поискать что нибудь подобное в законодательстве той страны, в юрисдикции которой может быть рассмотрен договор и действий которой вы опасаетесь ( если возвести все до крайней степени, то Россия, потому что ваша страна и Индия, потому что его страна, а вы хотите когда-нибудь там побывать и опасаетесь что из-за тяжб вам может быть отказано в получении визы).
    С психологической точки зрения наверное стоит спокойно объяснить заказчику, что он чудак, вы сделали то и то, потому что это было обговорено до начала проекта в скайпе, как вы и договорились в договоре, за это он должен вам денег и дальше вы можете сотрудничать на новых условиях или не сотрудничать вообще. В крайнем случае может стоит чуть пригрозить, сказав что у вас есть записи разговоров в скайпе и он полностью отвечает за свои поступки перед законом, а вы принципиальный человек. Если не получается найти точку взаимодействия, то просто прекращайте общение и удаляйтесь искать более адекватных клиентов и писать себе памятки о том, как не стоит заключать договора)
    Ответ написан
    Комментировать
  • Куда двигаться дальше senior разработчику? Новый язык, технологии, opensource, стартап?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Как вы это делаете?! За 17 лет работы в ИТ у меня ни разу не возникало вопроса "Куда двигаться?", только "Где взять времени на освоение всего этого бесконечного изобилия технологий, углублённого изучения уже знакомого и реализацию множества идей?"
    Ответ написан
    4 комментария
  • Почему говорят что jquery не нужен?

    @dmitry_pacification
    Трудности рождают прорыв
    Так говорят скорее всего потому, что не понимают что на самом деле jQuery дает. Можно написать все на чистом js, но jq вразы ускоряет разработку. Соответственно люди которые кричат против jq и получают деньги за часы работы заинтересованы в том, чтобы делать по дольше задачу и получить больше денег.
    Такой себе способ раздобыть немножно монет и понимания работы чистого js. ))
    Я пытался реализовать на js обычную кнопку "наверх", и плавный переход по лендинку вверх и в низ. Чесн скажу, я задолбался. Я знаю что на jq я решу это быстро и спокойно, на на нейтиве - это изобретения велосипеда с 0
    Ответ написан
    3 комментария
  • Почему говорят что jquery не нужен?

    iCoderXXI
    @iCoderXXI
    React.JS/FrontEnd engineer
    jQuery был хорош, но ничто не стоит на месте. Раньше фронтенд никто особо не воспринимал всерьез. Все считали, что фронтенд - это несколько скриптов, которые принципиально погоды не делают. Все изменилось с ростом популярность SPA, в т.ч. и благодаря бурному развитию JS.

    В любом приложении очень важно прозрачно и понятно управлять состоянием, очень желательно делать это централизованно. Былой подход с участием jQuery делает это невозможным. Кто угодно может менять что угодно на странице, когда угодно, и приложение об этом ничего не знает без очень хитровыдуманных методов. Например в первом ангуляре для этого постоянно бегал по элементам и проверял что там изменилось, это называется "грязные проверки" (dirty checking). Мягко говоря это ни разу не оптимальный способ контроля состояния, но, на тот момент, вариантов особо не было.

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

    В каких-то простых страничках с парой-тройкой функций jQuery даже сегодня может быть актуален, особенно если приложить усилия и делать грамотно.

    Но что-то чуть более сложное уже требует совершенно иного подхода.
    Ответ написан
    Комментировать
  • Что на фрилансе чаще всего встречается на вашем опыте для веб разработчика?

    Bandicoot
    @Bandicoot
    Вась-программист
    WP, Joomla, верстка за 3 копейки, работа с чужим кодом сомнительного качества.

    ИМХО, лучшая стратегия на фрилансе для разработчиков - выучить какой-либо фреймворк или CMS на приличном уровне, создать портфолио и брать те и только те заказы, которые связаны с этой системой. Это условно можно назвать "технологическим фрилансом". Иначе можно перегореть.

    Еще желательно браться только за проекты с нуля, без работы с чужим кодом - на фрилансе это почти всегда весьма неприятное занятие.
    Ответ написан
    2 комментария
  • В программисты или в тестировщики (идти)?

    x67
    @x67
    Какая работа по душе, туда и идите. Если бы грузчики получали больше инженеров (а иногда так и есть), я бы все равно не пошел работать грузчиком потому что не люблю рутинную монотонную изнурительную работу. С другой стороны, кто-то не любит напрягать мозг - он идет грузчиком. Это ничего не значит, просто каждому свое. Из своего опыта добровольного и бесплатного опыта бета-тестера могу сказать, что это рутинное и неинтересное занятие, от которого сильно тянет в кроватку. Но есть прекрасные тестировщики, балдеющие от своей работы. Кто прав? Тот кто сделал для себя правильный выбор.
    Ответ написан
    Комментировать
  • Как постепенно перекочевать из Web в Machine Learning максимально безболезненно?

    AgentProvocateur
    @AgentProvocateur
    Что-то ты не с того конца собираешься дом строить...образно выражаясь. Ты по выбору молотка загоняешься, а нужно по проектированию, архитектуре, инженерным коммуникациям, технологиям строительства и т.д. А молоток покупается в последний момент на строительной оптовке.

    Машинное обучение/нейроинженерия - это область научной деятельности. Специалист по машинному обучению - ученый-математик (часто и вовсе с докторской степенью). Программирование/владение Python - лишь прикладной навык к научным изысканиям. В научные лаборатории путь явно лежит не через изучение применяемых там языков/программ.

    Без основательного вузовского и научного базиса (математика, биология, биоинформатика, психология и т.д.) в этой теме делать нечего. По курсам на ютубе из веб-кодеров в нейроинженеры не прыгнешь, тем более, безболезненно.

    А со знанием других языков (php, js, go) python осваивается за 10 дней. Он потому и используется так интенсивно в науке, чтобы на программирование, как на прикладной навык, тратить минимум телодвижений и времени, а максимум на нейроинженерию.
    Ответ написан
    4 комментария
  • В чём делают (это не тавтология) проект проекта?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Его делают в техническом задании, которое пишут например в ворде или любом другом редакторе.

    А куски кода и тех.задание обычно НЕ совмещают вместе, это разные документы.
    Для описаний классов - UML, для разбиения тех.задания на конкретные таски - бэктрекеры, в которых солюшен дизайн может быть прописан прямо в тикетах.
    Ответ написан
    Комментировать
  • Где обычно находят иностранных заказчиков?

    @djay
    Я нахожу спокойно и быстро на специфических ресурсах:

    - Laravel Jobs
    - WordPress/Drupal Jobs

    Напрямую без всяких паразитов-постредников и Upwork'ов.

    Но имей ввиду, что европейцы и американцы - это перфекционисты наивысшего класса. Очень требовательны и дотошны. У русских тоже перфеционизм порой зашкаливает, но те платят хоть достойно, а эти - нет.
    Ответ написан
    4 комментария
  • Что с тэгом Yii2?

    DevMan
    @DevMan
    разные версии одного и того же софта имеют разные возможности (a иногда отличаются весьма значительно) - это ожидаемо и нормально.
    тем не менее на тостере:
    - нет отдельных тегов для winxp/7/8/10, a есть один тег windows.
    - есть тег php, но нет тегов php5/php7
    - нет отдельных тегов для python 2/3, есть один тег python
    - есть gnome, но не gnome 2/gnome 3
    - etc, этот список можно продолжать долго

    и мало кого это смущает - версию всегда можно указать в вопросе.
    Ответ написан
    7 комментариев
  • Где можно найти примеры тестовых заданий по php?

    NikkyNick1
    @NikkyNick1
    Эта книга поможет вам подготовиться. Охватывает наиболее часто встречающиеся вопросы на собеседованиях. Лично на моём опыте проверено.

    https://www.kobzarev.com/wp-content/uploads/books/...
    Ответ написан
    3 комментария
  • Что считается шириной сайта: контент+отступы или только контент?

    webirus
    @webirus
    Тыжверстальщик! Наверстай мне упущенное...
    lg_grid.jpg

    Во-первых, если внимательно посмотреть на сетку, то можно понять, что у вас ошибка в описании.
    Не 1230 пикселей, а ровно 1200, так как левый и правый крайние отступы равны 15 пикселей.

    Теперь про ширину макета. Она должна быть 1200, с тем же соблюдением сетки.
    И именно 1200 считается шириной сайта - контент вместе с отступами.
    Это обусловлено тем, что КАЖДАЯ колонка должна иметь отступ справа и слева по 15 пикселей.
    КАЖДАЯ, повторяю, в том числе первая и последняя.
    В вашем рассуждении, первая и последняя не имела бы отступа.

    В общем, верстальщик прав.

    В фотошопе это делается примерно так.
    1) Создается новый документ - 1200 пикселей.
    2) Просмотр, Новый макет направляющей - 12 колонок, 30 средник, поля слева 15, поля справа 15

    523be18438e140b689405e3ace354ad8.png
    Ответ написан
    Комментировать
  • В чем разница между prop и attr?

    lazalu68
    @lazalu68
    Salmon
    Из документации:

    (attr) Get the value of an attribute for the first element in the set of matched elements or set one or more attributes for every matched element.

    (prop) Get the value of a property for the first element in the set of matched elements or set one or more properties for every matched element.

    В адаптации Google Translate:

    "(attr) Получите значение атрибута для первого элемента в наборе согласованных элементов или установите один или несколько атрибутов для каждого согласованного элемента."

    "(prop) Получите значение свойства для первого элемента в наборе согласованных элементов или установите одно или несколько свойств для каждого согласованного элемента."

    Собственно вот и вся разница: первый метод читает/устанавливает значение атрибута элемента (Мержевич по теме), а второй - свойство объекта представляющего элемент. Если вкратце, то разница в том, что они из разной среды: атрибут это термин HTML - вы устанавливаете его в разметке и значение атрибута как-то обрабатывается, влияя на какие-то свойства элемента. А свойства это значения относящиеся непосредственно к DOM объекту элемента.

    Например, class, один из самых привычных атрибутов для тега, в элементе представлен свойством className. Если у тега нет атрибута class, то у самого элемента есть свойство className, которое содержит пустую строку. Ну и соотвественно задать класс элементу можно либо изменив атрибут class с помощью attr, либо изменив свойство className с помощью prop.
    Ответ написан
    Комментировать
  • Каким образом могут навредить сайту?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега PHP
    Всё, что угодно - assert это аналог eval в данном случае, они могут выполнить совершенно любой код, создать любые файлы и т.п.
    Именно поэтому в 7.2 эту функциональность выпилили.
    Ответ написан
    Комментировать
  • Что за проблема с cookies в браузерах на телефонах Samsung?

    ozknemoy
    @ozknemoy
    яваскриптист
    советую попробовать везде добавлять domain. он и path обязательны для нормальной работы куков
    Ответ написан
    1 комментарий
  • Какие вопросы на собеседовании ожидать по JS?

    mudrenokanton
    @mudrenokanton
    frontend dev
    Я по-приколу в закладочки кидаю всякие вопросы по js:
    https://habrahabr.ru/post/231071/
    https://medium.com/@sapy/7-interview-questions-and...
    https://habrahabr.ru/post/239065/
    https://github.com/h5bp/Front-end-Developer-Interv...
    perfectionkills.com/javascript-quiz
    Но, без хорошего знания языка, на многие вопросы очень сложно давать адекватные ответы.
    Есть еще отдельный файл в котором я храню вопросы, которые лично мне задавали на собесах и я их не знал. Советую вам завести такой же. В будущем пригодится)
    Ответ написан
    9 комментариев
  • Какие вопросы на собеседовании ожидать по JS?

    @kahi4
    Коварные вопросы, говорите?

    1. Какое из нововведений es6 принципиально не полифилится в es5? Почему? (И на какой черт оно вообще нужно, вдогонку). (И я бы заодно вдогонку попросил набросать полифил какой-то из фичей, например, this в arrow function).

    2. Какие условия должны быть соблюдены для того, чтобы v8 мог скомпилировать функцию в нативный код? Ну и разумеется, почему?

    3. Почему до es5.1 включительно typeof null === "object"?

    4. Что на самом деле произойдет, если вы напишите
    const arr = [];
    arr[3484] = 5;


    5. Аналог второго вопроса, но все же: с чем, по вашему мнению, могла быть связана бага в одной из версий хрома, приводящая к следующему результату:
    function foo() {
        return typeof null === 'undefined';
    }
    for(var i = 0; i < 1000; i++) console.log(foo());
    
    >>> 121 false
    >>> 879 true


    6. Какие вы знаете способы заставить js произвести несколько операций одновременно (буквально, за такт)?

    7. Сработает ли documeny.onready, если скрипт загружать с аттрибутом async? В каких случаях и когда именно он сработает?

    8. Что можно и что нельзя делать в событии document.beforeunload?

    Но, справедливости ради, эти вопросы даже не на мидла, некоторые из них не сколько каверзные, сколько упоротрые и если их вам зададут -- следует задуматься в адекватности компании.
    Ответ написан
    2 комментария