• Как работает react js?

    voidnugget
    @voidnugget
    Программист-прагматик
    1. Грубо-говоря есть 1 страница в которую данные приходят по REST интерфейсу с ModX и он не участвует, непосредственно, в рендере. Сам по себе реакт рендерит страничку по кусочкам(компонентам), но вот внутри нет хорошего механизма для проверки нужно ли менять эти кусочки в DOM дереве - есть PureRenderMixin, но часто нужно городить руками.
    2. Нет эта страница не должна перегружаться и от реакта в таком случае толку 0. Реакт - это шаблонизатор в MVC, он не занимается работой с моделью и в нём нет бизнес-логики.
    3. Flux - это православный CQRS-ES, и непосредственно к modx отношения не имеет. Полноценной реализации этого паттерна, по всем канонам и с SOA, сейчас нет. Так что не стоит заморачиваться. Для работы с подобными вещами РНР / Python / Ruby довольно плохо подходят, так как там нужна асинхронность / многопоточность прямо с коробки, и без костылей типа gearmand или celery.
    4. Надо ковыряться в самом реакте - там много недочётов и недоделок, но сейчас это наиболее полноценное и типобезопасное решение для рендеринга посредством VirtualDOM.
    Ответ написан
    9 комментариев
  • Что лучше для ИТ-проекта на старте - ИП или ООО?

    solomakin
    @solomakin
    Head of online marketing
    Вам нужна консультация профессионального юриста.
    Он задаст много вопросов, ответы на которые и определят, какая форма собственности будет удобнее.
    Из сервисов: мастхэв Эльба - сильно разгрузит и сдаст всю отчетность.
    Ответ написан
    Комментировать
  • Как правильно оформить блок в стиле БЭМ?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    Суть БЭМа еще и в том, что его так то не пишут вручную, замаешься эти километры названий писать. Используйте тулзы, которые яндекс поставляет для разработки: https://ru.bem.info/tools/ и все встанет на свои места. Без этих инструментов, вы только проблем себе добавите.
    Ответ написан
    7 комментариев
  • Актуальные JavaScript фреймворки?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Не дня без фрейморков.

    Из fullstack фреймворков можно выделить только два:
    - Angular и Ember. Все остальное - комбинации библиотек, типа тех же бэкбон с марионет, реакт с флюксом...

    С точки зрения концепций они не сильно различаются на самом деле. Ну то есть как, реакт вводит виртуальный DOM, ангуляр ввел директивы и приблизил наступление Web Components... это из различий. Миллионы других фреймворков обычно копируют эти идеи и видоизменяют их.
    Ответ написан
    2 комментария
  • Как объективно протестировать производительность node.js и PHP в запросах к mysql БД?

    Staltec
    @Staltec
    Node.js разработчик
    Node-код в примере некорректен по отношению к поставленной задаче:
    for (var i = 0; i < 100000; i++) {
      connection.query(
        'SELECT * FROM dreg_document', 
        function(error, result, fields){}
      );
    }

    Тут просто в синхронном цикле вызывается 100000 асинхронных запросов БЕЗ ожидания их завершения. Просто 100000 раз кинули запрос и закончили работу программы подсчитав время. Автор вопроса не понимает как работает node.js и в связи с этим неверно трактует полученный результат. Если ожидать каждого ответа на запрос к SQL-серверу, то результат будет совсем другим.
    Ответ написан
    1 комментарий
  • Какая книга поможет в освоении JS?

    Мой путь Самурая.
    learn.javascript.ru
    Не смотри видео уроки, там за тебя все продумали ты просто списываешь готовый чужой алгоритм.
    Ответ написан
    Комментировать
  • Какова техника верстки landing page?

    @tim_tairan
    web
    Если стоит задача именно в переходе красивом то можно так:
    https://github.com/peachananr/onepage-scroll
    https://github.com/alvarotrigo/fullPage.js
    tympanus.net/Development/ArticleIntroEffects/index...

    А по факту адаптивности дизайна то bootstrap в зубы и поехал:
    getbootstrap.com
    Ответ написан
    1 комментарий
  • Как верстать блоки непрямоугольной формы?

    Petroveg
    @Petroveg
    Миром правят маленькие с#@&ки
    linear-gradient() с наклоном (прямо в самом элементе) — IE 9+
    border у псевдоэлементов — IE 7+
    transform:skew() (также лучше у псевдоэлементов) — IE 9+
    transform:skew() (у самого элемента, а внутренний элемент скосить в обратную сторону) — IE 9+
    SVG (можно фоном, можно напрямую) — IE 9+

    Update: по подсказке lioklio
    transform:rotate() (у псевдоэлементов с увеличенной шириной и обрезкой в одном из предков) — IE 9+
    Ответ написан
    6 комментариев
  • Как правильно оценивать стоимость своей работы?

    @nitogel
    Еще как вариант. Придумайте сумму денег в месяц за которую вам хочется работать.
    Поделите сумму на количество рабочих часов в месяц. Обычно в неделе 40 рабочих часов.
    В месяц получается около 168 рабочих часов. Так можно вычислить сколько стоит один рабочий час.
    Работу оцениваете в часах и умножаете на ставку. Для мелких проектов +20% т.к. уйдет много времени на согласование мелочей.
    Я для интересных проектов которые можно положить в портфолио могу сделать скидку. Для не интересных добавляю стоимость.
    Ответ написан
    Комментировать
  • React или Angular 2, ваши прогнозы?

    Почему люди продолжают сравнивать Angular с React'ом, это же разные вещи, "реакт" есть смысл сравнивать лишь с рендером "ангуляра", потому как "ангуляр" это fullstack фреймворк, а "реакт" библиотека для отрисовки. Это как сравнивать Tesla Model S с двигателем TSI, что как минимум странно.
    Ответ написан
    3 комментария
  • React или Angular 2, ваши прогнозы?

    miraage
    @miraage
    Старый прогер
    Исходя из текущих тестов производительности, Angular2 намного быстрее React.
    Трудный вопрос, ввиду того, что сейчас непонятно, как быстро es6 войдет в привычную жизнь.

    Но я потихоньку начинаю его пробовать, ибо будущее не за горами.

    // EDIT

    Просто посмотрите это видео. 16:50

    www.youtube.com/watch?v=XQM0K6YG18s
    Ответ написан
    6 комментариев
  • По какой схеме работать с зарубежными заказчиками?

    kumaxim
    @kumaxim
    Web-программист
    Ваша схема:
    • Юр.лицо(создание около 10 т.р.)
    • Валютный счет(1 т.р. открытие + столько же ведение в месяц)
    • Все входящие в РФ платежи облагаются НДС 18%
    • Платите налог на прибыль компании(15-20%)
    • Платите зарплатные налоги и/или выплачивайте себе дивиденды(только 13% НДФЛ)

    Есть, конечно, еще "интересные схемы", но все они всевдозаконные, поэтому я их рассматривать не буду.

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

    Предвидя очевидную реакцию читающих это "Ого сколько налогов..." и т.п. В Россию вводить деньги себе на еду официально не выгодно. Что-то строить или на исследования(там вычет по НДС полагается и налога на прибыль не будет) - это да, но если Вы фрилансер и зарабатывайте себе на хлеб за бугром, для Вас официально работать в РФ будет проблематично...

    Выхода из этого два: хитрый и офшорный.
    Первый(хитрый) - открывайте кредитную карту в любом банке РФ. Лично мне Тинькоф больше остальных нравится. Пользуйтесь кредитным лимитом и раз в месяц скидывайте на эту кредитку Ваш заработок. У ТКС один счет, на которые поступают все платежи к зачислению на их кредитки. Здесь расчет на две вещи: общий счет где в операциях сам финмониторинг ногу сломит и банк не будет блокировать свои бабки, ему лишний геморой с возвратом своих денег нафиг не нужен, особенно сейчас(кризис как бы на дворе).
    Второй(офшорный) - регистрация компании где-нибудь в Гон-Конге и открытие банковской карты у них же в юрисдикции. Налоги платите как иностранный гражданин в Гон-Конге, но наличку с карты снимайте тут в РФ. Главное оставьте в банке уведомление о том, что едите в РФ, иначе могут после первой же операции Вашу карту залочить и будет Вам гемороя...
    Ответ написан
    7 комментариев
  • Как правильно оценивать стоимость своей работы?

    @jkotkot
    режим сарказма
    Проблема в том, что вы ДЛЯ СЕБЯ не можете оправдать цены. Как помочь это сделать
    • Для начала рекомендую зарегаться как заказчик и попробовать поискать фрилансеров.. посмотреть какие ставки у конкурентов с аналогичным опытом. Я с 10 летним опытом берут 40-50 долларов в час. Есть те, кто с аналогичным опытом берет 100 и это не зависит от того, где человек живет.
    • Если нечего есть, то ставьте среднюю ставку, чтобы была работа и было на что жить. Среднюю ставку же не сложно обосновать? При приближении конца проекта/запасов пробуйте делать ставки больше или даже существенно больше. Как показывает практика, никто не начинает выяснять отношения, почему вы с других брали на 10-20 процентов меньше.
    • Сделайте разные ставки для разных по времени проектов. Для проекта долгосрочного проекта на полгода и больше ставка X. Для проекта меньше полугода, но больше месяца ставка X-10%. Для проекта меньше недели ставка X-20%. Проценты берите на свой вкус

    Для начала этого хватит. Самое главное помните, что вы не обязаны никому ничего обосновывать. Если спросят почему, то отвечайте, что это ваш КОМФОРТНЫЙ рейт, при котором вы можете хорошо работать не считая, что вам платят мало. Отказывайтесь от тех, кого это не устраивает, ибо работа с такими заказчиками - это только проблемы.
    Бонус: ставки, ожидаемые заказчиками на одеске по категориям($ $$ $$$) goo.gl/DGxDYf Взято из самой статистики одеска
    Ответ написан
    1 комментарий
  • Top level веб-разработка. Где и как?

    thecoder
    @thecoder
    Разработчик веб-приложений и сервисов.
    Вопрос космического масштаба. Полагаю, что не существует единого понятия hi-end класса. Это как в ресторане попросить "принесите самое вкусное блюдо". Стоимость проекта? Объем кода? Нагрузка? Изящество кода? С какой командой это делать? Лично мое понимание профессионализма и высокого класса - это когда клиент доволен и поставленные задачи решены, несмотря на неожиданные препятствия и противоречия.

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

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

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

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

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

    В качестве практических действий, чтобы ответ не был слишком обобщенным, предлагаю подписаться на Youtube-каналы Академии Яндекса - там попадаются интересные фишечки, до которых самостоятельно можно долго доходить.

    www.youtube.com/channel/UCTUyoZMfksbNIHfWJjwr5aQ

    Англоязычные рассылки:

    css-weekly.com

    javascriptweekly.com

    nodeweekly.com

    Естественно, любимый БЭМ :)

    getbem.com

    ru.bem.info

    Успехов в совершенствовании.
    Ответ написан
    Комментировать
  • Что можно почитать по неизменяемым типам данных (mutable/immutable data)?

    hrls
    @hrls
    Несомненно, для хорошего понимания неизменяемых структур стоит ознакомиться с функциональными языками программирования. В данном случае Clojure будет лучшим выбором (в сравнении со Scala) - там идея персистентных неизменяемых структур данных проходит сквозь весь дизайн языка.
    Если совсем кратко по вопросу, то неизменяемые структуры данных лучше за счет гарантий относительно того, что они не могут измениться. Поясняю. Т.к. в современных языках программирования принято передавать аргументы в функцию по ссылке, то нет возможности утверждать, что метод не изменил коллекцию или любой другую структуру. Особенно это актуально для стороннего кода.
    Также такая гарантия неизменяемости заставляет более тщательно проектировать алгоритмы и API конкуретных сред, вместо поспешного изменения состояния какой либо разделяемой структуры из разных потоков выполения (разделяемое изменяемое состояние это вообще зло при написании конкурентного кода).
    Если же совсем абстрактно, то неизменяемые структуры данных изменяют дизайн программы с (разделяемые изменяемые данные + код изменяющий эти данные) на (неизменяемые данные в контекстах + чистые функции).

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

    Почитать можно тут tonsky.me/talks/2015-codefest
    Ответ написан
    1 комментарий
  • Как найти стабильную удалённую работу Web разработчику? Реально ли?

    xoma2
    @xoma2
    Программист
    Елси не можешь уже физически вставать и идти на работу то не сможешь и удаленно работать, только людей подставишь
    Ответ написан
    6 комментариев
  • Как найти стабильную удалённую работу Web разработчику? Реально ли?

    @ivkol
    реально. Вакансии с brainstorage - галочка "удаленно"
    Ответ написан
    Комментировать
  • Кроссдоменный запрос с domain.com на api.domain.com... как?

    miraage
    @miraage
    Старый прогер
    XMLHttpRequest перед отправкой запроса на другой домен посылает запрос OPTIONS.
    Он, в свою очередь, должен ответить заголовком:
    Access-Control-Allow-Origin: *

    Можете посмотреть мой подробный ответ на stackoverlow.
    Ответ написан
    1 комментарий