Pull to refresh
78
0
Sayan Malakshinov @xtender

Oracle ACE, performance tuning and troubleshooting

Send message

Выбор технологии для разработки браузерных игр

Reading time4 min
Views12K

Описание задачи


В связи с сложившейся ситуацией с поддержкой (а точнее ее отсутствием) технологии Flash на iOS, меня попросили проверить возможность реализации игр с богатой графикой на “чистых” браузерных технологиях. Честно говоря, Flash далеко не самая моя любимая платформа (так как является закрытым продуктом Adobe, а не open source), что лишь добавило мне мотивации показать, что возможны хорошие результаты и без нее...
Читать дальше →
Total votes 61: ↑57 and ↓4+53
Comments54

Полнофункциональный RDP клиент — FreeRDP

Reading time3 min
Views421K
Не секрет, что в современном мире без продуктов Microsoft практически не обойтись. Однако во многих случаях получается так, что гораздо эффективней использовать на рабочих компьютерах системы на базе GNU/Linux, а не Windows. Это значительно упрощает администрирование и сокращает расходы, предоставляя при этом пользователям гораздо больше легкодоступного функционала. Но что делать с теми приложениями, которые работают только под Windows и которым нет подходящего аналога в мире Linux? Поскольку обычно таких приложений единицы (иначе просто нету смысла ставить Linux на рабочий компьютер), то разумным выбором может стать использование терминальных серверов, работающих под серверными ОС от Microsoft. Кроме того, Linux лучше всего подходит для любых тонких клиентов, поскольку адекватных версий Windows для них просто не существует.

В любом случае необходимо уметь подключаться к терминальным серверам Windows. Для этого в MS был разработан свой протокол удалённого рабочего стола — RDP. Однако до недавнего времени для Linux существовал единственный открытый клиент для работы с этим протоколом — rdesktop. К сожалению, его развитие давно остановилось, и он испытывает огромные трудности при взаимодействии с современными версиями Windows.

Но недавно тихо и незаметно проект rdesktop был форкнут, в результате чего на свет появился новый открытый RDP клиент — FreeRDP. Первый же релиз этой программы разом исправил большинство известных проблем rdesktop, и проект продолжает активно развиваться. Почему-то появление столь полезного приложение обошли вниманием, поэтому я и решил опубликовать этот пост, чтобы хоть как-то исправить эту ситуацию и рассказать всем о существовании нормального RDP клиента для Linux. Под катом — описание возможностей FreeRDP и немного про отличную графическую оболочку Remmina для него.

Читать дальше →
Total votes 93: ↑87 and ↓6+81
Comments75

Размышления о карме, рейтинге и коментариях. Мой хабрасуицид

Reading time6 min
Views1.4K
Вот уже пару лет читаю хабр. Почти полтора месяца являюсь полноправным хабравчанином. И вот на днях я задумался: За что я ставлю плюсы? За что ставлю минусы? За что плюсую/минусую карму? Когда коментирую? Что мной движет? А как это делают другие? Почему? Стал наблюдать, спрашивать друзей и знакомых. У двоих знакомых спросил, почему ничего почти не пишут на хабре — у них шикарные статьи в собственных блогах. Постепенно стала вырисовываться картинка, на мой взгляд не очень радужная, но такова уж жизнь. Возможно эта статья — хабрасуицид. Если так и окажется — хочу сразу поблагодарить тех, кто писал дельные коментарии к моим топикам (их не так уж и много), а особенно Cryptochild, за то что прочёл мою статью в песочнице, поверил в меня и дал инвайт.

Вопросы, вопросы, ответов нет, но есть размышления. Может уважаемые хабраземляки смогут ответить на них, может хотя бы задумаются сами, а может кто-то что-то поменяет. Если хоть пара человек задумается — уже хорошо.

Итак:
Читать дальше →
Total votes 295: ↑190 and ↓105+85
Comments153

Обзор типов индексов Oracle, MySQL, PostgreSQL, MS SQL

