Метка «event»

в 20:07, , рубрики: Песочница, метки: , , , ,

Доброе время суток, Хабраобщество.

Сегодня я попробую вам рассказать как написать программу на Malbolge.

Ровно две недели назад я узнал о языке Malbolge из сериала «Элементарно». Как раз в этот период мне в Университете поручили написать статью и провести исследование на выбранную мной тему, не задумываясь я выбрал Malbolge (о чем скоро пожалел). Забравшись в интернет я нашел не так много информации, точнее я нашел только описание специфики и историю. Мне пришлось разбираться со всем самому. При многочисленных попытках я нашел довольно много нюансов которыми я хочу поделиться с вами, также я представлю свой код программы.

Информацию и специфику языка вы может найти перейдя по ссылке вики.

Вики дает две программы, которые печатают «Hello, world.»:

(=<`:9876Z4321UT.-Q+*)M'&%$H"!~}|Bzy?=|{z]KwZY44Eq0/{mlk**hKs_dG5[m_BA{?-Y;;Vb'rR5431M}/.zHGwEDCBA@986543W10/.R,+O<

Второй вариант:

('&%:9]!~}|z2Vxwv-,POqponl$Hjig%eB@@>}=<M:9wv6WsU2T|nm-,jcL(I&%$#"`CB]V?Tx<uVtT`Rpo3NlF.Jh++FdbCBA@?]!~|4XzyTT43Qsqq(Lnmkj«Fhg${z@>

Если попытаться заменить любой символ в программе она перестает работать. Прична скрывается в шифровании, то есть любой символ входящий в программу шифруется с помощью формулы (m [c] + c-33)% 94, эту формулу нам предоставляет вики. Когда прогрма загружается в память, она просматривает каждый символ и если хотя бы один из них не является командой файл отключается. Для примера возьмем фрагмент из первого варианта программы:

(= <`: 9876Z4321UT.-Q + *)

Этот фрагмент равен:

jpp <ppppp <pppp << pp <ppp

Теперь подробнее. На входе в программу строка делится на символы каждый из них соответствует номеру в таблице ASCII, и именно этот номер играет решающую роль в шифровании данных, например: (= 40 (по коду ASCII), так что в формулу передается число 40 (напомню, нумерация всех символ начинается с 0): (40 + 0-33)% 94 = 0,07, остаток от деления используется как индекс в следующей строке:

+ b (29e * j1VMEKLyC}) 8 & m # ~ W> qxdRp0wkrUo [D7, XTcA „lI.v% {gJh4G \ — = O @ 5`_3i <? Z '; FNQuY] szf $! BS / | t: Pn6 ^ Ha

Под индексом 7 находится символ j. Операция шифрования проводится до окончания входного рядка.Дали согласно зашифрованного файла выполняется команда.

Отступление. Не все это вы прочтете в этой статье будет отвечать вики, так как я пишу с своих наблюдений и опыта.

Итак, вернемся к выполнению программы. Если таким методом зашифровать всю строку мы получим следующее:
Читать полностью »

Думаю, многие из нас писали код вида:

    @Override
    public boolean onTouch(View view, MotionEvent event) {
        final float x = event.getX();
        final float y = event.getY();
        // использование x и y...
        return false;
    }

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

Год назад я с друзьями разрабатывал приложение, где очень многое упиралось в обработку касаний. Однажды, загрузив новые исходники из репозитория и собрав приложение, я обнаружил, что вертикальная координата касания определяется неверно. Просматривая последние коммиты команды, я наткнулся на интересную строку, где внезапно от y-координаты отнималось 100. То есть, что-то вроде «y -= 100;», причем, это число не было вынесено как константа и вообще было непонятно почему именно 100. На мой очевидный вопрос я получил ответ «Ну, мы опытным путем определили, что в этом месте y-координата всегда на 100 (пикселей) больше, чем должна быть». Здесь, конечно, стоило бы перечитать документацию по обработке касаний и, просмотрев код проекта, найти ошибку, но я решил пойти более интересным путем – проследить по исходникам Android за MotionEvent от его получения до утилизации.

Если я смог кого-то заинтриговать историей в стиле «По следам полосатого бага» — добро пожаловать под кат.
Читать полностью »

jTap - tap event for jQuery

Привет, %username%!

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

На мой взгляд, самым значительным изобретением в мире веб-разработок, за последние несколько лет, стали CSS media queries — они позволяют организовывать внешний вид веб-приложения так, что он в корне может отличатся на разных разрешениях экрана. Любой форм-фактор девайса может иметь собственное представление дизайна и это прекрасно. Мы все это знаем, но речь пойдет не об этом, а о обработке событий…
Читать полностью »

О чем поговорим?
Доклад №1
Тема доклада: Python — технология не для коробочных решений!
Спикер: Алексей Радченко, Head of Office, MediaSapiens.co
Подробнее:Обзор библиотек готовых решений для типовых проектов на Python с использованием фрейморка Django

