Обновить
0
@azzzimoread⁠-⁠only

Пользователь

Отправить сообщение

Математика для искусственных нейронных сетей для новичков, часть 3 — градиентный спуск продолжение

Время на прочтение6 мин
Охват и читатели60K
Часть 2 — градиентный спуск начало

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

Существует и другая версия алгоритма — стохастический градиентный спуск. Стохастический = случайный.
Читать дальше →

Антихрупкость архитектуры хранилищ данных

Время на прочтение42 мин
Охват и читатели66K
В этой статье речь пойдет об архитектуре хранилищ данных. Чем руководствоваться при ее построении, какие подходы работают – и почему.

«Сказка ложь – да в ней намек…»


imageПосадил дед… хранилище. И выросло хранилище большое-пребольшое. Вот только толком не знал, как оно устроено. И затеял дед ревью. Позвал дед бабку, внучку, кота и мышку на семейный совет. И молвит такую тему: «Выросло у нас хранилище. Данные со всех систем стекаются, таблиц видимо-невидимо. Пользователи отчеты свои стряпают. Вроде бы все хорошо – жить да жить. Да только одна печаль – никто не знает, как оно устроено. Дисков требует видимо-невидимо – не напасешься! А тут еще пользователи ко мне ходить повадились с жалобами разными: то отчет зависает, то данные устаревшие. А то и совсем беда – приходим мы с отчетами к царю-батюшке, а цифры-то между собой не сходятся. Не ровен час – разгневается царь – не сносить тогда головы – ни мне, ни вам. Вот решил я вас собрать и посоветоваться: что делать-то будем?».
Читать дальше →

Особенности применения Scrum в заказной разработке

Время на прочтение3 мин
Охват и читатели16K
В этой статье я расскажу об особенностях Scrum в заказной разработке, которая отличается от «тепличных» условий внутренней разработки. Можно ли применять Scrum в условиях рынка и на что надо обратить внимание прежде всего. Добро пожаловать под кат и в комментарии.

Читать дальше →

Применение agile при разработке проекта для государственного заказчика

Время на прочтение7 мин
Охват и читатели14K
При работе с госзаказчиком или крупными коммерческими организациями с государственным участием часто наблюдается гадкая проблема: они обязаны размещать свои заказы и принимать их результаты в рамках строго определённых процедур. Добавим к этому вторую проблему: конечные пользователи в крупных организациях, как правило, очень занятые люди, и доступ исполнителя к ним весьма ограничен. Как построить agile-процесс в таких условиях?

На деле да, agile можно применять в fix-price. Одно из решений недавно было предложено ldmitry в статье «Agile с фиксированной стоимостью — это реально».

Мы воспользовались другим, более «классическим» способом: абстракцией. Поскольку заказчик в нашем случае является слабым звеном, применим абстракцию в отношении именно заказчика. Для этого мы должны ввести в проект очень аккуратного и грамотного специалиста, умеющего работать как с требованиями заказчика, так и с техническими вопросами. У нас этим занимается системный архитектор, контролирующий концепцию проекта и потому по роду деятельности чаще занимающий внутри проекта сторону заказчика, чем сторону команды проекта. Именно этот человек будет работать с заказчиком в рамках внешней fix-price-оболочки проекта и являться product owner-ом для внутреннего процесса. Заказчик абстрагируется от внутренних процессов исполнителя, но его видение результата проекта всегда совпадает с видением исполнителя.
Читать дальше →

Agile с фиксированной стоимостью — это реально

Время на прочтение6 мин
Охват и читатели14K
image

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

Что происходит дальше? Если посмотреть со стороны на отношения заказчиков и аутсорсеров, то в 90% случаев они напоминают два враждующих лагеря. Одни обвиняют друг друга в вечном срыве сроков и завышении бюджетов, другие — в непрофессионализме и “саминезнаютчегохотят”.

Послушав очередные жалобы на эту тему, захотелось поделиться своим опытом заказной разработки в качестве менеджера проектов. Речь пойдет об истории 2009-2011 года. Заинтересованные в практических вопросах приглашаются в комментарии.
Читать дальше →

Как мы оцениваем проекты

Время на прочтение5 мин
Охват и читатели5.4K
У клиентов бюджет не бесконечный. Прежде чем они решат разрабатывать проект, очевидно, они должны быть уверенны что смогу покрыть расходы на разработку. Так как клиенты платят нам за каждый час работы, клиенты обычно спрашивают меня какой подход мы используем в оценке проекта – как мы не даем клиенту сойти с ума когда говорим им что не скажем точной цены.

За последние 5 лет нашей работы в консалтинге этот процесс довольно часто менялся, но последние два года мы используем тот что описан ниже.
Читать дальше →

Что такое CRM-системы и как их правильно выбирать?

Время на прочтение20 мин
Охват и читатели1.1M

Введение


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

PHPUnit и его Database Extension. Беглый взгляд

Время на прочтение7 мин
Охват и читатели7.4K

Пространное и многословное вступление


