Pull to refresh
0
0
Андрей @and50

User

Send message

Учёт рисков при оценке трудоёмкости ПО и планировании проекта

Reading time5 min
Views20K

Поговорим о рисках


dice
Что такое риски? Что является риском, а что нет? Как учитывать риски при оценке трудоёмкости ПО и планировании проекта? Об этом я предлагаю поговорить в этом топике. В то же время, чтобы не раздувать топик и не повторяться, здесь не будут обсуждаться вопросы идентификации и митигации рисков — действий по выявлению, уменьшению вероятности возникновения рисков и минимизации их последствий.
После публикации статьи о смертных грехах в оценке трудоёмкости программного обеспечения мне указали, что ни автор, ни я ничего не сказали о рисках. Хочу исправить это досадное недоразумение и поведать вам немного о рисках и моём опыте работы с ними.
Читать дальше →
Total votes 32: ↑24 and ↓8+16
Comments26

Привычки успешных фрилансеров на онлайн-биржах

Reading time4 min
Views2.4K
Тут в одном из постов было упомянуто, что русские фрилансеры не могут тягаться с зарубежными (имеется ввиду работа на фрилансерских сайтах). Я успел поиграть за обе стороны и на зарубежных сайтах, и на российских. После чего сделал небольшую подборку наблюдений.
Читать дальше →
Total votes 71: ↑55 and ↓16+39
Comments61

Обзор NoSQL систем

Reading time5 min
Views55K
Беспрецедентные объемы данных заставляют разработчиков и бизнес приглядываться к альтернативам реляционных баз данных, используемым вот уже более тридцати лет. В совокупности все эти технологии известны как «NoSQL базы данных».


Основной проблемой является то, что реляционные базы данных не могут справляться с нагрузками актуальными в наше время (мы говорим о high-load проектах). Есть три конкретные проблемных области:
  • горизонтальное масштабирование при больших объемах данных, например как в случае Digg (3 терабайта для зеленых значков, отображаемых, если ваш друг сделал dugg на статье) или Facebook (50 терабайт для поиска по входящим сообщениям) или eBay (2 петабайта в целом)
  • производительность каждого отдельного сервера
  • не гибкий дизайн логической структуры.
Читать дальше →
Total votes 101: ↑98 and ↓3+95
Comments67

Госзакупки и open source — уроки тендеров Минсвязи

Reading time7 min
Views6K
Родное Минсвязи подкинуло новое развлечение — опубликовало заявки, поданные ИТ-деятелями на объявленный конкурс “Право заключения государственного контракта на оказание услуг по разработке типовой системы электронного документооборота на свободном программном обеспечении на базе Министерства связи и массовых коммуникаций Российской Федерации”.

Конкурс как конкурс, на 5 лимонов, в техническом задании расплывчато сказано “Настоящий документ является техническим заданием на разработку типовой системы электронного документооборота на свободном программном обеспечении (далее — СПО), поставляемым с открытым исходным кодом (далее СЭД или система), и определяет назначение системы, цели создания, требования к архитектуре программного обеспечения и функциональные требования к системе… В системе должны использоваться только открытые современные элементы и технологии, отвечающие международным стандартам… Система должна поддерживать работу в среде свободно распространяемых операционных систем.” Ну и дальше по пунктам, какие функции документооборота им нужны — те, кто с госструктурами работает, проходил уже это все по 150 раз.

Ничего особо примечательного в этом не было бы, если бы Минсвязи не выложило на сайт госзакупок не только собственную документацию, как положено по закону, но и все тендерные заявки. ФЗ-94 этого не требует, заметим. Но открытость так открытость, по-взрослому. “Чтобы дурость каждого видна была”, не иначе.

А дурости там, как показывает даже беглое знакомство с заявками, столько, что половина ИТ-рынка брутально ржот, а вторая половина — чешет репу, пытаясь разгадать этот ребус.

Длинно, но весело
Total votes 109: ↑101 and ↓8+93
Comments111

Коллективная разработка с использованием git и Trac в проекте Midnight Commander

Reading time6 min
Views4.9K
    Действительно, в интернете сейчас можно найти достаточно много информации о настройке GIT и работе с ним, но недостаточно освещен вопрос коллективной разработки и «рабочего процесса» отдельно взятого проекта от начала и до конца.

    Попробую восполнить этот пробел на примере открытого проекта Midnight Commander, не останавливаясь на вопросах установки необходимого ПО, так как этот момент неплохо описан в интернете, и вы сможете легко найти интересующую вас дополнительную информацию самостоятельно.
