• Как оценить задачу до начала разработки сайта

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

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

      Читать дальше →
    • Бесплатная книга «HTML5. Руководство разработчика»

        ХО-ХО-ХО! Праздник к нам приходит! Всегда coca-co… HTML5!
        Выпал снежок и как-то незаметно пришло праздничное, предновогоднее настроение. Чтобы как-то поддержать праздничный дух, мы решили сделать небольшой сюрприз от издательства и порадовать наших читателей бесплатной электронной книгой Марка Пилгрима «HTML5. Руководство разработчика» (DIVE INTO HTML5). Оригинал книги также есть в бесплатном варианте в Интернете.

        Прежде чем скачать книгу целиком, предлагаем вам познакомиться с первой главой:

        Глава 1. Как мы сюда попали?


        Приступим


        Недавно я прочел высказывание одного разработчика для платформы Mozilla, где говорится о той напряженности, которая всегда сопутствует разработке стандартов:

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


        Пока я буду рассказывать, как появился HTML5, помните эти слова.
        Читать дальше →
      • Подборка инструментов для фронт-энд разработки

        • Перевод
        Как разработчику, мне очень нравятся инструменты, которые помогают сэкономить время или упростить процесс разработки фронт-энда. В этой статье я собрал мои любимые веб-инструменты для упрощения разработки веб-интерфейсов.

        Картинки кликабельны.

        Form builder


        Формы являются очень важной частью любого веб-сайта, но их верстка может занять продолжительное время. Этот очень удобный инструмент, поможет вам создать красивую веб-форму очень быстро.
        image
        Читать дальше →
      • О синглтонах и статических конструкторах

          Изначально автор хотел назвать эту статью следующим образом: «О синглтонах, статических конструкторах и инициализаторах статических полей, о флаге beforeFieldInit и о его влиянии на deadlock-и статических конструкторов при старте сервисов релизных билдов в .Net Framework 3.5», однако в связи с тем, что многострочные названия по неведомой автору причине так и не прижились в современном компьютерном сообществе, он (автор) решил сократить это название, чудовищным образом исказив его исходный смысл.

          -------------------------

          Любая реализация паттерна Синглтон в общем случае преследует две цели: во-первых, реализация должна быть потокобезопасной, чтобы предотвратить создание более одного экземпляра в многопоточном мире .Net; а во-вторых, эта реализация должна быть «отложенной» (lazy), чтобы не создавать экземпляр (потенциально) дорого объекта раньше времени или в тех случаях, когда он вообще может не понадобиться. Но поскольку основное внимание при прочтении любой статьи про реализацию Синглтона отводится многопоточности, то на «ленивость» зачастую не хватает ни времени не желания.

          Читать дальше →
        • Правила технического задания

          В большинстве крупных организаций внутрифирменные отношения «пользователь-отдел IT» неизбежны, особенно при создании рабочих приложений, необходимых пользователю на постоянной основе. Сложность этих отношений может быть обусловлена многими факторами, но чаще всего это непонимание, возникающее из-за того, что стороны говорят на разных «языках» с различной терминологией. Пользователь понимает, что он хочет, но не может это сформулировать, IT-специалист понимает пользователя, но опасается, что результат выйдет иным, чем видит это первый. Чаще всего проблема начинается с того, что именно пользователь не готов к диалогу: он требует «чтобы работало», «отчет одной кнопкой», «чтобы за минуту выводилось», «чтобы даты в Excel не вылезали» и прочее. При этом его совершенно не интересует, каким образом это делается и какие механизмы работают. На заявления о нагрузке на сервер, просьбы нарисовать схему желаемого результата, обсудить пути решения пользователь не реагирует, полагая, что настоящий профессионал со всем справится. Результаты такого непонимания вредят всему производственному процессу: затягиваются сроки решения задач, возникают ошибки и пробелы в системах, которые нужны пользователю, страдает перегруженный неверными действиями сервер, скорость работы снижается.

          Одним из способов разрешения такого конфликта является написание задания на проект – технического задания, которое предполагает полное и точно изложение требований внутрифирменного заказчика и является своеобразной инструкцией для IT -специалиста.
          Читать дальше →
        • Почему мы никогда не составляем ТЗ. А что взамен?

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



            Любой проект начинается с технического задания. Так было раньше, а для многих это остается аксиомой до сих пор. Это не плохо, однако мы практически полностью отказались от ТЗ. Теперь это сокращает нам огромное количество времени, которое тратилось раннее практически впустую.
            Читать дальше →
          • Синглтон и время жизни объекта

              Эта статья является продолжением моей первой статьи “Использование паттерна синглтон” [0]. Сначала я хотел все, что связано со временем жизни, изложить в этой статье, но объем материала оказался велик, поэтому решил разбить ее на несколько частей. Это — продолжение целого цикла статей про использование различных шаблонов и методик. Данная статья посвящена времени жизни и развитию использования синглтона. Перед прочтением второй статьи настоятельно рекомендуется ознакомиться с моей первой статьей [0].

              В предыдущей статье была использована следующая реализация для синглтона:
              template<typename T>
              T& single()
              {
                  static T t;
                  return t;
              }
              


              Функция single возвращала нам заветный синглтон. Однако данный подход имеет изъян: в этом случае мы не контролируем время жизни объекта и он может удалиться в тот момент, когда мы хотим этим объектом воспользоваться. Поэтому следует использовать другой механизм создания объекта, используя оператор new.
              Читать дальше →
            • А еще в Visual Studio есть External Tools…

                Забавно, но я долгое время считал, что возможность запуска сторонних приложений из Visual Studio не заслуживает внимания. Серьезная интеграция требует разработки plugin, и точка!

                Как оказалось, я был неправ. Есть множество сценариев, когда External Tools позволит быстро расширить возможности Visual Studio.

                Как раз вчера мой хороший знакомый задал вопрос – как сделать аналог команды Open Containing Folder из пакета PowerCommands for Visual Studio 2010, но для вызова Far Manager, а не Windows Explorer? В оригинале эта команда доступна в контекстном меню Solution Explorer, она открывает Windows Explorer и устанавливает курсор на файл, для которого она была вызвана.

                Моя первая идея (нет ничего проще – нужно скачать PowerCommands.vsix из Visual Studio Gallery, распаковать его, разобрать на части Reflector’ом, обложиться руководствами по расширению Visual Studio и быстро написать аналог) понимания не нашла – написание plugins для Visual Studio (если это не расширения редактора) по-прежнему остается весьма нетривиальной задачей, и если нет опыта, то даже при наличии примеров и пошаговых руководств ее решение займет не меньше, чем полдня – если не целый день!

                Еще немного подумав, я решил, что для этих целей вполне подойдет механизм External Tools! И, действительно, создание «команды» Open Containing Folder in FAR заняло у меня не более получаса.

                Давайте посмотрим, как это можно сделать.
                Читать дальше →
              • Подборка генераторов CSS



                  Не секрет, что писать CSS для многих стандартных кнопок, макетов, etc. бывает весьма лениво. Ниже представлена подборка генераторов CSS (и не только), которая, возможно, в некоторых случаях сможет упростить кому-то жизнь. Многими генераторами можно успешно пользоваться даже без глубоких познаний CSS.

                  (Осторожно! Много картинок)
                  Читать дальше →
                • Подборка 10 css3 кнопок

                    С каждым днем новые стандарты css3 и html5 всё более глубоко входят в жизнь верстальщиков и web-разработчиков, а браузеры с каждым днем становятся все более совместимыми с этими стандартами.



                    В связи с этим событием хотелось бы представить Вам подборку 10 css3 кнопок, которые смогут облегчить вам жизнь при верстке и создании web приложений.
                    Читать дальше →