Рубрика «Программирование» - 485

Пролог

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

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

Теперь я хочу рассказать, как можно качественно сформировать сами требования, ведя Заказчика от его «хотелок», к его счастливому и плодотворному сожительству с программным продуктом, его мечты.
Читать полностью »

Прототип проекта стоимостью $86 миллионов в 57 строках кода - 1

Сегодня очень много хороших конкурентных систем создается отдельными разработчиками, а не только большими компаниями. Как правило, это копирование на базе эталонного решения (продукт корпорации) с последующей оптимизацией. В таком случае выигрывают все: компании – от здоровой конкуренции, разработчики – от развития технических навыков и получения опыта, потребители – от новых возможностей и решений.

Представлюсь: меня зовут Иван Греков, я из фронтенд-команды Badoo. Мне очень понравился этот пост, я просто не смог пройти мимо и не перевести его. Этот пост – отличный источник вдохновения для любителей прототипирования устройств и open-source-решений. Перевод публикуется с сохранением авторской точки зрения и, надеюсь, будет интересен вам.

Читать полностью »

В предыдущей статье мы описали деплой контрактов и взаимодействие с ними через пользовательский интерфейс кошелька Mist, но это не подходит для реальной разработки. Нужна библиотека, которая позволит работать с блокчейном из кода пользовательского приложения. В этой статье мы кратко рассмотрим что представляет собой библиотека Web3.js, пощупав ее из консоли Geth. И еще одна важная тема, которая наверняка интересует не только разработчиков, но и потенциальных заказчиков — сколько стоят транзакции на блокчейне, ведь каждая из них требует газа, который покупается за эфир.

Погружение в разработку на Ethereum. Часть 2: Web3.js и газ - 1

Читать полностью »

Доброго времени суток Хабр. Вдохновленный моделью синхронизации потоков в go и сигналов в QT появилась идея реализовать нечто подобное на c#.

image

Если интересно, прошу под кат.
Читать полностью »

Привет!
Сегодня публикуем интервью с Ником Сатерером. Ник создатель Trailblazer, автор нескольких гемов и новых слоев абстракции в Rails, Rails contributor. Накануне RailsClub 2017, где Ник будет делать доклад, Дмитрий Матвеев пообщался с ним о его работе и взглядах на развитие Rails.

imageЧитать полностью »

Уже в эту субботу в московском офисе Avito пройдёт чемпионат по PostgreSQL. Это соревнование по управлению базами данных с практическими задачами. Мы реализовали его на платформе, полностью собранной из опенсорс-компонентов. Протестировали уже на двух внутренних соревнованиях (получилось интересно), и теперь готовимся к тому, чтобы провести #PGHACK для всех желающих постгресменов (мы ещё принимаем заявки на участие, ссылка в конце текста). В этом посте я расскажу о том, как мы готовили платформу для чемпионата.
Чемпионат #PGHACK. Платформа - 1

Читать полностью »

Привет! Представляю вашему вниманию перевод статьи Understanding Publish, Connect, RefCount and Share in RxSwift.

Примечание переводчика.
В оригинале статьи используется Swift второй версии и соответствующая версия RxSwift. Я имел смелость переписать приведенные ниже куски кода под Swift 3.
Так же хочется отметить, что такие понятия, как Observable и Sequence, можно считать одним и тем же. То же касается Observer и Subscriber.

В этой статье я постараюсь объяснить такие операторы для работы с Connectable Observable в RxSwift, как publish, connect, refCount и share. Они используются вместе в различных комбинациях. Очень важно понимать разницу между:

  • publish().connect()
  • и publish().refcount() (или просто share())

Активные и пассивные Observables

Прежде чем перейти к сути, мне хотелось бы сказать пару слов о hot и cold Observables. Как по мне, так понятия горячих и холодных Observables немного размыты.

Давайте горячий Observable мы будем называть Active Sequence, а холодный Passive Sequence.

  • Active Sequence эмитит элементы постоянно, независимо от того, подписан на нее кто-нибудь или нет
  • Passive Sequence начинает эмитить элементы по запросу

Примером Passive Sequence может служить запрос в сеть, который начинается только тогда, когда мы подписались на последовательность. Примерами Active Sequence могут служить web-socket соединение, события таймера или текст, производимый UITextField'ом.

И это все. Думайте об активных и пассивных последовательностях. Понятия горячих/холодных/теплых/прохладных Observables слишком запутанны и могут сбить с толку.
Читать полностью »

Как новичок в Go контрибьютил - 1
Rocky Runs Up The Stairs

Привет. Вы, наверно, меня помните: я – Марко Кевац, системный программист в Badoo. Недавно я наткнулся на небольшой рассказ о том, как новичок сделал изменение в рантайме языка Go. Несмотря на то, что этот пост, наверное, довольно неожиданно встретить в хабраблоге Badoo, и многие могут сказать, что он банален и переполнен наивной радостью, я считаю, что такие истории демонстрируют, насколько сообщество Go доброжелательно и внимательно по отношению ко всем его участникам. Поэтому и перевел его.

А ещё в посте есть два интересных факта, связанных с внутренностями языка. Приятного чтения!

Читать полностью »

Дайджест докладов с митапов в офисе Mail.Ru Group - 1

За лето в офисе Mail.Ru Group прошли пять митапов, выступлениями с которых мы с вами сегодня поделимся. Каждое видео — доклад, рассказывающий о последних новостях и технологиях в различных областях. Просмотр позволит вам идти в ногу с профессиональными сообществами.

Ниже мы публикуем подборку видео с митапов лета 2017-го:

  • Moscow Data Science Junior, 10.06
  • QA Meetup в Нижнем Новгороде, 06.07
  • MySQL Meetup, 11.07
  • IT-HR Meetup, 19.07
  • Moscow Python Meetup 47, 27.07

Читать полностью »

«Чего-то здесь не хватает». Спорим, что такая мысль первой придёт в вашу голову, если вы увидите моё рабочее место в офисе. Здесь нет монитора и мыши. Есть только парень, который молотит по клавиатуре, глядя словно в пустоту.

Разработка на скорости 450 слов в минуту - 1

Это всего лишь я, и мои коллеги гарантируют вам, что я обычно не опасен. Я программист в офисе компании Vincit в Тампере (Финляндия). И ещё я слепой. В этой статье хочу немного рассказать, как я работаю.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js