Pull to refresh
34
0
Вербицкий Виктор @vektory79

Java разработчик

Send message

Новый релиз: серверная версия 3CX WebMeeting

Reading time2 min
Views3.1K
Команда 3CX, разработчик IP-PBX 3CX Phone System for Windows рада представить новый релиз: серверную, размещаемую в сети организации, систему веб конференций 3CX WebMeeting Server.

3CX WebMeeting Server — это довольно доступное и простое решение, основанное на открытых стандартах. Фокус 3CX WebMeeting — небольшие компании, которые теперь могу создавать видеоконференции высокого разрешения, которые будут доступны каждому сотруднику. Одна система 3CX WebMeeting позволяет также проводить глобальные конференции, объединяющие сотрудников и клиентов по всему миру. Для компаний с повышенными требованиями к безопасности гарантируется полный контроль над своей сетью и данными.

image
Расскажем и про другие особенности продукта:
Читать дальше →
Total votes 11: ↑9 and ↓2+7
Comments1

Java EE, JCA и jNode 2.X announce

Reading time12 min
Views11K

Доброго времени суток, %username%.
Скажу сразу, на 99% данный пост про Java EE Connector Architecture, с примерами кода. Откуда взялся 1% про Fidonet вы поймете в самом конце.

Резюме для ленивых
JMS и JCA — родственники, входящие принимает MessageDrivenBean, исходящие отправляются через ConnectionFactory.
Минимальный пакет для входящего соединения — 4 класса, для исходящего — 8 классов и настройка адаптера на стороне сервера приложений.
Дальше — только подробности и боль


Для начала — история вопроса и решение бизнес-задачи.

Постановка задачи


Мне поставили задачу об интеграции существующей бизнес-системы («система А» ) с другой системой, которая была разработана много лет назад и понимает только собственный протокол передачи данных («система B»). Модифицировать чужие системы нельзя, соответственно задача свелась к написанию некой шины/прокси. Интеграция состоит в передаче туда-сюда сообщений с конвертацией их в процессе из одного формата в другой.

Система «А» имела много современных механизмов интеграции, самым простым для использования были признаны веб-сервисы. Под это дело был оперативно запилен стандартный интеграционный скелет для JEE — JAX-WS+EJB+JMS для гарантированной доставки сообщения.
А вот для работы с системой «B» стандартных средств не было. Робкие попытки поработать с сетью из контекста EJB успехом не увенчались, гугл подсказал два варианта решения проблемы: костылить сервлеты для работы с non-http или написать JCA-адаптер. Понятно, что был выбран второй путь — с JCA я до этого не работал, а узнать что-то новое всегда интересно.
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments5

Невероятные нарко-субмарины из Колумбии

Reading time3 min
Views64K
Неделю назад я познакомил вас с невероятными нарко-танками, но если вы считаете, что это был верх инженерного гения картелей, то я вас разочарую. Встречайте! Нарко-субмарины прямиком из тропической Колумбии! И если вы думаете, что это плавающие ведра — вы ошибаетесь. Кокаин, или желание его продать в США, творит чудеса.

image
Читать дальше →
Total votes 84: ↑79 and ↓5+74
Comments38

Руководство по госзакупкам ПО с открытым исходным кодом

Reading time6 min
Views3.2K


Это название документа, который создан в результате исследования, заказанного Евросоюзом. Ссылку на этот документ в формате PDF я нашёл в блоге у Ивана Бегтина (того самого, который открыл п0дмену букв на российском сайте госзакупок)

Я загорелся идеей перевести этот документ на русский, чтобы было чем тыкать в лицо господам чиновникам, которые закупают тривиальное ПО на 1 млн. баксов, например. Т.е. чтобы на вопрос «о чём вообще речь?» можно было давать ссылку на этот документ.

Но, будучи человеком достаточно ленивым, сразу понял, что переводить PDF, сохраняя форматирование, будет для меня непосильной задачей. Поэтому написал в организацию, которая проводила исследование (OSOR.eu), письмо с просьбой переслать мне документ в ODT. Почему в ODT — потому что в метаданных PDF было указано, что он экспортирован из ОО.

В общем, переписка длилась порядка 2 недель, и я всё-таки добился своего. Не знаю, каким образом, но документ этот они нашли и переслали мне.

Документ достаточно большой (88 страниц на русском языке), поэтому решил написать пост с кратким рефератом + рассказать об инструменте, который использовал для более-менее удобного перевода документа в ODT на русский с сохранением форматирования.
Читать дальше →
Total votes 95: ↑90 and ↓5+85
Comments40

MathMl в HTML5

Reading time4 min
Views38K
До выхода HTML5 использование формул было сущим наказанием. Судите сами: в 2005-м необходимо было иметь под рукой либо специальный браузер, либо разбивать текст на собственно HTML и вставки из изображений или PDF. Поиск и прочие операции редактирования и/или вывода на экран/бумагу был неоднозначной задачей, коей посвящались целые монографии.

