• Как в Python сделать так чтоб было так больше 10 но меньше 15 и тогда будет вывод текста?

    kshnkvn
    @kshnkvn
    yay ✌️ t.me/kshnkvn
    if number >= 37:
        print("Ты болен, давай ка лучше ты посидишь дома")
    elif number >= 36 and number < 37:
        print("Ты в порядке, не болей")
    elif number < 35:
        print('текст типа низкая температура')


    Если что, то конструкцию if-elif можно продолжать до бесконечности, она не ограничивается только двумя условиями.
    Ответ написан
    3 комментария
  • Функция в JS это объект?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Давайте посмотрим:

    (() => {}) instanceof Object // true

    Ну да, объект. Кто бы мог подумать.
    Ответ написан
  • На кого учиться программисту?

    anton_reut
    @anton_reut
    Начинающий веб-разработчик
    получить образование, которое поможет в будущем

    ...в сфере юриспруденции, экономики...


    14018661493477.jpg
    Ответ написан
    Комментировать
  • Как правильно работать с PSD макетами под ретиной?

    SmthTo
    @SmthTo Куратор тега Вёрстка
    Все перепёлки мира будут оплакивать мою смерть.
    Retina-макетов не бывает. Retina — не более чем маркетинговое название экранов с высоким разрешением (300+ px на дюйм). Retina могут быть только ресурсы, например, картинки, которые будут иметь в несколько раз большее, чем целевой макет, разрешение, чтобы попасть в пиксельную сетку реального разрешения.

    Вы же верстает не под размеры экрана в физических px, а под viewport с его «виртуальными» px, которые получаются из:
    [физическое разрешение] : [степень масштабирования]

    Чем выше разрешение при равных размерах экрана — тем всё мельче, если масштаб 1:1. Поэтому принято увеличивать масштаб, иначе всё мелкое-мелкое. Таким образом достигается высокая чёткость + адекватные размеры элементов на экране (эффект retina).

    Доп. инфо про правильное масштабирование
    Кстати, если используется масштабирование, то желательно, чтобы масштаб вообще был кратен двум (x2, x4…) для попадания в пиксельную сетку экранов, ибо так получаем меньшее влияния субпиксельного сглаживания, но это задача производителей устройств, а не нас с вами.

    На данный момент в том же iPhone XS используется нечётное масштабирование x3 не потому, что так хорошо, а потому что для нормального масштаба x4 нужно очень сильно увеличить разрешение экрана, а это дорого и не очень энергоэффективно.

    А на OLED-экранах ещё есть богомерзкий PenTile, из-за которого контрастные контуры выглядят пиксельно даже на очень высоком разрешении…

    Так, старый iPhone 6 и iPhone XS имеют одинаковый размер viewport (375px), но реальное разрешение различается очень сильно: 750px против 1125px. Достигается это с помощью масштаба: x2 у iPhone 6 и x3 у iPhone XS.

    Макет должен быть 1:1 к целевому размеру viewport, а не к физическому разрешению экрана. Потому что после всех манипуляций с масштабированием у нас остаётся четкое значение размера viewport, именно на него и надо ориентироваться.

    Наличие или отсутствие retina в этом деле вам совершенно не важно, ибо вы верстает под чёткие размеры viewport, которые могут быть одинаковыми на устройствах с совершенно разными физическими разрешениями: например, ширину viewport 375px (как у iPhone XS) можно достичь на древнем VGA-экране, сжав в нём окно браузера до этих 375px.


    Зачем тогда вообще retina-ресурсы
    Retina-ресурсы по сути бывают только растровыми, ибо векторные картинки, шрифты и вёрстка в целом масштабируются без потери качества. Этого нельзя сказать о всяких JPG'ах, поэтому если вы на iPhone 6 загрузите картинку 375px по ширине — да, она будет равна размеру viewport, но будет выглядеть размыто, потому что физическое разрешение экрана — 750px, а картинка по сути масштабируется в два раза, теряя в визуальном качестве.

    Если у вас в макете текст имеет 15px, то и делайте его 15px. Надеюсь, кстати, что макет вам делал не совсем отбитый дизайнер, который не забыл поставить px вместо pt в макете для текстов. Иначе — либо подгонять на глаз, либо пытаться конвертировать их в px, исходя из выбранном плотности печати в настройках документа макета. Ибо pt — это относительная единица для печати, в web её нет.

    Есть дизайнеры-уникумы, которые делают макеты в два раза больше необходимых размеров, типа, блин, retina x2. А если у меня retina x3 — что мне тогда делать? Или же делают макеты вообще неведомых размеров. Да и в Photoshop'e web-макеты в 2019-м году уже делать не надо, конечно.

    В CSS и HTML есть методы детекции наличия масштаба, чтобы грузить нужный ресурс в зависимости от его степени.
    UPDATE. С макетом полный порядок, тут уже дело в навыках верстки.
    Ответ написан
    6 комментариев
  • Какой способ обработки событий в React лучше?

    rockon404
    @rockon404 Куратор тега React
    Frontend Developer
    Используйте стрелочные функции в свойствах класса. Они являются негласным стандартом в React разработке и, скорей всего, очень скоро войдут в стандарт. Уже добрались до stage-3, а в Chrome уже есть нативная поддержка.
    Ответ написан
    Комментировать
  • Какие языки программирования лучше всего оплачиваются в России, США и Европе?

    @mamontm
    Оплачиваются не языки программирование.

    Оплачивается умение ими пользоваться.

    Есть буквально одно исключение - Cobol.
    Это один из старейших языков программирования, на котором начали писать еще тогда когда ваши родители еще не родились.
    Приходится иметь дело с очень древними программами, причем выполняющими весьма ответственные вещи, где высока цена ошибки (первыми, кто мог позволить себе компьютеры был очень крупный бизнес)

    о наблюдениям сервиса «Мой круг» в России последние пару лет по зарплатам лидируют...

    Вы неверно интерпретируйте данные.

    Просто ряд языков чаще используется в недорогих простых проектах. Что не отменяет их же использование в дорогих проектах. Но искажает понятие "средняя зарплата".

    Плюс недорогих проектов всегда намного больше. Что еще более искажает понятие "средняя зарплата".

    Ну то есть математически-формально всё так как описано в обзоре зарплат.

    Но вас же интересует, поди, сколько лично вы будете зарабатывать, если смените язык?
    А ваш заработок связан вовсе не с языком - а с тем, что вы в этом случае будете и с другим работодателем работать и опыта постепенно набераетесь.

    Причём если Scala и Elixir два года назад по зарплатам опережали прочие языки с сильным отрывом и за последние годы выросли по зарплате несильно, то Go и Objective-C за эти же два года совершили сильный отрыв от остальных языков и догнали Scala и Elixir

    Все упомянутые нельзя назвать распространенными на простых (то бишь на дешевых) проектах.

    P.S.:
    Узнаю типичный страх начинающего новичка (и типичное заблуждения уже начавшего новичка, который уже успел разочароваться в том, что ему не предлагают сходу 100 500 миллионов баков в месяц, как об этом все трубят) -

    "Я выучу не тот язык и карьера будет погублена"
    "Я выучу тот язык и карьера пойдет вверх".

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

    Важно ваше умение программировать. А это понимание/знание - алгоритмов, парадигм, концепций, паттернов.

    Эти вещи из языка в язык повторяются.
    Трудно выучить только первый.

    Сменить язык программисту с опытом - не сложно.
    Ответ написан
    8 комментариев
  • Как оптимизировать запись SCSS?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    Смущает класс ".list__link"

    Если вас смущает повторение list в названии класса, то можно воспользоваться сохранением имени в стиле that=this из javascript:

    .list {
        $b: &;
    
        &__item {
            &:first-child {
                #{$b}__link {
                    // . . .
                }
            }
        }
    }

    Но это сложно назвать более читаемым вариантом.

    Если цель - все же сделать код более удобоваримым, то может иметь смысл просто ограничить вложенность при написании стилей (именно визуальную вложенность кода, а не каскад), как это делают в том же rscss:

    .list {
        &__item {
            // . . .
        }
    
        &__link {
            // . . .
        }
    
        &__item:first-child &__link {
            // . . .
        }
    }
    Ответ написан
    1 комментарий
  • Как передавать функции только индекс от массива?

    rockon404
    @rockon404
    Frontend Developer
    Обычно это делают так:
    divs.forEach(function(_, i) {
      console.log(i);
    });


    Можно еще извратиться так:
    divs.forEach(function() {
      console.log(arguments[1]);
    });

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

    rockon404
    @rockon404 Куратор тега React
    Frontend Developer
    Рассмотрите вариант с переносом общих элементов на уровень выше:
    const App = () => {
      return (
        <Page wide={true}>
          <Header top={<Top />} />
          <SideNav>
            <LeftMenu />
          </SideNav>
          <Content>
            <Switch>
              <Route path="/" component={Home} />
            </Switch>
          </Content>
        </Page>
      );
    };


    Тем не менее, если вы уверены, что выбрали наиболее подходящий для вашего проекта подход, то общую часть можно перенести в отдельный компонент:
    const PageLayout = ({ wide, top, children }) => {
      return (
        <Page wide={wide}>
          <Header top={top ? top : <Top />} />
          <SideNav>
            <LeftMenu />
          </SideNav>
          <Content>
            {children}
          </Content>
        </Page>
      );
    };


    Тогда код страниц сократится до:
    const Home = () => {
      useEffect(() => {
        document.title = "Привет";
      }, []);
    
      return (
        <PageLayout wide>
          <Overview />
        </PageLayout>
      );
    };

    Для работы с head советую использовать react-helmet
    Ответ написан
    Комментировать
  • Как сделать такую анимацию?

    hzzzzl
    @hzzzzl
    еать залипалово какое :D
    вот скрипт
    colbacolorbar.ru/themes/colba/assets/js/fluidWave.js

    вообще не понимаю что там происходит, вроде яваскрипт, но какой то непростой webGL фреймворк наверно

    UPD вот нашел на гитхабе это, хз может быть это оригинал кода
    https://gist.github.com/peretc001/1444c3df210cc66c...
    Ответ написан
    2 комментария
  • Как сделать без помощи Javascript эффект всплытия элементов?

    hzzzzl
    @hzzzzl
    в любой непонятной ситуации смотри в консоль разработчика

    .sample-games__item:hover {
        transform: scale(1.25);
        z-index: 3;
        top: -8px;
    }


    5d3ef891c24b6256574342.png
    Ответ написан
    Комментировать
  • Как составить план обучения и практики Python?

    kshnkvn
    @kshnkvn
    yay ✌️ t.me/kshnkvn
    Читайте книги - пишите код. Всё. Не нужно никаких планов. Все эти "что мне учить, как мне учить, когда мне учить" и пр. - это всё отмазки лишь бы ничего не делать. Вы либо учите, либо нет.
    Ответ написан
    6 комментариев
  • Что из себя представляет SEO в 2019 году?

    Zoominger
    @Zoominger
    System Integrator
    Это упорядоченный, повсеместно распространённый культ Карго, при котором «специалист» выполняет определенного рода действия, рекомендованные абсолютно маргинальными источниками, не основанными на каком-либо авторитетном исследовании, совершенно не понимая сути выполняемых действий и не осознавая полную бессмысленность проводимых операций.

    Я не шучу.
    Ответ написан
    6 комментариев
  • Оцените качество кода?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    PEP8 не соблюдается, названия переменных невнятные, количество переменных избыточное, количество строк кода избыточное, ведение лога навелосипежено, файл в случае остановки цикла не закрывается.

    5d306e1883e8b985877430.png
    Ответ написан
    2 комментария
  • Какие темы изучить для прохождения отбора на Python?

    irestone
    @irestone
    Junior Web Developer
    Во-первых: "На все это у меня есть пару недель.(Поверьте я псих, и не такое могу)" - нет, не можешь. За пару недель можно изучить некоторые технологии, но научиться правильно думать нельзя.
    Во-вторых: "На Видеокурсы времени нет! Нужна текстовая информация!" - видео усваивается лучше. Но, в целом, нужно комбинировать все возможные ресурсы.
    В-третьих: "JavaScript (НЕНАВИЖУ)" - нет смысла ненавидеть молоток. Это очень наивная позиция. Выбери задачу и используй то, что нужно.
    В-четвертых: Объем математики определяется целью: занимаешься машинным обучением, искусственным интеллектом и прочим дата сайенс или пишешь физический движок, например, - понадобится серьезная математика. В остальных случая хватит школьного курса, и то средней школы.

    Непосредственно подготовка:
    Cracking the Coding Interview
    Elements of Programming Interviews in Python
    Из этих книг тебе станет ясно, что нужно знать, чтобы пройти собеседование на работу.

    Тренируй problem solving скилл на специальных сервисах. Популярные: https://leetcode.com, https://www.hackerrank.com, https://practice.geeksforgeeks.org
    Нужно не просто решать задачи, а учиться это делать правильно, походу изучая алгоритмы, структуры данных и анализ сложности. Грокаем алгоритмы - хороший выбор. Будет отлично, если найдешь друга, с которым можно будет тренировать witeboard'ы, когда один берет на себя роль интервьюера и задает другому задачу. Это важно. Так вы сможете разобраться, где и почему вы застреваете и научитесь правильно выстраивать мыслительный процесс при решении задач. По большому счету, это твой основной навык как программиста, именно его и будут проверять в первую очередь при собеседовании на работу. По крайней мере, должны. Если спрашивают только конкретные технологии, то тебе стоит задуматься, стоит ли у них работать. (Подсказка: нет)

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

    Изучай инструменты (языки, фреймворки и пр) под конкретную сферу. Не надо изучать все подряд, учи то, что нужно для того, чем ты хочешь заниматься, конкретный стек технологий. Помни про принцип Парето.
    Например, вот хорошие ресурсы по питону:
    https://www.amazon.com/dp/1593279280/
    https://www.amazon.com/dp/1593275994/
    https://www.youtube.com/watch?v=8DvywoWv6fI

    Наконец, ты должен понимать, что нетехнические, т.н. софт-скиллы не менее (а в случае с джуном часто более) важны. Я не зря предлагал ресурсы на английском - этот язык разработчику знать важнее, чем любой язык программирования. Не знаешь, с чего начать? Посмотри "Полиглот. Выучим английский за 16 часов!", начни пользоваться https://lingualeo.com (там есть и тренировки и курсы)

    Окружи себя инфосферой: ютуб, твиттер, телеграм и пр.
    Мне, например, нравятся эти ребята:
    https://www.youtube.com/channel/UCVbz7l0COUdLupcY4...
    https://www.youtube.com/user/HexletUniversity
    https://www.youtube.com/channel/UC4xKdmAXFh4ACyhpi...
    Они помогут тебе начать думать в правильном направлении.

    Удачи!
    Ответ написан
    3 комментария
  • This - undefined в стрелочной функции?

    k12th
    @k12th
    console.log(`You're pulling my leg, right?`);
    Во-первых, нет смысла применять стрелочные функции просто потому что они есть. В данном случае this равен undefined, потому что в строгом режиме this в глобальном скоупе указывает на undefined.

    Во-вторых,
    cards.forEach(card => card.addEventListener('click', flipCard));
    — в корне неправильный подход. Почитайте про делегацию событий. Вкратце — навешиваем обработчик на cards, а в обработчике смотрим, куда именно кликнули и соответственно обрабатываем.
    Ответ написан
    Комментировать
  • Хранение данных в Redux?

    @andreysuha
    Что то знаю
    Если какое-то значение, объект или массив Вам нужны в нескольких независимых компонентах то храните их в Store, если только для одного компонента, то в локальном состоянии. Ну и вариант типа я хз нужны ли эти данные в других компонентах, то лучше хранить в сторе.
    Ответ написан
    Комментировать
  • Javascript переход на страницу уже с выбранным option как сделать?

    Xuxicheta
    @Xuxicheta
    инженер
    Мыслите более обобщенно. Есть два текстовых документа волею судеб имеющих расширение html. Надо с одного передать информацию на другой, как это можно сделать?

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

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

    Способ 3: При нажатии на ссылку в странице 1 программа может запомнить это действие и сохранить его где-нибудь в браузере пользователя. При отрытии страницы 2 другая программа может пойти проверить хранилище и изменить select так, чтобы соответствовало.
    В этом случае вам нужно два маленьких скрипта на странице 1 и странице 2, и хранилище в браузере, например кукисы или localStorage.
    Ответ написан
    2 комментария
  • Мобильное приложение - натив или react?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Лучше натив.

    Так вы освоите узкую нишу с более высоким порогом входа и будете дорогим специалистом в ней, где ценятся ваш опыт и знания. Отдельно можно изучать Java Kotlin для андроида, но это параллельная история. Как минимум, вы сможете себя позиционировать в качестве iOS-разработчика.

    Судите сами. Кого вы наймете для приложения под iOS: универсала во всех сферах и языках, или узкого специалиста, который работает со Swift уже много лет?

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

    P.S. В ответе я исходил из того, что вы хотите развиваться в мобильной сфере и у вас нет конкретных задач.
    Ответ написан
    1 комментарий