Как стать автором
Поиск
Написать публикацию
Обновить
0
0

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

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

Как применять IDisposable и финализаторы: 3 простых правила

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

От переводчика


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

Делаем редактор карт для своего платформера

Время на прочтение5 мин
Количество просмотров8.4K
Многие, думаю, создавали, ну или хотя бы пытались создать какую-нибудь игрушку. И очень часто инди-разработчики выбирают жанр аркады, скролл-шутера, платфомера или что-то в этом роде. Здесь я хочу рассказать о создании простейшего редактора уровней к такой аркаде.
В качестве платформы я выбрал C# + XNA 4.0, и WinForms для пользовательских элементов в редакторе уровней.
Создаем в VisualStudio проект Windows Game и вперед!


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

Разработка IFrame приложения в Контакте, использование Vkontakte API

Время на прочтение5 мин
Количество просмотров48K
Пару дней назад, одна моя знакомая попросила помочь ей создать интернет-голосование, поскольку, функционала в Контакте не хватало (там можно создавать опрос только на 15 человек). Задачка оказалась интересной. Итак, за дело!

Кому может пригодиться данный пост:

  • тому кто пытается разобраться как работает API в Контакте;
  • имеет опыт работы с популярными CMS, здесь речь пойдет о Joomla;
  • сильно ограничен во времени;

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

Кодоребус или паттерн «стратегия» на .Net 4.0

Время на прочтение3 мин
Количество просмотров2.6K
Недавно при работе над одним проектом у нас родился интересный код. Мы сразу же принялись тестировать наших коллег на смекалку, с просьбой объяснить что это, как работает и что делает. Даже опытных разработчиков этот код вгоняет в ступор (после пары минут истерического смеха). Итак, встречаем:

    Action<Action> action = (Action action) => { action(); };

Прежде чем заглянуть под хабракат, попробуйте ответить на несколько вопросов (сделаем вид, что заголовок поста Вы не видели):
  • На каком языке написан этот кусок кода?
  • Верен ли он синтаксически? Скомпилируется ли он?
  • Имеет ли данный код смысл? Что он делает?
  • Зачем такой код мог быть написан?
  • Как можно улучшить этот код? (Как бы его написали Вы?)
  • Приведите реальные варианты использования этого кода.
  • Какие потенциальные проблемы могут возникнуть при его применении?

Ответили? Тогда ныряем под кат за предысторией и разъяснениями.
Читать дальше →

jQuery для начинающих

Время на прочтение9 мин
Количество просмотров515K
jQuery Logo

jQuery — это замечательный JavaScript Framework, который подкупает своей простотой в понимании и удобством в использовании. Но изучение надо с чего-то начинать, и лично моё мнение — лучше всего начинать с наглядных примеров, и они далее…

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

Хотите построить успешный бизнес в сфере программных продуктов?

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

С чего начать свой бизнес?


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

Методик масса, лично я считаю наиболее полезной Business ModelCanvas, но не настаиваю. Всем, кто только начинает свой бизнес, рекомендую попробовать заполнить canvas, а всем, кто уже вовсю работает, и может быть даже зарабатывает, предлагаю проверить свою бизнес-модель с помощью восьми вопросов от Алекса Остервальдера.
image
Читать дальше →

Coin Keeper. iPhone приложение на C#

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

Вчера разработанное нами приложение Coin Keeper заняло третье место в топе платных приложений русского AppStore.

Интересно то, что мы разрабатывали его не на привычном Objective C, а на C#, используя фреймворки Monotouch и Monodroid.

Внутри я бы хотел рассказать про архитектуру приложения, хитрости и удачные моменты. Кроме того я раздам 5 промокодов, тому кто сможет дать ценные комментарии по проекту.

технические подробности проекта...

JavaScript паттерны… для чайников

Время на прочтение8 мин
Количество просмотров181K
Однажды вечером, сразу после того, как я закончил разбираться с наследованием в JS, мне пришла в голову идея, что пора бы заняться чем-нибудь посложнее — например паттернами. На столе внезапно оказалась книжка Gof, а на экране ноутбука появился труд с названием «JavaScript patterns».

