Pull to refresh
0
0
Максим Лапшинов @maksimla

User

Send message

Шифруются? Вытаскиваем байткод из JVM

Reading time5 min
Views25K


Привет, хабр. Я пишу на языке Java, занимаюсь, преимущественно, работой с серверами MMORPG игр. Серверные «сборки» выпускаются многими командами, работающими в этой сфере. Некоторые платно, а некото
Читать дальше →
Total votes 67: ↑66 and ↓1+65
Comments24

Мой первый скрипт по разгадыванию капчи

Reading time4 min
Views21K
Предисловие:

Есть у меня один знакомый который держит интернет магазин. Балует меня иногда довольно-таки нестандартными задачами в программировании. Всё началось с того что, подумав, он решил что для его пользователей — будет очень удобно получать информацию о том где сейчас его посылка (товары с магазина он отправляет почтой России). Благо на сайте почты есть функция слежения за отправлением.

image

На странице достаточно ввести номер трекера и информация о посылке появляется на экране в виде аккуратной таблички. Не долго думая, я вооружился функцией curl и за пару минут приготовил легкий скрипт — который парсил эту информацию и выводил последнее местоположение посылки (статус: «Прибыло в место вручения» или «Вручение адресату» — давал команду скрипту отправить покупателю смс о том что он может забирать свою посылку).
Читать дальше →
Total votes 129: ↑110 and ↓19+91
Comments120

Подключение win form в проект xna

Reading time3 min
Views9.7K


Как известно, в xna не предусмотрен типовой GUI, поэтому каждому разработчику приходится решать — рисовать его самим, подключать готовые GUI библиотеки разработанные специально для xna (коих не так уж много), либо пытаться подключить стандартные winform / wpf (по подключению wpf уже есть замечательная статья).
Я не стал разбираться в многочисленных вариантах решения данной задачи и решил пойти как мне казалось наиболее простым путем — подключением winform. Как оказалось, winform имеет ряд нюансов и ограничений.
В итоге после активного поиска я пришел к двум возможным реализациям интерфейса:
1. Весь интерфейс без участия клавиатуры, т.е. кнопки, списки и т.п. Если необходимо ввести что-то с клавиатуры — создавать внешнюю форму и получать с нее данные.
2. Интерфейс полностью работоспособен и можно вводить данные с клавиатуры. Но создание внешних форм невозможно + еще пара нюансов.
Подробнее:
Читать дальше →
Total votes 23: ↑17 and ↓6+11
Comments7

Программирование под Android для начинающих. Часть 1

Reading time5 min
Views1.1M
Здравствуйте. Сегодня на глаза попался пост о курсе программирования под Android на сайте Linux Foundation, а вместе с ним — и немало комментариев о том, что хотелось бы видеть и перевод этих уроков. Поскольку я сейчас, после четырех лет разработки под микроконтроллеры, начал изучать и программирование для мобильных устройств, то параллельно решил сделать перевод первой части урока.

Читать дальше →
Total votes 84: ↑50 and ↓34+16
Comments29

Лучшие доклады девклуба

Reading time1 min
Views4.6K
Привет!
Как вы, возможно, знаете, в Таллинне есть клуб разработчиков DevClub.
По традиции, в декабре обычно выбираются лучшие доклады года.

А на этой странице отдельно собраны лучшие доклады за все годы:
http://www.devclub.eu/people/top-videos/

Главное отличие девклуба от других сообществ разработчиков в том, что девклуб не связан какой-то конкретной темой (будь то Java, Ruby, тестирование и т.п.). Поэтому темы этих видео самые разные: есть и про Java, и про .NET, PHP, JavaScript, а также про управление проектами и IT-бизнес. Есть даже «оффтопики», то есть совсем не связанные с IT темы.

Приятного просмотра!
Total votes 15: ↑10 and ↓5+5
Comments3

Курс программирования под Android для начинающих

Reading time1 min
Views84K


