Skip to content
View AceofSpades5757's full-sized avatar
💼
Looking for Work
💼
Looking for Work

Sponsoring

@tpope
@junegunn
@asottile
@twbs
@plantuml
@GothenburgBitFactory
@ratatui

Block or report AceofSpades5757

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AceofSpades5757/README.md

pre-commit

kyleldavis.com LinkedIn | Kyle L. Davis CodinGame | AceofSpades5757 freeCodeCamp | AceofSpades5757 crates.io | AceofSpades5757 PyPI | AceofSpades5757



AceofSpades5757's GitHub stats AceofSpades5757's Language Stats

Rust Python

About Me

Passionate and driven software engineer and project manager highly skilled in Python and flexible in the use of programming languages. Interested in leveraging my knowledge and skills in a variety of technologies to produce efficient, scalable code. I love working on projects for terminal, desktop, and web applications along with data science projects day in and day out. Check out my bio below, or my website kyledavis.com to learn a little bit more about me!

Socials

Published Packages

Each package is free and open-source software (FOSS). There are other projects listed in my repositories and gists, such as vim-snippets.

Language Project Description
🦀 Rust - crates.io 🦀
Rust

Vii

A way to interact with Vim using Rust.
Rust clipboard-win-html Copy HTML to Windows clipboard.
Rust tasklib Library to use Taskwarrior with Rust.
Rust valve-server-query Allows you to access the data provided by Valve's Server Query protocol.
Rust simple-milli A simple implementation using the core engine of Meilisearch, milli, to create an embedded search engine.
🐍 Python - PyPi 🐍
Python clip-util Package for accessing the clipboard with Python.
Python fzflib Bring the incredible utility of FZF to Python.
Python vimlib A friendly interface for interacting with Vim using Python.
Python cs-sync A custom syncing tool.
Python pyfreshdesk Python client library for interacting with Freshdesk.
Python testlodge Python client library for interacting with TestLodge.

Bio

I enjoy working on desktop, web, and command-line application using a myriad of technologies. Although my preferable languages are Python and Rust, I also work a lot with JavaScript and some other languages. Using my passion for these technologies, I actively contribute to the FOSS community, giving back a small piece compared to all that the community have freely given me and others like me.

From Vim plugins to automated setup and management systems, I have a strong curiosity for learning new technology and applying that new knowledge in the real world. The most common and powerful adaptation of this has been through command line utilities and web servers for consistency and reliability. Among these

I also enjoy some data engineering tasks, making ETL data pipelines to automate the collection, processing, and application of available data to accomplish day to day operations. This includes, access to external HTTP APIs, and putting the data into a CSV/Excel file. Items such as using the local Outlook application for reading and writing email, win32 API for the clipboard, Selenium for any difficult web-based access, and access to many other external web API to get information from web-based financial software/accounts, email, and communication systems.

Always working on countless different projects as my interests vary greatly. Really enjoy learning new things and discussing all sorts of different technologies. Most recently, I keep coming back to Asyncio, OAuth (and the other, more complicated, authentication methods), SQLAlchemy (my favorite ORM), the many Raspberry Pi projects sitting around the house (weakly managed with Ansible), and Vue (excellent front-end for dynamic, modular information, though JS is not nearly as cool as Python).

Other projects include desktop applications, web applications, system administration projects, home automation, etc. This includes contributing to the wider software community, being a proud supporter of projects such as Helix.

Web

I currently manage over 5 web servers.

  • Dedicated Game Hosting
    • Applications to view/manage these
    • Linux
    • Windows
  • Dedicated Web Server
  • Dedicated Web Apps Server
    • Hosts a variety of different web services.

I've authored several client libraries for accessing available APIs using Python and Rust, along with some lower level libraries working with network protocols such as UDP.

Frameworks

Web Technologies

Terminals Libraries & Command Line Utilities

  • Click
  • Blessed
  • clap

My tool preferences involve the terminal. I am a dedicated fan of using and developing, CLI applications.

For Python projects, I would highly recommend Click. It's a fantastic library with a mature community and excellent reliability.

