Как стать автором
Обновить
13
0

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

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

Зачем мы сдаём в аренду мощности для добычи биткоинов

Время на прочтение5 мин
Количество просмотров77K
Привет, Гик! В комментариях к нашему первому посту нам задавали этот логичный вопрос. Чтобы на него ответить, нужно понять, какие в принципе существуют варианты майнинга.


Читать дальше →
Всего голосов 27: ↑18 и ↓9+9
Комментарии77

Маленький тест «антивируса» Cezurity

Время на прочтение1 мин
Количество просмотров97K
image
Недавно ВКонтакте началось активное продвижение по всем фронтам нового антивируса.
Я решил посмотреть в действии эффективность этого «антивирусного сканера Cezurity» против нескольких вирусов.
Читать дальше →
Всего голосов 204: ↑197 и ↓7+190
Комментарии73

Семь удивительных «возможностей» Javascript

Время на прочтение5 мин
Количество просмотров66K
За последние несколько месяцев я сделал несколько доработок для JSHint, в основном с целью изучить ES6 (я особенно горжусь тем, как переделано обнаружение областей видимости для переменных). Во время этого процесса я наткнулся на несколько вещей, которые меня удивили — в основном, в ES6, однако есть и кое-что про ES3, что я до этого никогда не использовал.

Break из любого блока


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

outer: for(var i = 0; i < 4; i++) {
    while(true) {
        continue outer;
    }
}
Читать дальше →
Всего голосов 78: ↑65 и ↓13+52
Комментарии71

Гугл внедряет проприетарный код в свободный (?) Chromium

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

Не увидел про это статью на Хабре и решил написать.

Вообще, политика «Гугл» иногда поражает. «Chromium» с 43 версии без ведома пользователя устанавливает расширение hotword (модуль веб-каталога, в котором содержится бинарный модуль NaCl), который сразу загружается для удобства пользователя, как говорит Гугл.
Я пользуюсь Chromium, как убрать расширение?
Всего голосов 73: ↑50 и ↓23+27
Комментарии118

Как за 20 минут составить собственное обоснованное мнение о глобальном потеплении

Время на прочтение2 мин
Количество просмотров21K
Мы не будем вдаваться в анализ моделей климата. Мы не будем оценивать достоверность понимания механизмов роста концентрации парниковых газов в атмосфере. Мы не будем рассуждать о скорости поглощения CO2 океанами или растительностью и не будем рассуждать о скорости высвобождения этого CO2 вулканами или еще чем. Мы обратимся к общепринятой климатической истории Земли, отраженой в единственном графике, и попытаемся ответить на элементарные, казалось бы, вопросы.


Читать дальше →
Всего голосов 31: ↑20 и ↓11+9
Комментарии133

История Transformice: инди-игра с 60 миллионами пользователей

Время на прочтение17 мин
Количество просмотров42K
В мае 2010 года появилась игра Transformice, которую создали всего лишь два разработчика ради собственного удовольствия и в свое свободное время. Эта игра принадлежит к классу многопользовательских платформеров. Своим же успехом Transformice обязана публикациям на таких платформах, как 4chan и Something Awful.



После 4 лет и множества обновлений в игре зарегистрировано уже 60 миллионов учетных записей.

Нельзя сказать, что разработка игры Transformice уже завершена. Наоборот, эта игра находится в стадии активного развития. И сегодня я бы хотела рассказать о том, что мы делали эти четыре года как для развития игры, так и для ее монетизации, ведь сделать игру – непросто, но еще сложнее – заработать на этом деньги. Итак, цифры!
Читать дальше →
Всего голосов 63: ↑57 и ↓6+51
Комментарии25

Мой подход к настройке экономики игры: электронные таблицы

Время на прочтение7 мин
Количество просмотров26K
Этот пост был написан в ответ на предложение Бренды Ромеро и Яна Шрайбера о том, чтобы разработчики поделились своими любимым методами работы в Excel.

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


Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Комментарии7

Готовимся к собеседованию по PHP: ключевое слово «static»

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

image

Попробуем разобрать «по косточкам» один из таких вопросов — что значит слово «static» в PHP и зачем оно применяется?
Подробности, цитаты из мануала, стандартов и личного опыта - под катом
Всего голосов 54: ↑41 и ↓13+28
Комментарии70

Приведение типов в PHP == табурет о двух ножках?

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

