Sherman [entries|friends|calendar]
Габайдулин "Sherman" Денис

[ website | все сразу ]
[ userinfo | livejournal userinfo ]
[ calendar | livejournal calendar ]

Первый публичный пример приложения на onPHP [11 Sep 2011|11:18pm]

onPHP in action.



I. onPHP - что это?

Это зрелый объектно-ориентированный framework для разработки web-приложений на php.

Кратко и тезисно перечислю основные достоинства onPHP, не вдаваясь в детали.
1. Быстрая разработка приложений.
2. Горизонтальная масштабируемость приложений.
3. Чрезвычайная гибкость. Настраивается все, начиная от того,
с какой СУБД работать и заканчивая стратегиями выборки данных и их кэширования.

Узнать больше )
55 | увеличить энтропию

onPHP Rocks :: unofficial FAQ [07 Jul 2011|07:09pm]
В последнее время, мне, в почту, jabber и жж приходят вопросы об onPHP. Сформулирую ответы, на некоторые, часто задаваемые вопросы.

Прочитать )
увеличить энтропию

[19 Nov 2009|02:59pm]
5 | увеличить энтропию

my way [14 Nov 2009|11:31pm]
Тут вот вчера вспомнили, что в одном из старших классов, несколько человек выиграло пятерку по физике в карты у молодого учителя-студента! Я вспомнил, как на его уроке произошла натуральная драка между учениками. Могу вспомнить еще факты из своего опыта. Целый год мы занимались в коридорах, потому что в школе шел затянувшийся ремонт. Ну а какие занятия могут быть в такой обстановке? Или вот еще. Наш учитель по географии был настоящим психом. Сейчас я бы с ним вообще общаться побоялся. Он ломал толстенную указку от злости. Спасибо, что не об голову. Понятно, что из такой школы надо было уходить.
... )
1 | увеличить энтропию

Важность "своего" проекта. [14 Nov 2009|05:18pm]
По стопам [info]zabivator решил подвести некоторые итоги того, чему я научился за этот год, разрабатывая свой проект.

1. Узнал как написать модуль для nginx(ну конечно любой модуль за пару дней я не сделаю, но опыт получил).
2. Поработал немного с boost. Написал простой http-сервер.
3. Изучил структуры данных для представления словарей(b-tree, hash-таблицы, trie).
4. Придумал лучший(?) способ распознавания моб. устройств по user agent.

И еще массу всякого разного: TDD, хранение больших объемов данных, обработка большого кол-ва логов, фундаментальные затыки php. Всего и не упомнишь.
18 | увеличить энтропию

[14 Nov 2009|01:17pm]
Вчера приятно сходил на встречу одноклассников. Кого-то не видел еще с 90-ых! Вообще, не люблю "смотреть назад". Лишние это эмоции - лишние. Девочки все так же хороши.
По старой русской традиции обсуждать успехи не принято. Купили квартиру. Ну да, молодцы. А Е...ов, Е...ов, спился, говорят. Да??? Ну да, я сама его видела, валяется на улице. Тема минут на двадцать.
Ну и конечно куда уж без "дискотеки 80-ых"(90-ых), которая у каждого своя, но в принципе, стала уже именем нарицательным :-)
А вообще, спасибо, что позвали.

p.s. Профиль в одноклассниках не восстановлю все равно.
увеличить энтропию

[13 Nov 2009|01:02pm]
21 собираюсь на Гарика в Олимпийский. Все ж таки 50 лет, может быть жгем в последний раз :-)
4 | увеличить энтропию

[13 Nov 2009|01:10am]
Жаль нету свободных денег.
4 | увеличить энтропию

[12 Nov 2009|06:15pm]
Автоматический changelog по новому тэгу:

PAGER="cat" && git rev-list --pretty=short "prevTag..newTag" | git shortlog


Удобно после выкладки рассылать такой всем участникам процесса, а то некоторые "забывают", что мы выложили новую версию.
увеличить энтропию

[10 Nov 2009|01:45pm]
Интересный концепт электроколяски для людей с ограниченными возможностями. На западе поди нечто подобное уже в серийном производстве?
1 | увеличить энтропию

[07 Nov 2009|01:07am]
После 75 кг сброс веса серьезно замедлился, хотя интенсивность тренировок не падает. Думаю, дело тут еще и в том, что зимой организм старается каждую колорию отложить прозапас. Сейчас вес достиг - 74 кг. Думаю сбросить еще 6-7 и далее добавить еще силовых тренировок примерно треть. Заниматься в кайф. Как-то втянулся. Правда приходиться делать перерыв 1-2 дня в неделю, потому что ощущаю, что суставы стали страдать. Сосед, в прошлом, профессиональный хоккеист, заверил, что ничего страшного пока нет, но коленочные суставы частенько стали предательски щелкать.
12 | увеличить энтропию

Потерянное поколение [26 Oct 2009|01:19am]
В последнее время ведется довольно много разговоров про "потерянное поколение". То есть про то самое поколение, которые сейчас находится в рассвете(25-35 лет) сил. Мне этот термин не нравится, но есть что сказать. Мы, друзья мои, с вами просрали все полимеры отдали страну. Это произошло незаметно и постепенно. Пока мы учились в институтах и осваивали модные профессии, у нас отобрали выборы, свободные сми и подняли уровень коррупции и беззакония до невиданных, даже по меркам 90-ых, высот. На кого же теперь пенять, как не на самих себя. Я всю свою жизнь просто прекрывался таким тезисом, что "надо делать свое дело и не лезть в эту грязную политику". Конечно, нам было не так легко. Я помню голодные 90-ые. Помню как по телевидению показывали бородачей с автоматами, которые говорили о том, что ни одного русского не должно быть до Ростова на Дону, помню ночные дежурства с соседями(когда взрывали дома), помню какие раньше были выборы, помню миллениум. Когда Медведев говорит, что "выборы ранее были больше похожи на шоу", я вспоминаю реальную политическую конкуренцию. И 96 год вспоминаю: Ельцина в битве против коммунистов(тогда коммунисты были еще не такими аморфными говнюками), и первое подобие секса в лагере отдыха на юге. А теперь мы потеряли все то, что было завоевано в конце 80-ых и начале 90-ых нашими отцами. И девиз нашего поколения: ну и х..й с ним!
3 | увеличить энтропию

[24 Oct 2009|11:23pm]
А что случилось-то? По ящику куда не ткни - кругом Тарантины с Родригесами. Город грехов, Убить Билла II, Доказательство смерти.
увеличить энтропию

wtf [18 Oct 2009|12:59am]
А вы говорите java: http://www.everfall.com/paste/id.php?cxqiuhvh5z72

Выдрал из таториала.
увеличить энтропию

Исаев [16 Oct 2009|11:55pm]
Каждый день ждал вечера и продолжения. Урсуляк делает удивительные сериалы, атмосферные. Полное погружение. А тут еще и более чем интересная тема России на изломе через призму судеб конкретных людей. В сущности, когда смотрел фильм, я все время думал о романе Пикуля "Честь имею". Но разница для меня в том, что в романе я симпотизировал главному герою, а здесь...графу Воронцову. Это конечно же не значит, что Исаева я считаю антигероем, просто он менее интересен мне в этой истории. Линия Воронцова меня тронула куда более. Все мудаки, которые вслед за первоисточником начали повторять мол рожей не вышел Пореченков видимо судят об истории по фильму Адмиралъ. Чисто внешне Михаил не походит на человека того времени только из-за своей комплекции(ну не было тогда такого питания для набора мышечной массы). Но во всем остальном, он невероятно точен. Сцена, когда он прогуливается по улице в Москве, незадолго перед "делом" очень хорошо показывает ту невероятную тоску надломленного русского офицера, дворянина, который еще пытается что-то сделать, но уже понимает, что ту Россию, которую он любил и за которую отдал бы жизнь, ее больше никогда не будет. Вот он идет по улице, а улица уже не та, город не тот, люди не те. И женщина, пусть проститутка, он хватается за нее - как за соломинку. Ради нее он еще хочет жить. Чекисты вышли вполне неплохо. А начальник ревтребунала, зачитывающий приговор в конце...именно таким я себе Крыленко и представлял, когда читал Солженицына. Песня на стихи Бродского отдельная тема.
На этой волне, решил перечитать мемуары Деникина.
Что же касается оригинального варианта(75 года), то фильм совершенно не понравился. Ну хотя бы сравнить Маковецкого, который играет русского интеллигента всякий раз виртуозно с Николаем Волковым. Маковецкий - это Энштейн, а Волков - учитель физики в школе. Или Екатерину Васильеву и Полину Агурееву. Я сравниваю, конечно же не актеров, а конкретные роли.
Короче, те кто не смотрел - посмотрите, хотя чтобы составить свое собственное мнение.
3 | увеличить энтропию

Highload субъективно. [13 Oct 2009|10:35pm]
Прежде всего скажу, что органиация была отменной. Все было продумано, учли прошлые недостатки.

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

В первый день мне лично, более всего был интересен доклад про TOP-100, хотя конкретики было маловато. Также порадовал доклад про почту РБК. "Почта Рамблера" откровенно разочаровала. Ну, во-первых, использовать legacy типа mysql 4.1 и гордиться этим - это по-моему жесть. Ну и протухший холиварный тезис про то, что orm говно и что perl - это круто. Скучно. А уж про самодельные патчи(тут подхачили, здесь). Я понимаю, конечно, что Рамблер может поддерживать даже свои версии ядер, наверное, но уверен, что можно было бы поступить по-другому. РБК же сделали свою файловую систему, фактически. Оправдан ли такой велосипед - не знаю, но идеи понравились.