Уже чуть более года в проекте где я работаю ходят разговоры о модульном тестировании. Помимо разговоров неоднократно делались попытки превратить эти разговоры в жизнь. Все попытки на данный момент закончились тем, что ни один ранее написанный модульный тест не прогоняется в процессе разработки. Все они лежат мертвым кодом в недрах нашей системы. Представили такой себе постсоветский индастриэл? Торчащие колонны из земли, ржавая арматура на фоне хмурого неба:)

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

Читать дальше

15 лучших JavaScript-библиотек для построения диаграмм и сводных таблиц

Время на прочтение6 мин
Охват и читатели314K
Практически невозможно представить себе информационную панель без диаграмм и графиков. Они быстро и эффективно отображают сложные статистические данные. Более того, хорошая диаграмма также улучшает общий дизайн вашего сайта.

В этой статье я покажу вам некоторые из лучших JavaScript библиотек для построения диаграмм/схем (и сводных таблиц). Эти библиотеки помогут вам в создании красивых и настраиваемых графиков для ваших будущих проектов.

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

Читать дальше →

Краткий конспект по языку JavaScript

Время на прочтение15 мин
Охват и читатели117K
Я —.NET разработчик. Но в последнее время всё чаще сталкиваюсь с JavaScript. Причём, процентах в 50 случаев я что-то на нём пишу, в остальных 50 — разбираюсь с чужим кодом, да ещё и прошедшим через минификацию, а иногда и обфускацию. В этой статье захотелось поделиться теми моментами, которые мне показались важными для понимания языка и эффективной работы с ним. Тут не будет ничего нового или неизвестного для людей, уже имевших дело с языком, и не будет чего-то такого, чего нельзя найти в других источниках. Для меня статья будет полезна как способ лучше разобраться в предмете, для читателей, я надеюсь, — как повод освежить знания.

Брендан Айк упоминал, что JavaScript был создан за 10 дней. Думаю, идея вынашивалась дольше. Как бы то ни было, язык получился и с тех пор только набирает популярность. Особенно после появления AJAX.

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

JavaScript состоит из трёх обособленных частей:

  • ядро (ECMAScript),
  • объектная модель браузера (Browser Object Model или BOM),
  • объектная модель документа (Document Object Model или DOM).


В статье, в основном, пойдёт речь о ядре. Конечно, в примерах кода будут использоваться элементы DOM и BOM, но заострять на них внимание не буду.
Читать дальше →

9 признаков сильного лидера в области IT

Время на прочтение3 мин
Охват и читатели22K
image

Сейчас быть IT-лидером – это далеко не то же самое, что быть им 10 или даже 5 лет назад. Для IT-лидера недостаточно очень хорошо разбираться в современных технологиях. О том, какими качествами должен обладать руководитель в области IT, в переводной статье от Toni Bowers.
Читать дальше →

Медовый месяц менеджера: как его провести с пользой

Время на прочтение7 мин
Охват и читатели60K
«Специалист подобен флюсу: полнота его одностороння». (Козьма Прутков)

Как в нашей отрасли происходит назначение на позицию менеджера? Берем в команде лучшего программиста и тут же назначаем вначале проясняем ситуацию:
— Хочешь быть менеджером?
— А чего нужно делать?
— Ну, там колбаски в MS Project двигать и получать плюс 300 баксов?
— Конечно, буду!

После чего немедленно происходят две вещи: компания теряет хорошего программиста и приобретает плохого не вполне опытного менеджера. А старик Демарко со своей компанией друзей-консультантов потом начинает рассказывать, что «проблемы проектов имеют под собой природу скорее социологическую, нежели технологическую».

Результаты нашего недавнего исследования еще раз ткнули в эту нашу отраслевую специфику:
  • Более 50% людей считают, что их руководитель не умеет работать с людьми

Что и побудило написать эту статью.

Общий эффект от перехода в менеджеры усиливается еще тем, что наш брат-айтишник обычно вначале включает электроприбор («если я мультипоточность на Java реализую, чего — я со стиральной машиной не разберусь?»), а в случае неполадок начинает читать инструкцию. То бишь, начинает изучать науку работы с людьми, когда первые шишки не просто набиты, а поверх них набиты еще два слоя шишек.

Между тем, назначение нового человека на позицию менеджера – ситуация болезненная и крайне неустойчивая. Почему так происходит, и главное что конкретно делать, если назначили именно вас – сегодня и поговорим.
Читать дальше →

Zend Framework 2: Service Manager

Время на прочтение7 мин
Охват и читатели22K

Service Manager (SM, CM) в ZF2.


Service Manager — это один из ключевых компонентов Zend Framework 2, который существенно облегчает жизнь разрабочика избавляя его от дублирования кода и рутинных операций по созданию и настройки сервисов, позволяя их конфигурировать на максимально высоком уровне. СМ, по своей натуре, является реестром сервисов, основная задача которого — создание и хранение сервисов. Можно сказать, СМ является очень продвинутой версий компонента Zend_Registry из Zend Framework 1.
СМ реализует паттерн Service Locator. Во многих частях приложения (например, в AbstractActionController) можно встретить функции getServiceLocator(), которые возвращают класс Zend\ServiceManager\ServiceManager. Такое несоответствие названия метода и возвращаемого типа легко объясняется тем, что getServiceLocator() возвращает объект, реализующий интерфейс ServiceLocatorInterface:
Читать дальше →

