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

Как вы уже знаете, MongoDB — это одно из наиболее развитых, open-source NoSQL решений, которое представляет собой документо-ориентированную базу данных, является кросс-платформенным, а также обеспечивает высокую производительность, доступность и простоту масштабирования.

В современных open-source веб-приложениях использование NoSQL решений получило свою популярность в связи с их нереляционным поведением. В данной статье шаг за шагом мы реализуем простое ASP.NET Core Web API приложение «записной книжки», которое будет поддерживать операции CRUD применимо к коллекции в MongoDB.Читать полностью »

image

Вряд ли кто-то будет оспаривать, что в любом совместном начинании важна команда. В Моторике собрались люди с разными экспертизами и опытом, у нас есть программисты, электронщики, производственники и дизайнеры. Тем не менее мы всегда рады новым комрадам, которые появляются в нашей лаборатории. Иногда этим «свежим мозгам» удается решить задачи, над которыми мы бились не один день, а то и не одну ночь. Сегодня как раз время такой истории о Тане.

В конце статьи важная информация для тех, кто хочет стать лагерным программистом.
Читать полностью »

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

Кто вы? Как научились программировать? К чему стремитесь? 20000 ответов - 1


Проект freeCodeCamp провёл опрос 2017 New Coder Survey, в котором приняли участие более 20000 человек со всего мира. Эти данные, содержащие ответы респондентов на примерно 50 вопросов, выложены в открытый доступ на GitHub (Open Data Common License).

Собранные результаты позволяют исследователям, которые занимаются вопросами компьютерного образования среди взрослых, узнать немало интересного. Полагаем, эти данные заинтересуют многих, нам остаётся лишь догадываться о том, какие открытия будут сделаны на основе их анализа.

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

Проверим на примере: пишем сервис с аэропортами и направлениями.

defmodule Airport do
  defstruct [:id, :name]
end

defmodule Direction do
  defstruct [:origin, :destination]

  def example do
    madrid = %Airport{id: "MAD", name: "Madrid"}
    riga = %Airport{id: "RIX", name: "Riga"}
    %Direction{origin: riga, destination: madrid}
  end
end

Пока что всё в порядке. Отлично, съели печеньку, смотрим, что дальше в джире. Список самых популярных направлений?

Добавление to_string упрощает разработку и дебаг кода на Elixir'е - 1Читать полностью »

Когда мы начали рассказывать про свой OpenSource акторный фреймворк для C++ на Хабре, мы пообещали описывать некоторые особенности деталей реализации SObjectizer-а. Одна из новых фич, которая была реализована в недавно вышедшей версии 5.5.19, отлично подходит для такого рассказа. Кроме того, она интересна еще и тем, что нам пришлось взглянуть на сценарии использования SObjectizer с совершенно другой стороны. Можно даже сказать, что один из наших шаблонов оказался разорванным.

Речь идет о возможности SObjectizer-а выполнять все свои действия на одной единственной рабочей нити. Начиная с версии 5.5.19 использовать Actor- и Publish/Subscribe модели можно даже в однопоточном приложении. Понятное дело, что акторы должны будут работать в режиме кооперативной многозадачности, но в каких-то случаях именно это и требуется.

А где может потребоваться использовать акторов в однопоточном приложении?

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

Как известно, OpenGL версии 1 позволяет использовать не менее восьми штатных источников света. Используя эти источники можно достаточно просто строить качественное цветное освещение без применения карт освещённости. Как оказалось, при разработке самодельных простейших трёхмерных движков, их авторам эта возможность не кажется очевидной и потому ими игнорируется. Описанный ниже способ не подходит для перемещающихся в пространстве источников света, но отлично подходит, если остальные параметры источника света изменяются во времени (например, изменяется цвет источника освещения, или он мигает). Как построить качественное освещение с использованием штатных источников освещения OpenGL и будет рассказано в статье.
Читать полностью »

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

Игры, в которых нужно писать код: Grid Garden, Elevator Saga и другие - 1

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

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

Сервисы на Go в Badoo: как мы их пишем и поддерживаем - 1

Написать сетевой сервис на Go очень просто: в стандартной библиотеке есть куча инструментов, а если чего-то и не хватает, то на Github есть много модных библиотек для удовлетворения большинства нужд.

Но что, если необходимо написать с десяток разных сервисов, работающих в одной инфраструктуре?

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

У нас в Badoo крутятся >30 самописных демонов, написанных на разных языках, и ~10 из них – на Go. Все эти демоны работают на порядка 300 серверах. Как мы к этому пришли, не получив в итоге «зоопарк», как админы с мониторингом умудряются спать спокойно, не ограничивая при этом никого в смузи, а девелоперы, QA и релизеры живут дружно и до сих пор не переругались – читайте под катом.

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

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

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

Почему так? Я не знаю. Но есть ряд наблюдений, которыми мне интересно с вами поделиться и почитать комментарии.

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


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