Как стать автором
Обновить
7
0
Николай Ладовский @Ekstrem

Бумажный архитектор

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

Инструменты и методы работы, повышающие продуктивность программистов

Время на прочтение8 мин
Количество просмотров11K
В этом материале рассматриваются 5 эффективных инструментов, которые позволяют ускорить разработку программного обеспечения, не ухудшая качество готового продукта. Эти инструменты применимы в самых разных масштабах — от уровня отдельных программистов, до уровня компаний из сферы информационных технологий.

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



В частности, в этом материале мы поговорим о 5 группах таких инструментов. Это — дизайн-системы, линтеры, средства для автоматического форматирования кода, CI/CD-системы и IaaS/PaaS-провайдеры. Всё это позволяет программистам автоматизировать рутинные процессы, а значит, освободить время, необходимое для решения самых важных задач, связанных с разработкой собственных продуктов.
Читать дальше →
Всего голосов 20: ↑16 и ↓4+18
Комментарии3

Советы руководителю на удаленке

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

#1 Доверяйте своим сотрудникам


Многие руководители привыкли к офисному формату, когда они в любой момент могут дойти до сотрудника ногами и выяснить, «чем это он там занимается». У некоторых даже развиваются мысли, что если не приглядывать за сотрудниками, то они сразу перестают работать, целый день сидят в интернете или играют в игры. Менеджеры, вы серьезно?
Если кто-то хочет играть или сидеть в интернете, он вполне может делать это и на своем рабочем месте в офисе.

Прежде всего вы должны доверять своим сотрудникам. Если такого доверия нет, значит, вы выбрали не того сотрудника при найме. Если вы не доверяете своим сотрудникам, что они без вашего присмотра будут лениться, то вы нянька, а не руководитель. И тогда вам действительно стоит задуматься не об удаленной работе, а о других проблемах в вашем подразделении.
Читать дальше →
Всего голосов 9: ↑8 и ↓1+10
Комментарии6

Async programming in .NET: Best practices

Время на прочтение24 мин
Количество просмотров36K
Появление async/await в C# привело к пересмотру того, как писать простой и корректный параллельный код. Зачастую, используя асинхронное программирование, программисты не только не решают проблемы, которые были с потоками, но и привносят новые. Дедлоки и рейсы никуда не пропадают — их просто становится труднее диагностировать.



Дмитрий Иванов — Software Analysis TeamLead в Huawei, в прошлом техлид JetBrains Rider и разработчик ядра ReSharper: структур данных, кэшей, многопоточности, регулярный спикер конференции DotNext.

Под катом — видеозапись и текстовая расшифровка доклада Дмитрия с конференции DotNext 2019 Piter.
Всего голосов 30: ↑30 и ↓0+30
Комментарии6

Логика: предикатная, формальная и сентенциальная. Кванторы и возникновение информатики

Время на прочтение8 мин
Количество просмотров44K

После развития логики работами Буля, Гёделя, Моргана, Лейбница и Фреге, на основе этой дисциплины создаётся новая — информатика. Программирование опирается на базовые законы и операции расширенной логики Аристотеля — предикатной логики, описательная способность которой намного выше. В статье последовательно будет рассмотрено развитие системы логики, её аксиомы, а также связи с информационными технологиями...

Изучить подробнее...
Всего голосов 14: ↑7 и ↓7+5
Комментарии21

Гибкий рой: как спроектировать разделяемую работу для команд разработки ПО

Время на прочтение5 мин
Количество просмотров2.6K

Привет, Хабр! Представляю вашему вниманию перевод статьи "The agile swarm: How to design shareable work for software project teams" автора Stephen Frein.


Bees

Фото: Flickr


Успешные аджайл-команды склонны ограничивать незавершённую работу (НЗП, незавершённое производство). Предпочитают ли они Скрам, Канбан-метод, или какую-либо другую аджайл-методологию, эти команды особенно выделяют над всем остальным быструю разработку полезной функциональности.


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


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

Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии2

Литий: зачем нужен, как добывается и хватит ли его нам?

Время на прочтение5 мин
Количество просмотров109K

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

Например, в металлургии, как черной, так и цветной, — металл применяется для раскисления и повышения пластичности и прочности сплавов. Также с его помощью производят стекла, которые частично пропускают ультрафиолет, он применяется в керамике. И это если не говорить о ядерной энергетике и атомной технике — его используют для получения трития. Короче, литий в буквальном смысле нарасхват. Под катом — поговорим об аккумуляторах, Tesla, способах добычи лития и его дефиците.
Читать дальше →
Всего голосов 37: ↑36 и ↓1+48
Комментарии34

Скрытые расходы при переходе на микросервисы

Время на прочтение7 мин
Количество просмотров17K

В идеальном мире можно просто взять исходный код монолита, разделить его код между микросервисами и, соединив их между собой, получить ту же систему, но на новой архитектуре. В жизни так не происходит никогда. Жизнь вносит множество сложностей в эту идеальную картинку. Какие конкретно сложности могут увеличить бюджет перехода на микросервисы в два-три раза?

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

Читать далее
Всего голосов 36: ↑36 и ↓0+36
Комментарии25

О плюсах парного программирования

Время на прочтение6 мин
Количество просмотров9.6K


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

Парное программирование


Мне кажется, чтобы просто объяснить, как устроено парное программирование, можно привести в пример раллийные гонки. Там есть водитель (драйвер) и штурман (навигатор). Водитель сосредоточен непосредственно на управлении автомобилем. Штурман же контролирует на каком участке мы сейчас едем, и подсказывает пилоту о предстоящих поворотах и трамплинах.

Так же и в парном программировании.
Читать дальше →
Всего голосов 18: ↑17 и ↓1+29
Комментарии17

Микросервисная архитектура, Spring Cloud и Docker

Время на прочтение14 мин
Количество просмотров260K

Привет, Хабр. В этой статье я кратко расскажу о деталях реализации микросервисной архитектуры с использованием инструментов, которые предоставляет Spring Cloud на примере простого концепт-пруф приложения.



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

Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии32

Индустрия 4.0. Горно-обогатительный комбинат. Что первично — задачи или данные?

Время на прочтение3 мин
Количество просмотров4.5K


Раньше при старте автоматизации ставились цели и сроки завершения работ по автоматизации. С некоторых пор у автоматизации нет ни начала ни конца.

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

Принципиальный вопрос: что первично — решаемые задачи или данные?

Далее рассматривается подход, позволяющий рационально воспользоваться потенциалом Индустрии 4.0 и избежать чрезмерных затрат.

Кроме того, цель предлагаемого подхода — не попасть в ловушку ERP: сделаем «единый источник правды», что решит большинство задач бизнеса.
Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии2

«Kubernetes для разработчиков»: трехдневный интенсив

Время на прочтение2 мин
Количество просмотров4.2K
image

Спикеры Слёрма готовят обновленный интенсив, в котором не будет тем для администраторов. Мы убрали тему про обслуживание кластера и сосредоточились на особенностях разработки ПО в Kubernetes. В программе только то, что действительно нужно современному разработчику на проектах с K8s.
Читать дальше →
Всего голосов 15: ↑11 и ↓4+10
Комментарии0

Разбираемся с middleware в ASP.NET Core

Время на прочтение6 мин
Количество просмотров72K

Этой статья раскрывает концепции Middleware в ASP.NET Core. К концу этой статьи вы получите четкое представление о следующих моментах:

- Что такое Middleware?

- Почему порядок расположения Middleware имеет значение?

- Методы Run, Use и Map.

- Как создать собственное Middleware?

- Как реализовать просмотр каталогов с помощью Middleware?

Приступить к прочтению!
Всего голосов 9: ↑8 и ↓1+7
Комментарии6

Что нового в C# 9.0

Время на прочтение9 мин
Количество просмотров22K
В преддверии старта нового потока курса «C#-разработчик» представляем вашему вниманию обзор нововведений. Среди них — новый метод доступа к свойству — init, не позволяющий изменять свойства после инициализации, with-выражения для изменения свойств объекта прямо здесь и сейчас, записи и новые возможности сопоставления шаблонов. Подробности, конечно же, под катом.


Приятного чтения!
Всего голосов 32: ↑25 и ↓7+28
Комментарии167

Хороший договор — короткий договор

Время на прочтение8 мин
Количество просмотров29K

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

Большинство договоров пишут юристы, а руководители, продажники и клиенты, похоже их не читают. Да их и невозможно прочесть. Много ли людей читают договор с банком или лицензионное соглашение?! Или договор с оператором сотовой связи или провайдером?! Скучное и бесполезное занятие. Всё равно на текст договора чаще всего никак не повлиять в крупных компаниях.  

Юристы зачем-то пишут скучнейшим и малопонятным языком, копируют в договор тексты законов. Вероятно их цель, чтобы читатель заснул и не переварил написанного. Или им платят за 1000 знаков, а не за смысл. В тоже время многие российские законы написаны вполне человеческим и понятным языком и имеют хорошие нормы права по умолчанию.

Предлагать клиентам подписать договор, который бы не хотел подписывать сам — хамство.

У нас был договор написанный простым и понятным языком. Но жизнь не стоит на месте и коллеги сказали, что нужен новый договор. И что нужно обязательно обратиться к юристу, чтобы всё профессионально было. Обратились. Получили скучнейшую простыню как у всех. Читать невозможно. 

