Pull to refresh
4
0
Send message

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

Reading time4 min
Views167K
«Право налогоплательщика избегать уплаты налогов с использованием всех разрешенных законом способов никем не может быть оспорено. Каждый имеет право вести свои финансовые дела таким образом, чтобы свести соответствующие платежи к минимуму…»
Дж. Сандерленд,
Судья Верховного Суда США


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

Black Hole War, или Битва при Черной дыре

Reading time5 min
Views17K
В начале 2013 года в нашем издательстве вышла в свет новая научно-популярная книга, изданная совместно с гуманитарным фондом «Династия». Цель проекта «Библиотека фонда «Династия» — содействовать изданию лучших современных научно-популярных книг в области естественных и гуманитарных наук. Благодаря данной программе отечественные читатели смогли познакомиться с работами таких известных ученых и популяризаторов науки как Билл Брайсон, Стивен Хокинг, Митио Каку, Брайан Грин, Джаред Даймонд и многих других авторов. Наша предыдущая книга, выпущенная совместно с «Династией», — «Теория струн и скрытые измерения Вселенной» Стива Надиса и Шинтана Яу — стала настоящим бестселлером, что явилось большим и приятным сюрпризом для нас как издателей.

И сегодня мы хотим вам рассказать о новом издании, выпущенном в рамках «Библиотеки Династии», — книге «Битва при черной дыре. Мое сражение со Стивеном Хокингом за мир, безопасный для квантовой механики» (The Black Hole War: My Battle with Stephen Hawking to Make the World Safe for Quantum Mechanics) известного американского ученого Леонарда Сасскинда.

image

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

Что происходит, когда объект падает в черную дыру? Исчезает ли он бесследно?
Читать дальше →

Обзор бесплатного CDN-хостинга JS библиотек jsDelivr

Reading time2 min
Views6.3K
На днях наткнулся в сети на новый интересный сервис, который еще ни разу не упоминался на Хабре, поэтому решил поделится этой статьей с сообществом.
В этой статье Вы узнаете о веб сервисе jsDelivr, какое его предназначение и как его применить на Вашем сайте. Начнем с того, что данный веб сервис является абсолютно — бесплатным и не коммерческим проектом. jsDelivr решает две основные задачи:
  • Предоставляет возможность js разработчикам быстро и бесплатно разместить все статические файлы своего проекта на общедоступный CDN хостинг.
  • Предоставляет возможность вебмастерам загружать все файлы (javascript/css/images) которые использует какой либо плагин или библиотека с быстрого CDN хостинга, сняв тем самым нагрузку на собственный сервер.
Читать дальше →

Raspberry Pi: измеряем влажность и температуру с помощью DHT11/DHT22

Reading time5 min
Views225K
На Хабре уже публиковалась статья о подключении датчика температуры DS18B20 к Raspberry Pi. В нашем новом проекте, который строится на Raspberry Pi, понадобилось измерять не только температуру, но и влажность. Я расскажу, как подключить недорогие китайские датчики влажности к Raspberry Pi. Просмотрев несколько вариантов различных датчиков, остановился на двух наиболее массовых на рынке датчиков. Это DHT11, который привлек своей ценой $3 (с доставкой) и датчик DHT22 (около $10 с доставкой).
Читать дальше →

Версия таблицы STL-контейнеров для печати

Reading time1 min
Views8.7K
Думаю, что документ на который наткнулся будет также полезен и другим программистам.

Мне давно хотелось иметь все STL-контейнеры и их методы в более наглядном и удобном виде. До сего момента я не знал о том, что на известном ресурсе посвященном С++ cppreference.com выложен полезный PDF-файл содержащий в себе как раз то что мне надо. Вот прямая ссылка на container-library-overview-2012-12-27.

В этом документе учтены как C++03, так и C+11. Оба помечены разными цветами, что достаточно быстро дает понять с какой версии стандарта доступен тот или иной контейнер.

Google Apps для бизнеса – проще и доступнее

Reading time2 min
Views13K
image

