Pull to refresh
21
0
Roman Gomolko @Romanych

User

Send message

Удобный дебаг с BlackBird

Reading time1 min
Views808
imageХочу представить вам одну библиотеку для яваскрипта, под названием BlackBird. Основное ее назначение, избавить разработчика от не нужного дебага при помощи alert(), о чем собственно и говорит слоган «Скажите привет BlackBird и скажите пока alert()» ( Say hello to Blackbird and 'goodbye' to alert() ).
Читать дальше →
Total votes 49: ↑38 and ↓11+27
Comments54

svn tips

Reading time2 min
Views3.3K
Сегодня занимался устройством проекта и возился с svn — решил поделиться некоторыми советами:
Автоматическая заливка кода на сервер из репозитория после коммита
Версионирование файлов настроек (Settings.php/xml/yml)
Храниение жирных и малоизменчивых сторонних библиотек в репозитории с быстрым чекаутом проекта
Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments17

Установка и настройка SVN (сервер+клиент)

Reading time6 min
Views312K
По просьбам трудящихся, а так же учитывая, что есть статья по установке SVN (правда +Trac) под Linux, решил написать краткое описание установки и настройки SVN для Windows.
Ничего нового для людей, хорошо знающих и работающих с SVN, здесь не будет. Цель статьи — помочь некоторому проценту новичков, пребывающих на Хабре, таки осилить изучение этой системы контроля версий.
Читать дальше →
Total votes 75: ↑66 and ↓9+57
Comments37

Совместная разработка с помощью Subversion

Reading time6 min
Views13K
Управлять наёмными рабочими и распределенными проектами — это просто и весело. Стоп, что за чушь? На помощь приходит хороший контроль версий — именно то, что вам нужно, чтобы правильно вести ваши проекты.

Далее — перевод статьи Collaborate and Connect with Subversion. Это мой первый перевод, поэтому был бы очень рад вашим замечаниям.

Читать дальше →
Total votes 58: ↑49 and ↓9+40
Comments94

Поднимаем subversion для приятной разработки

Reading time2 min
Views4.7K
В один прекрасный день мне надоело заливать по ftp\ssh все изменения, внесённые в проект. К этому моменту я уже вынашивал идею перенести разработку под управление SVN — контроль версий, всё-таки приятная штука. В итоге было решено совместить приятное с полезным — и контроль версий, и автоматическое обновление проекта. По традиции — повествование будет вестись на примере моего любимого debian'a.
Заметку можно считать дополнением статьи svn tips (по крайней мере — первого пункта).
поехали
Total votes 60: ↑46 and ↓14+32
Comments60

Полномасштабная разработка проекта

Reading time2 min
Views1.6K
Чего-то сегодня не спится совершенно… Возможно это тот самый знак, которого я так долго ждал? А знак мне нужен был, что бы решиться начать серию статей на основе реальной разработки проекта средних масштабов. Но не просто разработке в общем смысле этого слова, и даже не о разработке на основе Zend Framework, Doctrine ORM и пр. и пр., а о разработке начиная с постановки задачи, анализа и проектирования (с необходимой степенью глубины), поиска решений и реализации.
И раз уж первый абзац уже набран, то смысла останавливаться не вижу :) Приглашаю всех поучаствовать в процессе, который будет проходить на основе UP.
Читать дальше →
Total votes 75: ↑55 and ↓20+35
Comments98

Серверная валидация пользовательских данных

Reading time5 min
Views9.2K

Доброго времени, хаброчеловеки!


Мне хотелось бы поднять тему серверной валидации пользовательских данных. Поискав на хабре топики данной тематики и погуглив, пришёл к выводу, что люди часто изобретают свои собственные велосипеды для реализации механизма валидации. В данной статье хочу рассказать о простом и красивом решении, которое успешно применяется в нескольких проектах.
мне интересно, что дальше...
Total votes 72: ↑62 and ↓10+52
Comments66

JavaScript Cross Site (XSS) POST

Reading time4 min
Views13K
Недавно, в Dojo появилась возможность производить cross site POST запросы, т.е. отправка POST запросов на другие сайты, с другими доменными именами. Это событие осталось незамеченным в нашем сообществе JavaScript разработчиков. По крайней мере, никто и слова про это не сказал. А зря…

В один прекрасный момент
Читать дальше →
Total votes 62: ↑57 and ↓5+52
Comments73

Внедрение Flash с помощью SWFObject 2

Reading time16 min
Views47K
Вопрос о внедрении Flash с помощью разметки соответствующей стандартам возникает достаточно часто, между тем у этой проблемы есть достаточно известное решение — SWFObject. SWFObject 2 не только позволяет внедрять Flash динамически, с помощью JavaScript, но и статически, когда для внедрения используется стандартная разметка, а JavaScript только исправляет неразрешимые с помощью разметки проблемы, при этом даже если JavaScript отключен пользователи все равно увидят Flash.
Читать дальше →
Total votes 54: ↑52 and ↓2+50
Comments31

