Coding: работа и стажировки для программистов
4.79K subscribers
114 photos
11 files
1.67K links
Авторский канал для программистов и начинающих.

Здесь можно найти интересующую вас литературу, а так же вакансии и стажировки для программистов

По рекламе @adtgassetsbot
Владелец @Aleksei
Download Telegram
Как устроен современный веб-синтезатор

За годы развития браузеры обзавелись множеством API и функциональных возможностей, благодаря которым превратились в невероятно мощные платформы приложений. Яркий пример — это современный веб-синтезатор.

Статья
Что делать, если в твоем тексте или коде нашли ошибку?

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

Рассуждаем о том, почему не стоит сразу исправлять ошибку и отправлять на повторное ревью.

Статья
В чём уникальность языка программирования LISP

В этой статье мы поговорим об одном из самых старых языков программирования ― Lisp. Несмотря на свой внушающий уважение возраст, он всё ещё находится в строю и заставляет переосмысливать всю теорию программирования. Так что же это за язык и чем он примечателен?

Статья
Прагматичная оптимизация: какая часть кода всегда должна быть чистой, а где допускается грязь

Весь прикладной код глобально можно разделить на три уровня: домен, управляющий код и представление. Если в каких-то частях (например, в конечных точках) грязный код допустим, то на других его быть не должно — это может повлиять на архитектуру и поддержку проекта. CEO Хекслета Кирилл Мокевнин в своем твиттере рассказывает о критичности разных кусков кода при разработке и ревью: как они влияют друг на друга и в каких моментах оптимизация критична.

Читать
QOI: как сжимать изображения в 20 раз быстрее STBI и без потерь

Представляем QOI — Quite OK Image Format. Он без потерь сжимает RGB- и RGBA-изображения до размера PNG, обеспечивая при этом ускорение в 20–50 раз при сжатии и ускорение в 3–4 раза при распаковке. Всё однопоточно, без SIMD. И до глупости просто.

Статья
Ускоряем hugo на 20% простым изменением в пакете reflect

Найти значительное узкое место в производительности стандартной библиотеки или зрелого приложения — это редкость.

Статья
Cистемы счисления

Статья для: Школьника, которого учитель информатики заставляет переводить числа туда-сюда, а он вообще не врубается, что происходит. Дизайнера, который не знает, что значит цвет #FFDD00. Тем, кто всё знает, но не против ещё раз укрепить модель.

Статья
100% загрузка CPU: моя вина?

История
бага JDK и связанной с ним ошибки разработки, приведшей к нештатной 100%-загрузке CPU. Что пошло не так, что можно было сделать лучше, и кто, в конце концов, оказался виноват?
Статья
Облегчаем работу с SQL в go

Давайте поглядим, что мы можем сделать с такой занудной и громоздкой процедурой, как написание кода для обработки SQL запросов.

Статья
Нестандартное применение программирования в реальной жизни

Однако программное обеспечение — это не только проекты компьютерных игр класса ААА или корпоративных проектов, предлагающих программное обеспечение по модели SaaS, это и использование его в обычной жизни, порой весьма неожиданным образом. О чём мы и поговорим в этой статье.

Статья
Основы языка microScript

microScript - это локальный язык. В настоящее время он используется только в пределах microStudio. По синтаксису microScript схож с языком Lua. Программа написанная на языке microScript транспилируется в javascript.

Статья
Создание собственных команд в GIT

Эта статья предназначена для тех, кто уже имеет начальный уровень работы с Git и BitBucket. В статье рассматриваются примеры в Git Bash version 2.33.0, API BitBucket 2.0

Статья
Как в С++ обрабатывать ошибки в конструкторах без исключений?

Самый очевидный способ обработки ошибок — это возврат значений. Но конструкторы не возвращают значения, поэтому так поступить нельзя. Это и было одной из причин, по которой исключения появились в С++.

Статья
​​Работа с клавиатурой в iOS: как минимизировать копипасту.

При разработке практически любого мобильного приложения разработчику придётся столкнуться с полями ввода. А где поля ввода — там и клавиатура, а также логика, связанная с обработкой событий её жизненного цикла: появления, сокрытия, изменения размеров.
Статья
Как нативно визуализировать голос в iOS

Представьте, что у вас в приложении есть чат. В один прекрасный день на встрече отдела product manager приносит весть, что пора бы в чат добавить поддержку голосовых сообщений. «Да легко!» — проносится в голове: быстренько создадим новую ячейку, нарисуем в ней плеер, напишем бизнес-логику и готово. Но вдруг оказывается, что заказчик хочет плеер «как в Telegram» — с поддержкой отрисовки аудиоволны. Да ещё и динамически — в процессе записи.

Статья
Сегментация экземпляров с помощью Mask R-CNN

Задача сегментации изображений может решаться в нескольких постановках. Самая распространённая - semantic segmentation с одним классом и фоном, необходимо просто отделить объекты от фона, не различая их между собой. Но часто просто отделения от фона недостаточно, необходимо отделять отдельные образцы друг от друга, например, чтобы оценить размер или расположение каждого отдельного объекта. Как это можно сделать?

Статья
Пишем приложение на JetBrains Exposed

При всём разнообразии фреймворков для работы с базой данной, стоящих и постоянно развивающихся не так уж и много. И если про Hibernate знают все, а про JOOQ знают очень многие, то слабая популярность Exposed скорее связана с его ориентацией на Kotlin. Если Вы только-только пришли в Kotlin из Java, Вам архитектурные подходы, заложенные в Exposed (переполнение лямбдами и функциями-замыканиями, к примеру) могут показаться дичью, но пугаться не стоит: чем дальше Вы будете осваивать Kotlin, тем привычнее для Вас будут конструкции Exposed.

Статья
W-функция Ламберта и ее приложения

Математический анализ знает множество замечательных функций со своими удивительными свойствами и применениями. Сегодня я бы хотел рассказать читателю об одной из таких - W-функции Ламберта.

Статья
Концепция умного указателя static_ptr<T> в C++

В этой статье мы рассмотрим новый вид умного указателя, который можно назвать staticptr. Больше всего он похож на std::uniqueptr без динамической аллокации памяти.

Статья
Delinking и Lisp

Экономический термин delinking впервые (насколько я смог отследить) использовал Самир Амин в работе 1984-го года Delinking: Towards a Polycentric World для обозначения процесса выхода из системы глобального разделения труда. По многочисленными (для нашего немногочисленного Lisp сообщества) просьбам сообщников делюсь своим частным рассуждением о потенциале Lisp-систем в условиях delinking-а с более широкой аудиторией. Это мнение из категории «просто подумалось на досуге», оно не является абсолютно объективной истиной, но, вероятно, может представлять некоторый интерес.

Статья