Как стать автором
Обновить
28
0
Александр Медведников @asmaster

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

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

Визуализация времени возрождения Рошана

Время на прочтение56 мин
Количество просмотров51K
В данной статье рассматривается перехват функций графического API на примере DirectX 9 под x64 применительно к игре Dota 2.

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



Disclaimer: Автор не несет ответственности за применение вами знаний полученных в данной статье или ущерб в результате их использования. Вся информация здесь изложена только в познавательных целях. Особенно для компаний разрабатывающих MOBA, чтобы помочь им бороться с читерами. И, естественно, автор статьи ботовод, читер и всегда им был.
Читать дальше →
Всего голосов 134: ↑133 и ↓1+132
Комментарии22

Vim и кириллица: парочка приёмов

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

Раньше для редактирования обычных русскоязычных текстов, я обычно откладывал Vim в сторонку и прибегал к помощи других редакторов. Причиной этому была парочка очень неприятных косяков:
  1. На каждый чих приходилось сто раз переключать раскладку, чтобы корректно ввести пару команд и вернуться обратно. Например, замена буквы-опечатки в только что написанном слове, выливалось в: switch → добраться до буквы, нажать r → switch → [нужная буква] → switch → A → [пишем дальше]. Ад!
  2. Штатный spell checker букву «ё» не любил и любое слово с её участием предлагал заменить на аналог через «е». А я ё люблю, меня это расстраивало.

И вот, наконец, я нашёл решение обеим проблемам. Сижу сейчас и набираю этот текст в Vim. Любопытно, что оба барьера обходятся штатными средствами, без дополнительных плагинов. Поскольку материалов на английском и на них основанных куда больше чем исконно русских, найти эту информацию мне было не просто. Поэтому хочу поделиться ей с теми кому интересно.
Читать дальше →
Всего голосов 111: ↑102 и ↓9+93
Комментарии95

Яндекс убивает бизнес, или будьте осторожны с блоком #main

Время на прочтение3 мин
Количество просмотров67K
UPD 16.03.2016: Новая версия аддона больше не убивает!

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

Суть в том, что пару месяцев назад нам стали поступать запросы от пользователей, с жалобой, что они не могут разместить объявление на сайте, потому что футер наезжает на кнопку «добавить», со скриншотами, типа таких:



Казалось бы, просто поехала верстка, футер стал наезжать на контент, при чем тут Яндекс?
При чем же здесь Яндекс?
Всего голосов 131: ↑110 и ↓21+89
Комментарии102

[ В закладки ] Алгоритмы и структуры данных в ядре Linux, Chromium и не только

Время на прочтение9 мин
Количество просмотров85K
Многие студенты, впервые сталкиваясь с описанием какой-нибудь хитроумной штуки, вроде алгоритма Кнута – Морриса – Пратта или красно-чёрных деревьев, тут же задаются вопросами: «К чему такие сложности? И это, кроме авторов учебников, кому-нибудь нужно?». Лучший способ доказать пользу алгоритмов – это примеры из жизни. Причём, в идеале – конкретные примеры применения широко известных алгоритмов в современных, повсеместно используемых, программных продуктах.



Посмотрим, что можно обнаружить в коде ядра Linux, браузера Chromium и ещё в некоторых проектах.
Читать дальше →
Всего голосов 158: ↑149 и ↓9+140
Комментарии15

PostgreSQL 9.3 + Pgpool-II

Время на прочтение4 мин
Количество просмотров37K
Решил поделиться с вами опытом настройки кластера PostgreSQL 9.3, состоящего из двух нод, управлением которого занимается pgpool-II, без использования Stream Replication (WAL). Надеюсь, кому-нибудь будет интересно.

Схема:

image

Как Вы понимаете, это будут два отдельно стоящих сервера, которыми будет управлять pgpool-II.

Конфигурация нод с PostgreSQL:
Оба сервера идентичны по своим аппаратным составляющим.
  • 4vCPU;
  • 16 Гб памяти;
  • CentOS 6.5;

Диски:
  • 50 Гб — система;
  • 100 Гб — pg_xlog
  • 500 Гб — каталог с данными


Пример,
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3        48G  7.4G   38G  17% /
tmpfs           7.8G     0  7.8G   0% /dev/shm
/dev/sda1       194M   28M  157M  15% /boot
/dev/sdb1        99G  4.9G   89G   6% /var/lib/pgsql/9.3/data/pg_xlog
/dev/sdc1       493G  234G  234G  50% /var/lib/pgsql/9.3/my_data


Конфигурация нод с pgpool-II:
  • 4vCPU;
  • 8 Гб памяти;
  • CentOS 6.5;

Диски:
  • 50 Гб — система;


Про установку PostgreSQL в детали вдаваться не буду, так как она стандартная.

Настройка pgpool-II.
За основу настройки pgpool-II, взял инструкцию с официального сайта: www.pgpool.net/pgpool-web/contrib_docs/simple_sr_setting2_3.3/index.html

Хотел бы обратить внимание только самые важные моменты:
Читать дальше →
Всего голосов 10: ↑9 и ↓1+8
Комментарии9

Глубокое погружение в систему рендеринга WPF

Время на прочтение7 мин
Количество просмотров27K
На перевод этой статьи меня подтолкнуло обсуждение записей «Почему WPF живее всех живых?» и «Семь лет WPF: что изменилось?» Исходная статья написана в 2011 году, когда Silverlight еще был жив, но информация по WPF не потеряла актуальности.

Сначала я не хотел публиковать эту статью. Мне казалось, что это невежливо — о мертвых надо говорить либо хорошо, либо ничего. Но несколько бесед с людьми, чье мнение я очень ценю, заставили меня передумать. Вложившие много усилий в платформу Microsoft разработчики должны знать о внутренних особенностях ее работы, чтобы, зайдя в тупик, они могли понимать причины произошедшего и более точно формулировать пожелания к разработчикам платформы. Я считаю WPF и Silverlight хорошими технологиями, но… Если вы следили за моим Twitter последние несколько месяцев, то некоторые высказывания могли показаться вам безосновательными нападками на производительность WPF и Silverlight. Почему я это писал? Ведь, в конце концов, я вложил тысячи и тысячи часов моего собственного времени в течение многих лет, пропагандируя платформу, разрабатывая библиотеки, помогая участникам сообщества и так далее. Я однозначно лично заинтересован. Я хочу, чтобы платформа стала лучше.


Читать дальше →
Всего голосов 44: ↑44 и ↓0+44
Комментарии10

Интерпретатор Оберона на Go

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

Введение


История движется по спирали. Авторы Go, встав на плечи авторитетной корпорации Google, смогли воплотить свой идеальный язык программирования в жизнь, как когда-то Никлаус Вирт принес в этот мир язык Оберон, собственной непоколебимостью и авторитетом борясь с зарождавшимся трендом усложнения и экстенсивного развития мейнстрим-языков.

Сегодня язык Оберон забыт, но дело Вирта проявилось в языке Go совершенно неожиданно. В некоторых аспектах реализации сходство подходов не вызывает сомнений. Конечно, каждый язык по-своему уникален и нет нужды из одного языка делать другой. Время не повернуть назад. Но в разное время люди стремились сохранить технологии, ушедшие в прошлое. Чего стоят бережно хранимые эмуляторы Спектрума и MSX, музеи старых компьютеров в разных странах. Эмуляция, как один из способов остановить мгновение прочно зарекомендовал себя.

Общепринято считать, что язык Go нашел себя в нише сетевых сервисов. Но мы пойдем другим путем.
BEGIN
Всего голосов 22: ↑21 и ↓1+20
Комментарии9

Не CDN единым

Время на прочтение2 мин
Количество просмотров47K
В последнее время стало модно говорить о доступности при разработке сайтов, писать rel, alt, делать версию для слабовидящих и так далее, однако почему бы сначала не подумать о нормальных пользователях. Подключая jQuery из CDN:

<script src="http://code.jquery.com/ui/1.9.0/jquery-ui.js"></script>

… многие забывают очень важную деталь.
Вы, наверное, уже догадались?
Всего голосов 81: ↑66 и ↓15+51
Комментарии47

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 2 из 6

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

Содержание курса



Улучшение кода






Official translation (with a bit of polishing) is available here.




Update:


Внимание, статья 4в даёт новую, более простую версию растеризатора.

Давайте знакомиться, это я.



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

В прошлый раз мы нарисовали проволочную сетку трёхмерной модели, в этот раз мы зальём полигоны. Точнее, треугольники, так как OpenGL практически любой полигон триангулирует, поэтому ни к чему разбирать сложный случай. Напоминаю, что этот цикл статей создан для самостоятельного программирования. Время, которое я здесь привожу — это не время чтения моего кода. Это время написания вашего кода с нуля. Мой код здесь только для того, чтобы сравнить ваш (рабочий) код с моим. Я совсем не являюсь хорошим программистом, поэтому ваш код может быть существенно лучше моего. Любая критика приветствуется, любым вопросам рад.

Пожалуйста, если вы следуете этому туториалу и пишете свой код, выкладывайте его на github.com/code.google.com и им подобные и давайте ссылки в комментариях! Это может хорошо помочь как и вам (другие люди могут чего посоветовать), так и будущим читателям.
Читать дальше →
Всего голосов 119: ↑116 и ↓3+113
Комментарии116