Организация Linux Foundation открыла курсы программирования под Android для начинающих. Авторы курса постарались, чтобы можно было за пару часов усвоить навыки разработки под эту платформу.
Читать дальше →
Total votes 45: ↑25 and ↓20+5
Comments18

Топ-10 результатов в области алгоритмов за 2012 год

Reading time4 min
Views49K
Каждый год 31 декабря David Eppstein публикует обзор препринтов за прошедший год, посвященных структурам данных и алгоритмам, опубликованным на arxiv.org. По ссылкам можно познакомиться с материалами за 2010 и 2011 (мой перевод) годы.

Раздел cs.DS развивается хорошими темпами: в этом году появилось 935 препринтов по алгоритмам и структурам данных, в то время как за 2011 их было 798. Раздел пока не дотягивает до сотни в месяц, хотя в июле (98 препринтов) этот порог был очень близок.

Это мой личный список из десятка препринтов, которые кажутся мне особенно интересными. Как обычно, я не вношу в него мои собственные работы и некоторые другие, о которых я писал раньше. Кроме того, здесь нет результатов (например, более быстрый алгоритм нахождения максимального потока), не появлявшихся на arxiv.org.

Вот они, в хронологическом порядке:
Читать дальше →
Total votes 114: ↑114 and ↓0+114
Comments8

Результаты новогоднего Хабра-соревнования по программированию, анализ и обсуждение

Reading time11 min
Views39K
Честно говоря, я не ожидал такого количества решений: за 24 часа было прислано 265 решений, из которых после удаления повторных отправок осталось 183.

Из 183 решений у 11 был превышен допустимый размер решения, в 19 случаях — не удалось скомпилировать (об этих ошибках подробнее ниже). Далее 47 дали неправильные ответы на простых тестах (1..1000000), 8 не успели посчитать ответ за минуту (образец решения из условия задачи для 1млн работал 5 минут 36 секунд).

На сложных тестах — 5 решений выдали неверный ответ, и 12 — не уложились в одну минуту. 86 — успешно прошли все тесты.

Если кто потерял, вот топик о старте соревнования с условиями задачи.
Читать дальше →
Total votes 92: ↑90 and ↓2+88
Comments141

Программируем на праздниках в Windows 8

Reading time2 min
Views23K
Новогодние праздники — традиционное время, когда многие разработчики по всей России радуются свободному времени и думают, что бы такого попрограммировать. Лично я живу с таким ощущением уже который год.
Поэтому решил в одном посте собрать ссылки на материалы, которые помогут начать создавать приложения для Windows 8.

Прежде всего это бесплатные электронные книги.
На русском — Разработка приложений для Windows 8 на языке C#
На английском — Programming Windows 8 Apps with HTML, CSS, and JavaScript

В одном месте — все ссылки для разработчиков, включая Windows 8, SDK и дополнительные библиотеки.
Читать дальше →
Total votes 54: ↑34 and ↓20+14
Comments17

5 API которые изменят Веб в 2013

Reading time5 min
Views47K
Это невероятно захватывает — наблюдать за эволюцией Веб, и 2013 год принесет нам в запасе очень многое. На подходе ряд технологий, имеющих потенциал в течение 2013 года радикально изменить наши способы использовать и разрабатывать Веб.

Настраиваемые фильтры CSS



СSS фильтры уже имеются в Chrome и Safari, и позволяют расширенные настройки стилей, такие как размытие, искривление и модификацию цветовой интенсивности. Однако, это — только начало. Настраиваемые фильтры CSS позволяют вам описать свои собственные вершинные и пиксельные шейдеры в GLSL, языке, который является неотъемлемой частью традиционного 3D-рендеринга уже в течение 10 лет или около того.

На практике это означает то, что вы можете создавать невероятные эффекты. Комбинируя фильтры с CSS-переходами, вы можете делать красивые трансформации, от завитушек на странице до складывающихся элементов. Пределом является лишь ваше воображение!

Так когда вы можете использовать их? Adobe стал новатором этой технологии и Настраиваемые Фильтры уже доступны в Chrome. Ожидается увидеть их в Chrome в начале следующего года. На данный момент, с ними можно поиграть в Canary.

API автозаполнения



Данное API имеет потенциал радикально изменить регистрации и платежи в сети. Автозаполнение разрабатывается для того, чтобы упростить заполнение форм, и даже сейчас имеется спецификация для подсказок, с каким типом данных связаны поля в форме.
Читать дальше →
Total votes 120: ↑87 and ↓33+54
Comments72

jQuery изнутри — введение

Reading time6 min
Views103K
По работе мне несколько раз приходилось участвовать в собеседовании кандидатов на должность клиент-сайдера у нас в компании, смотреть на их познания в Javascript. Удивительно что никто из них не знал толком как же работает jQuery изнутри, даже те, кто отметил свои знания jQuery уровнем «отлично», увы.

У jQuery очень низкий порог вхождения, о нем часто пишут и используют всюду, где только можно (и даже там, где, в общем-то, не нужно), поэтому некоторые даже не смотрят на чистый Javascript. Зачем, мол, его знать, когда есть jQuery, а по нему — тонны примеров и готовых плагинов? Даже на Хабре видел статью про рисование на Canvas, где автор подключил jQuery и использовал его только один раз — для того, чтобы получить доступ к Canvas по его идентификатору. И не считал это чем-то ненормальным.

Извините, отвлекся. Суть поста и следующих частей серии в том, чтобы рассказать о том, как же работает библиотека изнутри и что же в ней происходит по мере выполнения каких-то методов.
Готов и хочу читать дальше
Total votes 149: ↑139 and ↓10+129
Comments80

Разбор простого криптографического keygenme

Reading time4 min
Views32K
Привет, хабрахабр.

Листая одним декабрьским вечером различные хабы, я заметил, что нигде давненько не бывало статей о реверсинге. А разборов crackme/keygenme – и подавно. И вдруг меня осенило: почему бы не написать свой туториал?



Тех, кого интересует разбор простенького криптографического keygenme и что же в итоге получилось, прошу под кат.

Читать дальше →
Total votes 66: ↑57 and ↓9+48
Comments21

Обучение программированию через игру или как быстро собрать весь мёд

Reading time5 min
Views44K
Несколько лет назад я начал преподавать свой любимый язык python школьникам. И возникла такая задача: рассказать про объектную модель, но что бы это было не скучно и как можно нагляднее. И тут меня не сразу, но осенило — пчёлы!

Отчего пчёлы и как самому ими порулить
Total votes 35: ↑30 and ↓5+25
Comments31

Лучшее в мире PHP за 2012 и дайджест интересных материалов за последние две недели №7 (15.12.2012 — 28.12.2012)

Reading time6 min
Views29K


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

Приятного чтения!
Читать дальше →
Total votes 82: ↑71 and ↓11+60
Comments23

Введение в разработку игр для Windows 8 с использованием XNA и MonoGame

Reading time8 min
Views40K
Как вы наверное заметили, в нашем блоге появился ряд материалов, которые раскрывают азы создания прикладных приложений WinRT для Windows 8. В данной серии статей будет рассказано о том как вы можете создавать игровые приложения WinRT на языке C#.



Читать дальше →
Total votes 36: ↑28 and ↓8+20
Comments11

ReactOS 2012

Reading time3 min
Views9.5K
image

ReactOS: с ноября по декабрь


С моего последнего поста на хабре про выступление Алексея Брагина на полуфинале Зворыкинского проекта прошёл уже месяц. В ReactOS с тех пор произошло достаточног много важных изменений, заслуживающих внимания.
Марат Каратов, Алексей Брагин и Речицкий Александр в Гипер Кубе, Сколково

Участие в Конвенте в Сколково