Читать далее
Всего голосов 48: ↑39 и ↓9+48
Комментарии174

Start Up: Организационные и технические аспекты запуска в крупной IT-компании

Время на прочтение10 мин
Количество просмотров3.8K

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


image


В этой статье мы поделимся опытом запуска стартапа в компании — системном интеграторе ОТР2000 с точки зрения выбора и внедрения гибкого подхода к разработке протестированных и
работоспособных программных продуктов.

Читать дальше →
Всего голосов 3: ↑2 и ↓1+5
Комментарии0

Сравнительный обзор смарт-карт ридеров: критерии и оценки

Время на прочтение18 мин
Количество просмотров14K

Рекомендации по сравнению и выбору правильного смарт-карт ридера


Данная статья содержит краткое введение в проблематику смарт-карт ридеров (их устройство, классификация, определение параметров для сравнения), предлагает набор критериев и методику для сравнения и анализа конкурирующих продуктов.


Обзор смарт-карт ридеров

Читать дальше →
Всего голосов 6: ↑4 и ↓2+6
Комментарии6

Разработка и исполнение бизнес-процесса «Разработка программного обеспечения» в Bizagi BPM

Время на прочтение6 мин
Количество просмотров11K

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

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

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

Неисполняемые бизнес-процессы нужны исключительно для демонстрации какой-либо бизнес-модели. Это может быть диаграмма, отображающая реальное положение дел на предприятии, может быть наглядной иллюстрацией к предложенным изменениям при реинжиниринге. В этом случае, конечно, можно использовать любые удобные инструменты, в том числе, традиционный для многих IDEF0, или декомпозиция IDF0 до уровня потока работ (EEPC). А соблюдение правил языка моделирование необходимо исключительно для достижения взаимопонимания.

Читать далее
Всего голосов 6: ↑4 и ↓2+4
Комментарии0

Почему Camunda не попала в Магический квадрант (MQ) Gartner в направлении iBPMS

Время на прочтение4 мин
Количество просмотров5.6K
image

Недавно Gartner опубликовали последнюю версию своего отчета Магический квадрант для умных пакетов управления бизнес-процессами (iBPMS). Вы не найдете Camunda BPM ни в этом отчете, ни в их записи в блоге. Я хочу объяснить почему.

Читать дальше →
Всего голосов 6: ↑4 и ↓2+5
Комментарии5

Почему мы занимаемся ИТ-аутстаффингом персонала и не стыдимся этого

Время на прочтение14 мин
Количество просмотров25K
Привет! Меня зовут Корсунов Глеб, я отец российского ИТ-аутстаффинга или директор по развитию в Holyweb. Мы помогаем продуктовым командам, которые используют на проектах JavaScript (от React до Node), PHP, Golang, Java и Python, укладываться в спринты и выпускать релизы в срок. Как понимаете, мы любим аутстаффинг, а вы?



Аутстаффинг — это тема, от которой у многих коллег по рынку сразу начинает пригорать. Считается, что «сдача персонала в аренду» — это нечто недостойное, чем занимаются не от хорошей жизни. По большинству сайтов веб-разработчиков нельзя понять, работают они по такой модели или нет. Но даже если и работают, либо говорят об этом завуалированно, либо маскируют за какими-то другими названиями — усиление, масштабирование команды, time & material и т.д.

Судите сами: на Хабре мы насчитали 3к материалов про аутсорсинг, заказную разработку, продуктовую разработку и тд, и меньше 50 публикаций про аустаффинг. Как это вообще возможно?

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

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

  • Аутсорсинг, аутстаффинг — а в чем вообще разница?
  • С какими клиентами есть смысл работать по аутстафф-модели?
  • Почему аутстафф нравится нам больше, чем аутсорс?
  • Почему клиенту аутстафф приятней, чем аутсорс или инхаус?
  • В каком случае веб-студии / продакшну лучше не пытаться в аутстафф?

Поехали!
Читать дальше →
Всего голосов 17: ↑8 и ↓9+2
Комментарии34

Проектные решения: игра по твоим правилам

Время на прочтение27 мин
Количество просмотров24K
Не секрет, что чем крупнее программный проект, тем больше его успех зависит от результатов работы аналитиков, в частности, от выбора правильной стратегии составления и согласования проектных решений. Однако как организовать работу этих творческих сотрудников? И как сделать так, чтобы результаты их деятельности были одинаково понятны как  представителям заказчика, так и программистам? Как оценить возможные сроки выполнения и значимость этой работы для проекта? В этой статье я попытался сформулировать свои рецепты оптимизации управления аналитической работой на проектах по созданию программного обеспечения для государственных заказчиков. Приветствуется любая критика.

Источник
Читать дальше →
Всего голосов 35: ↑35 и ↓0+35
Комментарии3

Информация

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