Мой опыт восстановления зрения

Время на прочтение9 мин
Количество просмотров277K
   Этим летом я был на некоторое время предоставлен сам себе – всех своих я отправил подальше от дыма, а сам, недолго думая, решил немного подтянуть здоровье. Не просто записаться в тренажерный зал и накачать «квадратиков» для пляжа, а именно обследоваться у некоторых врачей, чтобы выработать для себя вектор дальнейших действий, дабы совсем не превратиться в «овоща».

image

   Расскажу лишь про свой опыт восстановления зрения – именно оно больше всего подвержено риску у любого «компьютерного» человека.
Читать дальше →
Всего голосов 494: ↑397 и ↓97+300
Комментарии208

Анонсирована единая подписка для магазинов Xbox Live и Windows Phone и новый ресурс App Hub

Время на прочтение1 мин
Количество просмотров1K
Microsoft делает еще один шаг навстречу разработчикам и анонсирует единую подписку для размещения приложений в Xbox Live Marketplace и Windows Phone Marketplace!

Теперь разработчики имеют единые бесплатные инструменты, единую технологию (XNA) и единую подписку для создания и продажи приложений для Windows Phone и Xbox 360. Это значительный шаг вперед к кроссплатформенной разработке, теперь разработчики мобильных xna-приложений могут открыть для себя огромную аудиторию консоли Xbox 360 и наоборот.

Единая подписка стоит $99 в год или бесплатна для студентов подписчиков программы DreamSpark. 

image

Кроме того, буквально только что анонсирован новый единый центр разработчиков App Hub, который расположен по адресу http://create.msdn.com на котором можно найти все, что может понадобиться для изучения технологий, создания приложений, размещения их в магазинах. На App Hub можно найти последние новости, анонсы и общение с сообществом разработчиков.
Всего голосов 48: ↑31 и ↓17+14
Комментарии13

Курс молодого Desire'вода

Время на прочтение4 мин
Количество просмотров9.5K
image
Написать подобную статью меня сподвигнул тот факт, что для человека, влившегося в стройные ряды Desire'водов, информация об платформе Android очень уж фрагментирована. С одной стороны платформа для всех Android устройств одна, с другой стороны для каждого устройства есть свои нюансы и тонкости. Кроме того информации на таких форумах как 4pda.ru и forum.xda-developers.com очень много, но как правило она размазана по всем темам. Приходится продираться сквозь сотни страниц в попытках извлечь ценные частицы информации.
Читать дальше →
Всего голосов 93: ↑79 и ↓14+65
Комментарии40

История игрушки. Поле Чудес

Время на прочтение11 мин
Количество просмотров298K
Случилось это в городе, закрытом от шпионов, цыган и бед социалистической экономики. В Советском Союзе было ровно 10 таких городов, повязанных атомным секретом.

Жизнь мальчиков с математическими способностями в атомных городах была предопределена — школа с пятерками по алгебре и геометрии, мех-мат столичного университета, возвращение в систему, квартира через год, кандидатская степень в 40 лет, ВАЗ 2103 к пятидесяти годам, звание доктора, гараж, шесть соток, четыре квадратных метра.

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

Pole Chudes для iPhone

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

Читать дальше →
Всего голосов 933: ↑923 и ↓10+913
Комментарии311

Средство для синхронизации любых файлов с Google Account: SyncDocs

Время на прочтение3 мин
Количество просмотров7.3K
Syncdocs – Google Docs Sync and BackupУзнав из недавно пробегавшей статьи, что появилась возможность закачивать в Google Docs любые файлы, а так же ознакомившись со смешными ценами на дополнительное пространство, я было возрадовался этой возможности и начал искать инструменты, с помощью которых можно было бы синхронизировать свои документы с данным сервисом. Меня в первую очередь интересовала возможность хранения данных в облаке и синхронизации этих данных с несколькими компьютерами. Однако радость моя была недолгой. «Родного» клиента от Google так и нет, а сторонние средства либо тяжелые, либо требуют дополнительной оплаты за возможность использовать все доступное место в облаке. Так и не подобрав инструмент по вкусу, я отказался от этой идеи.

Однако буквально сегодня появилась задача, решение которой всерьез облегчилось бы наличием синхронизации через облако. Я посмотрел несколько вариантов с другими сервисами, но вернулся к поискам утилиты именно для Google Docs. И, самое интересное, нашел именно то, что мне подошло — SyncDocs.

Утилита, которая в настоящий момент имеет статус беты, предназначена для синхронизации и резервного копирования любых файлов с Google Docs. Предназначена она под Windows (но, как оказалось, отлично работает и в Linux под wine) и имеет как «установочную», так и portable-версию.
О возможностях под катом
Всего голосов 47: ↑44 и ↓3+41
Комментарии40

