Pull to refresh
58
0
Аббасов Александр @vodka_ru

Предприниматель, Стартапер, Программист

Send message

Автоматизация разработки web проектов в среде UNIX

Reading time2 min
Views1.3K
С какого боку не посмотри, а процесс автоматизации всегда важен. Компаниям он помогает экономить уйму времени-денег, администраторов избавляет от рутины, а людей не посвящённых в детали чужой работы от головной боли.
Я хочу поделиться своим решением по задаче частичной оптимизации и снижения производственных издержек. Мне пришлось написать данный bash скрипт по причинам, которые были озвучены выше. Есть ещё причина,
Хочу сразу предупредить непосвящённых о том, что конфигурация Apache, MySQL может отличаться от приведённой ниже( а так скорее всего и будет). Будьте внимательнее в корректировке путей, когда решите адаптировать этот скрипт под свои цели.

Читать дальше →
Total votes 28: ↑15 and ↓13+2
Comments17

Семинар Эдварда Йордана :: метод подбора кадров в IT

Reading time2 min
Views1.4K
Сегодня я был на семинаре Эдварда Йордана. В первую очередь хочу поблагодарить за эту возможность kotyrev Сергея Котырева.

Тема семинара была «Человеческий фактор в разработке ПО»

Я расскажу про один интересный неоднозначный метод по подбору персонала в IT. Также поделюсь своими ощущениями полученным после семинара.
Читать дальше →
Total votes 5: ↑4 and ↓1+3
Comments8

Наблюдение за жуками ( Mantis + Google Visualization )

Reading time8 min
Views3.4K
В моей работе нужно анализировать качество проектов и иметь полное понимание о том, как мы учимся не наступать на одни и теже грабли. Для этой цели есть много инструментария, но я хочу поделиться опытом с теми, кто как и наша студия использует в роли багтрекинга Mantis 1.1.1 (написан на PHP, БД- MySQL)

подробности
Total votes 63: ↑61 and ↓2+59
Comments25

Google :: gmaps-utility-library :: Maps API

Reading time1 min
Views514
Последний обход Google раскрыл для меня раздел Open Source Projects.
code.google.com/hosting/projects.html?filter=1&start=0

Внимание моё остановилось на странице, посвященной Google Maps API Utility Library code.google.com/p/gmaps-utility-library

На данной странице представлены примеры различных релизов библиотек, относящихся к API Google Maps.
Для тех, у кого нет справочника по API, а также людей которые только решают познакомиться с возможностями, страница будет полезна. На ней вы найдете примеры реализаций кастомных маркеров, взаимодействия с ними. Рассмотрена реализация AJAX применительно к ним.

Все знают, что на примерах проще разобраться. Это как раз этот вариант. Но не забываем про основной раздел, посвященный картам Google code.google.com/apis/maps

На странице сказано, что она является open source проектом. Предназначена как репозиторий полезных библиотек для использования с картами Google

Стоит особое внимание уделить gmaps-utility-library.googlecode.com/svn/trunk/extmaptypecontrol/1.3/examples/trafficexample.html
Хороший интерактивный пример для получения представления о возможностях.

Забыл сказать, что там исходный код примеров прилагается ко всем библиотекам.
Total votes 5: ↑3 and ↓2+1
Comments5

Замыкание в Java Script для непосвященных

Reading time2 min
Views3.2K
У моих программистов была задача: в фото галерее при активном изображении подсвечивать thumbnail показываемого изображения. Задача вроде тривиальная, но вызвала у них некоторый затык при решении. Хочу сказать сразу, что владение JS было у них не на высоте.
Вообще мало людей по настоящему знающих этот язык и не путующий его с принципами работы DOM документа.

В чем же была проблема…
1. В том, что сначала они решали её рекурсией :)
2. Вторая попытка решить привела к введению глобальной переменной, что я не считаю хорошим тоном
3. Загрязнение общего кода подобными маленькими функциями вместо использования объектного подхода

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

<script type=«text/javascript»>
          
          
function MainMenu(){
            
            var OldImage;

            this.getOldImage = function(){ return OldImage; }
            this.setOldImage = function( img ){ OldImage = img;}
            this.chgImage = function( obj, newImage){
              if(newImage != null){
                this.setOldImage(obj.src);
                obj.src = '/images/'+newImage;
              } else {
                obj.src = this.getOldImage();
              }
            }

}

var Menu = new MainMenu();

</script>
* This source code was highlighted with Source Code Highlighter.


Вызывать следует так:

<img src="/images/home.gif" width=«88» height=«23» alt="" onmouseover=«Menu.chgImage(this, 'home_over.gif')» onmouseout=«Menu.chgImage(this)»>* This source code was highlighted with Source Code Highlighter.


Что это нам дало:

1. Мы не используем рекурсию. Этим мы бережем ресурсы компьютера. У клиентских машин они же не резиновые вопреки обратным утверждениям
2. Мы не ввели глобальную переменную, которая в больших системах неудобна по объективням причинам
3. В третьих мы сделали универсальный объект. У него инкапсулированы данные!

Новичкам просьба разобраться и понять. Этот вариант сделан специально проще, чем мы реализовывали.

Мы создаем в теле функции локальную переменную. Затем захватываем эту переменную методом этой функции (это класс, точнее прототип). В итоге получаем хитрый трюк. При выходе из самой функции данные в ней запомнились.

Вообще-то по этому вопросу материала достаточно в сети. Этот трюк далеко не новый. Но о нем нужно напоминать «отцам» и учить новичков.
Total votes 37: ↑20 and ↓17+3
Comments41

JQuery :: Edit in Place

Reading time11 min
Views7.5K
Не сочтите этот материал за профессиональное изложение. Это не так. Я просто хотел поделиться своим опытом с людьми, которые смогут его применять в своих проектах и делать Интернет проекты более удобными для использования.

Начнем:
Делали механизм для роликов с разработчиками. Суть простая: загружено множество роликов, а потом они проигрываются в плеере. Сами ролики на сервере представляют собой музыкальые файлы и записи в БД. Записи имеют свои св-ва.
Ниже речь пойдет только о двух: позиция ролика в общей очереди и название.
Чтобы редактировать позицию ролика не очень-то хотелось переходить на специальную страницу, где можно было бы отредактировать это св-во. Роликов было около 150 :) Представляете какую рутиную операцию приходилось бы делать.
Как раз на днях просматривал JQuery. Вообще до того момента я больше склонялся к mootools, но после более глубокого общениея с первым из этого списка решил, что остановлюсь на этом фреимфорке.

Читать дальше →
Total votes 12: ↑8 and ↓4+4
Comments12

Symfony

Reading time3 min
Views2.1K
Очень нравится этот framework.
Буду переводить часть информации по мере её прочтения. Думаю, что это будет полезно не мне одному. В свою очередь предлагаю обсуждать и дополнять всем, кому эта тема и framework не безразличен

Chapter 12 — Caching


Одним из путей ускорения работы web-based приложения является запоминание части или всего HTML документа, для повторной его выдачи при следующих запросах. Эта технология известна как кэширование. Может применяться как на серверной части, так и на клиентской.
Читать дальше →
Total votes 12: ↑9 and ↓3+6
Comments8
2

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity