• Ref-атрибуты и DOM в React

    • Translation

    React. Продвинутые руководства. Часть Третья


    Продолжение серии переводов раздела "Продвинутые руководства" (Advanced Guides) официальной документации библиотеки React.js.


    Ref-атрибуты и DOM в React


    В типовом потоке данных React, свойства (props) — это единственный способ, с помощью которого родители взаимодействуют со своими потомками. Для модификации потомка, вам необходимо заново отобразить (произвести ререндеринг) его с новыми свойствами. Однако, в некоторых случаях, вам понадобится модифицировать потомка непосредственно, вне основного потока. Изменение потомка возможно в случаях если он является экземпляром компонента React или элементом DOM. Для обоих этих случаев React имеет особый способ изменения.

    Читать дальше →
  • 10 вещей, которые обязательно нужно сделать после регистрации ООО


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

      А для тех, кто зарегистрировался в качестве ИП, мы подготовили: 7 советов начинающему ИП, чтобы избежать проблем (что-то вы точно из этого не знаете)
      Читать дальше →
    • Руководство хакера по нейронным сетям. Схемы реальных значений. Стратегия №1: Произвольный локальный поиск

      • Translation
      Мы начинаем публиковать перевод книги (как называет ее сам автор) «Руководство хакера по нейронным сетям». Книга состоит из четырех частей, две из которых уже закончены. Мы постараемся разбить текст на логически завершенные части, размер которых позволит не перегружать читателя. Также мы будем следить за обновлением книги и опубликуем перевод новых частей после их появления в блоге автора.

      Содержание:
      Глава 1: Схемы реальных значений
      Часть 1:
         Введение   
            Базовый сценарий: Простой логический элемент в схеме
            Цель
               Стратегия №1: Произвольный локальный поиск
      

      Часть 2:
               Стратегия №2: Числовой градиент
      

      Часть 3:
               Стратегия №3: Аналитический градиент
      

      Часть 4:
            Схемы с несколькими логическими элементами
               Обратное распространение ошибки
      

      Часть 5:
               Шаблоны в «обратном» потоке 
            Пример "Один нейрон"
      

      Часть 6:
            Становимся мастером обратного распространения ошибки
      


      Глава 2: Машинное обучение
      Часть 7:
            Бинарная классификация
      

      Часть 8:
            Обучение сети на основе метода опорных векторов (SVM)
      

      Часть 9:
            Обобщаем SVM до нейронной сети
      

      Часть 10:
            Более традиционный подход: Функции потерь
      


      Читать дальше →
      • +13
      • 48.2k
      • 3
    • Нейронные сети на Javascript

        image
        Идея для написания этой статьи возникла прошлым летом, когда я слушал доклад на конференции BigData по нейронным сетям. Лектор «посыпал» слушателей непривычными словечками «нейрон», «обучающая выборка», «тренировать модель»… «Ничего не понял — пора в менеджеры», — подумал я. Но недавно тема нейронных сетей все же коснулась моей работы и я решил на простом примере показать, как использовать этот инструмент на языке JavaScript.

        Мы создадим нейронную сеть, с помощью которой будем распознавать ручное написание цифры от 0 до 9. Рабочий пример займет несколько строк. Код будет понятен даже тем программистам, которые не имели дело с нейронными сетями ранее. Как это все работает, можно будет посмотреть прямо в браузере.
        Читать дальше →
      • Мастер-класс Бориса Вольфсона. Основы Agile

        • Tutorial
        image

        Этот пост написан по мотивам мастер-класса Бориса Вольфсона (директора по развитию HeadHunter), посвященного (сюрприз!) основам Agile. Материал будет полезен всем, кто либо совсем не знаком с данной методологией разработки сложного ПО, либо имеет о ней смутное представление.
        Читать дальше →
      • Время материализоваться: осталось 5 дней до конца конкурса

          Около двух месяцев назад мы анонсировали конкурс по Material Design. Вот и подходит к концу последняя неделя конкурса (напомним, работы принимаются до 15 ноября), поэтому самое время для последнего рывка. Пока не поздно подать заявку. :)


          Вы думали, обои для Android 6.0 делают в фотошопе? А вот и нет.

          За время конкурса произошли следующие позитивные изменения: часть материалов по Material Design стала доступна и на русском языке (если у вас на странице текст отображается на английском, то проверьте выбор языка в нижнем правом углу). Данный курс по Material Design содержит примеры кода и разметки и будет полезен разработчикам. Кроме того, мы рады представить вам дополнительные источники вдохновения. Быть может, именно они помогут вам завершить редизайн.
          Читать дальше →
        • Как работает реляционная БД

          • Translation
          • Tutorial
          Реляционные базы данных (РБД) используются повсюду. Они бывают самых разных видов, от маленьких и полезных SQLite до мощных Teradata. Но в то же время существует очень немного статей, объясняющих принцип действия и устройство реляционных баз данных. Да и те, что есть — довольно поверхностные, без особых подробностей. Зато по более «модным» направлениям (большие данные, NoSQL или JS) написано гораздо больше статей, причём куда более глубоких. Вероятно, такая ситуация сложилась из-за того, что реляционные БД — вещь «старая» и слишком скучная, чтобы разбирать её вне университетских программ, исследовательских работ и книг.

          На самом деле, мало кто действительно понимает, как работают реляционные БД. А многие разработчики очень не любят, когда они чего-то не понимают. Если реляционные БД используют порядка 40 лет, значит тому есть причина. РБД — штука очень интересная, поскольку в ее основе лежат полезные и широко используемые понятия. Если вы хотели бы разобраться в том, как работают РБД, то эта статья для вас.
          Читать дальше →
        • Хекслет: новые курсы + вебинары про VIM, программирование, английский

            Привет, Хабр!
            Мы продолжаем публиковать образовательные материалы — новые курсы, и с недавнего времени, вебинары. Начнем со свежих курсов:

            Цикл по PHP




            1. Введение в PHP
            2. PHP5: Императивное программирование

            Eww, php! Нет, погодите. Это ведь Хекслет, поэтому под предлогом изучения мега-популярного языка мы рассказываем людям про SICP. Наш курс основан на SICP, и рассказывает о программировании, абстракциях, рекурсии, функциях высшего порядка. И никакого HTML и LAMP, это не «сделай свой первый сайт за 2 часа», это программирование. Первый курс будет продолжаться еще несколько недель, осталось покрыть такие темы как reduce, деревья, замыкания, внутреннее состояние и другие.
            Читать дальше →
          • JavaScript — шаблоны наследования

            • Translation
            Примечание переводчика: Тема наследования в JavaScript является одной из самых тяжелых для новичков. С добавлением нового синтаксиса с ключевым словом class, понимание наследования явно не стало проще, хотя кардинально нового ничего не появилось. В данной статье не затрагиваются нюансы реализации прототипного наследования в JavaScript, поэтому если у читателя возникли вопросы, то рекомендую прочитать следующие статьи: Основы и заблуждения насчет JavaScript и Понимание ООП в JavaScript [Часть 1]

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

            JavaScript является очень мощным языком. Настолько мощным, что в нем сосуществует множество различных способов проектирования и создания объектов. У каждого способа есть свои плюсы и минусы и я бы хотел помочь новичкам разобраться в этом. Это продолжение моего предыдущего поста, Хватит «классифицировать» JavaScript. Я получил много вопросов и комментариев с просьбами привести примеры, и для именно этой цели я решил написать эту статью.
            Читать дальше →
          • Интернет магазин — 15000 евро за первый месяц

              В народе есть известная поговорка „Первый Блин Комом“, чего не могу сказать о своём свежем опыте интернет торговли. Скорее всего, это просто исключение подтверждающее правило, но, тем не менее, хочется рассказать о тех небольших выводах, что я сделал за последний месяц.

              Итак, небольшая история о том, как можно довольно легко заработать за один месяц минимум 15 000 евро.

              Мой профессиональный род деятельности — веб-разработка. Занимаюсь R&D в одной небольшой IT компании, пишу «навороченные» приложения для корпоративных интранетов и, в принципе, на жизнь не жалуюсь. Конечно, при таком раскладе хочется параллельно вести какой-нибудь интересный проект, чем неоднократно занимался в мире Open Source. Со временем, правда, захотелось на побочных проектах так же как-то зарабатывать, что с Open Source оказалось не так просто, как может показаться из статей на Хабре :) Потому и решил попробовать для себя что-то принципиально новое — открыть интернет магазин.

              Читать дальше →
            • Обзор образовательных ресурсов к 1 сентября

                Сегодня наступил день, символизирующий одно из сильнейших и лучших свойств человека — его интеллект. День Знаний, он же 1 сентября, он же начало учебного года. Ведь кем бы мы были без знаний и науки? Болтались бы где-то внизу пищевой пирамиды.



                В честь этого рокового для каждого школьника и студента дня, мы решили сделать подборку различных образовательных ресурсов в сфере IT. Когда-то мы уже делали нечто подобное для желающих научиться веб-разработке и дизайну. Всё-таки учиться никогда не поздно, как бы банально это ни звучало. А в наше время так и совсем нельзя прекращать учиться, а то велик риск всё-таки оказаться на дне пирамиды, только уже социальной.
                Читать дальше →
              • Запуск приложения во Вконтакте

                image Статья нацелена на начинающих разработчиков, которые хотят запустить свое приложение в социальной сети.

                В статье описывается личный опыт создания IFrame-приложения, с нуля, для «Вконтакте», а так же все события которые произошли во время запуска и после, ну и конечно же совершённые ошибки. Можно даже сказать что это не совсем статья, а скорее рассказ.

                Помимо рассказа, здесь присутствуют отчеты о нагрузке, попытка монетизации, информация о сервере и разбор кода. Поэтому вы можете переключаться, к интересующим вас пунктам.
                Читать дальше →
              • Часть 4.1 Возвращаем зрение. От очков до эксимерного лазера

                • Tutorial

                Прошу прощения у всех, кто долго ждал этой статьи. Подготовка материалов требует массы времени и труда. В этой статье я постараюсь рассказать обо всех методиках коррекции зрения, которые существуют на данный момент. Мы пройдем путь от первых очков XIII века до современных лазерных методов коррекции, таких как femto-LASIK и ФРК.

                Если вы не читали предыдущих статей цикла, то я бы рекомендовал ознакомиться в первую очередь со второй частью. Именно в ней подробно разбираются основные нарушения зрения и биологические основы нашего зрения. Объем статьи получился очень большой, поэтому я решил разбить ее на две части для облегчения восприятия.
                Все, кому интересно — добро пожаловать под кат.

                Остальные части


                Часть 1. Unboxing VisuMax — фемто-лазера для коррекции зрения
                Часть 2. Сколько мегабит/с можно пропустить через зрительный нерв и какое разрешение у сетчатки? Немного теории
                Часть 3. Знакомьтесь — лазер по имени Amaris. Переезды и первое пробуждение VisuMax
                Часть 4.2 Возвращаем зрение. От очков до эксимерного лазера
                Читать дальше →
              • Несколько JavaScript хаков для хипстеров

                • Translation
                image
                JavaScript занимательный язык программирования.

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

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

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

                Все это я узнал, изучая проекты с исходным кодом, но здесь я пишу так, как будто бы это я их придумал.
                Читать дальше →
              • Поле с паролем

                  Поля для ввода паролей в браузере встречаются в разных случаях:
                  • при регистрации;
                  • на форме логина;
                  • пароль для чего-то абстрактного.
                  Каждый раз всплывают одни и те же проблемы и возникает необходимость в одинаковых шаблонных фичах. Чтобы облегчить эту рутинную задачу, я сделал js-библиотеку, которую можно конфигурировать под разные случаи — о ней и будет этот пост.
                  Что из этого получилось
                • Видео лекций всего курса первой Школы разработки интерфейсов Яндекса

                  • Tutorial
                  Разработка интерфейсов — одно из важнейших направлений в Яндексе, сервисами которого пользуются миллионы людей. А ни один российский вуз, к сожалению, не готовит разработчиков интерфейсов. Все знания, которые необходимы современному верстальщику или фронтенд-программисту, приходится черпать из статей в интернете, книг, докладов на конференциях. Но зачастую этого бывает недостаточно. Почти каждого нового разработчика интерфейсов, которого мы принимали на работу, приходилось многому обучать.

                  За долгое время работы в Яндексе нам удалось систематизировать все наши знания и огромный опыт в создании фронтенда веб-сервисов. Результатом этого осмысления и длительной работы стала первая Школа разработки интерфейсов, занятие которой шли в московском офисе Яндекса. Вся практическая часть обучения проходила в реальных проектах Яндекса. Теоретическая же состояла из лекций, которые читали ведущие разработчики интерфейсов Яндекса: Сергей veged Бережной, Михаил mishanga Трошев, Алексей doochik Андросов, Михаил azproduction Давыдов и другие.

                  Выпускники первой Школы разработки интерфейсов Яндекса

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

                  Читать дальше →
                • Пускаем пыль в глаза или как получить больше заказов на разработку

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



                    Если при наличии современного сайта, представительного портфолио и рыночных рейтов, процент заказов у вас остается относительно низким, то с большой долей вероятности причина в неправильном процессе начальной коммуникации. Как сделать его более эффективным? Об этом пойдет речь под катом.
                    Читать дальше →
                  • В поисках идеального css-фреймворка. Требования, реализация, maxmertkit



                      Я обожаю twitter bootstrap. Прост, местами логичен, достаточно красив, подходит для быстрого прототипирования веб-интерфейсов. Но этого оказалось недостаточно. Взяв twitter bootstrap в большой проект, мне пришлось целиком его разобрать и переосмыслить css-фреймворки как боевые единицы в веб-проектах. В результате переосмысления родились требования к любому css-фреймворку, удобному как верстальщику, так и frontent-разработчику.
                      Требования и реализация
                    • Разворачиваем локальный сервер на Windows


                        Несколько дней назад меня очередной раз посетила Мысль. Мысль была не нова и довольна навязчива: «давай перейдем на Windows8. Ну пожааалуйста». И так как отогнать её никак не получалось, я запаслась чаем и печеньками и приступила.

                        На установку системы и всех необходимых программ ушло не более двух часов, но затем наступил самый интересный момент: мне нужно было развернуть рабочее окружение, а именно — GIT + локальный сервер (Apache, MySQL, PHP, nginx, memcached, mongodb). Помятуя об опыте предыдущих установок, на этот раз я решила весь процесс задокументировать и сохранить для потомков.

                        Читать дальше →