• Проектирование большого проекта на примере аналога Alibaba.com

    • Tutorial
    Многие рассказываю о проектировании: как пользоваться Axure или Sketch, какие функции должен содержать сайт, как правильно спроектировать страницу товара. Это все, безусловно, очень полезно, но не показывает полную картину происходящего в проектировании. В интернете даже нет ни одного полного примера технического задания на проекты такого уровня. На самом деле, чтобы спроектировать большой сайт, нужно потратить сотни часов на исследования, прототипирование и разработку подробного ТЗ. В этой статье я впервые в рунете покажу все этапы проектирования и результаты по ним, полный динамический прототип (более 150 прототипов) и большое ТЗ (более 200 страниц описания). Все это мы будем делать на примере проектирования аналога крупнейшей в мире E-commerce площадки «Alibaba.com».
    Читать дальше →
  • Подробности о будущих API для P2P-коммуникаций между браузерами

      Несколько дней назад консорциум World Wide Web объявил о создании рабочей группы Web Real-Time Communications Working Group, которая должна разработать стандарты пиринговых коммуникаций между браузерами (собственно, сама новость уже обсуждалась на Хабре). Если стандарты примут, то станет возможной прямая передача видео и звука между ПК без использования сервера и отдельных приложений.
      Читать дальше →
    • PWA — это просто. Hello Habr

        Продолжаем знакомство с Progressive Web Applications. После теоретической прошлой части самое время перейти к практике.

        Сегодня мы построим простое, но полноценное PWA «Hello Habr».




        Приложение доступно по адресу https://altrusl.github.io/habr-pwa/hello-habr/. При открытии в браузере на мобильном устройстве возможно добавление ярлыка на домашний экран и запуск в полноэкранном режиме.
        Читать дальше →
      • Веб-компоненты: 9 проектов, о которых стоит знать в 2019 году

        • Translation
        Автор материала, перевод которого мы сегодня публикуем, полагает, что если вы собираетесь использовать при проектировании интерфейсов своих приложений веб-компоненты и подыскиваете подходящую библиотеку, независимую от UI-фреймворков, вам стоит взглянуть на те проекты, о которых пойдёт здесь речь.


        Читать дальше →
        • +44
        • 26.8k
        • 9
      • Как перестать беспокоиться и начать писать тесты на основе свойств

          В последнее время все чаще встречаются упоминания о некоем волшебном средстве — тестировании на основе свойств (property based testing, если надо погуглить англоязычную литературу). Большинство статей на эту тему рассказывают о том, какой это классный подход, затем на элементарном примере показывают как написать такой тест используя какой-то конкретный фреймворк, в лучшем случае подсказывают несколько часто встречающихся свойств, и… на этом все заканчивается. Дальше изумленный и воодушевленный читатель пытается применить все это на практике, и упирается в то, что свойства как-то не придумываются. И к большому сожалению часто на этом сдается. В этой статье я постараюсь расставить приоритеты немного по другому. Начну все-таки с более-менее конкретного примера, чтобы объяснить что это за зверь такой. Но пример, надеюсь, не совсем типичный для подобного рода статей. Затем попробую разобрать некоторые проблемы, связанные с этим подходом, и как их можно решить. А вот дальше — свойства, свойства и только свойства, с примерами куда их можно приткнуть. Интересно?
          Читать дальше →
        • Искусственный интеллект мыслит, как группа людей, что вызывает беспокойство

          • Translation
          Искусственный интеллект был создан для принятия организационных решений и государственного управления; он нуждается в человеческой этике, заявляет Джонни Пенн из Кембриджского университета

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

          Рассмотрим информатику. Его происхождение прослеживается не только аналитической философией, чистой математикой и Аланом Тьюрингом, но и что удивительно, историей государственного управления. В книге «Правительственная машина: революционная история компьютера», изданной в 2003 году, Джон Агар из Университетского колледжа Лондона рисует диаграммы развития британской гражданской службы, как она увеличилась с 16 000 сотрудников в 1797 году до 460 000 к 1999 году. Он заметил, аномальное сходство между функциональностью человеческой бюрократии и электронно-вычислительной машиной. (Он признался, что не может утверждать, было ли это наблюдение тривиальным или глубоким).

          Обе системы обрабатывали большое количество информации, используя иерархию предварительно установленных, но адаптируемых правил. Но один из них происходил от другого. Это показало важную связь между организацией социальных структур людей и цифровыми инструментами, предназначенными для их обслуживания. Г-н Агар связывает само происхождение информатики с Аналитической маши́ной Чарльза Бэббиджа, разработанной в 1820-х годах в Британии. Ее разработка была субсидирована правительством, предполагая, что она будет служить его спонсору. Проекты Бэббиджа, отмечает г-н Агар, следует рассматривать как «материализацию государственной деятельности».
          Читать дальше →
        • Костыли, Нарния, прокрустов ниндзя: три боли тимлида в стартапе

            Тимлид в стартапе — разом и Илон Маск, и Франкенштейн. Утром конструирует космические корабли, а к вечеру обращает к проекту крик: «Живи! Тебе нельзя умирать!» — и нездорово смеется. И все это в компании трех джуниоров.

            Александр Поломодов руководит разработкой в управлении привлечением в Tinkoff.ru; ранее он был руководителем разработки / CTO в небольших компаниях. Мы попросили Александра вспомнить прошлое и рассказать, какие подводные камни могут ожидать тимлида, приходящего в стартап.

            image

            Под катом — ответы на важные вопросы:

            • как выжить в условиях, когда процессы взаимодействия не налажены (или не существуют вовсе);
            • как собрать крутую команду, когда ФОТ ограничен;
            • как понять, что из проекта нужно бежать.
            Читать дальше →
          • Базы данных и Kubernetes (обзор и видео доклада)

              8 ноября в главном зале конференции HighLoad++ 2018, в рамках секции «DevOps и эксплуатация», прозвучал доклад «Базы данных и Kubernetes». В нём рассказывается о высокой доступности баз данных и подходах к отказоустойчивости до Kubernetes и вместе с ним, а также практических вариантах размещения СУБД в кластерах Kubernetes и существующие для этого решения (включая Stolon для PostgreSQL).



              По традиции рады представить видео с докладом (около часа, гораздо информативнее статьи) и основную выжимку в текстовом виде. Поехали!
              Читать дальше →
              • +43
              • 14.5k
              • 5
            • [Перевод] 4 способа стилизировать React-компоненты

                Привет, Хабр! Представляю вашему вниманию перевод статьи «4 Ways to Style React Components».



                На сегодняшний день разработано много способов стилизации React компонентов. От библиотек до использования традиционных СSS файлов. Выбор довольно обширен и, скорее всего, будет соответствовать вашим предпочтениям. Вот четыре способа стилизации React компонентов.
                Читать дальше →
              • Невыдуманные IT-истории о самозванцах и почему появились эти непонятные практики на собеседованиях


                  Типичный кандидат по версии излишне рьяных «охотников на самозванцев»

                  Несколько дней назад Филипп fillpackart Ранжин выпустил статью под заголовком «Хватит подозревать разрабов в самозванстве. Научитесь лучше собеседовать», в которой поднял очень острую для индустрии проблему неадекватных собеседований. Я ее прочитал, ужаснулся, прочитал еще раз и задумался: «а почему вообще такая фигня происходит?». С этим вопросом я отправился к паре знакомых HR-специалистов и директору Crossover Russia Владимиру vme Еронину (что в итоге вылилось в статью в блоге) и, как оказалось, ноги подобных неприятных и непонятных практик растут, как обычно, не из нашей собственной культуры найма.

                  К сожалению, тренд на слепое копирование всего и вся, «чтоб было не хуже, чем на Западе», жив и в 2018 году. И если в иностранных компаниях подобные вещи хоть как-то можно оправдать, закрыв глаза на градус маразма, то для России и стран СНГ множество из выработанных заокеанскими коллегами механизмов вообще неприменимы. Вот только не все HR-специалисты и руководители это понимают.

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

                  Так что, если вы считаете, что самозванцев в IT не существует и никто не будет в здравом уме проходить собеседование на Senior Java, не имея достаточных навыков, то добро пожаловать под кат, я вас удивлю.
                  Читать дальше →
                • Как стать дизайнером интерфейсов. Необходимые навыки и сильные инструменты, о которых нам не говорят



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

                  Получив множество вопросов от молодых дизайнеров, я решил написать материал, который бы мечтал прочитать на старте своей карьеры. Он основан на личном опыте и уроках, полученных в общении с успешными дизайнерами из больших студий и продуктовых команд.

                  В первой части, я расскажу о базовых навыках хорошего дизайнера, а во второй, о том, как их использовать для построения карьеры.
                  Читать дальше →
                  • +24
                  • 18.1k
                  • 2
                • Открытый вебинар «Механизмы контейнеризации Linux»

                    Всем привет!

                    Делимся новым открытым уроком, который провёл Александр Румянцев — преподаватель курса «Администратор Linux». На вебинаре разбиралось современное состояние механизмов контейнеризации и контейнеризация cgroups и cgroups-based, как она реализована в ядре, что такое namespace и почему cgroups — это группы.


                    Ждём комментарии и вопросы тут или можете задать их преподавателям сегодня на дне открытых дверей.
                  • 10 советов по дизайну интерфейса

                    Привет, Хабр! Представляю вашему вниманию перевод статьи "10 Tips to Designing Perfect Forms".


                    Формы играют роль портала между пользователем и системой и часто являются основой страницы. Авторизация, регистрация, обновление статуса, ввод платежных данных или адреса доставки – управляются формами. Для онлайн-магазинов грамотно созданные формы играют значительную роль. По собственному опыту, хороший дизайн удваивает онлайн-продажи.

                    Поскольку формы выполняют важные функции для интерфейса пользователя, существуют правила по их оформлению.
                    Читать дальше →
                  • Кодинг и тестирование kNN в Julia



                    Новый язык в Data Science. В России Julia довольно редкий язык, хотя за рубежом его используют уже 5 лет (тоже мне, удивили). Источников на русском нет, поэтому я решила сделать показательный пример работы Julia, взятый из одной замечательной книги. Лучший способ выучить язык — начни что-то писать на нем. А чтобы это еще и привлекло внимание, используй machine learning.
                    Читать дальше →
                    • +11
                    • 2.7k
                    • 6
                  • Результаты Обсуждения на тему: Личное, Командное и Организационное мышление” (ЛАФ 2018)

                      В своих поисках ответа, как принимать лучшие стратегические решения (а заодно доказать, что думать полезно) я набрел на две ключевые идеи, которые мне не дают покоя, потому что переворачивают все классические представления о том как происходит принятие решений:

                      • Субъектом мышления является не индивид, а группа. ( Курс командного коучинга Девида Клаттербака 2-й уровень)
                      • 3 уровня мышления из Integrated Thinking Framework (Richard King):
                        Личный, командный, организационный.

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

                      В рамках первичного обсуждения, сформировалось понимание что в контексте группового мышления лучше всего подходит перспектива, в которой мышление это процесс определяющий эффективность принятия Решений. Немного доработанная схема приведена на рисунке.
                      Читать дальше →
                    • Начинаем работу с EOS Mainnet за 10 минут



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

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

                        Вот о чем я расскажу в этой статье:

                        • Как проще всего подключиться к EOS Mainnet
                        • Как использовать кошельки и счета
                        • Как выделяются ресурсы
                        • Что еще стоит почитать
                        Читать дальше →
                      • Подключение bootstrap в Next.js

                        • Tutorial
                        Категорически приветствую.

                        Столкнулся я тут с необходимостью подключить Bootsrtap в Next.js. Беглый гуглёж дал несколько тем на stackoverflow, парочку монструозных (всё в одном и все пакеты устарели ) шаблонов на гитхабе, и немножечко оффдоков. На деле же всё оказалось довольно тривиально, но, надеюсь, эта заметка сэкономит кому-то время.
                        Читать дальше →
                      • Реверсим «Нейроманта». Часть 4: Звук, анимация, Хаффман, гитхаб

                          Привет, как вы уже поняли, это продолжение моей истории реверс-инжиниринга и портирования «Нейроманта».



                          Реверсим «Нейроманта». Часть 1: Спрайты
                          Реверсим «Нейроманта». Часть 2: Рендерим шрифт
                          Реверсим «Нейроманта». Часть 3: Добили рендеринг, делаем игру

                          Сегодня начнём с двух хороших новостей:


                          • во-первых, я больше не один — к проекту присоединился и уже успел внести ощутимый вклад пользователь viiri;
                          • во-вторых, теперь у нас есть открытый репозиторий на github.

                          В целом, дела идут очень неплохо и, возможно, скоро мы получим хоть сколько-то играбельный билд. А под катом, как обычно, поговорим о том, чего и каким образом удалось достичь на текущий момент.

                          Читать дальше →
                          • +18
                          • 3.4k
                          • 5
                        • Intel 8086 — процессор, открывший эпоху

                            История создания легенды


                            Сегодня, в 2018 году, мы отмечаем сорокалетие, пожалуй, ключевого в истории персональных компьютеров процессора, а именно – Intel 8086.
                            image

                            Именно с него началась эпоха архитектуры x86, заложившей основы развития процессоров на многие годы и десятилетия вперед, именно ему мы обязаны взлету популярности компьютера как индивидуальной единицы, доступной каждому пользователю. В честь 40-летнего юбилея процессора, с которого началось превращение Intel в многомиллиардную корпорацию, компания представила небольшой символический подарок своим поклонникам — им стал юбилейный i7-8086K, первым процессором в истории Intel, способным работать на частоте 5 ГГц прямо из коробки.

                            image

                            Но сегодня мы не будем петь дифирамбы инженерам современных процессоров-лидеров, а вернемся в далекое прошлое, в 1976 год, где и началась история Intel 8086. И началась она с совершенно другого процессора.
                            Читать дальше →