For Rust projects, I would highly recommend clap. The interface is fantastic and offers a streamlined experience straight out of the box.

Automation

  • Ansible
  • openpyxl (Excel manipulation)
  • scrapy (Python web scraping)

From systematic analysis of emails and PDF documents, automating daily tasks is an important part of my day to day.

Data Science & Engineering

  • Pandas
  • NumPy
  • Matplotlib
  • Plotly
  • Streamlit
  • Dash

Data science is a valuable and important resource to especially with finance, assets, or other accounting issues in your life and business.

Desktop

  • Tauri - Similar to Electron.js, it allows developers to create a desktop application using a web-based front-end.
  • egui

Interests

  • Rust and Python
  • Command Line Tools
  • Data Engineering
  • Data Science and Analysis
  • Automation
  • Web APIs (REST)
  • Web Scraping

Database

  • SQL
  • SQLite
  • MySQL
  • Postgres

ORM (Object Relational Mapping)

  • SQLAlchemy (Python)
  • Diesel (Rust)

Languages

These languages are typically for web technologies, but some are system languages used for systems programs.

  • Python
  • Rust
  • Bash
  • JavaScript
  • HTML/HTML5
  • CSS/CSS3
  • C
  • PHP
  • just
  • Nushell

Languages are simply tools to solve a problem or perform a task. I've found Python and Rust to be the most powerful overall, but I'll use any language necessary to get a job done well. PHP is a good example of this as I've had to work with it for a number of projects, such as occasionally for work and for some home projects like NextCloud or WordPress.

Tools

Editors and IDE Environments

Although I still typically reach for Neovim to do most of my day-to-day work, I have been using JetBrains IDEs more and more for larger projects.

  • Neovim
  • Helix
  • Jupyter Notebook
  • Jupyter Lab
  • JetBrains IDEs

Markup Languages and Technologies

  • LaTeX
  • typst (PDF)
  • Markdown
  • reStructuredText (RST)
  • HTML
  • XML
  • JSON
  • YAML
  • TOML
  • CSV
  • Excel (XLSX)
  • PDF
  • DOCX
  • RTF

Python Libraries

  • pytest
  • Rope (Python refactoring library)
  • Asyncio

Cloud

  • AWS
  • Linode
  • Google Cloud

Microsoft

I've had to create a number of Power Automate flows for my professional work, and have had to use a number of Microsoft products for work and school. Generally, I still prefer a traditional language to do large scale tasks but Microsoft's built-in tools, along with its Graph API, can be very powerful and are easier to pick up with immediately.

  • Microsoft Access
  • Microsoft SharePoint
  • Power Automate

Office

I've had to learn and use advanced Excel for work and school, having to do simple Visual Basic, advanced formulas, and pivot tables. I've also had to do some more advanced data importing and exporting with Excel. With the addition of Python (insider edition), I've even had the opportunity to use Python to automate Excel tasks inside of Excel itself, natively.

Generally, I prefer to operate inside another language, namely Python to do the heavy lifting and then export the data to Excel for the final presentation/data sharing. Some have also asked for Word documents, but these can be more difficult as a medium for data sharing.

  • Microsoft Excel
  • Microsoft Word
  • Microsoft PowerPoint

OS

  • Linux
  • Ubuntu
  • Windows (10)
  • Raspberry Pi
  • Apple (macOS) - Needed to package and distribute as the requirements called for it.

Learning

Pinned Loading

  1. AceofSpades5757 AceofSpades5757 Public

    An IT professional working in open-source with data science, web, and desktop application development using Rust and Python.

    2

  2. vii vii Public

    Bindings to Vim objects, bindings to Vim channel commands, and a way to interact with Vim using Rust.

    Rust 4

  3. testlodge testlodge Public

    Python client library for interacting with TestLodge.

    Python

  4. vim-snippets vim-snippets Public

    Collection of snippets used in conjunction with UltiSnips for Vim and Neovim.

    Vim Snippet 1 2

  5. clip-util clip-util Public

    Package for accessing the clipboard with Python, supporting HTML, RTF, and more.

    Python 2

  6. pyfreshdesk pyfreshdesk Public

    Python