— В PHP приведение типов работает нормально, надо только включать здравый смысл.
— А чего там, просто сравниваешь и все…
— Ого, глюк какой-то в PHP, смотри, сравниваю два флоата, они должны быть одинаковые, а он мне говорит, что они не равны.
— А, ну когда число со строкой сравниваешь, перебирать надо, что сработает.

Слышали что-то подобное от коллег или может быть у самих возникали подобные ситуации? Тогда вот вам пятничный пост с примерами про приведение типов, как это работает с оператором ==.

Буду краток, дальше будут только примерчики. А к тебе, дорогой читатель, просьба. Некоторые ответы спрятаны под спойлер. Перед тем, как заглянуть в ответ под спойлером, попробуй ответить сам. За каждый правильный ответ заслуженно прибавляй себе по баллу. В конце поста в опросе не забудь проставить свой результат. Договорились?
Тогда поехали
Всего голосов 49: ↑39 и ↓10+29
Комментарии81

ГМ-источники пищи. Данные о безопасности

Время на прочтение23 мин
Количество просмотров38K
Отгадка в тексте

ГМО − изучены ли? Не похоже ли это на эксперимент над человечеством? Зачем заменять натуральное искусственным?

Эти вопросы могут даже раздражать, но надо признать, что они закономерны. Давайте постараемся дать ответы.

Обычно под проблемой ГМО понимают проблему их пищевой безопасности: возможный вред ГМ-пищи организму при употреблении человеком. Когда я встречаю утверждения о недостаточной изученности влияния ГМО, о слишком малом количестве проведенных исследований, то испытываю горячее желание уточнить, а сколько все-таки исследований было, и сколько не хватает? Давайте разберемся, какие мы имеем данные о технологиях генной инженерии и безопасности употребления ГМО в пищу.

Обратите внимание, я ни то, что не биолог, но не смог окончить даже экономический факультет. Поэтому, не доверяя себе, я ищу информацию у тех, кто посвятил жизнь и карьеру вопросам биологии. Я игнорирую экстравагантные заявления и ссылаюсь на те, что являются общим местом для большинства специалистов мира. Если по какой-то причине вам не подходит такой анализ, то, вероятно, дальнейший текст не будет представлять для вас ценности.
Читать дальше →
Всего голосов 70: ↑59 и ↓11+48
Комментарии197

DevConf 2015: Интервью с автором — PHP6 не будет! Встречаем PHP7

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

На вопросы оргкомитета DevConf 2015 отвечает Дмитрий Стогов - лидер проекта PHPNG и один из основных разработчиков PHP; ведущий инженер в Zend Technologies.

— Расскажите пару слов о себе.

Последние лет 10 работаю в Zend, где 2/3 времени занимаюсь развитием Open Source PHP, и, в основном, усовершенствованиями связанными с производительностью. Собственно, почти все что связано с производительностью в PHP-7 (да и в PHP-5) придумано или заимствовано и реализовано мной.
Читать дальше →
Всего голосов 25: ↑19 и ↓6+13
Комментарии19

Почему PHP устарел

Время на прочтение4 мин
Количество просмотров27K
В 2000 году я был большим фанатом PHP. Я начал пользоваться им сразу после официального выхода версии 4.0 в апреле. В то время кроме него было всего 4 альтернативы для создания веб-сайтов.

1) C – слишком сложный для часто меняющегося проекта. Компиляция занимала много времени, было мало свободных инструментов, а платные не влезали в мой бюджет. Слишком многословный. Управление зависимостями было сложным делом.

2) Java – лучше, чем С, но всё ещё многословный и долго компилирующийся. Управление зависимостями было сложным делом.

3) Perl – почти так же хорош, как PHP, только без системы управления пакетами. На CPAN был набор модулей на все случаи жизни, но их надо было скачивать и устанавливать. Управление зависимостями было сложным делом.

4) ASP – почти так же хорош, как PHP, только это был инструмент от Microsoft, и его использование засосало бы меня в их дорогой мир.

Для трёх позиций я написал: " Управление зависимостями было сложным делом". Для меня это был ключевой момент PHP. Его философия была «всё в одном». Таких, как сейчас, систем управления пакетами тогда не было. Сейчас есть удобные штуки типа Bundler для Ruby и Leiningen для Clojure. Но не в 2000-м. Даже системы управления пакетами в Linux стали лучше с 2000 года. А система «всё в одном» решала проблемы управления пакетами в PHP. Но теперь это преимущество не имеет значения.
Читать дальше →
Всего голосов 66: ↑31 и ↓35-4
Комментарии165