Доклад №2
Тема доклада: Почему стоит изучать новые языки? Философия разработки на PHP, Python и Ruby
Спикер: Андрей Зарубин, Founder, Anvil Eight
Подробнее: Андрей кратко расскажет о схожести и отличии этих языков, а также попытается сравнить три основных MVC фреймворка Symfony, Ruby on Rails и Django. В докладе также будет информация о функциональных моментах и способах реализации тех или иных возможностей, а также об особенностях философии и подходах, специфичных к тому или иному языку. Спикер поделится своим опытом и постарается объяснить почему выбрал именно Python.

Доклад №3
Тема доклада: Стек веб технологий Python за пределами мейнстрим решений
Спикер: Егор Назаркин, MediaSapiens.co
Подробнее: Иногда заданные требования не ложатся на решения, предлагаемые стандартными фреймворками. Сравнительный подход к реализации веб-сервиса, каким его видит Python разработчик на примере популярных full-stack фреймворков и их не столь известных аналогов.

Организационная информация
Дата: 15 августа 2013 года
Время: 19:00
Место: гостиница Харьков Палас (г. Харьков, пр. Правды, 2)
Сайт: www.techtalk.dev-pro.net

Контактная информация:
Лиза Горейко, Event Manager — Email: techtalk@dev-pro.net,
Skype: dev-pro.liza.goreiko
Галина Шакирова, HR Director — Email: techtalk@dev-pro.net,
Skype: dev-pro.galina.shakirova

Вход свободный, регистрация на сайте обязательна Читать полностью »

в 14:21, , рубрики: devpro, event, python, techtalk, метки: , ,

image

Что такое Tech Talk?

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

Организатором TechTalk выступает компания Dev-Pro.net

Мы организовали уже 3 мероприятия:

  • TechTalk #1 — .Net — 18 апреля, 2013
  • TechTalk #2 — Java — 16 мая, 2013
  • TechTalk #3 — PHP — 11 июля, 2013

Предстоящее событие будет посвященно Python — 15 августа, 2013 в «Харьков Палас»

Web-site: techtalk.dev-pro.net/
e-mail: techtalk@dev-pro.net

Связаться с нами:
Галина Шакирова — HR Director
+38 (063) 711-1508
Елизавета Горейко — Event Manager
+38 (093) 299-1617

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

Читать полностью »

В четверг, 12 сентября, при участии портала Айти-Событие.рф, в Петербурге стартует новый проект — Embedded Meetup.

Первый Embedded Meetup в Санкт Петербурге

Embedded Meetup — это регулярные встречи профессиональных разработчиков встраиваемых систем в неформальной обстановке. Основными составляющими являются доклады и networking.
Читать полностью »

Привет!
Новая встреча RADUG пройдет 10 июня в 20:30 в офисе Dream Industries, в Центральном Телеграфе по адресу Москва, ул. Тверская, 7. Ходят слухи, что Apple в этом году обещает транслировать Keynote WWDC, поэтому это отличный повод собраться и посмотреть его вместе на проекторе.

Будет круто обсудить iOS 7, OSX 10.9 и возможно AppleTV SDK. Если не будет live-трансляции, то как всегда откроем ленту The Verge. После Keynote можно будет пообщаться на кухне на небольшой afterparty.

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

Читать полностью »

24-26 мая в Санкт-Петербурге, при активной поддержке портала Айти-Событие.рф, пройдет HackDay#27 — хакатон, мероприятие, на котором вы сможете за 48 часов превратить свою идею в рабочий прототип и продемонстрировать ее широкой аудитории коллег, инвесторов, менторов и экспертов рынка.

HackDay#27 в Санкт Петербурге

Читать полностью »

Сегодня мы запускаем наш новый проект «Айти-Событие.рф» — это портал освещающий мероприятия в сфере информационных технологий, робототехники и телекома на территории России, Украины и Белоруссии.
Айти Событие.рф – все IT события Рунета!

Сейчас на сайте уже добавлено порядка 140 событий и каждый день мы публикуем ~5-10 новых.
К настоящему моменту мы реализовали практически весь задуманный базовый функционал сайта. Текущее состояние портала — бета-версия.
Читать полностью »

Всем привет!

Приглашаем всех на вторую встречу Kharkov AI Club, которую мы планируем провести в несколько необычном формате.

Сначала мы послушаем доклад Андрея Бабия “Машинное обучение. Распознавание рукописных цифр”. Доклад будет посвящен одному из методов машинного обучения распознаванию цифр. Для примера будет использовано одно из соревнований по интеллектуальному анализу данных сайта Kaggle www.kaggle.com/c/digit-recognizer. В докладе будут рассмотрены особенности подготовки данных, метод распознавания и идеи по его улучшению.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js