Jpoint-2013: впечатления о конференции
Посещение весенних конференций, посвященных языку Java, стало для меня уже традиционным. Вот и в этом году 5 апреля побывал на таком мероприятии. Правда, называлось оно не Java (Tech) Day, а Jpoint. Заметки о впечатлениях публикую с недельным опозданием, т.к. задержался в обратной дороге, но рассказать, конечно же, есть о чем.
Организатором мероприятия стала местная JUG, а не корпорация Oracle. Питерская группа поклонников Java в последние годы заметно активизировалась и устроила всё весьма прилично. Несколько удивило, что «золотым» спонсором мероприятия выступил сайт «Одноклассники», написанный, оказывается почти полностью на Java. Их представители выступили с несколькими интересными докладами, в основном касающимися высоконагруженных систем. (Таковым, кстати, будет посвящена отдельная конференция в конце апреля).
Я же прослушал следующие выступления:
( Читать дальше )
Организатором мероприятия стала местная JUG, а не корпорация Oracle. Питерская группа поклонников Java в последние годы заметно активизировалась и устроила всё весьма прилично. Несколько удивило, что «золотым» спонсором мероприятия выступил сайт «Одноклассники», написанный, оказывается почти полностью на Java. Их представители выступили с несколькими интересными докладами, в основном касающимися высоконагруженных систем. (Таковым, кстати, будет посвящена отдельная конференция в конце апреля).
Я же прослушал следующие выступления:
( Читать дальше )
Консольный проигрыватель для файлов flac
Использование консоли не исключает прослушивания музыки, причем порой не менее комфортного, чем в GUI-режиме. Широко известны, например программы mpg123, ogg123. А вот с форматом flac дела обстоят похуже. Нет для него толковы консольных проигрывателей. Хотя его поддерживают mplayer (он вполне себе консольный, если что), а также пакет ffmpeg, в состав которого входит, и плейер, это продукты очень громоздки. Чтобы не тратить на них ресурсы, я написал однострочник-алиас, опирающийся на стандартную утилиту кодирования/декодирования пакета flac.
Сижу уже минут 20 слушаю музыку, работает!
Запускать из директории, в которой находятся прослушиваемые файлы.
alias flac='ls -1 *.flac | while read l ; do flac -d -o - "$l" | aplay ; done'Сижу уже минут 20 слушаю музыку, работает!
Запускать из директории, в которой находятся прослушиваемые файлы.
Усилитель Интернета 2.0
Усилитель Интернета первой версии был создан в суровых походных условиях. Он на славу поработал, но обладал серьезными недостатками. Во-первых, созданный из подручных материалов, был он ненадежен. Того и гляди какой-нибудь проводок отвалится. Во-вторых, в собранном виде занимал много места, создавал путаницу из проводов. Поэтому, собираясь снова в дорогу, решил я смастерить устройство понадежнее.

Подробности под катом.
( Читать дальше )

Подробности под катом.
( Читать дальше )
Легковесный SpaceFM для GTK
Нашел интересный форк файлового менеджера pcmanfm — SpaceFM. Даже несмотря на наличие пакетов установка подразумевает сборку из исходников, зависимостей не слижком много, все установятся автоматически с пакетом. Есть поддержка GTK3, полная русификация и поддержка нескольких панелей.


Осторожно: фальшивый Яндекс
Продолжаются атаки на почтовые ящики, в число жертв которых я чуть было опять не попал: в очередной раз повелся на развод хакеров. Лишь в последний момент понял в чем дело и поменял пароль.
Ключевым звеном атаки является, как и прежде, социальная инженерия. Дело было так. Есть у нас сотрудница, по имени, допустим, Алиса. Она сейчас в командировке, это важно. Утром мы с ней обменялись парой служебных писем. Через 20-30 минут после того, как от нее пришло последнее письмо, мне в ящик падает еще одно, где отправителем снова значится Алиса. К письму приложены документы, судя по превью — командировочное удостоверение, какие-то счета и т.д.

Ну конечно, человек в другом городе, присылает какие-то документы, как не открыть. Щелкаем по превью, попадаем на страницу авторизации Яндекса.

