Проекты на C
-
json-tutorial
Руководство Майло Ипа по созданию библиотеки JSON на C с нуля. Содержание:
- Начало работы: среда компиляции, введение в JSON, разработка через тестирование, основные функции парсера и структуры данных.
- Разбор чисел: синтаксис чисел в JSON.
- Разбор строк: хранение вариантов через union, автоматически расширяемый стек, синтаксис строк JSON, valgrind.
- Unicode: основы Unicode и UTF-8, обработка Unicode в строках JSON.
- Разбор массивов: синтаксис массивов JSON.
- Разбор объектов: синтаксис объектов JSON, переработка функции разбора строк.
- Генератор: создание JSON и важные нюансы; упражнение по реализации генератора.
- Доступ и другие возможности: чтение и изменение массивов и объектов JSON.
Проекты на C++
-
LeetCodeAnimation
Анимированные объяснения решений задач LeetCode.
Проекты на CSS
-
lit
Адаптивный CSS-фреймворк размером всего 395 байт.
Проекты на Go
-
ptt-daily-beauty
Каждый вечер в 23:00 автоматически присылает фотографии девушек из трёх самых популярных публикаций раздела Beauty на PTT, крупнейшем форуме Тайваня. Подписаться.

-
q
Библиотека отладки для Go: автоматически выводит типы переменных и форматирует их значения.

-
tldr
Клиент tldr на Go. По сравнению с ранее представленным клиентом на Python он быстрее, удобнее в работе и позволяет выбирать оформление результатов поиска. Пригодится, когда нужно распаковать архив через tar, а нужные параметры не вспоминаются.

-
yeetgif
Консольная утилита для создания GIF-анимаций и сочетания эффектов для мемов. Поддерживает вращение, дрожание, зацикленные движения и другие режимы, которые можно комбинировать.

Проекты на Java
-
AndroidWM
Лёгкий фреймворк с открытым кодом для водяных знаков на изображениях в Android. Поддерживает текстовые и графические знаки, разные стили и расположение, а также встраивание невидимых цифровых знаков методом LSB в пространственной области и в частотной области с возможностью обнаружения последних. Подходит для добавления водяных знаков и обработки изображений на мобильных устройствах.

-
xLog
Простая, удобная, мощная и расширяемая библиотека логирования для Android и Java. Может одновременно писать в несколько каналов: Logcat, консоль и файлы. Возможности:
- Глобальные настройки (TAG, форматтеры и другое) или настройки для отдельной записи.
- Вывод любых объектов и настраиваемые форматтеры объектов.
- Вывод логов произвольной длины без ограничения в 4 000 символов.
- Форматированный вывод XML и JSON.
- И другие функции.

Проекты на JavaScript
-
better-onetab
Удобный инструмент для управления множеством вкладок браузера. Есть расширения для Chrome и Firefox; поддерживаются сохранение вкладок и объединение их в группы.

-
js2image
Сжимает исходный код в форме новогодней ёлки. После такого сжатия кода для продакшена обязательно проверьте его работу. Можно попробовать сделать и другие формы — занятная идея.

-
lint-md
Консольная утилита для проверки правил оформления Markdown на китайском языке. Её удобно включать в CI, есть вызов через API. Полезна для исправления оформления; код проверки правил на основе AST тоже пригодится для изучения.

-
swc
Написанная на Rust более быстрая альтернатива Babel, за которой стоит следить.
Проекты на Objective-C
-
ish
Запускает оболочку Linux на iOS и позволяет работать с устройством с помощью команд Linux.

-
JXCategoryView
Библиотека для переключения категорий с эффектами, похожими на те, что используются почти во всех популярных приложениях. Много вариантов оформления и простая настройка. Преимущества:
- Логика индикаторов оформлена через протоколы, поэтому их внешний вид можно свободно настраивать.
- Широкий набор эффектов с гибкой настройкой.
- Стили ячеек управляются через подклассы: логика понятнее, расширять проще.

