NBA в терминале и арканоид в Vim

Выпуск № 20 ·

Проекты на C#

  1. csharplang

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

    • Предложения по новым возможностям языка
    • Протоколы встреч по проектированию C#
    • Полная спецификация C# 6 (черновик)
    • Краткая история версий языка

Проекты на C++

  1. robomongo

    Бесплатный кроссплатформенный инструмент с открытым кодом для управления MongoDB с рабочего стола. Поддерживает Windows, Linux и macOS.

    robomongo

Проекты на CSS

  1. magic-of-css

    Набор уроков по CSS, который поможет почувствовать себя «волшебником» (на английском).

  2. milligram

    Минималистичный CSS-фреймворк с очень небольшим размером файла.

    milligram

Проекты на Go

  1. monkey

    Парсер на Go с поддержкой множества возможностей языка. Учебный проект для начинающих, который поможет освоиться с Go и познакомиться с разработкой парсеров.

Проекты на Java

  1. Android-Pay

    Библиотека для интеграции двух популярных платёжных систем — WeChat Pay и Alipay. Пример кода:

    //1.创建微信支付请求
    WechatPayReq wechatPayReq = new WechatPayReq.Builder()
            .with(this) //activity实例
            .setAppId(appid) //微信支付AppID
            .setPartnerId(partnerid)//微信支付商户号
            .setPrepayId(prepayid)//预支付码
    //      .setPackageValue(wechatPayReq.get)//"Sign=WXPay"
            .setNonceStr(noncestr)
            .setTimeStamp(timestamp)//时间戳
            .setSign(sign)//签名
            .create();
    //2.发送微信支付请求
    PayAPI.getInstance().sendPayRequest(wechatPayReq);
    
    //关于微信支付的回调
    //wechatPayReq.setOnWechatPayListener(new OnWechatPayListener);
  2. AndroidSwipeLayout

    Библиотека daimajia с открытым кодом для создания интерфейсов с жестами смахивания. Попробуйте её на практике, а затем изучите исходный код и приёмы опытных разработчиков — со временем вы тоже сможете создать полезную и популярную библиотеку с открытым кодом.

    AndroidSwipeLayout

Проекты на JavaScript

  1. flowhub

    Библиотека размером всего 6 КБ: простой API и свободно комбинируемые цепочки вызовов помогают подписываться на разные потоки событий и управлять ими. Пример кода:

    import $hub from 'hub-js';
    
    // 定义一个 “test” 监听器
    $hub.listen('test', ( data ) => {
        console.log( 'test', data );
    });
    
    setInterval(( ) => {
        // 发出 “test” 事件
        $hub.emit('test', { code: 1 });
    }, 1000);
  2. IDValidator

    Проверка номеров удостоверений личности жителей материкового Китая. Поддерживаются номера из 15 и 18 цифр. API:

    • isValid проверяет корректность номера и возвращает True либо False
    • getInfo для корректного номера возвращает сведения о регионе, дате рождения, поле и контрольной цифре, иначе — False
    • makeID создаёт номер с корректной контрольной суммой
  3. livepython

    Инструмент для визуализации и отслеживания выполнения кода Python в реальном времени.

    livepython
  4. nba-go

    Консольная утилита для просмотра матчей NBA: расписание начала игр, счёт в реальном времени, текстовая трансляция на английском и другие сведения. NBA прямо в терминале — необычно и удобно. Команда установки: npm install -g nba-go

    nba-go
  5. React-Cnode

    Учебный проект для начинающих, знакомящий со всем стеком React. Автор также делится своими мыслями, возникшими во время разработки.

    React-Cnode

Проекты на Kotlin

  1. Flesh

    Учебный проект для знакомства с Kotlin и практики. На его примере можно освоить взаимные вызовы Java и Kotlin, а также сбор данных с сайтов. В проекте много полезного материала: скачивайте его и присоединяйтесь к разработке.

    Flesh
  2. kotlin-guides

    Набор правил, которых следует придерживаться при разработке Android-приложений на Kotlin.

Проекты на Python

  1. joblib

    Удобные параллельные вычисления в Python. Пример кода:

    from joblib import Parallel, delayed
    from math import sqrt
    Parallel(n_jobs=1)(delayed(sqrt)(i**2) for i in range(10))
  2. records

    Records из серии for Humans™ Кеннета Рейтца — сторонняя библиотека для выполнения нативных SQL-запросов в большинстве популярных реляционных СУБД. У неё понятный API, простой интерфейс, консольный режим и множество возможностей. При этом вся библиотека занимает лишь 500 строк кода, поэтому подходит начинающим для чтения исходников и изучения приёмов и привычек опытного разработчика. Пример кода:

    import records
    
    db = records.Database('postgres://...')  # 连接数据库
    rows = db.query('select * from active_users')  # 执行原生 SQL
    # 遍历结果
    for r in rows:
        print(r.name, r.user_email)
    
    # 友好的 print 格式
    print(rows.dataset)
    # username|active|name      |user_email       |timezone
    # --------|------|----------|-----------------|--------------------------
    # model-t |True  |Henry Ford|model-t@gmail.com|2016-02-06 22:28:23.894202
    
    # 支持将结果导出成不同格式
    print(rows.export('json'))  # json
    print(rows.export('csv'))  # csv
    print(rows.export('yaml')) # yaml
    rows.export('df')  # pandas 的 df 对象
    with open('report.xls', 'wb') as f:
        f.write(rows.export('xls'))  # xls
  3. tldr-python-client

    Справочные страницы Linux man часто слишком длинны, а иногда нужно лишь вспомнить одну из распространённых команд. В таких случаях вместо поиска в Google пригодится tldr — проект с упрощёнными страницами man. Этот проект реализует клиент tldr на Python.

    tldr-python-client
  4. zdict

    Удобный консольный словарь с поддержкой нескольких словарных баз и параметров, подсветкой результатов перевода и интерактивным режимом поиска. Команда установки: pip install zdict (поддерживается только Python 3). Результат поиска показан ниже.

    zdict

Искусственный интеллект

  1. angel

    Высокопроизводительная распределённая платформа машинного обучения с открытым кодом от Tencent. Она рассчитана на широкий круг задач и стабильную работу, в том числе с моделями высокой размерности. Платформа рационально распределяет большие многомерные модели по нескольким узлам серверов параметров, а эффективные интерфейсы обновления моделей, вычислительные функции и гибкие протоколы синхронизации позволяют реализовывать производительные алгоритмы машинного обучения.

    angel

Прочее

  1. github-cheat-sheet

    Шпаргалка по GitHub и Git, версия на китайском.

  2. hangzhouYunQi2017ppt

    Лучшие презентации с конференции Yunqi 2017 в Ханчжоу. Скачать и посмотреть их можно на сайте Alibaba Cloud.

  3. nodebestpractices

    Список лучших практик Node.js (на английском).

  4. vim-game-code-break

    Арканоид в Vim. Плагин добавляет в редактор игру с разбиванием блоков.

    vim-game-code-break