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

В продолжение пятого урока по изучению азов RabbitMQ, публикую перевод шестого урока с официального сайта. Все примеры написаны на python (используется pika версии 0.9.8), но по-прежнему их можно реализовать на большинстве популярных ЯП.

Во втором уроке мы рассмотрели использование очередей задач для распределения ресурсоёмких задач между несколькими подписчиками.
Но что если мы захотим запустить функцию на удаленной машине и дождаться результата? Ну, это совсем другая история. Этот шаблон широко известен как Удаленный Вызов Процедур (Remote Procedure Call или RPC, далее в тексте RPC).
В этом руководстве мы построим, используя RabbitMQ, RPC систему, которая будет включать клиент и масштабируемый RPC сервер. Так как у нас нет реальной трудоемкой задачи требующей распределения, мы создадим простой RPC сервер, возвращающий числа Фибоначчи.
Читать полностью »

Вычисляемые знания и будущее чистой математики

Перевод поста Стивена Вольфрама (Stephen Wolfram) "Computational Knowledge and the Future of Pure Mathematics"
Выражаю огромную благодарность тем, кто помог мне сделать этот перевод: Владиславу Глаголеву (Himura), Илье Марчевскому, Сергею Шевчуку (opckSheff) и Анне Коваленко.

Введение

Уже больше века, каждые 4 года в некоторой точке мира проходит Международный конгресс математиков (ICM). В 1900 году, именно на нем Давид Гильберт представил свою знаменитую коллекцию проблем математики, которая по сей день задает направление исследования математикам всего мира.

В этом году ICM проходит в Сеуле, и сегодня я отправляюсь туда. Однажды я уже бывал на ICM — в Киото в 1990 году. Тогда системе Mathematica было всего 2 года, и математики ещё только начинали привыкать к ней. Многие уже повсеместно её использовали, но на ICM были и те, кто говорил «Я занимаюсь чистой математикой. В чем, интересно, мне может помочь система Mathematica?»

Vychisljaemye-znanija-i-budushhee-chistoj-matematiki_1.gif
Читать полностью »

Относительно недавно мне пришлось использовать систему Git немного сложнее банального клика в Android Studio на кнопку сommit. Сегодня, по собственной неосмотрительности, нашел интересную особенность Git GUI: если в настройках клиента вписать e-mail любого пользователя GitHub, но при пуше (push) коммита (commit) указать свои данные, то заглянув на сайт в раздел коммитов можно увидеть нечто странное. Коммит будет выполнен не от лица вас, а от имени человека, который вписан в настройках Git GUI. Нагляднее это будет увидеть в приложенном видео с пошаговыми действиями:

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

Последнее время ни один пост от нашей компании не обходился без традиционного вопроса от читателей, «А когда же выйдет ваша кросс-платформенная C/C++ IDE?». И вот сегодня, наконец, мы готовы сказать: Public Early Access Program началась!

CLion — долгожданная IDE от JetBrains для С С++ разработчиков — открывает публичный EAP

Если коротко: тут — скачать, здесь — почитать ознакомительную инструкцию, а под катом — подробности.
Читать полностью »

Кружок по программированию. Итоги первого года

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

Привет. Меня зовут Степан Кольцов. Недавно я выступал на Java Party в киевском офисе Яндекса с докладом про язык Rust, который несёт в себе очень много для будущего программирования. Некоторые коллеги утверждают, что я всегда говорю про Rust, когда у меня есть такая возможность. Сегодня я хочу поделиться этим рассказом с вами и объяснить, почему мне это кажется важным.

Для начала пара слов о том, что такое Rust. Последние 15 лет между разработчиками на Java и на C++ ведётся спор о том, какой язык программирования хуже — Java или C++. Программы на C++ глючат, падают, и в них утекает память. Программы на Java тормозят и требуют слишком много памяти.

Rust — новый современный язык программирования, разрабатываемый компанией Mozilla — решает проблемы Java и C++: программы, написанные на Rust, одновременно быстрые и безопасные. Rust является таким же низкоуровневым (в смысле close-to-metal) языком программирования, как и C++, однако в язык встроены конструкции, позволяющие на этапе компиляции доказывать, что в программе не случатся ошибки работы с памятью, как то обращение после использования, двойное удаление, использование неинициализированной памяти и т.п. В Rust для этого используется механизм borrowed pointers. Большая часть моего рассказа была посвящена описанию этого механизма.
Читать полностью »

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

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

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

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

Тем, кто хочет учить детей программировать и делать игры

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

Добрый день, %username%. Сегодня я хотел бы поделится своим опытом разработки прототипа онлайн lossless аудио плеера.

На сегодняшний день, вряд ли можно кого-то удивить аудио или видео плеером, встроенного непосредственно в веб-страницу. Существующие технологии, библиотеки и API позволяют легко наполнить сайт любым медиа-контентом. Но есть такие люди, которым этого недостаточно (в том числе я). Именно поэтому, как истинному любителю музыки в lossless, мне потребовалось сделать браузерный плеер поддерживающий такой формат аудио, как flac.
Читать полностью »

В связи с нововведениями на сайте, решил наконец-то вылезти из подполья и написать что-нибудь полезное. Ну а поскольку я программирую разные микроконтроллеры (МК) и являюсь фанатом Eclipse, то решил про это и написать. Начну со своей истории знакомства с программированием PIC, а закончу советами тем, кто по долгу службы или в силу увлечения программирует на МК семейства PIC, хотя, впрочем, эти же советы сгодятся и для других архитектур МК.

В среду железячников я попал в 2006 году на 4-м курсе учёбы в университете, когда пошёл на производственную практику в научно-технический центр, где, собственно, и работаю по сей день. В то время в нашей компании мейнстримом было использование Keil uVision2 для МК на базе C51 и ARM. Однако мне подсовывали простые задачи под PIC, вроде контроля и управления одним сигналом (кнопка вкл-выкл), и моей первой средой разработки были блокноты — бумажный и компьютерный, плюс книжки бумажные по PIC. Выглядела моя среда разработки примерно так:

Идеальная среда разработки для PIC — личный опыт

Для компиляции файлов мне выдали экзешник компилятора и bat-файл, который использовался мной совершенно бездумно — даже не знаю, что за компилятор там был. В общем, суровые были времена…
Читать полностью »


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