Читать дальше →
Total votes 48: ↑43 and ↓5+38
Comments52

Мое дело — Онлайн-бухгалтерия для индивидуальных предпринимателей

Reading time2 min
Views3.8K


Привет!

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

Нашей целью было сделать бухгалтерию доступной для любого человека — поэтому мы сконцентрировались на небольшом сегменте рынка — индивидуальные предприниматели на 6%-ной упрощенке, работающие без кассы. Это позволило сделать сервис очень простым и понятным — без бухгалтерского лексикона, ссылок на нормативные акты и перегрузки ненужной информацией вроде расчета НДС, ЕНВД итд. И, я думаю, у нас это неплохо получилось.

Читать дальше →
Total votes 158: ↑151 and ↓7+144
Comments231

Распараллеливание длительных операций

Reading time2 min
Views11K
Мне часто приходится сталкиваться с задачами, требующими от базы данных очень большой производительности при обработке больших массивов данных. Сегодня я расскажу об очень простом, но действенном приеме, который может вас выручить, если база уже не поспевает за тем количеством данных, которые скапливаются и должны быть обработаны. Метод не зависит от базы данных, но по привычке публикую в блог PostgreSQL, и пример будет именно на ней. Давайте сразу перейдем к примеру.
Читать дальше →
Total votes 49: ↑47 and ↓2+45
Comments65

Управление проектом на одной странице (таблица из одноименной книги К. А. Кэмбэлла)

Reading time1 min
Views53K
Только дочитал означенную в названии топика книгу. Она предлагает очень интересную и удобную схему для ведения проекта. Фактически, это – несколько усложненная диаграмма Ганта.

Однако я предположил, что таблица уже созданная в Excel будет многим хабравчанам удобна. Сама по себе книга имеет ценностью на 80-90 % в этой схеме. Но, думаю, без первоисточников вполне можно справиться с изучением данной диаграммы, тем более, что на официальном сайте издательства она представлена как:
Читать дальше →
Total votes 36: ↑32 and ↓4+28
Comments25

Browser persistence

Reading time2 min
Views1.6K
Browser persistence — техника, позволяющая хранить в браузере довольно большие объемы данных, которые в отличие от cookie не отсылаются на сервер при каждом запросе.

Все уже написано до меня, но на хабре никаких более-менее подробных упоминаний не нашел, поэтому написал краткий обзор — как это работает и собрал ссылки для более подробного изучения.
Читать дальше →
Total votes 63: ↑53 and ↓10+43
Comments20

Инструменты для визуализации логов профайлера xdebug

Reading time2 min
Views22K
Наверное многие php разработчики используют профайлер xdebug для поиска узких мест в приложениях. Но просто смотреть логи очень не удобно, поэтому были созданы инструменты для их визуализации. Об этих инструментах я и хочу коротко рассказать.

Webgrind

Webgrind это набор php скриптов, которые можно установить на локальный или удаленный веб сервер. Дальше все просто до неприличия — закачиваем файл лога и смотрим статистику.
image
Самый очевидный плюс Webgrind'а это кроссплатформенность и простота установки.
Показывает список функций которые вызывались, количество вызовов (Invocation Count), общеё время потраченное на вызов (Total Self Cost) и общее время потраченное на выполнение (Total Inclusive Cost).
Можно скрыть php функции. Можно перейти внутрь функции, чтобы увидеть развернутую статистику.
Читать дальше →
Total votes 47: ↑42 and ↓5+37
Comments26

Проектирование программного обеспечения

Reading time5 min
Views308K
Сегодня процесс создания сложных программных приложений невозможно представить без разделения на этапы жизненного цикла. Под жизненным циклом программы будем понимать совокупность этапов:
  • Анализ предметной области и создание ТЗ (взаимодействия с заказчиком)
  • Проектирование структуры программы
  • Кодирование (набор программного кода согласно проектной документации)
  • Тестирование и отладка
  • Внедрение программы
  • Сопровождение программы
  • Утилизация

Остановимся детально на процессе проектирования. В ходе проектирования архитектором или опытным программистом создается проектная документация, включающая текстовые описания, диаграммы, модели будущей программы. В этом нелегком деле нам поможет язык UML.
Читать дальше →
Total votes 52: ↑36 and ↓16+20
Comments36

Lagger — обработка ошибок и отладка в PHP с закрытыми глазами

Reading time6 min
Views2.2K
image

Впервые этот инструмент был представлен широкой публике в 2008 году на конференции Highload.ru, после чего был основательно оптимизирован и доработан. О том, что же это за зверь такой и как им удобно пользоваться
читаем далее
Total votes 72: ↑42 and ↓30+12
Comments45

Картинки делают вашу информацию интереснее

Reading time4 min
Views12K
Интересные картинки
Приветствую всех! Я представляю вам свой Первый Пост На Хабре, он является объединяющим симбиозом нескольких постов моего личного блога [Батоноблог], и речь сейчас пойдёт о универсальной вещи, которая поможет увеличить продажи вашего товара, задержать на вашем сайте лишний десяток посетителей, и сделать из сложной многобуквенной статьи простой доходчивый рассказ. Также будут даны описания и адреса хранилищ этих вещей.

А вещь эта называется «Картинка».

В чём суть?


Идея проста до безобразия: текст нужно сопровождать информативными картинками по теме. Скорее всего, это понятно всем, но на практике об этом заботятся не многие, и те, кто заботятся, вне очереди получают свои плюсы на пути к успеху.

Читать дальше: почему, как и где искать картинки
Total votes 155: ↑128 and ↓27+101
Comments65

Подборка плагинов к jQuery

Reading time2 min
Views5.8K
Вдогонку к этому посту, решил выложить еще одну неплохую и достаточно свежую подборку.

jReject — jQuery Browser Rejection

jReject

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

Еще плагины
Total votes 116: ↑98 and ↓18+80
Comments28

Малый бизнес и SaaS\S+S

Reading time3 min
Views1.8K
По моему опыту работы с SaaS\S+S (ПО как услуга) я выделил несколько вопросов, которыми обычно задаются люди принимающие решения о покупке в компаниях малого бизнеса. Я попробую ответить на них и надеюсь рассею часть опасений и предубеждений.
Читать дальше →
Total votes 40: ↑27 and ↓13+14
Comments70

Способы сокрытия IP-адреса в сети Internet

Reading time7 min
Views157K
Прежде чем мы подробно рассмотрим известные технологии сокрытия своего настоящего IP-адреса, нам следует узнать свой IP-адрес и выяснить некоторые вещи, обличающие наш компьютер в сети, например адрес DNS-сервера. Для этого достаточно зайти на любой сервис проверки анонимности, например www.whoer.net, главное чтобы он обладал интерактивной проверкой вашего компьютера с помощью Java, ActiveX, Flash и Javascipt. Изменить свой IP-адрес, например с помощью Socks или VPN, недостаточно, т.к. существует множество технологий, позволяющих его выявить, которые нужно либо отключить на своем компьютере, либо обмануть. Также не лишним будет изменить передаваемые НТТР-заголовки, это позволит «сбить» определение установленного ПО и географическое место расположения компьютера. Более детально проверить свой компьютер можно в расширенной версии www.whoer.net/ext.

Читать дальше →
Total votes 108: ↑85 and ↓23+62
Comments135

Эссе о валидации данных

Reading time8 min
Views29K
В заметке «Можно ли делить на 0,01 ?» на сайте тестировщиков я написал, что при тестировании нужно проверять согласованность валидаторов входных данных с логикой обработки этих данных приложением. Но из комментариев к этой заметке я понял, что для понимания того, как надо тестировать валидацию данных, надо понимать, как она должна работать, что можно считать правильным, а что нет. Поэтому я написал об этом отдельную статью. В ней рассматривается три вопроса: 1) зачем вообще нужна валидация данных, и 2) где и когда может выполняться валидация данных, 3) какие бывают разновидности проверок. Ну и конечно продемонстрировано, как всё это выглядит на живых примерах. А может быть мои рассуждения окажутся интересны не только тестировщикам, но и разработчикам.
Читать дальше →
Total votes 44: ↑37 and ↓7+30
Comments3

Анимированные меню на jQuery

Reading time6 min
Views5.4K
Недавно я наткнулся на сайт Dragon Interactive (dragoninteractive.com). Сайт этот достаточно добротно сделан в плане дизайна. А изюминкой можно назвать их анимированное меню. Ну вот если бы это было сделано в Adobe Flash, я даже и не упоминал бы о таком. Но при более близком рассмотрении оказалось, что их меню — это сочетание простых XHTML, CSS и Javascript. В данной статье я собираюсь продемонстрировать, как создавать менюшки (очень близкие к Dragon Interactive’s menu).

Смотрим демо
Читаем далее...
Total votes 156: ↑141 and ↓15+126
Comments35

Information

Rating
Does not participate
Location
Харьков, Харьковская обл., Украина
Date of birth
Registered
Activity