А, перелогиниться, куки истекли? Святое дело. Только вот где же увеличенная картинка-документ? И что это за странный адрес в строке браузера? Да и Алиса-то, оказывается, не наша… Шухер! Срочно менять пароль!
На этот раз обошлось, но если бы хакеры были порасторопнее и первыми сменили пароль к моему ящику — пришлось бы с ним попрощаться. Да и не только с ним, а еще и с содержимым Яндекс-диска, заботливо собранной подборкой rss-подписок. А у меня это хозяйство, ни много ни мало, с 2001 года… Так что будьте бдительны.
Ключевым звеном атаки является, как и прежде, социальная инженерия. Дело было так. Есть у нас сотрудница, по имени, допустим, Алиса. Она сейчас в командировке, это важно. Утром мы с ней обменялись парой служебных писем. Через 20-30 минут после того, как от нее пришло последнее письмо, мне в ящик падает еще одно, где отправителем снова значится Алиса. К письму приложены документы, судя по превью — командировочное удостоверение, какие-то счета и т.д.

Ну конечно, человек в другом городе, присылает какие-то документы, как не открыть. Щелкаем по превью, попадаем на страницу авторизации Яндекса.

А, перелогиниться, куки истекли? Святое дело. Только вот где же увеличенная картинка-документ? И что это за странный адрес в строке браузера? Да и Алиса-то, оказывается, не наша… Шухер! Срочно менять пароль!
На этот раз обошлось, но если бы хакеры были порасторопнее и первыми сменили пароль к моему ящику — пришлось бы с ним попрощаться. Да и не только с ним, а еще и с содержимым Яндекс-диска, заботливо собранной подборкой rss-подписок. А у меня это хозяйство, ни много ни мало, с 2001 года… Так что будьте бдительны.
Slax 7: wifi в консольном режиме
О живом дистрибутиве Slax было сказано немало. Сейчас этот проект взяла на буксир какая-то GmbH и он обрел новое дыхание. С каждым релизом доработок напильником становится всё меньше (например, русификация теперь выполнена отлично). Запускать дистрибутив можно хоть в GUI (KDE) режиме, хоть в консольном. Persistemt mode, опять-таки, можно выбрать прямо из загрузчика. И все-таки кое-что подправить пришлось: если в графическом режиме wifi-соединение настраивается очень просто, то в консольном пришлось повозиться.
Вообще-то, я уже давно не боюсь настраивать wifi в консоли. На этот счет существует универсальный железобетонный рецепт, который еще никогда не подводил. И вот на тебе, на любимом, не перегруженном избыточным функционалом Slax'е способ не заработал. Чего я только не делал: менял драйвера, скачивал firmware, экспериментировал с настройками /etc/wpa_supplicant.conf — ничего не помогало.
Наконец, в одной статье мелькнуло, что причиной может стать два одновременно запущенных процесса wpa_supplicant. Проверил — так и есть. Точнее говоря я и раньше этот процесс видел, но считал его производным от своего. А тут понял, что запускает его какой-то системный демон. Но это еще не решение, т.к. убить этот посторонний процесс, работающий с совершенно неподходящими параметрами, никак не получалось, кто-то его упорно перезапускал. Перерыл все настроечные сетевые файлы — непонятно какойлеший демон запускает и всё тут. Наконец выяснил, что корень зла кроется в
Закомментировал в нем весь контент, перезагрузился — нет паразитного процесса, ура! Дальше дело техники: пишем в rc.local
Сеть есть, ip-адрес через dhcp получен.
Вообще-то, я уже давно не боюсь настраивать wifi в консоли. На этот счет существует универсальный железобетонный рецепт, который еще никогда не подводил. И вот на тебе, на любимом, не перегруженном избыточным функционалом Slax'е способ не заработал. Чего я только не делал: менял драйвера, скачивал firmware, экспериментировал с настройками /etc/wpa_supplicant.conf — ничего не помогало.
Наконец, в одной статье мелькнуло, что причиной может стать два одновременно запущенных процесса wpa_supplicant. Проверил — так и есть. Точнее говоря я и раньше этот процесс видел, но считал его производным от своего. А тут понял, что запускает его какой-то системный демон. Но это еще не решение, т.к. убить этот посторонний процесс, работающий с совершенно неподходящими параметрами, никак не получалось, кто-то его упорно перезапускал. Перерыл все настроечные сетевые файлы — непонятно какой
/etc/dbus-1/system.d/dbus-wpa_supplicant.confЗакомментировал в нем весь контент, перезагрузился — нет паразитного процесса, ура! Дальше дело техники: пишем в rc.local
wpa_supplicant -Dnl80211 -iwlan0 -c/etc/wpa_supplicant.conf 1>/dev/null 2>/dev/null &
Сеть есть, ip-адрес через dhcp получен.
- —
- 01 апреля 2013, 21:53
- комментировать
Книги по офтальмологии (на английском языке) 7
Итак, сегодня у нас очередная порция книг по офтальмологии (все на английском языке) — 23 штуки, 1Гб. Сначала идут обложки, внизу ссылка на торрент и список.
( Читать дальше )
( Читать дальше )
- —
- 29 марта 2013, 18:31
- комментировать
Встреча 29.03.2013
Итак, предлагаю по традиции ТК в 19-30!
Lua и Android
Прогаммирование для Android может и не сложнее, чем, скажем, просто написание программ на Java но требует соблюдения большого количества условностей: особая структура проекта, упаковка, отладка в эмуляторе. Всё это довольно трудоемко. Хочется же быстро попробовать, сразу увидеть результат. К сожалению, хотя в состав последних версий Android и входит JavaScript движок V8, написание программ на интерпретируемых языках для этой ОС требует, опять таки, дополнительных телодвижений. Есть, например, проект SL4A. Его используют приверженцы Python'a, но меня этот вариант не устраивает: JavaScript, на котором я интенсивно писал в последние месяцы, там поддерживается очень криво (через прокладку rhino, да и то не на всех прошивках).
Несколько лучше в SL4A обстоит дело с поддержкой скриптового языка lua, но тоже не блестяще (с 2010 года этот плагин не обновлялся и не стыкуется со свежей версией самого фреймворка). Но нет худа без добра. Ковыряясь с этим хозяйством я обнаружил, что lua очень похож на JS и освоить его быстро вполне себе можно. Есть даже фреймворк для lua-разработки прямо в мобильной среде — SigmaScript. Только вот возможности его, как мне показалось, весьма ограничены…
Среди массы проектов для программирования на lua под Android резко выделяется AndroLua. Автор этого довольно свежего проекта (код обновлялся 2 месяца назад) совершил как минимум два подвига. Во-первых, скомпилировал стандартный lua-движок в нативную андроидскую библиотеку, во-вторых, вкорячил в свое приложение еще и LuaJava — фреймворк для стыковки программ на lua и Java. Поскольку программы для Android как раз и работают в Java-среде (хотя и несколько специфической), это дает возможность обращаться практически ко всем возможностям ОС (точнее говоря API).
В AndroLua есть также возможность кодить не с экранной клавиатуры смартфона, а с нормальной, хардварной, подключенной к ПК. Это еще одна причина того, что я не стал делать ставку на SigmaScript, где такой возможности нет. Чтобы кодить в такой клиент-серверной среде нужно включить на мобильном устройстве режим отладки по сети, подключиться с ПК, пробросить порты, запустить на смартфоне AndroLua (она поднимает сервер-интерпретатор на порту 3333) и вводить команды прямо с консоли:
О том, что обращаться к Java-API Android-устройства действительно удается, свидетельствует скриншот:
Несколько лучше в SL4A обстоит дело с поддержкой скриптового языка lua, но тоже не блестяще (с 2010 года этот плагин не обновлялся и не стыкуется со свежей версией самого фреймворка). Но нет худа без добра. Ковыряясь с этим хозяйством я обнаружил, что lua очень похож на JS и освоить его быстро вполне себе можно. Есть даже фреймворк для lua-разработки прямо в мобильной среде — SigmaScript. Только вот возможности его, как мне показалось, весьма ограничены…
Среди массы проектов для программирования на lua под Android резко выделяется AndroLua. Автор этого довольно свежего проекта (код обновлялся 2 месяца назад) совершил как минимум два подвига. Во-первых, скомпилировал стандартный lua-движок в нативную андроидскую библиотеку, во-вторых, вкорячил в свое приложение еще и LuaJava — фреймворк для стыковки программ на lua и Java. Поскольку программы для Android как раз и работают в Java-среде (хотя и несколько специфической), это дает возможность обращаться практически ко всем возможностям ОС (точнее говоря API).
В AndroLua есть также возможность кодить не с экранной клавиатуры смартфона, а с нормальной, хардварной, подключенной к ПК. Это еще одна причина того, что я не стал делать ставку на SigmaScript, где такой возможности нет. Чтобы кодить в такой клиент-серверной среде нужно включить на мобильном устройстве режим отладки по сети, подключиться с ПК, пробросить порты, запустить на смартфоне AndroLua (она поднимает сервер-интерпретатор на порту 3333) и вводить команды прямо с консоли:
./adb connect 10.10.10.10
./adb forward tcp:3333 tcp:3333
lua interp.lua
О том, что обращаться к Java-API Android-устройства действительно удается, свидетельствует скриншот:
- —
- 28 марта 2013, 00:13
- комментировать

