Search
Write a publication
Pull to refresh
27
0
Vladimir Salin @sainnr

Product Engineer

Send message

Как доделать игру

Reading time9 min
Views28K
На блоге одного из создателей Aquaria и Spelunky есть любопытный пост с советами для тех, кто испытывает проблемы с доведением до конца своих игровых проектов. Этот список советов оказался для меня своего рода «зеркалом», в котором отражены многие проблемы, с которыми сталкивался я сам, и я был удивлен тем, насколько хорошо автору удалось уловить суть этих проблем и предложить свои решения, зачастую бескомпромисные.
image
Приближаясь к заключительной стадии разработки моей игры, я много думал о том, как завершать выполнение проектов в целом. Я заметил, что вокруг много действительно талантливых разработчиков, у которых возникают проблемы с доведением до конца игровых проектов. По правде говоря, я и сам оставил позади себя ряд незавершенных игр… Думаю, у многих та же ситуация. Не всякий проект удается, по разным причинам. Однако если вы стали замечать, что постоянно забрасываете проекты, которые имеют неплохой потенциал, вероятно, стоит оглянуться назад и изучить тому причины.
Читать дальше →

Спрайтовая анимация на CSS 3

Reading time6 min
Views16K
Спрайтовая анимация — одна из тех вещей, которые при всей своей примитивности успешно работают и применяются в компьютерной графике и играх уже больше четверти века. Даже в трехмерных играх есть спрайты — например, билборды взрывов. Во многих браузерных и флеш-играх применяют именно спрайтовую анимацию, так как она очень проста и не требует высокой производительности — просто переключай кадры и все! А с появлением анимации в CSS 3 стало возможным использовать спрайты на своих страницах без яваскриптов.
Подробнее об этом - под катом

Разработка браузерной стратегии

Reading time7 min
Views37K
Всем привет!

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

image

Что представляет собой игра? Видимо наиболее коротким описанием будет «клон Цивилизации» =). Но это не значит что у меня не хватило фантазии придумать что-то свое. Просто сделать «Цивилизацию» было моей мечтой. Вряд ли бы я получил столько удовлетворения от написания другой игры. Ну а фанаты Цивилизации наоборот считают, что моя игра совсем не похожа на Цивилизацию, разве что только с виду. Может это и к лучшему.

Игра называется The Fate of Nation http://fatenation.com

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

Для создания игры я использовал php и MySQL на сервере, html и javascript на клиенте. Flash не используется. Из html5 есть только видео на сайте и несколько областей с канвасом в самой игре — включая поверхность карты и мини-карту. Объем кода клиентской части в несколько раз превышает серверную часть, поэтому в основном буду рассказывать о клиентской разработке, но начнем с сервера.

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

Как привлечь пользователей в ваш стартап

Reading time6 min
Views1.4K
Наиболее частый вопрос, который я слышу от молодых предпринимателей — «Как я заполучил пользователей?»

И вот как я это делаю.

Обо мне

(испытываешь странное чувство от описания себя, но в случае если вы читаете это и удивляетесь, кто же этот парень… на самом деле я всего лишь пытаюсь помочь).

Я сделал блог с 5 миллионами читателей, рекламную биржу которая охватывает больше людей чем Facebook, написал книгу которая была 12-ой на Amazon и сделал еще кучу всяких разных странных вещей, которые популярны и приносят деньги. Я создал новую растущую компанию социальных покупок. Я ангел-инвестор и советник в дюжине разных компаний и одном университете. Я присутствую на нескольких журнальных обложках и тут (оцените количество просмотров и комментарии людей, которые желали бы чтобы их «папочка был так же крут» как я).
Читать дальше →

Bitcoin, генерируем монеты в общем пуле

Reading time7 min
Views258K
Криптовалюта Bitcoin продолжает развиваться, сложность генерации блока повышается с каждым разом. Торги на биржах идут уже на весьма существенные суммы. А вот генерировать в одиночку становится почти нереально.
Сегодня речь пойдёт о генерации монет коллективно — в общем пуле. В этом случае приз за генерацию блока разделяется между всеми участниками пула примерно пропорционально вкладу в генерацию блока.
За счёт большой суммарной вычислительной мощности пула генерация блоков происходит намного чаще, чем если работать в одиночку, но и приз каждому участнику меньше. В долговременном среднем получается примерно столько же (минус процент владельца пула), но зато равномернее.

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

Термины, пулы, программы, результаты, рассчёты, выводы...

Bitcoin. Как это работает

Reading time10 min
Views758K
О Bitcoin я узнал относительно недавно, но он меня сразу подкупил своей идеей p2p. Чем глубже я зарывался в их Wiki, тем больше проникался этой идеей. Ее реализация красива и элегантна с технической точки зрения.

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

Новые бесплатные видео-курсы по ASP.NET Web Forms и ASP.NET MVC

Reading time2 min
Views28K
На днях мы опубликовали отличные видео-курсы по технологиям ASP.NET на официальном сайте http://asp.net/.

