Рубрика «разработка» - 238

В некоторых языках существует возможность вызова функции с именованными параметрами. Такой способ позволяет указать аргумент для определённого параметра, связав его с именем параметра, а не с позицией. Это возможно, например, в C# или Python.

Рассмотрим «игрушечный» пример на Python с использованием именованных аргументов:

#вычислим объем параллелепипеда
#если значение стороны не указано, то считаем что оно равно единице
def volume(length=1, width=1, height=1): 
  return length * width * height; 
print(volume())                            # V = 1 
print(volume(length=2))                    # V = 2 
print(volume(length=2, width=3))           # V = 6 
print(volume(length=2, width=3, height=4)) # V = 24

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

Ниже я покажу, как можно сымитировать использование именованных аргументов в C.
Читать полностью »

Как написать хорошую демку - 1

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

Привет!

Опыт построения команды Big Data - 1

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

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

Этой публикацией я начинаю цикл аналитических статей по анализу необходимых и востребованных навыков для различных специализаций на российском и зарубежном IT-рынке.Читать полностью »

Редакция издания «Медуза» подготовила публикацию на Medium, посвященную работе редакции над новостями в специально разработанной для этого административной панели, называемой «Монитор». Как отмечается в публикации — это уже вторая, исправленная и дополненная, версия редактора публикаций.

До детализации по разделам, Илья Красильщик — автор материала и по-совместительству издатель «Медузы», перечисляет четыре основных пункта, на которых стоит заострить внимание каждому, кто будет разрабатывать нечто подобное:

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

ETL – аббревиатура от Extract, Transform, Load. Это системы корпоративного класса, которые применяются, чтобы привести к одним справочникам и загрузить в DWH и EPM данные из нескольких разных учетных систем.

Вероятно, большинству интересующихся хорошо знакомы принципы работы ETL, но как таковой статьи, описывающей концепцию ETL без привязки к конкретному продукту, на я Хабре не нашел. Это и послужило поводом написать отдельный текст.
Читать полностью »

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

Как мы строим систему обработки сообщений - 1

По каналам связи устройства присылают сообщения на наш шлюз (gateway) – входную точку приложения. Задача приложения – разобраться, что именно пришло, произвести необходимые действия и сохранить информацию в базе данных для дальнейшего анализа. Базу мы будем рассматривать как конечную точку обработки. Звучит просто, но с ростом количества и разнообразия сообщений появляется несколько нюансов, которые я и хочу обсудить.
Читать полностью »

Вопросы про индексы, которые вам не надо будет задавать - 1

После ответов на 14 вопросов об индексах, которые вы стеснялись задать, у меня возникло гораздо больше комментариев, уточнений и исправлений. Скомпилировать из всего этого статью выглядело затеей с минимумом пользы. И это заставило меня призадумался, а почему вообще мы должны «стесняться задавать» подобные вопросы? Стыдно не знать? А есть ли способ разобраться, не вгоняя себя в краску? Есть. Причем он избавит от многочисленных неточностей, которыми изобилуют многие «ответы». Вы будете чувствовать буквально каждый байт вашей базы кончиками своих пальцев.

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

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

Недавно я прочитал книгу Алана Купера «Психбольница в руках пациентов». Из нее мне удалось почерпнуть ряд идей на тему «как улучшить разработку». Ниже ряд рекомендаций из книги, которые я беру на вооружение.
Вдохновил меня Milfgard вот этим постом. Попробую прочитать все интересные для меня книги из этого списка.

Выжимки из «Психбольницы в руках пациентов» - 1
Читать полностью »

Добрый день, уважаемыее!

image

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

В феврале мы планируем выложить проект на платформе Kickstarter. Сам по себе продукт обещает быть интересным (очень на это надеемся по крайней мере). В связи с тем, что трекеры эмоциональной активности пока не очень распространены на рынке, попробую остановиться поподробнее, что это вообще такое и для чего нужно.Читать полностью »


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