Pull to refresh
41
0
Роман @WNeZRoS

Разработчик

Send message

Оповещение о новых письмах в Gmail по SMS средствами Google Calendar + Google Apps Script

Reading time4 min
Views114K
Увы, но этот способ перестанет работать с 27-го июня 2015, т.к. Google отключает функцию sms-оповещений для календаря.
support.google.com/calendar/answer/45351?hl=ru

Важно! SMS-оповещения будут отключены 27 июня
С 27 июня 2015 года вы больше не будете получать SMS-оповещения от Google Календаря. Функция SMS-оповещений была внедрена ещё до широкого распространения смартфонов. Однако современные мобильные устройства позволяют получать оповещения в более удобном формате и даже в офлайн-режиме.
Для просмотра оповещений вы можете использовать приложение календаря, которое было установлено на смартфоне по умолчанию, либо скачать Google Календарь для Android или iPhone. Подробнее об оповещениях…
Примечание. Это изменение не коснется пользователей Google Apps for Work, Education и Government.




Хочу поделиться с Харбра-обществом полезным, с моей точки зрения, лайвхаком: уведомления по SMS о новой почте в ящике Gmail. Реализуется это небольшим скриптом, который живет и работает в Google Drive (бывшие Google Docs).

Принцип работы следующий: скрипт по таймеру проверяет папку «Входящие» в почтовом ящике и если обнаруживает новые письма, то создает в google calendar событие с именем, как тема письма, и включает для него SMS уведомление. В результате вам приходит SMS сообщение следующего содержания:

Напоминание: Тема письма @ дата и время

Подробности реализации, как всегда, под «катом».
Подробности
Total votes 102: ↑98 and ↓4+94
Comments72

Android UI конструктор в IntelliJ IDEA 12

Reading time1 min
Views12K
Случилось то, чего долго ждали Android-разработчики, работающие в IntelliJ IDEA. C 12 Версии появится полноценный конструктор интерфейсов.

Вот что принесет нам обновление ветки Community Edition:
  1. Добавление нового элемента в один клик.
  2. Перемещение, удаление, копирование и вставка элементов на лэйауте.
  3. Мощный редактор позволит редактировать свойства любого количества выбранных компонентов. Можно также скрыть ненужные свойства.
  4. Компонент Дерево, которое показывает иерархию элементов.
  5. Палитра всех элементов, которые поддерживаются Android SDK.
  6. Поддержка всех возможных макетов пользовательского интерфейса, FrameLayout, LinearLayout, GridLayout и т.д.
  7. Поддержка ресурсов в редакторе свойств.
  8. Мгновенное переключение между несколькими профилями устройств.

Под катом видео
Total votes 58: ↑56 and ↓2+54
Comments39

OpenGL — это просто!

Reading time2 min
Views18K
В рамках «Недели разработки для Андроид» решил поделиться кое-чем из своего опыта.
Итак, за что мы любим эти маленькие шустрые гаджеты, живущие в наших карманах и сумках? Не ошибусь, если поставлю на первое место красивую разноцветную графику. В этом нет ничего постыдного — ведь даже мудрые вожди индейских племен готовы были на что угодно ради красивых стекляшек для своей скво.
Итак, нам просто до дрожи в руках хочется написать свою прекрасную шедевральную игру, готовую произвести революцию в умах геймеров. Вот только маленькая неприятность — попытка напрямую воспользоваться drawRGB() и иже с ними сразу обламывает все мечты, ибо подобным образом написанная игра сможет получить признание разве что в Эстонии, да и то если раунд закончится раньше, чем сядет батарейка.
Читать дальше →
Total votes 53: ↑40 and ↓13+27
Comments16

Руководство по оформлению HTML/CSS кода от Google

Reading time12 min
Views355K

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


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

Введение


Это руководство описывает правила для оформления и форматирования HTML и CSS кода. Его цель — повысить качество кода и облегчить совместную работу и поддержку инфраструктуры.

Это относится к рабочим версиям файлов использующих HTML, CSS и GSS

Разрешается использовать любые инструменты для минификации компиляции или обфускации кода, при условии, что общее качество кода будет сохранено.
Читать дальше →
Total votes 295: ↑286 and ↓9+277
Comments168

Используем Last.fm API с помощью C#

Reading time5 min
Views7.6K
Приветствую Вас, Хабралюди!

В этом посте я рассказал о своей программе для скробблинга треков на Last.fm. Теперь я хочу рассказать Вам, как на языке C# наладить взаимодействие с Last.fm API на примере скробблинга трека.
Читать дальше →
Total votes 14: ↑10 and ↓4+6
Comments13

Пишем плагины для Android

Reading time4 min
Views7.2K
По долгу службы мне уже полтора года доводится писать для платформы Android, и вроде бы знания мои в данной области обширны, но и на хабре объем уже охваченных тем не мал. В общем-то после долгих рассуждений решил я поведать хабралюдям о данной теме.
Читать дальше →
Total votes 33: ↑31 and ↓2+29
Comments6

Снова о раскрытии IP-адреса собеседника в Skype

Reading time2 min
Views62K
Подготовил видео демонстрацию возможности раскрытия IP-адреса собеседника через Skype.


UPD: много вопросов на тему чем отличается данная статья от этой или вот этой.

Отвечаю:
1. Там речь шла только о звонке. Я показал, что в определённой ситуации можно раскрыть и без звонка, через чат.
2. Там была только теория. А здесь видео демонстрация.

Предыстория



А началось всё с прочтения вот этой статьи.

Цитата из статьи:

«Skype, оказывается, в большинстве случаев напрямую соединяется с собеседником.»

Но никаких доказательств этого приведено не было. Меня это сильно заинтересовало. И я провёл первые предварительные тестирования.

После чего обнаружилось, что многие люди не владеют достаточными знаниями относительно этой ситуации, но вовсю готовы хвастать своими сомнительными знаниями. Дальнейшие комментарии на эту тему тому подтверждение. Кто-то считал, что нужно смотреть UDP сокеты (хотя в статье автор использовал программу cports для просмотра TCP соединений). Ещё мнения были, что выяснить IP-адрес собеседника можно только в случае, если у него выделенный IP, а в случае использования NAT это невозможно. Третьи говорили, что можно только адрес супернода выявить, поэтому автор статьи злоумышленника не вычислил и т.д.

Поэтому я решил внести ясность в ситуацию.

Читать дальше →
Total votes 119: ↑86 and ↓33+53
Comments76

Демоны на PHP

Reading time4 min
Views75K
Памятка начинающему экзорцисту.

Прежде, чем начать: я знаю, что такое phpDaemon и System_Daemon. Я читал статьи по этой тематике, и на хабре тоже.

Итак, предположим, что вы уже определились, что вам нужен именно демон. Что он должен уметь?
  • Запускаться из консоли и отвязываться от неё
  • Всю информацию писать в логи, ничего не выводить в консоль
  • Уметь плодить дочерние процессы и контролировать их
  • Выполнять поставленную задачу
  • Корректно завершать работу

Отвязываемся от консоли


// Создаем дочерний процесс
// весь код после pcntl_fork() будет выполняться двумя процессами: родительским и дочерним
$child_pid = pcntl_fork();
if ($child_pid) {
    // Выходим из родительского, привязанного к консоли, процесса
    exit();
}
// Делаем основным процессом дочерний.
posix_setsid();

// Дальнейший код выполнится только дочерним процессом, который уже отвязан от консоли

Читать дальше →
Total votes 188: ↑167 and ↓21+146
Comments125

Пишем примитивный и никому не нужный компилятор

Reading time9 min
Views170K
Я считаю, что каждый программист должен написать свой компилятор.

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

В посте мы рассмотрим, как можно написать свой компилятор C-подобного языка меньше чем за час, исписав всего 300 строчек кода. В качестве бонуса, сюда входит и код виртуальной машины, в байткод которой будет компилироваться исходник.
Читать дальше →
Total votes 247: ↑231 and ↓16+215
Comments67

Список ресурсов для изучения Ассемблера

Reading time4 min
Views434K
Доброго времени суток!
Некоторым программистам иногда приходит в голову мысль «а не изучить ли мне ассемблер?». Ведь на нем пишут самые (с некоторыми оговорками) маленькие и быстрые программы, да и охота ощутить вкус низкоуровневого программирования берет свое. Ну и для общего развития не повредит.
Мысль эта не обошла стороной и меня. Вдохновившись историей одного байта, я ринулся в бой…

… но оказалось, что найти материал по интересующей теме не так просто, как хотелось бы. Посему решено было создать на хабре пополняющийся пост-индекс статей/книг/мануалов/etc. об этом, несомненно, великом языке.
Под катом находится, собственно, список с краткими комментариями, разбитый по категориям.

UPD
В список начали добавляться ресурсы по программингу микроконтроллеров.
Читать дальше →
Total votes 135: ↑130 and ↓5+125
Comments46

Некоторые возможности использования Intent'ов

Reading time6 min
Views67K

Введение


Объекты типа Intent могут быть использованы для общения между отдельными частями Android приложения, либо между различными приложениями системы. Мощь механизма интентов заключается в том, что с его помощью можно обращаться к любому установленному в системе приложению. Это позволяет повторно использовать некоторые компоненты и значительно сократить время на разработку.

В этой статье я покажу некоторые возможности использования класса Intent для обращения к системным приложениям.
Читать дальше →
Total votes 76: ↑73 and ↓3+70
Comments18

Android: измерение скорости и расстояния с помощью акселерометра

Reading time6 min
Views70K
С тех пор, как у меня появился гуглофон, периодически бродят в голове мысли «а что бы такого забавного сделать с этим самым телефоном?» Поиграв в игрушки с управлением акселерометром, подумал — а что еще можно с помощью этого датчика сотворить? Конечно же, измерить ускорение! И, как следствие, вычислить скорость и пройденный путь. Разумеется, использование лишь акселерометра накладывает ряд ограничений на измеряемое: во-первых, движение должно быть прямолинейное, во-вторых — ориентация аппарата в пространстве не должна меняться, в третьих — желательно откалибровать датчик перед стартом измерения. Сразу скажу — есть способы смягчить эти требования, но об этом потом.

Главный вопрос, как обычно, «зачем?». Зачем это, если есть GPS? Что ж, верное замечание. Однако, GPS работает не везде, а акселерометр — он с собой в телефоне. Например, пробовали поймать спутники в метро?..

С «Зачем» разобрались, переходим к «Как»…
Читать дальше →
Total votes 51: ↑37 and ↓14+23
Comments36

Создание QuickAction диалогов в Android

Reading time8 min
Views8K
О том как написать Хеллоу Ворлд в интернете полным полно, так что я решил рассказать о более интересных вещах. Официальное приложение Twitter для Android использует паттерны и возможности графического интерфейса появившиеся в последних версиях sdk, такие как Dashboard, Search Bar, QuickAction и Action Bar. Диалог QuickAction является одной из самых интересных новинок, он отображает контекстное действия для данного элемента ListView. Этот диалог используется также в приложении контактов, начиная с версии 2.0
Читать дальше →
Total votes 64: ↑55 and ↓9+46
Comments13

Основные UI паттерны разработки Android приложений

Reading time3 min
Views26K
Поскольку разработка приложений под Android набирает популярность, думаю обзор основных UI паттернов для Android-приложений будет кому-то полезен. Основой для статьи является вот этот вот источник. Рассматриваемые паттерны: Dashboard, Action Bar, Quick Actions, Search Bar и Companion Widget.
Читать дальше →
Total votes 52: ↑45 and ↓7+38
Comments15

Кастомизация виджета Action Bar

Reading time4 min
Views28K
imageСтатья является переводом топика из блога android-developers. В ней показывается, как стилизовать виджет Action Bar нужным вам образом. В качестве примера рассматривается изменение оформления виджета под общую цветовую гамму вышеописанного блога.
Читать дальше →
Total votes 34: ↑31 and ↓3+28
Comments29

Android UI Patterns: Dashboard

Reading time6 min
Views12K
imageПосле моей недавней статьи несколько человек поинтересовались в личке как сделать Dashboard. Dashboard является одним из основных UI паттернов для Android, подробней о которых Вы можете прочесть здесь. Поиск по хабру подсказал как можно реализовать QuickAction диалоги и ActionBar. В этой статье я расскажу как легко сделать свой Dashboard.
Читать дальше →
Total votes 45: ↑40 and ↓5+35
Comments9

Ассемблер для начинающих

Reading time3 min
Views197K
В любом деле главное — начать. Или вот еще хорошая поговорка: «Начало — половина дела». Но иногда даже не знаешь как подступиться к интересующему вопросу. В связи с тем, что воспоминания мои еще свежи, спешу поделиться своими соображениями с интересующимися.

image

Скажу сразу, что лично я ассемблирую не под PC, а под микроконтроллеры. Но это не имеет большого значения, ибо (в отличие от микроконтроллеров AVR) система команд данных микроконтроллеров с PC крайне схожа. Да и, собственно говоря, ассемблер он и в Африке ассемблер.

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

Читать дальше →
Total votes 68: ↑48 and ↓20+28
Comments66

Топик якобы из песочницы

Reading time1 min
Views8K
Итак, кроме обычных топиков есть еще и топики из песочницы, при этом их можно публиковать с какой угодно кармой, так что можно опубликовать топик с кармой меньше нуля, для этого (далее на примере хрома): лезем в Developer Tools -> Element -> Search topic-type, меняем значение поля на sandbox и вуаля, топик якобы из песочницы, как подтверждение теории я публикую этот топик с кармой -4.

P.S. т.к. мне терять нечего то если меня забанят то пусть так и будет.

Я буду очень признателен администрации если бана не последует, т.к. я думаю что если на хабре несколько заминусованых технарей напишут пару тех. статей то это будет неплохо.
Total votes 764: ↑725 and ↓39+686
Comments179

Создаём шрифт, имитирующий ваш рукописный почерк

Reading time3 min
Views1.1M
Учащимся старших классов и студентам ВУЗов, зачастую, делая домашнюю работу, приходится выполнять большое количество письменных упражнений. Например, наш преподаватель по обществознанию каждый урок задает нам ДЗ, заключающееся в том, чтобы мы нашли материал в библиотеке или Интернете, и написали его от руки (только за это можно получить оценку «отлично»), даже если найденный материал будет верным, но распечатанный на компьютере, выше четвёрки не жди…

Исходя из всего вышесказанного, я пришёл к выводу: нужно сделать шрифт для компьютера, дублирующий мой почерк. На мой взгляд, сделал я его успешно. Родная мать не отличит, где я писал от руки, а где напечатал компьютер. Многим моим знакомым понравилась эта затея, и они стали расспрашивать меня, как я это всё сделал. И чтобы каждому по сто раз не объяснять, я решил написать эту статью – план выполнения работы с подробными комментариями.

Итак, в этой статье я расскажу вам, как сделать шрифт, имитирующий ваш почерк.
Читать дальше →
Total votes 152: ↑129 and ↓23+106
Comments142

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity

Specialization

Software Developer, Game Developer
Lead
C#
MVVM
WPF
Software development
C++
Game Development
AR and VR development
Code Optimization