В январе 2013 года REG.RU первым в России и странах СНГ начал распространять Google Apps для бизнеса. Теперь на сайте REG.RU можно заказывать, продлевать, настраивать и оплачивать любое из предоставляемых Google Apps приложений (электронная почта Gmail, Google Календарь, Google Диск и т.д.). Кроме того, можно испытать 30-тидневную бесплатную версию Google Apps для бизнеса, тут же перейти с нее на платную расширенную версию и даже привязать корпоративный аккаунт Google к своему домену. Разобраться в этом многообразии возможностей помогает специально разработанный REG.RU интерфейс, призванный максимально облегчить процесс работы с Google Apps для бизнеса.
Читать дальше →

Используем method decorator в CoffeeScript(Javascript) для удобного и читаемого DRY-кода

Reading time2 min
Views4.3K
Статья о простом, но не очевидном способе как сделать код чище и избавиться от копипасты.

Условно проблема выглядит вот так:
###
My awesome class
###
class Awesome
  doFoo : (arg, cb) ->
    unless arg is 42
      return cb Error """
                      only The Answer may be an argument, but got:
                      |arg| = |#{arg}|
                      """
    cb null, "#{arg} is The Answer"

  doBar : (arg, cb) ->
    # hm... arg must be The Answer too

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

Совсем немного текста о том, как method decorator делает мою жизнь лучше

Никогда не отвлекай программиста

Reading time2 min
Views242K
Во многих компаниях программистам запрещают работать в наушниках или отвлекают их по мелким вопросам. Вероятно, причина кроется в плохой информированности менеджеров и других сотрудников, насколько вредно так делать.

Крис Парнин (Chris Parnin) из технологического института Джорджии решил восполнить этот недостаток и опубликовал чрезвычайно насыщенную статью со ссылками на различные исследования по этой теме.

Для начала, несколько фактов, которые относятся ко всем работникам интеллектуального труда. Задача, прерванная по ходу выполнения, занимает в два раза больше времени и содержит вдвое больше ошибок, чем та же задача, которая выполнялась без прерывания (Czerwinski:04). Офисные сотрудники вынуждены отвлекаться при выполнении 57% задач (Mark:05). Опросы говорят о том, что сотруднику требуется в среднем 15 минут, чтобы вернуться в нормальный ритм после того, как его отвлекли (vanSolingen:98).
Читать дальше →

Тюнинг nginx

Reading time8 min
Views97K
Статья написана по материалам моего доклада на CodeCamp 2009.

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

У любого проекта всегда есть что оптимизировать: можно почитать советы по оптимизации на webo.in, установить eaccelerator, memcache, проиндексировать поисковые поля в базе данных. Я предполагаю, что все это уже проделано, а сайт по прежнему тормозит.

Пришло время оптимизировать nginx...

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

Джон Резиг об интернационализации JavaScript-приложений

Reading time6 min
Views13K
Недавно мне пришлось заниматься интернационализацией веб-приложения на Node.js+Express, над которым я сейчас работаю, и, как мне кажется, получилось довольно неплохо (иностранные пользователи очень довольны, и я вижу заметный приток трафика из неанглоязычных стран). Стратегия интернационализации, которую я опишу, не слишком сильно завязана на Node и может подойти любому веб-приложению.

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

В поисках идеального css-фреймворка. Требования, реализация, maxmertkit

Reading time14 min
Views70K


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

EC2 — анализ цен для стартапа

Reading time3 min
Views6.8K
В данный момент я занимаюсь поиском подходящих серверов для инфрастуктуры моего проекта. Я остановился на EC2 и решил проанализировать, какое решение будет наиболее экономически выгодным для меня. Эта статья по сути является продолжением AWS Insight: Резервации в EC2 — как это работает, но приводит анализ для молодого веб-стартапа (24x7).

Проблема


Сервер должен работать 24 часа в сутки напротяжении X месяцев (количество не определено). Какой вариант (On Demand / Light Utilization Reserved / Medium Utilization Reserved / Heavy Utilization Reserved) выбрать для Micro/Small/Medium/Large серверов?

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

Места распространения Android приложений

Reading time4 min
Views77K

В какой-то момент разработчику андроид приложений становится тесно в рамках одного магазина Google Play. И тогда он начинает задумываться о том, как бы еще донести до пользователей свои приложения. Оказывается, достаточно много вариантов это сделать.

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

Клонирование объектов в Node.js: Быстрее, глубже, нежнее!

Reading time3 min
Views14K
Не так давно, прочитав статью idoroshenko «Почему eval — это не всегда плохо», я задумался, можно ли использовать подход с генерацией тела функции для клонирования объектов. Даже написал небольшую библиотеку для этого. Бенчмарки давали невероятные результаты, но применимость этого подхода ограничивалась лишь множественным клонированием одинаковых объектов.

Поэтому и у меня возник вопрос: неужели в v8 нет другой возможности избежать расходов, связанных со множественным пересозданием скрытых классов? Ведь это составляет основные траты ресурсов, когда мы клонируем объекты. Как оказалось, такая возможность действительно есть: в самом v8 у объектов существует метод v8::Object::Clone. Этот метод клонирует объекты в широком смысле этого слова, то есть собственно объекты, а также массивы, даты, регулярные выражения, функции и т.д., при этом сохраняя все их свойства, в том числе нестандартные (например, именованные свойства массивов) и даже скрытые.

Была только одна маленькая проблема. Этот метод использовался только в недрах node.js, и не был открыт наружу, для javascript'а.
Читать дальше →

Шпаргалка по верстке для больших и маленьких

Reading time3 min
Views101K
Приветствую!

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

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

Орион-128: радиолюбительский компьютер

Reading time9 min
Views143K
Исторически, первым массовым радиолюбительским компьютером был Радио-86РК, требовавший для построения всего 29 микросхем. Его существенным ограничением был то, что он поддерживал только текстовый режим и требовал трудно-доставаемых микросхем. Орион-128 — был логическим продолжением — также ориентирован на сборку радиолюбителями, имел больше памяти (128кб против 16/32кб) и поддерживал графический режим: 384 × 256 (в режиме 2 цвета, 4 цвета, и 2 цвета из палитры 16 цветов на каждые 8 пикселей). Ориентировочный размер популяции Орион-ов в период его пика популярности — около 30-40 тыс. компьютеров.

Орион появился у меня в 94-м году, и именно на Орионе я запускал свои первые программы (до него их приходилось писать «в стол»). К моменту приобретения первой PC-шки в 97-м — Орион начал глючить все забористее (не грузился с первого раза, приходилось много раз перезагружать...) и под конец перестал работать совсем. Отремонтировать я его тогда не мог, и все эти годы он пролежал без движения, но не забытым.

Этим летом я наконец решил попробовать его отремонтировать — что из этого получилось (а также обзор архитектуры и некоторых программных особенностей) — под катом.
Читать дальше →

Остров, о котором забыл Scrum

Reading time7 min
Views30K
На оригинал данной статьи я наткнулся случайно, разгребая почту и наткнувшись на новостную рассылку от ScrumAlliance. Тема метрик Scrum команд и непосредственно кода, меня интересует уже давно. Особенно любопытно, что с этими метриками делать дальше, и первостепенно — зачем они вообще нужны?

В данной работе автор поднимает важнейшую тему для молодых Scrum команд — почему со временем теряется продуктивность и как сохранить ее в долгосрочной перспективе?
Cкучные предисловия я припас для своего уютного блога, а тебе хаброчитатель предлагаю ознакомиться с самой сутью.

Чтобы расширить свой кругозор, а также получить ответ на свои внутренние вопросы, добро пожаловать под кат…
Да, я пережил конец света!

Немного о технологии Z-Wave

Reading time17 min
Views105K
В данной статье хотелось бы осветить немного внутренностей протокола Z-Wave. Учитывая, что владелец протокола компания Sigma Designs (поглотившая Zensys) просит подписывать NDA перед раскрытием особенностей реализации, а часть вообще никому не показывает, подробных данных а сети не найти. Я не собираюсь рассказывать здесь слишком много, чтобы не нарушить подписанный NDA. Надеюсь, и данная информация окажется полезной и сподвигнет кого-нибудь занятся разработкой собственных железок на этом протоколе. Итак, начнём!
Читать дальше →

Numeral.js — библиотека для форматирования чисел

Reading time3 min
Views21K
На создание библиотеки для удобного форматирования чисел программиста и веб-дизайнера Адама Дрэйпера вдохновила аналогичная библиотека для даты и времени — moment.js. Numeral.js позволяет задавать число знаков после запятой, символы-разделители для дробной части и групп разрядов, формат представления валют, процентов, времени, аббревиатуры для миллионов, миллиардов, мегабайтов и т.п. Кроме того, можно восстанавливать числовые значения из существующего строкового представления. Библиотека распространяется под лицензией MIT.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity