• Зачем нужен frontend, если всю начинку сайта или проекта можно реализовать с помощью backend'a?

    profesor08
    @profesor08
    Релизуй реактивность на php. Или давай чего попроще, отобрази в браузере красную кнопку на php без использования HTML и CSS, а изюминкой добавь чтоб при нажатии пользователю выскакивал алерт "Hello world", не используя JavaScript.
    Ответ написан
    5 комментариев
  • Как выгодно себя продать на рынке труда?

    DevMan
    @DevMan
    да нет таких советов и быть не может: каждый человек индивидуален и как человек, и как специалист. и работодатели тоже все не как под копирку.
    кто–то слишком наглый, кто–то слишком робкий. и каждый сам находит свой баланс между этими качествами.
    можно без устали штудировать материалы "как пройти собеседование по ...", но как только собеседование пойдет иначе (а оно обязательно пойдет), все вылетит в трубу.

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

    грамотные люди не охотятся за конкретными знаниями, они охотятся за мозгами в целом и адекватностью в частности. ваше дело – продемонстрировать обладание этими качествами.
    Ответ написан
    Комментировать
  • Откуда можно брать заказы, кроме бирж?

    @abmanimenja
    Сарафанное радио - самый наиэффективнейший способ прихода адекватнейших заказчиков.

    Я окончательно убедился, что на биржах фриланса не стоит надеяться найти адекватных заказчиков.

    Всё там нормально.
    Как и везде - есть и нормальные и мудаки.
    Скорее, дело в вас.
    Ответ написан
    Комментировать
  • В чем смысл быть гуру тостера?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    1. Работа над личным брендом: Высокая репутация в профессиональных сообществах повышает привлекательность для нанимателей.
    2. Улучшение существующих знаний: Хочешь что-то понять, объясни другому.
    3. Приобретение новых знаний: Специализация замыкает в узком спектре задач и проблем, а Q&A-сервисы - это источник задач и проблем из самых разных областей и иногда под самыми неожиданными углами.
    4. Альтруизм: Большинству из нас кто-то помогал в начале пути, пришло время возвращать долг и делать свой скромный вклад в рост кадров.

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

    Для чего просиживаете на тостере по 5-6 часов в день?

    Я в среднем раз в полчаса-час заглядываю. Если находится интересный вопрос, могу потратить на него минут 10. Некоторые на перекуры больше времени тратят.
    Ответ написан
    7 комментариев
  • Кто может дать конструктивную критику по первой вёрстке?

    wapster92
    @wapster92 Куратор тега CSS
    1. Выложить проект на гитхаб в архиве, это безобразно. Еще и в rar.
    2. Обрезанный по ширине body? Никогда так не делай.
    3. Ховер эффекты только на кнопках заметил, и то не особо только шрифт меняет цвет, на превьюшках явно указано что есть ховер эффект при котором появляются дополнительные элементы управления.
    Ответ написан
    1 комментарий
  • Дайте оценку верстке?

    @Flying
    Визуально выглядит вполне пристойно и очевидных косяков почти нет, но если копнуть глубже - возникают вопросы.

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

    Из наиболее заметного - заглавная картинка с автомобилем в PNG которая занимает почти 600кб и из-за этого грузится весьма и весьма неспешно (и заметно для пользователя). В целом это по большей части косяк дизайнера, не приложившего усилий к тому чтобы выбрать правильную графику (автомобиль снят явно на улице и отражения в стёклах дают существенный вклад в визуальный шум и, как следствие, в размер картинки, нужно было выбирать фотографию сделанную в специальном помещении). Кроме того дизайнер, очевидно, не слышал про требования к такси в Нью-Йорке и рисовал как взбредёт в голову, но оставим это на его совести. Сочетание фоновой картинки, на которой весь траффик едет в обратном направлении и делает автомобиль такси нарушающим правила дорожного движения - тоже на совести дизайнера.

    Однако и в этом случае и, тем более, в случае фоновых изображений ниже по странице вы допускаете ошибки с выбором форматов файлов, способами их вставки в страницу и оптимизацией. К примеру из картинки с автомобилем можно выжать почти 100кб просто за счёт использования оптимизаторов. Гораздо грустнее ситуация с фоновыми картинками ниже по тексту. Во-первых вы сохраняете фотографии в PNG, получая на выходе файлы по мегабайту, хотя они же в JPEG занимали бы в 5-10 раз быстрее. Во-вторых вы, скорее всего, сохранили фоновые картинки уже обработанными (затемнёнными). Я не видел макета, но предположу что там эти картинки стоят в их оригинальном виде и на них наложены какие-нибудь фильтры. На первый взгляд кажется что проблемы нет, но на практике (в случае вёрстки для реального сайта) вы вынуждаете человека который будет поддерживать сайт либо готовить картинки с такой же пост-обработкой либо мириться с тем что стиль сайта меняется. Правильное решение здесь - грузить картинки как они есть и реализовывать фильтры на CSS, тем более что здесь это делается элементарно через multi background или псевдо-класс с полупрозрачным фоном. Очевидно также что для таких тёмных картинок вполне можно использовать JPEG с меньшим качеством и тем самым существенно сэкономить пользователям трафик.

    Ещё одна проблема связанная с фоновыми картинками - вы не подкладываете под них близкий по цвету solid color. Попробуйте включить в dev.tools "Network throttling", отключить кэш и перегрузить свою страницу - думаю вы поймёте что я имею в виду - белые блоки с белым текстом стоят довольно продолжительное время, постепенно заполняясь довольно тёмными картинками. Если бы background-color под ними был бы чёрным - проблемы бы не было.

    Далее - логотип. Обычно логотипы разрабатываются отдельно и даже если он выглядит просто набранным шрифтом - это вовсе не значит что это не так. Логотип Google, Microsoft или Яндекс - тоже просто название, но, надеюсь вы не сверстаете их, написав надпись текстом? В общем логотип = картинка, лучше в векторе. Сейчас даже одно съезжание слогана на пиксель влево относительно названия уже рушит всю конструкцию логотипа.

    Обратите внимание на то как вы работаете с формами. Все поля в форме являются <input type="text">, хотя часть названий явно намекает на date / time селекторы, а "Choose Vehicle" - на список выбора.

    Хотелось бы отметить работу с иконками - их всё-таки лучше хранить в SVG и либо требовать с дизайнера либо подбирать на том же Icon Finder. При этом оформление (те пресловутые жёлтые кружки) лучше делать через CSS т.к. это позволяет вам существенно гибче работать с размерами элементов.

    Есть всякие недочёты касающиеся responsive, к примеру, внимание как отображается блок "Our Tariffs" в размере чуть более 600px, в частности название тарифа и описание.

    Пожалуйста обратите внимание на то что вы используете два разных меню для desktop и mobile представления. В целом в вашем случае меню довольно простое и можно было бы обойтись одним. Конечно две копии используют часто, но у этого решения есть свои недостатки (в частности отсутствие синхронизации состояния), так что вы должны осознанно принимать решение по таким вопросам. Кроме того inline обработчики onclick там явно могут быть заменены на элементарный
    document.querySelectorAll('.menu a, .menu-hover a').addEventListener()
    что явно сделает код более простым и поддерживаемым.

    Ещё один важный момент который зачастую опускают при вёрстке - поведение макета с реальными данными. То что дизайнер в макете понапихал везде lorem ipsum и тексты примерно одинакового размера - отнюдь не означает что на реальном сайте эти условия будут соблюдаться. Отсутствие навыка проверять поведение макета в изменяющихся условиях ведёт к множеству ошибок которые не видны в условиях синтетических данных. К примеру попробуйте в блоке "We Do Best Than You Wish" (претензии по поводу английского языка оставим в стороне) в любом из элементов банально увеличить количество текста в 2-3 раза. В Chrome это приводит только к излому сетки, в Firefox - ещё и к изменению размера иконки. При этом я предполагаю что Firefox ведёт себя правильно т.к. пропорции элементов изменились, а ограничения размеров на картинки у вас не заданы.

    В целом похоже что макет верстался и проверялся только в Chrome. К примеру посмотрите как ведёт себя картинка с рукой и телефоном в Firefox при изменении размеров. Опять же Firefox вполне корректен т.к. вы не обрезали картинку корректно, предпочитая выгрузить "как есть" и подгонять положение в CSS, но забыв при этом про overflow: hidden для контейнера.

    Теперь перейдём к CSS:

    Обратите внимание на то как вы подключаете внешний шрифт:
    family=Lato:400,700,700i,900,900i&amp;subset=latin-ext
    . Возникают два вопроса:
    1. Зачем вам subset=latin-ext на сайте где есть только базовая латиница?
    2. Как вы выбирали начертания? У вас подключаются 5 начертаний (400, 700, 900 + два italic'а), при этом grep по CSS даёт значения font-weight 200, 300, 400, 500, 600, 800 и ни одного italic. Вам не кажется что эти множества почти не пересекаются?


    Кроме того вы постоянно забываете про fallback шрифты что на медленном интернете и при отсутствии инструкций для font loading приводит к невидимому контенту страницы на период загрузки.

    Отсутсвие ограничения по ширине для .wrapper приведёт к недопустимо широкому сайту на больших мониторах с высоким разрешением. Можете уменьшить масштаб страницы до 50% и полюбоваться результатом.

    В стилях повсеместно используются достаточно общие названия классов в global namespace. К примеру кто бы мог подумать что стилизует селектор .text? Вы уверены что нигде больше на сайте подобный селектор не встретится? Даже при дальнейшем развитии сайта? Другими словами именование селекторов - важная часть работы, вы можете использовать любую методологию (тот же БЭМ или что-то ещё) или разработать свою, но ваш код не должен ломаться при добавлении ещё пары блоков, особенно если это будет делать другой человек.

    Списки элементов, к примеру тот же .product-cont лучше делать именно списками, а не распихивать элементы по столбцам вручную, благо flexbox и column layout здесь всё прекрасно сделают за вас, зато имея одноранговый список вы обеспечите себе куда большую свободу действий.

    Использование id в качестве CSS селектора - плохая практика, но у вас таких мест немало, 11 штук.

    Уверен что мог бы найти ещё что-то, но надеюсь для затравки хватит, и так много получилось... :)
    Ответ написан
    4 комментария
  • Какие существуют "общие" правила по верстке web страниц?

    @itsjustmypage
    Перевести блочную модель в привычный вид (*, *::before, *::after {box-sizing: border-box;}
    Подключить normalize.css (body margin 0 там тоже есть).
    Верстка семантическими тегами. Header, main, footer, section, article, aside, вот это всё. О том где и как их применять подробно в спецификации https://www.w3.org/TR/html/fullindex.html#index-el...
    Сохранять семантичность и доступность при кастомизации форм всех видов (input, button). Пример правильной кастомизации чекбоксов https://www.youtube.com/watch?v=E6kLaaQFctU
    Размечать документ, сохраняя правильную структуру заголовков (h1-h6), что такое правильная структура есть в спецификации https://www.w3.org/TR/html/sections.html#the-h1-h2...
    Использовать какую-либо методологию вёрстки (обычно БЭМ).
    Верстать модульно, максимально независимыми блоками (см пункт о методологии).
    Сжимать изображения, использовать SVG при возможности (векторные иконки, косые и криволинейные украшательства и т.д.)
    Использовать автопрефиксер для автоматического проставления префиксов в CSS.
    Стили для обработки пользовательского ввода (на случай, если текста будет слишком много/мало, длинные слова и т.д.)
    Как-нибудь обработать FOUT(мерцание нестилизованного текста)/FOIT(мерцание невидимого текста). Как правило это просто font-display: swap.

    Пока не знаю что ещё добавить, можешь погуглить чеклисты вёрстки, взять что-то из них.
    И здесь посмотреть webmasters.teamdev.com
    Ответ написан
    Комментировать
  • Корректно ли использовать несколько способов вёрстки в одном проекте?

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

    насчет флекс и грид - они очень легко могут жить вместе ( курим это : https://www.youtube.com/watch?v=s6RCsjcQADc&t=2786s )

    если верстаете на бутстрапе - то все секции верстайте бутстрапом, а все, что внутри колонок - можете чем-угодно(флекс/грид)

    опять же, смотрим видос, что я скинул - там вам все расскажут)
    Ответ написан
    1 комментарий
  • Обучение в хорошем вузе с "проблемами" или обучение в "так-себе" вузе, но "без проблем"?

    @kotpep
    В России на ИТ учат в ВШЭ, где есть совместные программы с МФТИ или с Yandex. И выбирать тебе нужно не "программная инженерия", а "прикладная математика и информатика", еще такая специальность называется "вычислительная математика и кибернетика". Такие специальности как "информатика и вычислительная техника" или "информационные системы и технологии" совсем о другом. Что такое computer science вообще? Смотри чем занимаются в ШАД. Это если тебе все же интересно развиваться в "computer science", чтобы быть на острие атаки в стартапах, в Калифорнии и вот это все, а не "software engenireeng" (программная инженерия). Я бы рекомендовал для CS мехмат, матмех, так как только оттуда все топы.

    Программной инженерии обучаются сами, все лучшие курсы по отзывам моих знакомых, которые на них обучались, шлак. Программной инженерии не учат в вузах, ни в одном. Диплом не нужен, чтобы уехать программистом в другие страны, нужен опыт, в интернете достаточно статей, видео людей без профильного диплома, спокойно разъезжающих по разным странам, меняя работу, ища место для ПМЖ.

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

    Еще не нужно так акцентироваться на получении знаний, кодинге, ачивках, жизнь не вокруг этого крутится. Это просто работа. Когда попадешь в крутой офис с крутыми проектами, тебе это быстро все надоест, так же как миллионерам надоедают в первый же месяц их спорткары. С возрастом будет хотеться иного, будет так же как с интересами из детства.

    Некоторые знаешь как делали? Шли учиться на психолога в ВШЭ (конкретный пример, ссылку не дам, лень искать), но ботали кодинг (не CS, а software engineering), создавали свои проекты учась на психолога, успешно, потом уезжали в кремневую долину. Почему так? Потому что все быстро меняется, потому что не учат в вузах кодингу, а парень тот это понимал, из физмат лицея при МГУ. Цукерберг тоже учился на психолога вроде в Гарварде. Путь евангелиста для упоротых, менеджером в IT быть очень плохо (это не менеджер как в других сферах), поэтому диверсифицируй, и не смотри на бабки.
    Ответ написан
    1 комментарий
  • Как изучить JS?

    tema_sun
    @tema_sun
    Вам заниматься сайтами не нравится потому, что вы этого делать не умеете. Вам приходится много учиться и мозг бастует против этого. Чтобы стать профессионалом в любом деле этот путь пройти придется все-равно.
    Обязательно будет сложно и обязательно что-то будет не нравится. Это физиология у нас такая. Бросить всё и шпилить в Фортнайт гораздо приятнее.
    Ответ написан
    5 комментариев
  • Насколько актуален jQuery?

    netrox
    @netrox
    1)По-прежнему используется на большинстве сайтов (ещё куча плагинов на нём).
    2)Можно заменить на чистый js.(Фреймворки не подходят для типичной манипуляции DOM)
    3)Много времени его изучение не займёт. Попробуйте и решите подходит ли он вам.
    Ответ написан
    Комментировать
  • Насколько актуален jQuery?

    Vlad_IT
    @Vlad_IT Куратор тега JavaScript
    Front-end разработчик
    1) Он устарел по той причине, что его возможности уже реализованы в JS
    2) Когда надо склепать быстрый лендос со слайдером slick, я использую jQuery. Когда нужно что-то по серьезнее - зависит от задачи, как замена Vue
    3) Нет, осваивайте JS, а jQuery сам придет, ничего в нем сложного нет, по мере работы будете разбираться, копаясь в документации.
    Ответ написан