В общем, спустя пару вечеров, у меня появились описания и реализации на JavaScriptе самых основных паттернов — Decorator, Observer, Factory, Mediator, Memoization (не совсем паттерн, а скорее техника, но мне кажется что она прекрасно в этот ряд вписывается) и Singleton.

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

Несколько полезных сервисов

Время на прочтение2 мин
Количество просмотров126K
Хочу поделиться ссылками на несколько полезных сервисов. Некоторые из них помогут сэкономить время, другие — сделают за Вас незнакомую/нелюбимую работу. Список разбит по категориям, чтобы было легче ориентироваться.

Сервисы опросов
userreport.com (добавил Romanych)
simpoll.ru
webanketa.com (добавил mihass)

Кнопки постинга в социальные сети
Кнопка от Яндекса
addthis.com (добавил UksusoFF)
share42.com
Читать дальше →

Семь причин, по которым ваши коллеги вам не доверяют

Время на прочтение2 мин
Количество просмотров7.6K
Замечания от переводчика: текст написан для американской действительности, но, на мой взгляд, приводимые положения универсальны, и справедливы для Российских коллективов.

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

Каких-таких шагов?

Генерация псевдослучайных чисел

Время на прочтение5 мин
Количество просмотров136K
Довольно часто программисты в своей работе встречаются с необходимостью работать со случайными числами. Чаще всего случайные числа требуются в задачах моделирования, численного анализа и тестирования, но существует и множество других весьма специфических задач.
Конечно, во всех современных языках программирования есть функция random или её аналоги. Эти функции чаще всего дают действительно хорошие псевдослучайные числа, но мне всегда было интересно, как эти функции работают.
В этом топике я постараюсь объяснить, как работает линейный конгруэнтный метод (который чаще всего используется в функции random), и метод получения случайных чисел с помощью полиномиального счётчика (который часто используется для тестирования аппаратуры).
Читать дальше →

Codecademy добавил интерактивные уроки по jQuery

Время на прочтение1 мин
Количество просмотров4.8K
Школа программирования Codecademy, как и обещала, увеличивает количество доступных предметов. К трём курсам по JavaScript теперь добавился jQuery. Выбор логичен: jQuery — это одна из самых популярных JavaScript- библиотек, которая широко используется для создания современных интерактивных сайтов.

Вводный курс The Document Object Model & jQuery состоит из двух уроков и 13 упражнений. Как и раньше, занятия проходят в интерактивном стиле, для первых уроков регистрация не нужна.



Кроме новых уроков, улучшен также интерфейс Codecademy: разработчики прикрутили «блокнот» (Scratch Pad), где можно во время урока экспериментировать с произвольным кодом.

Сделанный за две недели проект Codecademy в августе запустился, в октябре привлёк $2,5 млн венчурного финансирования, количество пользователей недавно превысило 800 тыс.

Одноразовые URI: после прочтения уничтожить

Время на прочтение1 мин
Количество просмотров51K
Когда вы передаёте кому-то по почте или скайпу секретный текст/ссылку/пароль, то стоит предусмотреть дополнительные меры безопасности. А именно, подумать о том, что копия вашего сообщения хранится во многих местах: в логах почтового сервера, в истории сообщений Skype, в истории браузера. Как обеспечить секретность информации в таких условиях?

Оригинальный способ придумали разработчики сервиса One-Tme Secret. Их веб-приложение создано для вставки фрагментов текста и генерации одноразовых URI, которые срабатывают только один раз, после чего информация стирается с сервера. Принцип описывается известным выражением «после прочтения уничтожить». Вдобавок, серверы не хранят никакой информации о посетителях сайта и не ведут логов, если верить разработчикам, но они, вроде бы, порядочные ребята.