iPhone всех времен и народов: сравнение производительности

Время на прочтение1 мин
Охват и читатели55K

С каждым поколением айфоны становятся все быстрее и быстрее. Apple заявляет, что iPhone 5S в 40 раз быстрее первого iPhone. Однако, насколько же такое увеличение производительности проявляется в повседневном использовании? Это один из древнейших вопросов, над которым бьются ученые и мудрецы. Безуспешно.

Ладно, пусть на самом деле не так. Но согласитесь, было бы здорово собрать вместе все айфоны и посмотреть, что из этого выйдет.

Собрав вместе все восемь поколений iPhone, выпущенных с 2007-го и кучу дополнительных рук для синхронности, ребята с youtube-канала EverythingApplePro устроили сравнительный тест, показывающий, насколько быстро каждый аппарат справляется с основными действиями: от загрузки системы, до загрузки сайта.
Читать дальше →

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

Время на прочтение4 мин
Охват и читатели421K

Предисловие


imageНе знаю, все ли программисты всесторонне любознательные люди, но я всегда пытаюсь получить фундаментальные знания во всех областях, которые могут быть практически полезны. В то время, когда мне в голову пришла эта идея я изучал анатомию и физиологию по журналам «Тело человека. Снаружи и внутри», ну а по работе я занимался стерео-варио фотографиями (для тех кто не знает — были такие советские календарики с ребристой поверхностью, где картинка либо казалась объемной, либо менялась). Так вот, в один из вечеров мне пришла в голову замечательная идея, которую я на протяжении уже 4х лет использую для поддержания своего зрения.
Обещаю, что эффект почувствуете сразу!
Читать дальше →

Racing technologies: Electronic Control Unit

Время на прочтение3 мин
Охват и читатели8.8K
Привет, коллеги! image
Сегодня я немножко отклонюсь от традиционных для меня тем информационной безопасности и расскажу про электронику, с которой я работаю в свободное время: системы управления двигателем гоночных автомобилей.
Но начнем с описания ситуации в целом. В автоспорте, как собственно и во многих других технических видах спорта, довольно часто результат зависит не только от спортсмена, но и от «снаряда» который он использует. Поэтому требуется профессиональный подход к подготовке и настройке болида. Конечно же, нюансов очень много. Но если грубо разделить его на части, то это будет настройка шасси и настройка двигателя. Сегодня хотелось бы рассказать вам, какая электроника используются при работе с «сердцем» гоночных автомобилей.
Читать дальше →

Алгоритм + толпа — этого недостаточно

Время на прочтение5 мин
Охват и читатели2.3K
В последнее десятилетие онлайновым миром управляли две родственные силы: Толпа и Алгоритм. Коллективные «пользователи» интернета (Толпа) создают контент, кликают и голосуют, в то время как математические уравнения привносят масштабируемость и возможность поиска по этому огромному массиву данных (Алгоритм).



Словно луна над океаном, взаимодействие этих двух сил создаёт волны популярности (и забвения) в интернете. Информация более доступна, полезна и эгалитарна, чем когда бы то ни было.

Но со временем (по крайней мере, мне) стали видны слабости системы «алгоритм+ краудсорсинг». Следующая революция кажется неотвратимой.
Читать дальше →

Для тех, кто хочет научиться воспринимать английский на слух

Время на прочтение1 мин
Охват и читатели7.5K
Для того, чтобы научиться воспринимать иностранную речь на слух, нужно много слушать. Правда, толку от этого будет немного, если вы не будете понимать, что люди говорят. Важно, чтобы мозг устанавливал связи между словами и их звуковыми образами. Для этого нужно слушать с субтитрами и текстовками, и слушать то, что соответствует вашему уровню и то, что вы способны понять на родном языке.
Читать дальше →

Hadoop: что, где и зачем

Время на прочтение14 мин
Охват и читатели543K


Развеиваем страхи, ликвидируем безграмотность и уничтожаем мифы про железнорождённого слона. Под катом обзор экосистемы Hadoop-а, тенденции развития и немного личного мнения.
Читать дальше →

Выразительный JavaScript: Структуры данных: объекты и массивы

Время на прочтение22 мин
Охват и читатели151K

Содержание




Два раза меня спрашивали: «Скажите, м-р Бэббидж, а если вы введёте в машину неправильные данные, получится ли правильный ответ?». Непостижима та путаница в головах, которая приводит к таким вопросам.

Чарльз Бэббидж, «Отрывки из жизни философа» (1864)


Числа, булевские значения и строки – кирпичики, из которых строятся структуры данных. Но нельзя сделать дом из одного кирпича. Объекты позволяют нам группировать значения (в том числе и другие объекты) вместе – и строить более сложные структуры.

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

Глава пройдётся по более-менее реалистичному примеру программирования, вводя понятия по мере необходимости. Код примеров будет строиться из функций и переменных, которые мы определяли ранее.
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность