Как стать автором
Обновить
201
0
Артур Заяц @zag2art

Пользователь

Отправить сообщение

Github — без командной строки

Время на прочтение2 мин
Количество просмотров68K

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

Многие опытные пользователи github-а знают, что отнюдь не для всего обязательно нужно использовать командную строку. Все это так.

Здесь я собрал несколько рецептов, используя которые, вы сможете без единой команды git, скопировать себе репозиторий, создать там вспомогательную ветку, в ней что-то отредактировать, добавить/удалить файлы/папки, сделать пулл-реквест в оригинальный репозиторий. А по истечению какого-то времени, когда в оригинальном репозитории накопятся изменения не отраженные в нашей копии — синхронизировать эти два репозитория — причем тоже без единой git-команды.

Читать дальше →
Всего голосов 67: ↑45 и ↓22+23
Комментарии33

Введение в компоненты derby 0.6

Время на прочтение12 мин
Количество просмотров5.8K
image
Продолжаю серию (раз, два, три, четыре) постов по реактивному фуллстек javascript фреймворку derbyjs. На этот раз речь зайдет о компонентах (некий аналог директив в ангуляре) — отличному способу иерархического построения интерфеса, и разбиения приложения на модули.
Читать дальше →
Всего голосов 17: ↑16 и ↓1+15
Комментарии6

Derby 0.6 — FAQ

Время на прочтение1 мин
Количество просмотров6.9K
image
В последнее время, ввиду отсутствия нормальной документации по derby версии 0.6, мне стали часто по почте и через различные сервисы задавать вопросы.

Чтобы информация накапливалась, я завел для этого отдельный репозиторий — derby-faq. Сейчас там пара десятков вопросов с подробными ответами и примерами кода. Предлагаю всем поучаствовать в его развитии.
Читать дальше →
Всего голосов 25: ↑19 и ↓6+13
Комментарии7

Изучаем Derby 0.6, пример #3

Время на прочтение19 мин
Количество просмотров9.1K

Данный урок, продолжение серии уроков по derbyjs — реактивному фуллстек фреймворку. Читать предыдущие уроки обязательно (первый, второй).

Этот урок будет состоять из двух частей: первая — обзор серверной части дерби-приложения, и вторая — использование модуля derby-auth (обертки над passportjs) для регистрации/авторизации в дерби-приложении с использованием в том числе и социальных сетей.
Читать дальше →
Всего голосов 25: ↑21 и ↓4+17
Комментарии11

Изучаем Derby 0.6, пример #2

Время на прочтение14 мин
Количество просмотров13K
todos

Этот пост — продолжение серии, начатой здесь (предыдущую часть читать обязательно). Сегодня мы создадим, так называемый, «список дел» (Todo-list из проекта TodoMVC). За основу возьмем вариант, сделанный на Angular, и попробуем воссоздать функционал на derby.
Читать дальше →
Всего голосов 34: ↑33 и ↓1+32
Комментарии7

Изучаем Derby 0.6, пример #1

Время на прочтение11 мин
Количество просмотров16K
image
Последние несколько месяцев я участвую в нескольких проектах, разрабатываемых на Derby (реактивный fullstack javascript-фреймворк). Часть из них вполне успешно работает в продакшине, часть стартует в ближайшее время.

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

Идея у меня проста — поделиться полученными знаниями, если это конечно будет интересно и востребовано. Я хочу взять несколько примеров из проекта derby-examples и разобрать их по полочкам. Либо, воссоздавая их с нуля, попутно объяснить логику создания, с точки зрения специалиста, либо же, по готовому примеру объяснить те моменты, которые были не раскрыты в предыдущих примерах. Короче, если понравится, думаю разобрать 5-6 примеров.
Читать дальше →
Всего голосов 52: ↑47 и ↓5+42
Комментарии42

lodash (underscore) — знай свою стандартную библиотеку

Время на прочтение7 мин
Количество просмотров180K
image

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

Что же, в последнее время, в своей работе я во всех проектах задействую lodash (кому-то может больше нравиться underscore). Для меня это, фактически, — стандарт. В очередной раз пробегая глазами API, я решил составить для себя шпаргалку в виде: «название функции» — «краткое описание». Так удобно освежать API в памяти. Может кому пригодится.
Читать дальше →
Всего голосов 76: ↑54 и ↓22+32
Комментарии62

Вышла Derby 0.6.0-alpha3

Время на прочтение3 мин
Количество просмотров7.8K

DerbyJs — реактивный фулстек javascript-фреймворк. О нем неоднократно писали на хабре — материалы по Derby. Буквально пару дней назад в репозитории Derby произошла смена основной ветки. Теперь версия 0.5 отошла на задний план, 0.6 — основная.

Не в традициях команды разработчиков заниматься пиаром — изменения произошли тихо и незаметно. А что же поменялось?
Подробности
Всего голосов 26: ↑21 и ↓5+16
Комментарии17

Асинхронный JavaScript (книга)

Время на прочтение2 мин
Количество просмотров29K
image
Ответьте на три вопроса по JavaScript. Если какой-то из них вас затруднит, вам следует прочесть отличную книгу Тревора Бернхема (Trevor Burnham) — Async JavaScript. Всего 90 страниц, но здесь разобраны такие темы, как событийный цикл JavaScript, синхронность/асинхронность, однопоточность/многопоточность (воркеры), promises, fibers и еще много чего интересного.

Итак, что выдаст следующий код?
for (var i = 1; i <= 3; i++) {
    setTimeout(function(){ console.log(i); }, 0);
};

Ответ
4
4
4
Еще вопросы
Всего голосов 50: ↑36 и ↓14+22
Комментарии22

Новогодний подарок от PayPal

Время на прочтение3 мин
Количество просмотров37K
В преддверии Нового года многие компании делают подарки своим клиентам. Вот и компания PayPal не осталась в стороне — чувствую я, что увижу свои деньги только в новом, 2014 году.

Это началось в начале декабря. Как говорится, ничто не предвещало беды. Подруге нужно было каким-нибудь способом перевести моей жене деньги из-за рубежа, к несчастью у нее был аккаунт PayPal. А я как наивный простак подумал: ну так PayPal же уже в России, вывод средств на счет в банке 5-7 рабочих дней — отлично, устраивает. 6-го декабря перевели деньги (счет к PayPal-у я привязал заранее — проверка счета 3 дня), и я инициировал вывод средств на счет в Сбере.

image

Что ж, сегодня 20, а после последнего общения с поддержкой стало понятным, что к 27 декабря деньги 50/50 либо придут на карту, либо откатятся обратно на счет PayPal, и у меня появится шанс еще раз повторить это приключение.
Читать дальше →
Всего голосов 88: ↑59 и ↓29+30
Комментарии103

NodeSchool — интерактивные уроки по Node.Js

Время на прочтение1 мин
Количество просмотров38K
image

Все мы знаем теоретический курс по node.js, недавно выпущенный Ильей Кантором. Отличный материал, свежий, полный и к тому же на русском. Но он теоретический, а нам-то хочется все потрогать, попробовать самим, получая реальный опыт. В этом нам поможет, недавно стартовавший, бесплатный проект NodeSchool.
Читать дальше →
Всего голосов 52: ↑43 и ↓9+34
Комментарии5

Invisible.js — одни модели и на клиенте и на сервере

Время на прочтение2 мин
Количество просмотров7.4K
Invisible.js — библиотека, позволяющая использовать одни и те же модели данных как на клиенте, так и на сервере. На сервере работает поверх express.js на клиент отдается через browserify.

Что есть:
  • возможность один раз описать модель (включая типизацию и валидацию) и использовать ее на клиенте и на сервере,
  • связь с MongoDb (при записи на сервере — объект пишется сразу в базу, при записи на клиете, используется RESTful API, автоматически созданное на сервере),
  • хуки на изменение данных (события бегают туда-сюда через socket.io).
Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии11

Вышел Meteor версии 0.7.0

Время на прочтение1 мин
Количество просмотров4.8K

Meteor.js — открытый (MIT) фулстек JavaScript фреймворк (и клиент и сервер). Сегодня вышла версия 0.7.0 (в начале 2014 выйдет версия 1.0).

Основное изменение — поддержка MongoDb OpLog. Это дает возможность полноценного горизонтального масштабирования (см. мой перевод). В предыдущей версии Метеора, в случае нескольких серверов, обновления данных могли приходить с задержкой до 10 секунд — теперь такой проблемы нет.

Полный список изменений смотрите здесь.

П.С. На хабре появился новый хаб: Meteor.JS — подписывайтесь.
Всего голосов 20: ↑15 и ↓5+10
Комментарии11

Как масштабировать Meteor

Время на прочтение4 мин
Количество просмотров7.5K
От переводчика: MeteorJS — открытый (MIT) фулстек JavaScript фреймворк (и клиент и сервер). Текущая версия 0.7.0 — в начале 2014 планируется выход версии 1.0. Публикации на хабре: 1, 2, 3.

Подготовка к масштабированию


Диаграмма компонентов:
image
Здесь три сервера Метеор, один MongoDb-сервер и HaProxy-сервер, как балансировщик нагрузки. Для поддержки SSL поставим Stud перед HaProxy.

Давайте обсудим компоненты и их настройку.
Читать дальше →
Всего голосов 28: ↑23 и ↓5+18
Комментарии3

Feathers.js — реактивный JavaScript-фреймворк поверх Express

Время на прочтение2 мин
Количество просмотров15K
image
Feathers.js — реактивный JavaScript фреймворк вдохновленный Sails, Flatiron и Derby. Приложение на feathers.js напоминает обычное expressjs приложение, только вместо
var app = require('express')();
нужно будет написать
var app = require('feathers')();

Для коллекций создается полноценный RESTful API, синхронизация ведется через события SocketIO.
Читать дальше →
Всего голосов 27: ↑24 и ↓3+21
Комментарии10

Как устроен Meteor изнутри

Время на прочтение3 мин
Количество просмотров15K
От переводчика: MeteorJS — открытый (MIT) фулстек JavaScript фреймворк (и клиент и сервер). Текущая версия 0.6.6.3 — в начале 2014 планируется выход версии 1.0. Публикации на хабре: 1, 2, 3.

В статье обзор сетевой архитектуры Метеор-приложения.

Метеор как сервер, Метеор как клиент


Приложение Метеор, с точки зрения браузеров, прокси-серверов, маршрутизаторов и других сетевых компонентов, является, по сути, обычным веб-приложением. Хотя, на самом деле, Метеор-приложение состоит из двух главных частей: часть, которая работает внутри браузера и часть, которая работает как сервер. Эти две части настроены таким образом, чтобы взаимодействовать друг с другом способом, характерным для многих современных веб-приложений (таких, как Gmail или Trello)

image
Метеор позволяет разработчикам создавать приложения не заботясь о сложностях клиент-серверного взаимодействия.
Читать дальше →
Всего голосов 37: ↑33 и ↓4+29
Комментарии16

Лучший учебник по Meteor — «Discover Meteor» — один день бесплатно

Время на прочтение1 мин
Количество просмотров18K

Саша Гриф (Sacha Greif), автор книги "Discover Meteor" в следующую субботу (14 декабря) в Сан Франциско проводит обучающий семинар по MeteorJS. Для тех же, кто не может лично прийти параллельно стартовала маркетинговая акция: "бесплатный доступ к книге на 1 день" — зарегистрироваться можно здесь (UPD: регистрироваться не нужно — доступ будет свободный по ссылке — http://free.discovermeteor.com/).
Читать дальше →
Всего голосов 26: ↑20 и ↓6+14
Комментарии38

Почему Meteor погубит Ruby on Rails

Время на прочтение5 мин
Количество просмотров19K

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

Почему Meteor?


Помню как начинал заниматься Rails в 2004 году — это было «волшебное время» — и, конечно, я помню, что меня по крайней мере раз в неделю спрашивали, почему же стоит использовать rails. Я всегда отвечал одинаково: разработчикам нравится этот фреймворк, потому что он позволяет делать работу быстро и с удовольствием. К этому моменту я чуть больше месяца вплотную проработал с Meteor и готов ответить на вопрос: «Почему Meteor?» — который мне тоже часто стали задавать.
Читать дальше →
Всего голосов 47: ↑22 и ↓25-3
Комментарии21

Несколько JavaScript хаков для хипстеров

Время на прочтение3 мин
Количество просмотров55K
image
JavaScript занимательный язык программирования.

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

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

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

Все это я узнал, изучая проекты с исходным кодом, но здесь я пишу так, как будто бы это я их придумал.
Читать дальше →
Всего голосов 217: ↑131 и ↓86+45
Комментарии128

Почему разработчики при оценке сроков постоянно ошибаются в 2-3 раза?

Время на прочтение3 мин
Количество просмотров3.6K
Решили мы как то пройтись пешком по побережью от Сан Франциско до Лос Анджелеса, чтобы навестить друзей в Ньюпорт Бич. Я достал карту и прочертил наш маршрут вдоль берега:

image

Протяженность около 400 миль; мы проходим, примерно, 4 мили в час, 10 часов в день, короче прибудем через 10 дней. Позвонили друзьям и договорились об ужине вечером в следующее воскресенье, когда ровно в 6 вечера мы с триумфом прибудем. Они не могут ждать!
Читать дальше →
Всего голосов 3: ↑1 и ↓2-1
Комментарии2

Информация

В рейтинге
Не участвует
Откуда
Тула, Тульская обл., Россия
Дата рождения
Зарегистрирован
Активность