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

Не секрет, что финансовая информация (счета, проводки и прочая бухгалтерия) не очень дружит с числами с плавающей точкой, и множество статей рекомендует использовать фиксированную точку (fixed point arithmetic). В Java этот формат представлен, по сути, только классом BigDecimal, который не всегда можно использовать по соображениям производительности. Приходится искать альтернативы. Эта статья описывает самописную Java библиотеку для выполнения арифметических операций над числами с фиксированной точностью. Библиотека была создана для работы в высокопроизводительных финансовых приложениях и позволяет работать с точностью до 9 знаков после запятой при сохранении приемлемой производительности. Ссылка на исходники и бенчмарки приведены в конце статьи.

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

Если вы музыкант или знаете кого-то из музыкантов, то вам знакомы такие понятия как «практика» и «репетиция». Они имеют совершенно разное значение.

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

Вам следует задуматься о часах практики - 1

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

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год

Computer Systems Security — это курс о разработке и внедрении защищенных компьютерных систем. Лекции охватывают модели угроз, атаки, которые ставят под угрозу безопасность, и методы обеспечения безопасности на основе последних научных работ. Темы включают в себя безопасность операционной системы (ОС), возможности, управление потоками информации, языковую безопасность, сетевые протоколы, аппаратную защиту и безопасность в веб-приложениях.

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Лекция 2: «Контроль хакерских атак» Часть 1 / Часть 2 / Часть 3
Лекция 3: «Переполнение буфера: эксплойты и защита» Часть 1 / Часть 2 / Часть 3
Лекция 4: «Разделение привилегий» Часть 1 / Часть 2 / Часть 3
Лекция 5: «Откуда берутся ошибки систем безопасности» Часть 1 / Часть 2
Лекция 6: «Возможности» Часть 1 / Часть 2 / Часть 3
Лекция 7: «Песочница Native Client» Часть 1 / Часть 2 / Часть 3
Лекция 8: «Модель сетевой безопасности» Часть 1 / Часть 2 / Часть 3
Лекция 9: «Безопасность Web-приложений» Часть 1 / Часть 2 / Часть 3
Лекция 10: «Символьное выполнение» Часть 1 / Часть 2 / Часть 3Читать полностью »

В этом году в Эстонии проходит целая серия театральных представлений, объединенных в серию «История Столетия». В течение года 22 театра страны представили публике в своих спектаклях столетнюю историю Эстонии. Русскому театру Эстонии в ходе жеребьевки досталась тема будущего Эстонии.

Под катом — о том, как совместить технологию и искусство.
Читать полностью »

Привет! Иногда в голове начинают бродить разные мысли. Кое-что записал. Получилось что-то вроде рассказа. Не судите строго — ведь это всего лишь фантазии.

image

Странные танцы

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

— Так кем же Вы работайте, Михаил?
Читать полностью »

Быстрые прототипы на Flutter и Kotlin/Native

Получив задачу разработать приложение для нашей предстоящей внутренней конференции в рамках OLX Group, моя команда задумалась о том, как сократить время создания приложения для iOS и Android, потому что нам и без этого было чем заняться. Первое, что мне пришло в голову, — использовать Kotlin, т.к. он может компилироваться на других платформах. Спойлер: не все пошло так, как изначально планировалось, но мы сделали всё вовремя, попутно узнав много нового!

Итак, это рассказ о том, как мы делали приложение OLX Group Product & Tech Conference в рекордно сжатые сроки.

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

Пятничные вебинары от Skillbox: от выбора языка программирования до поиска своей компании - 1

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

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

В этой статье и на DevOops у нас будут спикеры, съевшие собаку на теме правильных с точки зрения безопасности контейнерных решений. Мы отправляемся к ним за ответами на самые простые вопросы облачной безопасности. Надо же с чего-то начинать самообразование?

Девопс и безопасность: интервью с Сетом Варго и Лиз Райс - 1

Участники:

Девопс и безопасность: интервью с Сетом Варго и Лиз Райс - 2Сет Варго работает Developer Advocate в Google. Ранее он работал в HashiCorp, Chef Software, CustomInk и нескольких других стартапах в Питтсбурге. Он является автором Learning Chef и ратует за сокращение неравенства в технологиях.

Девопс и безопасность: интервью с Сетом Варго и Лиз Райс - 3Лиз Райс — технический евангелист в компании Aqua Security, занимающейся безопасностью развертывания приложений в облачных средах и контейнерными решения для энтерпрайза. Лиз — весьма известный в сообществе человек, председатель KubeСon-ов.

Девопс и безопасность: интервью с Сетом Варго и Лиз Райс - 4Олег Чирухин, редакция JUG.ru Group

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

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

Программист на всю голову: как кодинг влияет на мышление - 1

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

22 сентября мы провели Backend United #2: Фарш — встречу, посвященную тестированию бэкенда. Говорили о приемах тестирования бэкенда, его отличиях в разных языках. Обсуждали CDC-подход к тестированию микросервисов — почему в Авито используют нативные тесты, написанные на языках сервисов-потребителей. Рассказали о механике и сложностях внедрения Pact — наборе библиотек, которые реализуют Consumer-Driven Contract подход в тестировании API. И узнали, как в микросервисной архитектуре создать честные и эффективные изоляционные тесты.

Под катом делимся впечатлениями, фото, видео, презентациями со встречи и отзывами слушателей.

Бэкендеры всех стран объединились. Рассказываем, как прошел Backend United #2 - 1Читать полностью »


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