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

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

Разработка на R: тайны циклов - 1Читать полностью »

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

В процессе изучения статьи, Вы узнаете как реализовать собственные атрибуты и как их применять, познакомитесь с методами расширений типов и применением рефлексии на практике, узнаете об основах MSIL в целом и OpCodes в частности, а так же о том, как можно сериализовать объекты в AMF с помощью потоков.
Читать полностью »

Попытка научить студентов программировать и о том, где этот процесс можно и нужно автоматизировать - 1

Именно эта цитата Стива Джобса встречает посетителей сайта cs.betlabs.ru, можно считать это попыткой мотивировать студентов работать усерднее над своими домашними и лабораторными заданиями. К сожалению, метрики для количественной оценки влияния мотивации от преподавателя на успеваемость студента у меня пока нет. Более того, я считаю, что конкурентная среда в учебной группе является куда более важным фактором в общем показателе успеваемости. Сейчас это всего лишь гипотеза, а ее проверка не лежит в области моих научных интересов.


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

Что такое Akka?

Масштабируемая, распределенная обработка транзакций в реальном времени

Мы верим, что написание корректных, параллельных, отказоустойчивых и масштабируемых приложений это сложно.

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

Chrome 57 будет активно подавлять работу фоновых вкладок - 1

Ближайшие изменения в браузере Chrome вряд ли порадуют разработчиков Slack, Discord и других программ, которые работают во вкладках браузера. В бета-версии Chrome 56 реализован новый механизм оптимизации таймеров для фоновых вкладок.

На первый взгляд, инициатива разработчиков выглядит хорошим делом. В сентябрьском плане внедрения (Intent to Implement) объясняются причины, которые сподвигли разработчиков на такое решение.

Главная причина — некоторые плохо спроектированные приложения (например, скрипты аналитики и javascript-реклама) потребляют много ресурсов CPU, хотя находятся в фоновом режиме. Это негативно отражается на производительности браузера и потребляет энергию аккумулятора на мобильных устройствах. Такая обработка активности в фоновых вкладках совершенно ни к чему. Идея состоит в том, чтобы установить максимальный лимит вычислительных ресурсов, которые можно дать фоновому приложению.
Читать полностью »

Привет, Друзья!

Я тут проанализировал 2ТБ кода и получил самые популярные слова в разных языках программирования. Результаты можно посмотреть в виде облаков тегов и простым списком:

image

Сайт находится здесь, а его исходники можно почитать на гитхабе.

Под катом описано в деталях о том как собирались данные, как строился сайт и как укладывались облака. И немножко наблюдений.

Приятного чтения!
Читать полностью »

Когда кто-то произносит слово многоядерный, то мы бессознательно подразумеваем SMP. Это успешно срабатывало для нас до недавнего времени, пока ARM не объявила о big.LITTLE. Архитектура ARM big.LITTLE является первым массово производимым примером архитектуры AMP, и как мы увидим далее, она поднимает планку сложности многоядерного программирования еще выше.
Читать полностью »

Всем привет! 24-25 февраля 2017 года в Москве пройдет очередная ежегодная конференция C++ Russia, организованная сообществом C++ User Group Russia. Компания JetBrains уже несколько лет занимается созданием продуктов для разработки на C++ и традиционно участвует в данном событии. Наших сотрудников вы сможете найти на выставочном стенде в течение обоих дней – задать вопрос, попросить помочь с проблемой с любым из наших продуктов, распросить про возможности наших инструментов, наши планы на будущее, или просто поговорить о языке C++ и не только.

Если же вам хочется стать настоящим гуру разработки на C++, то обратите внимание, что накануне конференции, 23 февраля, запланирована целая серия мастер-классов от бывалых разработчиков.

В блоге C++ User Group Russia уже писали о некоторых из них. Мы же хотим рассказать о мастер-классах (а их запланировано целых три!), которые проведут сотрудники компании JetBrains.

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

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

image

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

Пишем обертку над API, делаем из нее PIP-пакет, подключаем тестирование от Travis CI и смотрим на лицензии открытого ПО - 1

Приветствую! Данная статья будет полезна желающим ознакомиться не только с оформлением собственного пакета Python Package Index (PIP), но и с различными вспомогательными инструментами, помогающими сопровождать разработку на всех стадиях — на примере авторской работы.

Необходимые инструменты:

  • среда разработки — написание объектно-ориентированного кода, тесно работающего с интерфейсом приложения (в нашем случае веб-сайта), другими словами — отправка и обработка запросов к API, и дополнительных вспомогательных файлов;
  • загрузка своих наработок в общий каталог пакетов — PyPI;
  • Github — создание репозитория с целью контроля качества, улучшения и перманентного обновления библиотеки, общего взаимодействия с областью открытого исходного кода;
  • одна из лицензий свободного программного обеспечения, в нашем случае — MIT License;
  • Travis CI — непрерывная сборка и тестирование разрабатываемого проекта в различных окружениях (например, разные версии языка или интерпретатора).

Данный список можно принимать за содержание статьи в соответствующем порядке.
Читать полностью »


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