Переводчик англоязычных докладов был технически неграмотен, и после того как он сказал, что сейчас будет рассказ про windows internals(а докладчик рассказывал про window functions) я снял "уши" и слушал английский вариант.

Вот, собственно и все, что мне запомнилось из первого дня. А!! Еще обнаженные девочки с шариками :-)

Второй же день начался со скучных докладов от компании Грамант. Темы заезжены, и ничего принципиально нового не придумали.

Потом был спорный доклад про то, что memcached - зло, а oracle и кэш в бд - добро. Ну а что ждать от чела, который работает в МТС. Какой там memcached. Хотя думаю они используют какой-нибудь times ten, что является также разновидностью кэша.

Далее, были пара докладов по асинхронному программированию io на питоне. Андрей Смирнов отличный докладчик, но душа к "пайтону" не лежит :-( Хотя, twisted любопытен, если допустим писать какой-то отдельный сервер, то вполне себе вариант(но мне и boost::asio нравится).

Второй же докладчик работал в своей компании(hh.ru) над либой корутин для питона. Корутины - это интересно, но докладчик не был готов вообще. В общем, ничего нового и конкретного о корутинах я не узнал.

Далее был просто великолепный доклад от mail.ru. Они рассказали как построить огромный граф связей друзей(25GB RAM), как по нему искать, как обеспечить минимальный failover, как реплицировать, как кластеризовать его. Понравилась и сама идея и необычные и довольно простые решения проблем, но в то же время эффективные. Респект.

Доклад Дмитрия Завалишина про Phantom Os был. Ничего нового по сравнению со старым видео и флеймами у него в жж. Следим и ждем развития событий. К сожалению(части аудитории), из-за опоздания Дмитрия был скомкан доклад про freebsd 8/9, хотя мне все равно :-)

Еще был интересный доклад про виртуальную память от какого-то хэккера. Но его надо было рассказывать не на этой конфе. Смысл вкратце, ребята подхачили ядро linux и сделали более эффективной работу с памятью(страницы, tlb, выделение памяти и т.д.). С моей точки зрения это оправдано для embedded решений и "коробок". Но все равно было интересно. К тому же товарищ явно сведущ в ядреных делах. С ходу рассказать про особенности реализации numa в ядре - это надо код было читать, как минимум.

Доклад Алексея Рыбака был хороший. Он прекрасный докладчик. Но инструменты, про которые он рассказывал лично мне не особенно интересны. Blitz, Pinba, php-fpm.

p.s. Очень не хватает докладов "из Яндекс".
1 | увеличить энтропию

k3b чудит [11 Oct 2009|02:12am]
Свежесобранный k3b 1.0.5-r5 отказался резать DVD-R :-/
увеличить энтропию

Идея [11 Oct 2009|12:51am]
Написав стопицотую команду (command) я понял, что этот паттерн никуда не годится. Да, он работает неплохо, в книгах. На практике, даже если пытаться объединять общую логику в отдельные команды(не привязанные к объектам непосредсвенно через сущность, но через свойство), то все равно получается многабукаф и довольно запутанно(условная логика, "плохое" наследование и т.д.)

Что у нас в типичной команде.

Допустим, команда изменения/добавления(частный случай изменения) какого-то объекта. Пусть это будет объект, типа Site. У него есть разные поля(в том числе и сложного типа, например SiteState).

В зависимости от контекста(роль актора, тип браузера в котором работает актор wap/web/etc и еще много чего) нужно по разному обрабатывать данные для различным полей(здесь я не говорю о валидации, это уже другой уровень, хотя сложная валидация может быть и здесь, но для простоты пока не рассматриваем ее).

Ну и понеслась. Допустим то же самое поле state. Админ имеет право этот статус менять как угодно(но интерфейс реально существует только для web). Юзер не может менять явно статус(только косвенно, изменяя, например url сайта, он косвенно меняет статус сайта на onModeration). Или, например, поле lastModified. Понятное дело, что оно всегда изменяется автоматически.

Хочется иметь какой-то единый инструмент, конфигурируемый(может даже декларативно), который позволял бы описать стратегию поведения для каждого из полей того или иного объекта в заранее заданном контексте(при это контекст - комбинация условий).

Например.

lastModified / role = (admin/user) / action = (add/save) / value = now()
state / role = admin / action = (add/save) / value = from request
state / role = (admin/user) / action = drop / value = SiteState.dropped
state / role = user / action = (add/save) / value = keepPrevious
fieldWithTooComplexLogic / role = admin / action (add/save) / value = ignore (обработаем позже в отдельной команде, например).

Про мысли как это реализовать напишу позже, когда в голове будет порядок(идея есть).
увеличить энтропию

[09 Oct 2009|08:40pm]
commit-log: промахнулся
увеличить энтропию

[09 Oct 2009|06:58pm]
увеличить энтропию

navigation
[ viewing | most recent entries ]
[ go | earlier ]

Advertisement