Организаторы Зворыкинского проекта пригласили нас и на завершающее событие — Инновационный Конвент. Примечателен он тем, что проходил в самом Сколково, в новом здании “Гиперкуб”, поэтому мы решили обязательно посетить это мероприятие не смотря на 26-ти градусный мороз (В НСК в это время было -45, так что нам грех жаловаться на погоду).
За подробностями - под кат
Total votes 79: ↑42 and ↓37+5
Comments79

Погодник на java для начинающих и постарше

Reading time10 min
Views20K
image

Приветствую всех в этот прекрасный день ожидания праздника, это моя первая статья на хабре, в которой я хотел бы рассказа про открытый API погоды Яндекса. Статья является продолжением серии Java для начинающих. Следует отметить, статья рассчитана на тех, кто недавно начал изучения язык или на тех, кто не знаком с данным сервисом, но в любом случае, рад я буду любым читателям (эх тавтология… ). Яндекс дает неплохую возможность для разработчиков, которым требуется в своей программе или на своем сайте разместить погоду, причем информации, которую Яндекс предоставляет более, чем достаточно.

Погоду Вы сможете выбрать за любой день на неделю вперед. Различные состояния (ясно, пасмурно и т. д.), множество языков (для городов, например русский и английский, для состояний все языки стран СНГ и не только: ясно, аяз, açık, ашық и т… д.), я не очень хорош в географии, но, кажется, информация там для всех стран, даже есть миниатюрные картинки состояния погоды, но самое главное, почему я выбрал этот сервис — простая и понятная структура. Сразу оговорюсь, за «рекламу» мне не платили.
Читать дальше
Total votes 15: ↑12 and ↓3+9
Comments15

Java собеседование. Коллекции vs null

Reading time3 min
Views129K
Всем привет!

В топике Java собеседование. Коллекции подробно изложен вопрос работы с Set & Map в Java. Но у меня ещё есть парочка любимых вопросов из этой области:

  1. Может ли null использоваться в качестве ключа в Map?
  2. Может ли Set содержать null?

подсказка (HashMap.java)
   public V get(Object key) {  
        if (key == null)  
            return getForNullKey();  
        int hash = hash(key.hashCode());  
        for (Entry<K,V> e = table[indexFor(hash, table.length)];  
             e != null;  
             e = e.next) {  
            Object k;  
            if (e.hash == hash && ((k = e.key) == key || key.equals(k)))  
                return e.value;  
        }  
        return null;  
    }  
    /** 
     * Offloaded version of get() to look up null keys.  Null keys map 
     * to index 0.  This null case is split out into separate methods 
     * for the sake of performance in the two most commonly used 
     * operations (get and put), but incorporated with conditionals in 
     * others. 
     */  
    private V getForNullKey() {  
        for (Entry<K,V> e = table[0]; e != null; e = e.next) {  
            if (e.key == null)  
                return e.value;  
        }  
        return null;  
    }  


Предполагается, что пытливый читатель самостоятельно поразмыслит над ответами и затем сравнит их с моими. Самые нетерпеливые могут сразу проследовать под кат.
Читать дальше →
Total votes 62: ↑51 and ↓11+40
Comments47

Как сделать 3D шутер на JavaScript за пару дней

Reading time3 min
Views84K
imageВ субботу у меня ближе к полуночи появилось свободное время и жгучее желание сделать игрушку под браузер, забавы ради и увеличения опыта для. С жанром определился довольно быстро: т.к. на MMORPG в этот раз у меня точно не хватило бы времени, я решил делать просто мясорубку. Минут 20 ушло на написание базового кода для управления игроком и его противниками. И тут встал вопрос — 2D или 3D (вернее так: Canvas/SVG или все же полноценный WebGL)?
Читать дальше →
Total votes 102: ↑98 and ↓4+94
Comments65

Information

Rating
Does not participate
Location
Вильнюс, Литва, Литва
Date of birth
Registered
Activity