Курсы были созданы компанией Pluralsight (отличная компания с обучающими курсами по .NET-технологиям), доступны полностью бесплатно и предлагают отличную возможность изучить (или освежить в памяти) технологии веб-разработки ASP.NET WebForms и ASP.NET MVC 3. Каждый курс создан отдельным тренером и предлагает законченную программу обучения (от базовых основ, работы с концепцией Code First в Entity Framework до вопросов безопасности, развертывания, тестирования).

Ниже некоторые детали по двум бесплатным видео-курсам, опубликованным на днях (и ссылки на каждое доступное видео):

Тренинг по ASP.NET MVC


На выходных мы опубликовали финальные видео-уроки в совершенно новом обучающем курсе по ASP.NET MVC 3, созданном тренером K Scott Allen. Вы можете изучить эти видео-материалы со страницы http://asp.net/mvc (раздел слева в секции Essential Videos):

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

История создания fermer.mobi

Reading time3 min
Views3.5K
Хочу рассказать вам, как я создал браузерную онлайн игру для мобильных устройств, которая на текущий момент:
— занимает 3-е место в рейтинге waplog.net (это самый крупный счетчик рувапа);
— 4-е место в мобильных одноклассниках (m.odnoklassniki.ru);
— аудитория игры ~300 тысяч хостов в сутки;
— онлайн днем ~12 тысяч;
— количество регистраций уже приближается к 500 тысячам.

Эта история, на мой взгляд, интересна тем, что:
— игру создал, запустил и раскрутил я один, без инвесторов, без партнеров;
— я никогда не был менеджером, бизнесменом, маркетологом, я программист;
— помимо денег на содержание моей семьи я вложил в раскрутку всего 50 тысяч рублей.

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

Базовые алгоритмы нахождения кратчайших путей во взвешенных графах

Reading time5 min
Views264K
Наверняка многим из гейм-девелоперов (или просто людям, увлекающимися програмировагнием) будет интересно услышать эти четыре важнейших алгоритма, решающих задачи о кратчайших путях.

Сформулируем определения и задачу.
Графом будем называть несколько точек (вершин), некоторые пары которых соединены отрезками (рёбрами). Граф связный, если от каждой вершины можно дойти до любой другой по этим отрезкам. Циклом назовём какой-то путь по рёбрам графа, начинающегося и заканчивающегося в одной и той же вершине. И ещё граф называется взвешенным, если каждому ребру соответствует какое-то число (вес). Не может быть двух рёбер, соединяющих одни и те же вершины.
Каждый из алгоритмов будет решать какую-то задачу о кратчайших путях на взвешенном связном. Кратчайший путь из одной вершины в другую — это такой путь по рёбрам, что сумма весов рёбер, по которым мы прошли будет минимальна.
Для ясности приведу пример такой задачи в реальной жизни. Пусть, в стране есть несколько городов и дорог, соединяющих эти города. При этом у каждой дороги есть длина. Вы хотите попасть из одного города в другой, проехав как можно меньший путь.
Читать дальше →

dotPeek — новый, бесплатный декомпилятор от JetBrains

Reading time1 min
Views42K
Всем привет! Сегодня у меня еще одно радостное сообщение для всех кто еще ищет замену Reflector’у — наконец-то вышел “в публику” декомпилятор dotPeek от компании JetBrains.

И как же это счастье выглядит?

Автоматический анализ текста без модераторов

Reading time3 min
Views13K
Недавно на Хабре появилась статья об автоматическом реферировании статей. Так случайно получилось, что я тоже занимаюсь автоматическим анализом текстов и добился в этом некоторых успехов.

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

Автоматическое реферирование статей на русском языке

Reading time1 min
Views25K
Тема автоматического реферирования/аннотирования текста была поднята давно и было придумано множество способов ее реализации. Так как желание знать главное есть у всех, но это, как правило, связано с просмотром множества материалов.

Готовые библиотеки найти не так легко, а то, что есть, слабо конфигурируется, не доделано и, главное, работает только для английского языка. Я захотел исправить этот недостаток и вот что получилось.
Читать дальше →

Семь правил тестировщика

Reading time4 min
Views14K
«Сначала ваши попытки должны были потерпеть крах, чтобы вы были готовы ухватиться за спасательный круг, который вам бросят.»
Е. Херригель
«Дзен и искусство стрельбы из лука»

Ты ручной тестировщик?
На автоматизацию тестирования нет времени?
То, что нужно тестировать, невозможно автоматизировать?
Ты уже достиг вершин, но хочешь посмотреть чей-то чужой путь?

Тогда прошу под кат!
Читать дальше →

Разберемся раз и навсегда: AJAX, «кириллические символы», кодировки, prototype.js, jQuery, JsHttpRequest

Reading time5 min
Views169K
AJAX, — это технология. Одной из часто используемых техник этой технологии является
посылка запросов при помощи объекта класса XMLHttpRequest.


Как же посылать и принимать AJAX запросы в нужной нам кодировке, нужно ли использовать однобайтовые кодировки или не обойтись без UTF-8. На все эти вопросы раз и навсегда ответит эта статья.

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