-
LongestCocoa
Программистам на Objective-C хорошо знакомы длинные описательные имена. Какие методы и константы во фреймворке Cocoa самые длинные? Проект собрал такие имена.
-
NudeIn
Компонент форматированного текста для iOS на основе UITextView, чей стиль записи напоминает Masonry. Позволяет задавать оформление декларативно, цепочкой вызовов. По сравнению с императивным подходом код получается короче, понятнее и удобнее. Пример:
#import "NudeIn.h" /// 声明控件为你的成员变量 @property (nonatomic,strong) NudeIn *attrLabel; /// Do it yourself _attrLabel = [NudeIn make:^(NUDTextMaker *make) { make.text(@"this is a ").font(14).color([UIColor blackColor]).attach(); make.text(@"BlueLink").font(17).color([UIColor blueColor]).link(self,@selector(linkHandler:)).attach(); make.text(@", and this is a ").font(14).color([UIColor blackColor]).attach(); make.text(@"RedLink").font(17).color([UIColor redColor]).link(self,@selector(linkHandler:)).attach(); }]; /// 对声明了 link 属性的部分定义回调 (void)linkHandler:(NUDAction *)action { if ([action isKindOfClass:[NUDLinkAction class]]) { NUDLinkAction *linkAction = (NUDLinkAction *)action; UIAlertController *alertController = [UIAlertController alertControllerWithTitle:linkAction.string message:nil preferredStyle:UIAlertControllerStyleAlert]; [alertController addAction:[UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) { }]]; [self presentViewController:alertController animated:YES completion:nil]; } }
Проекты на PHP
-
meedu
Бесплатная образовательная онлайн-платформа с открытым кодом. Включает три модуля: видео по запросу, электронные книги и платное членство. Попробовать онлайн.
Проекты на Python
-
loguru
Библиотека, которая упрощает логирование в Python.

-
lsbasi
Серия уроков по созданию простого интерпретатора на Python.
-
mkdocs
Быстрый и простой генератор статических сайтов на Python, прежде всего для документации проектов. Исходники пишутся в Markdown, настройки задаются в YAML-файле, а способ работы напоминает Hexo.

Искусственный интеллект
-
deep-learning-papers-translation
Переводы научных статей по компьютерному зрению на китайский язык: классификация, детекция, OCR и облегчение моделей. Подборка для тех, кому неудобно читать оригиналы на английском.
-
MTCNN_face_detection_alignment
Классическая работа по обнаружению лиц, основанная на статье с ECCV 2016 года. Метод успешно применялся на практике: во многих компаниях модули детекции использовали MTCNN или его ускоренный вариант. Одна модель обучается одновременно обнаруживать лица и ключевые точки; при выполнении она выдаёт и рамки лиц, и координаты ключевых точек.

-
S3FD.pytorch
Реализация на PyTorch метода из статьи S3FD: Single Shot Scale-invariant Face Detector. На момент публикации S3FD входил в число лидеров теста FDDB по точности обнаружения лиц. Статья посвящена проблеме масштаба лиц и улучшению обнаружения маленьких лиц.

-
SSH
Реализация метода из статьи ICCV 2017 SSH: Single Stage Headless Face Detector.
Код опубликован самими авторами статьи, поэтому служит авторитетной реализацией. SSH — один из классических методов обнаружения лиц, сочетающий высокую точность и скорость. Проект воспроизводит многие детали статьи и подробно объясняет процесс реализации. Однако описанный в статье пирамидальный подход здесь не реализован.

Прочее
-
Back-End-Developer-Interview-Questions
«Вопросы для backend-собеседования». Перевод на китайский.
-
codelf
Инструмент для подбора имён переменных. Две самые трудные задачи в информатике — сброс кеша и выбор названий. Можно искать прямо на китайском: Codelf подбирает английские слова и синонимы, а затем ищет в исходном коде открытых проектов на GitHub, Bitbucket, Google Code и других площадках подходящие имена переменных и функций. Попробовать онлайн.
-
cool-retro-term
Эмулятор терминала с видом старого кинескопного экрана. Лёгкий, приятный глазу, с настройкой оформления; работает на Linux и macOS. Добавьте Vim или Emacs — и получите атмосферу программирования хакеров прошлого века.

-
nginxconfig.io
Сайт для генерации конфигурации Nginx. Попробовать онлайн.
-
the-art-of-command-line
Одностраничная шпаргалка по работе в командной строке. Автор собрал приёмы, найденные во время работы с Linux: от самых простых до сложных и не сразу понятных. Статья короткая, но освоение всех перечисленных приёмов многое расскажет о командной строке и поможет программировать гибче и быстрее.
-
weekly
Еженедельный технический дайджест Жуань Ифэна, выходящий по пятницам.
Открытые книги
-
Cpp_Concurrency_In_Action
Перевод книги «Параллельное программирование на C++» (C++ Concurrency in Action) на китайский язык. Читать онлайн.
-
ddia
Перевод книги «Проектирование приложений, интенсивно использующих данные» (Designing Data-Intensive Applications) на китайский язык.