Инфографика: Куда потратят госбюджет?

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


Планирование государственного бюджета — дело нелегкое. Для того, чтобы убедиться в этом, достаточно беглого взгляда на краткую графическую схему. Интересных фактов немало. Так на новую полицейскую форму в 2011 году государство потратит больше, чем на всё школьное образование. Или столько же, сколько на поддержку всего отечественного спорта. На общегосударственные нужды (аппарат Президента и содержание административных структур) отведено чуть меньше, чем здравоохранению и системе образования (среднего и высшего) вместе взятых. И еще довольно много интересных фактов о том, куда в этом году пойдут средства налогоплательшиков.

Читать дальше →
Всего голосов 116: ↑105 и ↓11+94
Комментарии86

Ученые из Гарварда создали недорогую систему для ранней диагностики рака

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


Да, действительно интересные новости — объединенная команда ученых Гарварда и Массачусетского технологического института создали портативную систему для раннего определения рака. Примечательная цена этой системы — всего 200 долларов, наверное, это самая недорогая из всех подобных систем — ведь обнаружение рака затруднено и количеством разновидностей раковых заболеваний и сложностью проводимых методик анализа.

Читать дальше →
Всего голосов 85: ↑81 и ↓4+77
Комментарии71

Таблетки с CES. Итоговая таблица

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

Выставка CES в Лас-Вегасе просто разразилась невиданным множеством планшетных компьютеров на всевозможных платформах. Среди них преобладают железки на Android или Windows 7. Журналисты engadget постарались и собрали список всех анонсированных планшетов. Под хабракатом вы увидите весь сводный список грядущих таблеток с кратким описанием каждой из них, а также планируемой датой выпуска и ценой.
Читать дальше →
Всего голосов 79: ↑75 и ↓4+71
Комментарии117

PHP class для Goo.gl

Время на прочтение2 мин
Количество просмотров6.4K
image
И опять немного о Goo.gl. Листая хабр видел предложения на JS, но лично мне они не подходили. Сегодня случайно наткнутся на симпатичное для меня решения, коим и делюсь с общественностью…
Читать дальше →
Всего голосов 61: ↑50 и ↓11+39
Комментарии45

Мировые шедевры классической музыки без копирайта

Время на прочтение1 мин
Количество просмотров38K
Несмотря на то, что такие признанные классики, как Бетховен, Чайковский, Брамс, Сибелиус жили уже очень и очень давно и их произведения давно не попадают под законы о копирайте, найти их великолепную музыку, распространяемую свободно, практически невозможно. То есть если вы захотите использовать 9 симфонию Бетховена в качестве саундтрека, воспроизвести отрывки из симфоний Чайковского на каком-нибудь мероприятии, вам таки придётся заплатить деньги правообладателям записей, которые вы будете использовать.

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

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

Уже собрано более 41 000 долларов, хотя изначально организаторы рассчитывали только на 11 тысяч.

Пожертвовать немного денег, а так же ознакомиться с акцией можно на официальной странице. Сбор средств закончится 15 сентября в 6 часов утра по московскому времени, то есть осталось чуть более дня и желающим помочь нужно поспешить.
Всего голосов 179: ↑175 и ↓4+171
Комментарии130

Как не стать спамером со своей уютной рассылочкой

Время на прочтение1 мин
Количество просмотров67K
image
Пользователь когда-то подписался на рассылку, но уже забыл когда, и главное зачем. Теперь ежедневно к нему падает спам, а по собственному опыту он знает, для того чтобы отписаться нужно зайти по ссылке свой профиль, найти и снять там какую-то галку а главное, помнить свой логин и пароль на давно забытом им сайте.
Его действия? «В спам!»

А по другую сторону баррикад находитесь Вы с вашей уютненькой подписочкой, полезной информацией и очень удобной системой отписки, о которой пользователь так никогда и не узнает.

И вот, с десяток таких «отписок» и гугл будет удобно отсортировывать ваши рассылки в папочку Спам (584), у ВСЕХ ваших подписчиков.

Однако многие из нас уже успели заметить: некоторые письма в Gmail при попытке отметить их «В спам!» САМИ предлагают отписаться от рассылки в один клик.

Эта фича была введена google более года назад, но лишь единицы рассылок научились ей пользоваться. И не удивительно. В рекомендациях по осуществлению массовых рассылок, лишь косвенно упоминается о том, что Вам нужно сделать.
А сделать нужно не многое.
Читать дальше →
Всего голосов 238: ↑230 и ↓8+222
Комментарии60
1
23 ...

Информация

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