50+ лучших дополнений к Bootstrap

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


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

Для статьи я подобрал наиболее полезные дополнения «на все случаи жизни».
Читать дальше →
Всего голосов 123: ↑111 и ↓12+99
Комментарии25

Перезапуск демона на PHP без потери соединений к нему

Время на прочтение13 мин
Количество просмотров20K
На различных конференциях мы неоднократно рассказывали про наше облако для CLI-скриптов (видеозапись доклада, слайды). Облако предназначено для того, чтобы запускать различные PHP-скрипты по расписанию или через API. Как правило, эти скрипты обрабатывают очереди, и нагрузка «размазывается» приблизительно по 100 серверам. Ранее мы акцентировали внимание на том, как реализована управляющая логика, которая отвечает за равномерное распределение нагрузки по такому количеству серверов и генерацию заданий по расписанию. Но, помимо этого, нам потребовалось написать демон, который был бы способен запускать наши PHP-скрипты в CLI и следить за статусом их исполнения.

Изначально он был написан на Си, как и все остальные демоны в нашей компании. Однако мы столкнулись с тем, что существенная часть процессорного времени (около 10%) тратилась, по сути, впустую: это запуск интерпретатора и загрузка «ядра» нашего фреймворка. Поэтому, чтобы иметь возможность инициализировать интерпретатор и наш фреймворк только один раз, было принято решение переписать демон на PHP. Мы назвали его Phprocksyd (по аналогии с Phproxyd — PHP Proxy Daemon, демоном на Си, который у нас был до этого). Он принимает запросы на запуск отдельных классов и делает fork() на каждый запрос, а также умеет сообщать о статусе исполнения каждого из запусков. Такая архитектура во многом похожа на модель веб-сервера Apache, когда вся инициализация делается один раз в «мастере» и «дети» занимаются уже именно обработкой запроса. В качестве дополнительной «плюшки» мы получаем возможность включить opcode cache в CLI, который будет правильно работать, поскольку все дети наследуют ту же область общей памяти, что и мастер-процесс. Чтобы уменьшить задержки при обработке запроса на запуск, можно делать fork() заранее (prefork-модель), но в нашем случае задержки на fork() составляют около 1 мс, что нас вполне устраивает.
Читать дальше →
Всего голосов 36: ↑33 и ↓3+30
Комментарии16

Список YouTube-каналов для обучения веб-разработке

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


Привет, хабражители!

Представляю вам список YouTube-каналов для обучения веб-разработке. Список доступен на гитхабе, там он будет пополняться и редактироваться. В планах — создание отдельной странички для фильтрации каналов по тегам и рубрикам.

Также хочу попросить вас о небольшой услуге: если вы знаете канал, не вошедший в список — опубликуйте ссылку на него в комментариях или отправьте pull request. Сообщество будет благодарно вам.

Под катом — текущая версия списка.
Читать дальше →
Всего голосов 64: ↑59 и ↓5+54
Комментарии16

[LibGDX] Создаем клон Flappy Bird — Zombie Bird

Время на прочтение127 мин
Количество просмотров198K
Доброго времени суток %username%. Не давно наткнулся на хороший туториал по созданию клона игры Flappy Bird используя LibGDX и этот туториал мне понравился своей простотой и детализацией.

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

Туториал разбит на 12 дней, содержит множество картинок, полотен кода и исходный код разбит по дням. Кому интересно, добро пожаловать под кат.
Подробнее
Всего голосов 111: ↑102 и ↓9+93
Комментарии29

FAQ по программированию под Android от новичка, и для новичков

Время на прочтение16 мин
Количество просмотров158K
Предисловие к FAQ.

Программирование является моим хобби уже давно (правда на других языках и платформах), но до андроида руки дотянулись совсем недавно. Прошло несколько этапов, прежде чем я добрался до написания программ.
Сначала была пара месяцев посвященных Java, на сайте с «Сгибателем».
После, долгие попытки подружится с Eclipse, закончившиеся побегом на Android Studio.
На данный момент выпущено 7 программ и две находятся в разработке.
Данная подборка возникла как попытка структурирования и оптимизации полученной в процессе информации.
Заранее извиняюсь за возможно некорректную терминологию – так как практикую обучение через создание, и в теоретической части есть пробелы.