Кому-то сама идея публиковать что-то секретное на чужом сервере покажется странной (таким людям лучше вообще не пользоваться интернетом), но в определённом смысле передача секретной информации по HTTPS действительно безопаснее, чем передача незашифрованного текста через почтовые серверы. Да и вообще, генерация одноразовых URI может пригодиться в разных ситуациях.

P.S. Ещё один похожий сервис: TMWSD (This Message Will Self-Destruct).

Страсть vs профессионализм

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

Прочитайте пару объявлений об открытых вакансиях в геймдеве, и Вы увидите, что в большинстве из них наниматель ищет людей со страстью к компьютерным играм. Это звучит очень заманчиво, романтично и оптимистично. Объявления рассказывают, как много всего интересного делается в компании, как увлечены играми её работники — и вот они ищут себе таких же коллег. «Вау!» — говорит себе молодой наивный читатель — «У меня огромная страсть к играм! Эта работа для меня!»
Читать дальше →

Линейная алгебра для разработчиков игр

Время на прочтение19 мин
Количество просмотров797K
Эта статья является переводом цикла из четырёх статей «Linear algebra for game developers», написанных David Rosen и посвящённых линейной алгебре и её применению в разработке игр. С оригинальными статьями можно ознакомиться тут: часть 1, часть 2, часть 3 и часть 4. Я не стал публиковать переводы отдельными топиками, а объединил все статьи в одну. Думаю, что так будет удобнее воспринимать материал и работать с ним. Итак приступим.
Читать дальше →

История взлома одной браузерной игры. Возврат контроля

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

Codecademy: 200 тыс. юзеров, 2,1 млн уроков за первые 72 часа работы

Время на прочтение1 мин
Количество просмотров2.6K
Невероятный успех продемонстрировал стартап Codecademy, который обучает новичков программированию на JavaScript с помощью бесплатных интерактивных уроков. Уроки осуществляются в приложении с простым и интуитивно понятным интерфейсом. Ещё одна особенность проекта — регистрация на сайте не требуется, пока вы не закончите парочку первых уроков.

В первые три дня сайт привлёк 200+ тыс. активных пользователей (считаются те, кто зашёл на сайт и запустил приложение), количество законченных уроков составило ≈2,1 млн, пишет TechCrunch.

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

Удобная навигация в Windows Explorer и Total Commander

Время на прочтение6 мин
Количество просмотров8.1K
Вы никогда не задумывались над тем, что навигация в Windows могла бы быть намного удобней? Почему бы не добавить возможность, аналогичную навигации по классам во многих современных IDE, когда в выпадающем списке, вызываемом сочетанием клавиш, отображаются папки с нужным именем, вот так:

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

Спортивное программирование: «С чего начать?»

Время на прочтение1 мин
Количество просмотров94K
Под катом — список из 15 лучших ресурсов, посвящённых Спортивному Программированию.
Читать дальше →

Мотивация на здоровье! Или как сохранить здоровье, постоянно работая за компьютером

Время на прочтение7 мин
Количество просмотров4.5K
История одного проекта.

Делая проекты и работая, сидя за компьютером, по 12-15 часов в сутки (часто и дольше), я начал замечать как мои глаза начали слезиться и краснеть, шейные позвонки просто ныли (небольшой стресс и они просто не давали спокойно жить), кисти рук, поясница и ноги немели. Вечером, поужинав, засыпал, но ночью просыпался и опять работать. Вырос живот, обвисли мышцы, стал раздражителен.
Хотя все мы знаем о пользе гимнастики. Читали, сохраняли много упражнений себе в «Избранное» (у самого куча подобного в избранном и на дисках). Может пару раз, потом забывали или лень, или не хватает времени, глядя в зеркало и обещая себе «В понедельник начинаю новую жизнь!». Это не очередная статья, которая рассказывает о том, чем нам грозит сидячий образ жизни и какую пользу приносит гимнастика – вы наверняка знаете об этом предостаточно.

Позвольте рассказать свою историю, от понимания проблемы, до реализации решения в виде сервиса…

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

Информация

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