Рубрика «фичи»

Все оценки сроков разработки ПО — ложь - 1

▍ Разработка ПО — это исследование

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

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

Hola, Amigos! На связи Игорь Мельников, Frontend-разработчик компании Amiga. Возможно, вы уже слышали про технологии, которые я описываю в статье, но не использовали их, потому что думали, что они не поддерживаются актуальными браузерами. Теперь можете смело брать их во всеоружие и применять в своих проектах! 

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

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

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

Стилевой гид это не просто негласный договор разработчиков – за многими из правил стоит любопытная предыстория. Почему стрелка <- лучше знака равенства =, почему старожилы R не любят нижнее подчеркивание, как рекомендуемая длина строки связана с перфокартой, и о многом другом – далее.
Читать полностью »

image

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

У меня как-то исторически не сложилось с семейством STM32F030, лет 5 назад попробовал поработать с ними и долго удивлялся корявости работы большей части периферии, а потом забил на них. И вот на днях мне все таки пришлось вернуться к данной серии, нужно было измерять за минимальные деньги постоянное напряжение на свинцовом АКБ (или сборке до 4 штук последовательно) от 8 до 60В с точностью не хуже ±0.1В с небольшой частотой опроса.

Решение задачи «в лоб» позволило достаточно точно измерять напряжение только когда на входе АЦП значение больше 1,5...1,6В, то есть только во второй половине диапазона, что для меня означало 30...60В вместо требуемых 8...60В. Основная проблема была в интервале 0...1.6В, выглядело это все как будто у меня делитель напряжения «плавал» или опорное напряжение для АЦП (Vref) было крайне нестабильным.

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

Управляем генератором или борьба с АЦП в STM32F030 - 1
Читать полностью »

Java — удивительно универсальный язык программирования. На сегодняшний день насчитывается около 6.5 млн разработчиков Java по всему миру. И все благодаря его утилитарности, простоте использования, безопасности и независимости платформы (он работает вне зависимости от того, какое оборудование или операционная система используются).

Java была разработана в 1995 году компанией Sun Microsystems и изначально создавалась для интерактивного телевидения и программирования бытовых электронных устройств. Тем не менее, публичный релиз Java 1.0 выявил смену фокуса на интернет-использование, превратив его в один из самых популярных языков программирования.

Очевидно, со времен 1.0 многое изменилось и вот наконец после множества переносов 21 сентября 2017 года состоялся релиз Java 9.

Особенности предыдущей (8-й) версии благодаря своей универсальности предоставили разработчикам возможность создавать решения для самых разных секторов бизнеса, включая финтех, здравоохранение и другие индустрии. Среди ключевых нововведений Java 8 следует отметить лямбда-выражения, стримы и изменения в API.

В свою очередь Java 9 также изобилует разнообразием обновлений “под капотом” и в API. Кроме очевидного проекта Jigsaw, на который возложена обязанность по внедрению модулярности в основные компоненты Java, новая версия может похвастаться ещё тремя важными фичами:

  1. Полная поддержка клиента HTTP 2.0: Вопрос в скорости, и HTTP 2.0 предоставляет более высокие результаты, колеблющиеся от 11.81% до 47.7% по сравнении с клиентом HTTP 1.1.
  2. Jshell: Новый инструмент командной строки. Если разработчик хочет автономно запустить несколько строк Java, то это можно выполнить без необходимости заворачивать все в отдельный метод или проект.
  3. Microbenchmark: Теперь производительность отдельных небольших частей кода можно измерить стандартизированным методом. Анализ JMH за наносекунды уникален для Java 9.

JAVA 9. Что нового? - 1
Читать полностью »

Сейчас проходит Data Science Game — международное студенческое соревнование по анализу данных. Ребята из МГУ выиграли отборочный этап, а затем рассказали о своём решении на одной из наших тренировок по машинному обучению.

Под катом — расшифровка и большинство слайдов.

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

Новые возможности C#, которые можно ожидать в ближайшее время - 1

В апреле 2003-его года был выпущен C# 1.2 и с тех пор все версии имели только major версию.
И вот сейчас, если верить официальной страничке roslyn на github, в работе версии 7.1 и 7.2.
Читать полностью »

Возможные нововведения C# - 1

Вы должно быть знаете, что в последнее время Microsoft старается общаться с сообществом, получать как можно больше отзывов и внедрять их в жизнь. Не обошла эта мода и команду разработчиков C#. Разработка новой версии языка определенно не идет за закрытыми дверями…

Статья Mads Torgersen под названием What’s New in C# 7.0 уже разобрана вдоль и поперек. Но есть что-то, что в ней не было упомянуто.
Читать полностью »

Майкл Прайор, Trello: Как построить продукт для массового рынка. Продолжение - 1

Вы тоже устраиваетесь в кресле поудобнее, когда создатель крупного продукта рассказывает о своих ошибках? Тогда читайте продолжение занятного интервью с исполнительным директором Trello. Майкл Прайор честно поведал о сложностях позиционирования, о тонкостях монетизации, о неожиданных открытиях и о том, что бы он изменил в прошлом. А потели над переводом этой беседы переводчики компании-локализатора Alconost.
Читать полностью »


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