Мал, да удал: Trojan-Downloader.Win32.Tiny

Reading time9 min
Views23K
Доброго дня всем.
В сегодняшнем выпуске много технических подробностей. Так что уж извините, если их слишком много :)

Письмо


Итак, начинаем. На входе у нас письмо с текстом «Journalist shot in Georgia! See attached video. Password is 123» и с приложенным файлом «Georgia.zip».

Для более или менее полного анализа нам понадобятся:
— Самый Лучший дизассемблер в мире IDA
— Неплохой Отладчик Windbg
— python 2.5 (строго говоря, подойдет любой, просто у меня 2.5)
— Visual Studio какая-нибудь и Microsoft SDK, чтобы собрать небольшую программу на с++.
— упаковщик программ upx
— ну и чего-то еще по мелочи.

Распаковываем присланный нам файл, и видим, что наши подозрения оправданы: видео там и рядом не ночевало.
joined.exe (md5:607af96b03addadf28cf9280701df191)
Dr.Web: Trojan.Packed.151
Kaspersky: Trojan-Downloader.Win32.Agent.abqe

Читать дальше →
Total votes 355: ↑346 and ↓9+337
Comments118

Ajax-машина

Reading time11 min
Views4.1K
Знали ли разработчики LiveScript из Netscape о том, какое влияние окажет их язык, позже переименованный в JavaScript, на лицо интернета — веб-сайты, или, может быть, они твердо на это рассчитывали, но факт остается фактом — JavaScript на сегодняшний день является одним из самых важных и распространенных языков в мире.

В то время, как на стороне сервера трудится разношерстная компания языков в лице php, perl, python, ruby, .net, java и многих других, на стороне клиента JavaScript существует буквально в гордом одиночестве. Фактически, из маленького дополнения к html, JavaScript превратился в полноправного члена банды «html+css+js», который, зачастую, уже командует остальными, сверкая золотым браслетом с надписью «ajax» и делая недовольное лицо $( ) при случае.
продолжить чтение
Total votes 142: ↑131 and ↓11+120
Comments91

Использование провайдеров компиляции в Asp.net

Reading time6 min
Views2.1K

В качестве вступления



В Asp.net любая интернет-страница представляется в виде двух файлов: *.aspx и *.aspx.cs. В *.aspx-файлах содержится html-подобная разметка самой страницы, а в *.aspx.cs-файлах код на языке C#, который представлен в виде отдельного класса.

В разметку страницы можно добавлять серверные элементы управления, например тегом <asp:Button ID=«MyButton» runat=«server» />.

Причём с каждым таким объявлением будет связана переменная, то есть в нашем случае мы получим доступ к переменной типа Button и именем MyButton, хотя на первый взгляд эта переменная нигде не объявлена. (Хотя в первой версии Asp.net объявление переменных вставлялись в тот же файл.)

На самом деле это не так. Класс, описаный в *.aspx.cs-файле является частичным (он помечен модификатором partial), одна его часть описана в *.aspx.cs-файле, а вторая находится во временном файле, который генерируется на основании просмотра *.aspx-файла. Генерацией этого временного файла как раз и занимается провайдер компиляции.
Читать дальше →
Total votes 48: ↑45 and ↓3+42
Comments39

jQuery in Action. Глава 2

Reading time9 min
Views23K
Как я и обещал, вторая глава из книги «jQuery in Action» (авторы Bear Bibeault и Yehuda Katz). Как и из первой главы, выбрал все самое вкусное и интересное ;-)

Напоминаю, что первую главу можно прочесть здесь.

Читать дальше →
Total votes 61: ↑56 and ↓5+51
Comments19

Артефакты, необходимые для тестирования

Reading time3 min
Views117K
Дисклаймер. Данная статья не является претензией на объективность, а отражает только мое сугубо личное мнение. Также прошу обратить внимание на то, что мое мнение не является статичным и может меняться. Статья написана только для того, чтобы не отвечать много раз на одни и те же вопросы, а просто дать ссылку.

Итак попробую ответить на вопрос: какие артефакты необходимы для обеспечения процесса тестирования (имеется ввиду разрабатываемые самим тестировщиком).
Читать дальше →
Total votes 35: ↑32 and ↓3+29
Comments20

MySQL Performance real life Tips and Tricks

Reading time9 min
Views37K
Пообещал вчера написать статью о реальных случаях оптимизации БД MySQL.
Пришлось сегодня вставать утром пораньше чтобы воплотить обещанное в жизнь.
Централизованное управление мыслями поддерживать еще сложно, поэтому не судите строго за казусы и ляпсусы в моей статье.

В последнее время приходится достаточно часто заниматься оптимизацией производительности сайтов. И как правило «бутылочным горлышком» в производительности работы этих сайтов является именно БД, ошибки как в архитектуре так и в выполнении запросов. Начиная от неправильной расстановки индексов, либо совершенным их отсутствием, неправильным (неэкономным) выбором типов данных под определенное поле, заканчивая абсолютно нелогичной архитектурой БД и такими же нелогичными запросами.

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

Читать дальше →
Total votes 143: ↑139 and ↓4+135
Comments93

Иногда они возвращаются… снова

Reading time6 min
Views3.9K
Совсем недавно на хабре пользователем bur был опубликован пост про приятные ползунки TrackBar. Они мне понравились своей простотой и возможностью их использования в совокупности с jQuery. Чуть позже был так же пост про слайдер, который определял диапазон времени, но его порицали за большой вес и «тяжесть». Тогда у меня и родилась идея создать на основе TrackBar ползунков для выбора произвольного диапазона времени. Придумано – сделано. И сейчас я представляю свои наработки хабраобщественности.

Итак, было:

Стало:


Прочитать про это
Total votes 53: ↑49 and ↓4+45
Comments43

C#: требования и рекомендации по написанию кода

Reading time5 min
Views146K
Не так давно в комментариях к топику AlexS высказал идею использования соглашения об оформлении на Хабре кода примеров темы .Net написанных на C#.

Я немного поизучал имеющиеся предложения из этих источников:
submain.com/blog/FreeCVBNETCodingGuidelinesEbookDownload.aspx
idesign.net/idesign/DesktopDefault.aspx
и скомпилировал черновик который описывает самые базовые правила оформления кода написанного на C#.

Предлагаю:
— обсудить этот черновик;
— внести в него все необходимые изменения;
— утвердить как стандарт написания C# кода на Хабре.
Более того, предлагаю создать документ, который можно было бы предложить как рекомендации habrahabr comunity для всех других программистов C#.

Под катом вы найдете текст черновика. Предлагаю всем желающим обсудить его и подвергнуть надлежащей правке.

Читать дальше →
Total votes 31: ↑24 and ↓7+17
Comments117

Ключевые моменты в управлении временем

Reading time5 min
Views12K

Ключевые моменты в управлении временем



Если ты будешь упорно работать по восемь часов в день, то со временем станешь начальником и получишь право работать по двенадцать часов в день.

Самый большой груз несет самый сильный верблюд.
Законы Мерфи о работе.

1


Нужно помнить, что наше сознание одновременно может оперировать не более 7±2 объектами (число Ирвин-Миллера). Это касается левого полушария. Возможности правого (условно полагаем, что оно отвечает за подсознание) гораздо шире. Поэтому сложные оценочные решения нужно отдавать подсознанию, т.е. развивать то, что называют интуицией.

2


При обучении информация проходит следующие стадии автоматизации. Вначале есть некие знания, которые мы усваиваем. После отработки в практикумах эти знания переходят на уровень умений. То есть когда я не только могу рассказать и ответить на вопросы по области знаний, а умею применять полученные знания для решения практических задач. Когда мы несколько раз решили практические задачи, то умения могут сформироваться в навыки. Навыки — более высокий уровень автоматизации, и они находятся уже в подсознании. Что такое навык? Когда вы можете выполнить задание «не задумываясь», то есть быстро и легко.
Читать дальше →
Total votes 27: ↑24 and ↓3+21
Comments12

Один маленький проект: история продолжается, или сервис для людей

Reading time6 min
Views780
В первой заметке цикла было рассказано о том, как зародилась идея о создании сервиса Web Optimizator. Сейчас я хочу коснуться первых месяцев его роста и развития и тех проблем, с которыми столкнулся (или, наоборот, по счастливой случайности, не столкнулся). Итак, поехали.

WebSiteOptimization



В самом конце прошлого года идея создать онлайн-инструмент для проверки скорости загрузки сайта из чисто мнимой сущности все более становилось материальной. За пару дней был написан прототип, который анализировал пару сайтов и мог сказать, какие приемы на них применены и, что казалось более важным на тот момент, какие приемы нужно применить для ускорения загрузки сайта. Однако, вывод его был достаточно скуп и убог. Его нужно было как-то видоизменять.
Читать дальше →
Total votes 46: ↑43 and ↓3+40
Comments29

Отговорки исполнителей на требования заказчиков сдать работу

Reading time4 min
Views11K
Бывает так: закажет человек работу, денег даст. Может быть даже договор и задание в письменном виде будет. Однако время идет, а работы нет.

Что говорят и что надо говорить?
Читать дальше →
Total votes 143: ↑132 and ↓11+121
Comments50

Information

Rating
Does not participate
Location
Украина
Date of birth
Registered
Activity