Как стать героем (Яков Сироткин на ADD-2010)

Reading time15 min
Views2.5K
Яков Сироткин, известный блогер и опытный разработчик любит раскрывать глаза молодых программистов на порой нелицеприятные стороны работодателей, объясняя при этом природу этих фактов.

Проблемы о которых не любят говорить на интервью, но с которыми приходится сталкиваться.
  • Как успешно разрабатывать программное обеспечение вопреки трудностям?
  • Понравится ли это начальству?
  • Что за это будет?
  • Как жить дальше?


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

Уникальный продукт — преимущество или недостаток для стартапа?

Reading time4 min
Views4.2K
Есть два основных пути в мире бизнеса: создать что-то новое и уникальное или скопировать (а если получится — и превзойти) чужой успех. Если бы вы начинали бизнес — какой путь вы бы выбрали? Что-то мне подсказывает, что большинство потенциальных стартаперов — вполне себе романтики, и копирование чужих идей их не очень-то привлекает. Тем более, что и своих оригинальных идей — полна голова, аж крышу сносит, правда?

Так вот, по собственному (не очень богатому, но тем не менее) опыту могу судить: оригинальная идея и уникальный продукт крайне осложняют жизнь стартапу. И вот почему:
Читать дальше →

Возможности для студентов, о которых вы, возможно, не знали

Reading time3 min
Views18K
Есть много причин недолюбливать нынешнюю образовательную систему — учат плохо, технологии устаревшие, много ненужной информации и т.д. Я так тоже считал и в той или иной степени считаю. Но, несмотря на это, у студентов есть много возможностей, о которых они даже не догадываются. В этой статье я решил собрать советы, которые должны пригодиться студентам во время учебы. К сожалению, о многом я узнал на последнем курсе, а то и вовсе после окончания университета.

Итак, поехали…
Читать дальше →

Основы Linux от основателя Gentoo. Часть 1 (1/4): BASH, основы навигации

Reading time6 min
Views254K

Предисловие


Об этом руководстве


Добро пожаловать в первую из четырех частей обучающего руководства по основам Linux, разработанного чтобы подготовить вас к сдаче экзамена Linux Professional Institute 101. В нем вы познакомитесь с bash (стандартной оболочкой командного интерпретатора в Linux), узнаете о большинстве возможностей таких стандартных команд Linux, как ls, cp и mv, разберетесь в инодах, жестких и символьных ссылках, и многом другом. К концу этого руководства у вас сформируется некий фундамент знаний, и вы будете готовы к изучению основ администрирования Linux. К концу всего курса (8 частей), у вас будет достаточно навыков, чтобы стать системным администратором Linux и пройти сертификацию LPIC Level 1 от Linux Professional Institute, если конечно захотите.



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


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

Что почитать на выходных? Рекомендуем, выпуск №9

Reading time3 min
Views1.4K
Это подборка статей на тему веб-разработки на платформе .NET (и не только). За день перед выходными я предлагаю набор интересных ссылок, которые стоит посетить в свободные минуты на выходных, чтобы узнать что-то новое и интересное.

Вы можете следить за циклом этих советов по следующей ссылке.

Тема номера:

  • XNA RPG — изучение XNA на примере построения RPG-игры (руководство из 26 частей) (link);
WebForms:
  • Российская система управления контентом Atilekt.CMS доступна через Web Platform Installer (link);
  • Список событий в GLOBAL.ASAX (link);
  • Проект для ASP.NET- Git Web Access (link);
ASP.NET MVC/WebMatrix:
  • ASP.NET MVC 3 для начинающих: добавляем ввод даты с помощью jQueryUI и NuGet (link);
  • Руководство по Orchard, часть 1 — запуск блога (link);
  • Руководство по Orchard, часть 2 (link);
  • Custom Role Provider. Часть 1 (link);
  • Настройка шаблонов T4 MvcScaffolding (link);
  • Управление сессиями NHibernate в приложениях ASP.NET MVC (link);
  • patterns & practices- Project Silk Drop 7 (link);
  • Исопльзование Entity Framework Fluent API и Code First в ASP.NET MVC (link);
HTML5, JavaScript, веб-стандарты:
  • Работа с CSS 3 в Expression Web (link)
  • Мнение о том, когда использовать Canvas и SVG (link);
  • Новые полезные JavaScript CSS решения 2011 года. 16 свежих плагинов для веб-разработчика (link);
  • Результаты тестирования скорости JS в браузерах (link);
  • IE9 Compat Inspector — инструмент анализа сайта на проблемы с JavaScript (link);
  • Фрактал на JavaScript с помощью HTML5 (link);
  • 14 браузерных javascript — игр, использующих HTML5 (link);
  • Расширение ваших jQuery-приложений с Amplify.js (link);
  • Useful jQuery Plugins — April 2011 (link);
  • Взрывной логотип с помощью CSS3 и MooTools или jQuery (link);
Читать дальше →

Information

Rating
Does not participate
Location
Саратов, Саратовская обл., Россия
Date of birth
Registered
Activity