Надеюсь, что приведенные примеры окажутся полезными.
Читать дальше →
Всего голосов 114: ↑98 и ↓16+82
Комментарии23

Моя небольшая история разработки и публикации мобильных игр

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

Отступление


Приблизительно полтора года назад, просматривая очередной выпуск «Видеомании», я услышал о движке Unity3D. До этого никогда глубоко не интересовался подобными вещами и считал процесс разработки для меня сложным. В тоже время детская мечта создавать игры, как и любовь к ним, ещё не угасла. Я нажал на паузу и загуглил «unity3d»… Установив Unity и поняв основные принципы работы движка, я очень обрадовался сразу нескольким вещам: простота в освоении, мульти-платформенность, подробная и понятная документация и живой форум (с английским благо всё в порядке), наличие магазина дополнений и free лицензии. В дальнейшем я пробовал и другие движки, но предпочтение моё всё же не поменялось. Выбирая платформы, я остановился на мобильных и, в частности, на Android. Ничего яблочного у меня не было. К тому моменту лицензия для Android стоила 400 долларов. Но, пока я спешно проходил видео курс по основам ООП программирования и Java (небольшой опыт в php был), ребята из Unity решили дать возможность разработчикам делать игры для Android и iOS совершенно бесплатно, за что им большое спасибо.

Радости не было предела, когда я впервые запустил тестовый проект на своем телефоне. Всё великолепно работало! А процесс компиляции, отправки и запуска приложения на устройстве занимал несколько секунд. Хлопая в ладоши, с улыбкой на лице я стал думать о том, что же мне теперь со всем этим делать…

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

Далее рассказ продолжается в хронологическом порядке выхода игр и разбит на одноимённые главы, с приведением статистики, методах продвижения и прочего.
Читать дальше →
Всего голосов 48: ↑45 и ↓3+42
Комментарии10

В Sypex Geo добавлена привязка к API ВКонтакте

Время на прочтение3 мин
Количество просмотров8.2K
В Sypex Geo по просьбам трудящихся добавлена привязка к ID городов, регионов и стран, которые используются в API ВКонтакте.

Что такое и для чего нужен Sypex Geo


Sypex Geo одно из решений в области геолокации — определения географического положения (страны, города, региона) посетителя на основе IP-адреса. Используются собственный открытый формат бинарной базы данных, также доступен веб-сервис REST API, позволяющий всегда использовать самые свежие базы данных. Sypex Geo использует собственные базы данных, которые регулярно обновляются, так как местонахождение IP-адресов меняется (2 раза в месяц обновляются бесплатные базы данных, 4 раза в месяц коммерческие базы данных).

Примеры использования геолокации


  • Показывать посетителю контакты филиала из региона в котором находится посетитель.
  • В зависимости от города или региона посетителя интернет-магазин может показывать специальные предложения для данного региона
  • Фирма может устанавливать разные цены на товары и услуги, снижая цены для тех населенных пунктов, где сильны позиции конкурентов.
  • Проведение географического таргетинга при интернет-рекламе (контекстной, баннерной и т.д.).
  • Для посетителей из разных стран цены на товары и услуги могут быть указаны в разной валюте.
  • Посетители из разных стран могут быть перенаправлены на национальные зеркала основного сайта.
  • Проведение маркетинговых исследований.
Читать дальше →
Всего голосов 21: ↑14 и ↓7+7
Комментарии15

Сделаем битторрент лучше

Время на прочтение7 мин
Количество просмотров39K
Последнее время среди пользователей файлообменных сетей все чаще звучат призывы к переходу в подпространство: анонимные сети типа i2p tor и т.п.

Несомненно, у этой идеи есть масса положительных сторон, однако, по сути это означает сломать устоявшиеся системы обмена трафиком, некоторые из которых формировались более 10 лет и начать строить заново, пусть с учетом старых ошибок, но и постаравшись не наделать новых. На даный момент сеть битторрент – это десятки, а наверное даже сотни миллионов устоявшихся связей, «разорвав» которые крайне сложно будет восстановить всё в полном обьеме.

Давайте все же посмотрим на нашего старичка, и поразмыслим, настолько ли все плохо, и можно ли исправить те недостатки, которые у него есть.
Читать дальше →
Всего голосов 66: ↑58 и ↓8+50
Комментарии74

Информация

В рейтинге
Не участвует
Откуда
Беларусь
Зарегистрирован
Активность