В 2012-м было уже попроще. Появилась возможность подключать необходимые плагины (Firemath для FireFox и Daum Equation Editor для Chrome). Но неоднозначность стандартов (и поддержки) фактически заставляла писать одну и ту же статью для каждого из браузеров (и для их версий). Или встречать пользователей волшебным приветствием «Ваш браузер надо обновить/дополнить расширением».

Неудобно? — Да! Отнимало много времени на поиск универсального решения? — Да! Заставляет думать о том, какой тип записи лучше (презентационный или содержательный), каким конвертером пользоваться (а их только общеизвестных с десятка полтора)? — ДА! ДА! ДА!

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

Теперь, с приходом HTML5, все стало намного проще. В нем появился новый контейнер <math>.
Каждый допустимый экземпляр MathML должен быть внутри этого контейнера.
Он не допускает вложений, но внутри может быть произвольное число других дочерних элементов.
Читать дальше →
Total votes 19: ↑16 and ↓3+13
Comments24

Firefox 38 сообщит о тормозящих расширениях

Reading time1 min
Views7.2K
Mozilla планирует интегрировать в Firefox функцию уведомления о расширениях, которые замедляют работу браузера, примерно так же, как это сделано в Internet Explorer. Фича уже появилась в альфа-версии Nightly, и если всё пойдёт удачно, перекочует в стабильный релиз Firefox 38.



Работает она следующим образом. Если расширение превышает установленный лимит потребляемых ресурсов, то появляется предупреждение с тремя вариантами: отключить расширение, игнорировать в этот раз или игнорировать постоянно.
Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments17

Selenium для Python. Глава 4. Поиск элементов

Reading time7 min
Views319K
Продолжение перевода неофициальной документации Selenium для Python.
Перевод сделан с разрешения автора Baiju Muthukadan.
Оригинал можно найти здесь.

Содержание:


1. Установка
2. Первые Шаги
3. Навигация
4. Поиск Элементов
5. Ожидания
6. Объекты Страницы
7. WebDriver API
8. Приложение: Часто Задаваемые Вопросы
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments6

Восстанавливаем локальные и доменные пароли из hiberfil.sys

Reading time2 min
Views111K
Утилита mimikatz, позволяющая извлекать учётные данные Windows из LSA в открытом виде, существует с 2012 года, однако помимо хорошо освещённого функционала восстановления паролей из памяти работающей ОС у неё есть ещё одна довольно интересная возможность. Далее я приведу пошаговую инструкцию, как при помощи нехитрых действий извлечь учётные данные из файла hiberfil.sys.

Подготовка


Для осуществления задуманного нам понадобятся следующие утилиты:
Читать дальше →
Total votes 74: ↑73 and ↓1+72
Comments60

GPU Particles с использованием Compute и Geometry шейдеров

Reading time10 min
Views54K
Привет, дорогой читатель!

Сегодня мы продолжим изучение графического конвейера, и я расскажу о таких замечательных вещах, как Compute Shader и Geometry Shader на примере создания системы на 1000000+ частиц, которые в свою очередь являются не точками, а квадратами (billboard quads) и имеют свою текстуру. Другими словами, мы выведем 2000000+ текстурированных треугольников при FPS > 100 (на бюджетной видеокарте GeForce 550 Ti).


Читать дальше →
Total votes 63: ↑62 and ↓1+61
Comments44

Разработка на Java и OpenCL: Дорога в облака

Reading time5 min
Views10K


В статье рассматривается использование платформы Java для разработки совместно с OpenCL, преимущества и недостатки этого подхода. Сочетание этих технологий в разработке ПО в перспективе позволит использовать всю мощь облачных вычислений и OpenCL
Читать дальше →
Total votes 16: ↑12 and ↓4+8
Comments13

Normal-oriented Hemisphere SSAO для чайников

Reading time8 min
Views33K
Привет, хабрапользователь! После небольшого перерыва можно опять браться за трехмерную графику. В этот раз мы поговорим о таком алгоритме глобального затенения, как Normal-oriented Hemisphere SSAO. Интересно? Под кат!

image
Читать дальше →
Total votes 56: ↑55 and ↓1+54
Comments7

Обама поддерживает британского премьера: «чёрные ходы» в шифровании необходимы

Reading time2 min
Views16K


На прошлой неделе я писал о планах британского премьера Кэмерона по запрету средств шифрования, не имеющих «чёрных ходов», которыми могли бы воспользоваться спецслужбы. А вот теперь и президент Обама официально объявил о том, что он придерживается той же позиции. Выступая с речью по поводу необходимости повышения кибербезопасности своей страны, он сказал: «Если мы находим доказательства террористического сговора, и не можем, несмотря на наличие телефонного номера, адреса в соц.сетях или емейла, проникнуть [в переписку и разговоры]… Это проблема». Президент также добавил, что верит в патриотизм работников Кремниевой долины и в то, что они пойдут навстречу подобным требованиям со стороны государства и спецслужб. Об это пишет Wall Street Journal.
Читать дальше →
Total votes 52: ↑47 and ↓5+42
Comments116

Новости об «Ангаре» на «Морском старте» — почему это важно?

Reading time6 min
Views20K