Reading time6 min
Views196K
В одном из комментариев здесь была просьба рассказать подробнее об индексах, и так как, в рунете практически нет сводных данных о поддерживаемых индексах различных СУБД, в данном обзоре я рассмотрю, какие типы индексов поддерживаются в наиболее популярных СУБД
Взглянем?
Total votes 99: ↑96 and ↓3+93
Comments41

PHP модуль — это всё ещё просто. Часть вторая

Reading time7 min
Views6.1K
Пока nerezus сочиняет статью о встраивании PHP, я постараюсь продолжить его рассказ о написании расширений. Рассказано будет далеко не всё, поскольку я считаю, что сложность наращивать надо постепенно, иначе материал будет трудноусвояемым и совсем не питательным. В связи с этим я всё-таки не расскажу в этот раз, как подменить операторы в классе, кто захочет, может почитать исходники модуля Operator от Сары Големон — основного автора какой бы то ни было информации о разработке расширений PHP.
Поскольку разработку я веду исключительно в линуксе, то писать мы будем без всяких хитрых аддонов к Visual Studio, ручками, с нуля :) А что, лучше сразу разобраться, а потом уже упрощать свой труд.
Поехали?
Total votes 42: ↑36 and ↓6+30
Comments20

PHP Extension: тонкости

Reading time4 min
Views6.3K
Публикую топик, за который получил инвайт на Хабр =)

Давно подумывал поделиться опытом разработки расширений для PHP, но все время забывал =)
Сейчас, увидев хабратопик об основах создания расширений для PHP в VS2008, решил наконец это сделать.
Поскольку основы были изложены в этом топике, я сразу перейду к более тонким моментам.

Читать дальше →
Total votes 46: ↑37 and ↓9+28
Comments16

Oracle RAC. Общее описание / Часть 1

Reading time10 min
Views72K
Высоконагруженные сайты, доступность «5 nines». На заднем фоне (backend) куча обрабатываемой информации в базе данных. А что, если железо забарахлит, если вылетит какая-то давно не проявлявшаяся ошибка в ОС, упадет сетевой интерфейс? Что будет с доступностью информации? Из чистого любопытства я решил рассмотреть, какие решения вышеперечисленным проблемам предлагает Oracle. Последние версии, в отличие от Oracle 9i, называются Oracle 10g (или 11g), где g – означает «grid», распределенные вычисления. В основе распределенных вычислений «как ни крути» лежат кластера, и дополнительные технологии репликации данных (DataGuard, Streams). В этой статье в общих чертах описано, как устроен кластер на базе Oracle 10g. Называется он Real Application Cluster (RAC).

Статья не претендует на полноту и всеобъемлемость, также в ней исключены настройки (дабы не увеличивать в объеме). Смысл – просто дать представление о технологии RAC.

P.S. Beware of the многабукаф
Продолжение статьи

Читать дальше →
Total votes 55: ↑49 and ↓6+43
Comments10

Использование объектных представлений в СУБД Oracle

Reading time6 min
Views14K
imageВот уже более 10 лет существуют объектно-реляционные СУБД, постоянно усложняется структура хранимой информации, стандарт SQL учитывает вопросы сопряжения с объектно-ориентированными языками программирования, но, тем не менее, функционал обеспечивающий поддержку объектной парадигмы крайне редко используются в БД. Отчасти, это объясняется консерватизмом разработчиков, отсутствием развитых методологий проектирования объектно-реляционных БД и широким распространением ORM-средств. Тем не менее, существует ряд задач, где использование объектных возможностей самих БД может повысить производительность и гибкость системы.
Читать дальше →
Total votes 26: ↑25 and ↓1+24
Comments14

Житие компьютера на балконе

Reading time6 min
Views62K
image
Ниже описывается мой личный опыт более чем годичной эксплуатации на балконе специально собранного под непростые условия компьютера.
По возможности я стараюсь описывать как реальную получившуюся систему, с обязательным описанием каждого случая соударения виртуальных грабель с реальным лбом, так и способы обхода грабель, которые увы, зачастую поздно обходить имея готовое решение.
Читать дальше →
Total votes 166: ↑153 and ↓13+140
Comments165

Итоги конкурса «Место под солнцем для нового стартапа»

Reading time3 min
Views4.7K
image

В предыдущем посте были объявлены условия передачи уютного места под солнцем (на острове Ко Чанг в Таиланде) новому перспективному стартапу.

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

Как и было обещано, место передается новому перспективному стартапу. Победителем стал стартап MyInviter — веб-сервис для обмена инвайтами.

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

Читать дальше →
Total votes 41: ↑35 and ↓6+29
Comments59

Кому дома нужен такой прямой московский номер?

Reading time3 min
Views57K
Некоторое время назад на рынке появились услуги виртуальных телефонных номеров от компании «Skype».
Всё было бы неплохо, если бы не стоимость их услуг для частных лиц. Ну а уж, ловкости и пронырливости, подвязавшихся аналогичных компаний можно только позавидовать!
Герой нашего сегодняшнего разбора(обзора) -> тариф «Домашний» от компании Манго
Читать дальше →
Total votes 55: ↑39 and ↓16+23
Comments143

SIP телефония для дома — реализация, опыт, фишки

Reading time9 min
Views201K
Всем привет.

В комментариях к различным топикам на Хабре нередко видел вопросы класса «А зачем вам нужна SIP-телефония дома» и «Как все это безобразие работает». Некоторые темы на хабре уже раскрывались, но многое осталось в тени. Посему решил описать используемую мной схему SIP-устройств и сервисов, и набросать некоторые планы на будущее.

Просто повторять аксиому, что SIP – это далеко не только дешевые междугородние звонки через sipnet или других операторов я не буду, и постараюсь в данном топике раскрыть все многообразие возможных вариантов применения SIP в быту.
Читать дальше →
Total votes 107: ↑100 and ↓7+93
Comments122

Code Signing в Windows, просто и недорого

Reading time2 min
Views44K
Хотел бы рассказать тут о такой важной особенности разработки под Windows как Code Signing. А ведь многие достаточно серьёзные разработчики до сих пор ей не пользуются, и очень зря. Помимо того что при запуске вашего неподписанного приложения появляется противная красная иконка с крестом и неприятным текстом:
«Этот файл не имеет цифровой подписи которая может подтвердить производителя. Вы должны запускать программы только от производителей которым доверяете.»
Это ещё и пропуск на корпоративный рынок.
Читать дальше →
Total votes 50: ↑42 and ↓8+34
Comments86

Паттерн проектирования «Адаптер» / «Adapter»

Reading time6 min
Views95K
Почитать описание других паттернов.

Пожалуй, начнем.
Для начала, поясню несколько организационных вопросов.
  • Описание того или иного паттерна, является моей сугубо личной интерпретацией теоретического и практического материала, собранного из книг и интернет-статей;
  • При построении UML-диаграмм, я буду использовать свободный редактор от компании astah, ввиду его простоты и независимости от конкретного языка или среды. При этом, диаграммы не будут отличатся изобилием картинок и цветов, но будут ясно отображать суть паттерна;
  • При реализации практических примеров, язык программирования будет выбираться совершенно случайно. Однако, я буду стараться подбирать те языковые средства, на которых данный паттерн реализуется не тривиально;
  • Каждый мой пост, будет содержать как минимум 5 секций — Проблема, Описание патерна, Практическая задача, Диаграмма классов и Реализация;
  • Если Вы, с чем-то не согласны или у Вас есть дополнения к материалу, изложенному мной — я буду рад их почитать в комментариях. Однако, помните — я тоже изучаю паттерны вместе с Вами :)

Читать дальше →
Total votes 150: ↑126 and ↓24+102
Comments62

jQuery 1.3.x -> 1.4.x и JSON

Reading time1 min
Views3.6K
Это не пост, а скорее памятка для тех, кто столкнулся с проблемой ajax и json, при переходе на jQuery 1.4.
В новой версии используется встроенный парсинг JSON, а вместе с этим становится необходимо следить за его (json’a) правильностью.
Примеры, как делать не надо:

{ 'qwe' : 'asd' }
{ "qwe" : 'asd' }
{ qwe: "asd" }
{ qwe: 'asd' }

т. е. такие варианты теперь не проходят. Использовать надо только двойные кавычки!

{ "qwe" : "asd" }

Если же у вас нет возможности внести изменения в серверные скрипты, то на клиенте быстрый фикс можно сделать следующим образом:

$.ajax({
url: "/test.php",
dataType: "text",
success: function(data) {
json = eval("(" + data + ")");
// alert(json.success);
}
});

Возможно, кому-то окажется полезным. Всем спасибо, всем удачи!
Total votes 62: ↑52 and ↓10+42
Comments43

Дао Вебсервиса. (Или да хватит же изобретать велосипеды!)

Reading time12 min
Views58K
image Недавно на Хабре была опубликована статья под провокационным заголовком и призывом к прекращению изобретений велосипедов в API-строении. Поскольку тема мне интересна, то я просто не мог пройти мимо.
Увы, реальность за хабракатом меня сильно разочаровала — я увидел очередной велосипед, да еще и с квадратными колесами. (Коллеги, ничего личного, только техническое обсуждение.) Правда, авторы честно сказали, что увидели на нескольких сайтах модное слово REST и решили сделать по нему. Только вот поняли они этот «РЭСТ» по-своему, примерно как Дед Щукарь читал и понимал толковый словарь.
В этом топике я призываю по-настоящему покончить с велосипедами в API сайтов. Ведь получается какой анекдот: АПИ разрабатывается для упрощения доступа к сайту и легкости подключения внешних систем, а получается такой, что с ним еще сложнее, чем без него :)

Чуть ниже под катом я подпишу смертный приговор всем велосипедам в универсальных API. Чтобы не быть голословным, я все проиллюстрирую примерами.
Но должен предупредить сразу — после прочтения статьи вы не сможете без рвотного рефлекса смотреть на очередной велосипед Васи Пупкина под гордым названием «универсальное API сайта».

В повествовании будут рассмотрены следующие вопросы:
  1. Базовые технологии: XML-RPC, REST, SOAP и краткое сравнение
  2. Дао вебсервиса
  3. Просветленные API
  4. Как отличить сайтовое API от говна
  5. Выводы

Кто не испугался суровых реалий - вперед
Total votes 315: ↑289 and ↓26+263
Comments206

Создание расширения для Google Chrome

Reading time8 min
Views118K
Тема создания расширений достаточно хорошо раскрыта в сети, есть множество статей, документации на эту тему. Но я не нашел ни одного ресурса, который бы описал процесс создания расширения от начала до конца. Я собираюсь исправить эту ситуацию, и рассказать о том как создать расширение, как хранить, читать настройки, как добавить поддержку нескольких языков.

Для работы с расширениями вам понадобится переключить канал обновлений на Dev или Beta.
Читать дальше →
Total votes 98: ↑93 and ↓5+88
Comments28

Электронные сигареты

Reading time1 min
Views2.1K
Здравствуйте. Хабрлюди, мне нужна помощь. Уже столько лет с вами и никогда не просил, но сейчас нужна.

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

image

Все материалы, которые существуют сейчас на данную тему, основаны на слухах. Моя цель: действительно разобраться насколько это опасно. Или наоборот — полезно. Меня, повторюсь, эта темы интересует потому, что сам для себя хочу разобраться окончательно.

В общем, надеюсь на вашу помощь!
Total votes 173: ↑91 and ↓82+9
Comments99

Information

Rating
Does not participate
Date of birth
Registered
Activity