На этой неделе не очень замеченными прошли новости о рассмотрении в российской космической отрасли идеи использовать ракету-носитель «Ангара А-5» для замены «Зенита-3SL» на проекте «Морской старт». Они отражали непростой процесс обсуждения идеи. Первыми прошли сообщения о том, что эта идея обсуждается. Затем появилась информация, что генеральный конструктор «Ангары» заявил о нецелесообразности этой идеи. Новостей об итоговом решении пока не появилось, попробуем разобраться сами в достоинствах и недостатках этой идеи.
Читать дальше →
Total votes 53: ↑50 and ↓3+47
Comments56

Запросы задач Redmine. Как мы их усовершенствовали и как используем

Reading time3 min
Views13K

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

Cтолкнувшись с использованием Redmine в качестве единой информационной среды в компании, мы пришли к выводу, что стандартный функционал запросов использовать не совсем удобно.

Первая причина – это большое общее количество запросов.
Читать дальше →
Total votes 4: ↑4 and ↓0+4
Comments1

Google закроет Earth API

Reading time1 min
Views23K
Поисковый гигант в официальном блоге Google Geo Developers объявил, что 12 декабря 2015 года поддержка Google Earth API будет прекращена. В отличие от хорошо известных прецедентов закрытия популярных сервисов, таких как Google Reader или Google News, программа Google Earth (и веб-версия и десктопный клиент) останется, а сама причина закрытия имеет технический характер.
Узнать подробности
Total votes 18: ↑16 and ↓2+14
Comments16

Как растаращить class-файл

Reading time4 min
Views44K
Обычно при компиляции Java-файла получаются .class-файлы примерно того же размера, что и исходник. Меня заинтересовало, можно ли по небольшому исходнику сделать .class-файл, который больше, сильно больше исходника.

Можно поискать какие-то короткие конструкции языка, которые компилируются в длинные цепочки байткода, но линейный прирост меня не устраивал. Я сразу подумал про компиляцию finally-блоков: про неё уже писали на Хабре. Если вкратце, то для каждого finally-блока при непустом try-блоке создаётся минимум два варианта в байткоде: для случая нормального завершения try-блока и для случая завершения с исключением. В последнем случае исключение сохраняется в новую локальную переменную, выполняется код finally, затем исключение достаётся из локальной переменной и перебрасывается. А что если внутри finally снова разместить try-finally и так далее? Результат превзошёл все ожидания.
Читать дальше →
Total votes 111: ↑106 and ↓5+101
Comments63

Физики открыли революционный способ получения водорода из воздуха с помощью графена

Reading time2 min
Views30K


Андрей Гейм со своей командой физиков нашёл новый революционный способ получения водорода из воздуха при помощи графена — об этом сообщает журнал Nature Оказалось, что при определённых условиях графен пропускает положительно заряженные ионы водорода (т.е. протоны), и задерживает практически всё остальное. Фактически, графен можно использовать в качестве мембраны для фильтрации атомов водорода. Скомбинировав эту технологию с водородными топливными ячейками, можно получить экологичный источник энергии, что будет являться прорывом, сравнимым с расщеплением ядра. Марсело Лозада-Идальго, коллега Гейма по исследованию, рассказал в комментариях к их работе: “Мы крайне обрадованы результатом исследования, поскольку оно открывает новые возможности в применениях графена в областях «зелёной» энергетики и технологий, основанных на применении водорода”.
Читать дальше →
Total votes 26: ↑23 and ↓3+20
Comments23

10 возможностей быть продуктивнее с Eclipse для Java разработчиков

Reading time4 min
Views64K


Многие из вас знают, как эффективно повышает производительность использование горячих клавиш, шаблонов кода и очень клёвой строки поиска (Quick Access), но я бы хотел рассказать о десяти возможностях, которые знают не все.
Стать продуктивнее
Total votes 33: ↑27 and ↓6+21
Comments30

VPN в каждый дом

Reading time1 min
Views189K


Всем привет! Желание сделать VPN сервер максимально простым в установке и удобным в использовании назревало уже давно. За основу я взял L2TP/IPsec, эта технология нативно поддерживается всеми устройствами и в отличии от PPTP не вызывает проблем при подключении через сотовых операторов.

tl;dr
Для установки нам потребуется машинка с Ubuntu 14.04 на борту и «белым» IP-адресом, любой VPS подойдет. Достаточно ввести эту волшебную строчку:
 curl -sS https://raw.githubusercontent.com/sockeye44/instavpn/master/instavpn.sh | sudo bash 

и через несколько минут у вас будет рабочий VPN с управлением через браузер (httр://ip-address:8080/) или консоль (instavpn -h).
Читать дальше →
Total votes 88: ↑77 and ↓11+66
Comments245

Краткая инструкция: GitHub через I2P

Reading time1 min
Views35K
Навеяно публикацией «Github опять заблокирован».

Новость о блокировке гитхаба заставила задуматься об изготовлении костылей.

Почему-то сразу пришла в голову мысль об I2P.

И это действительно оказалось несложно.
Читать дальше →
Total votes 60: ↑56 and ↓4+52
Comments42

Information

Rating
4,337-th
Location
Рыбинск, Ярославская обл., Россия
Works in
Date of birth
Registered
Activity