Skip to content
View alhankeser's full-sized avatar

Block or report alhankeser

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
alhankeser/README.md

Analytics Engineer

Recent Projects:


🧹 looker-janitor: GitHub Marketplace Action to keep your Looker project tidy

looker, lookml, python

  • Order field types (e.g. filters, dimensions, measures)
  • Order fields (including by label and localized labels if need be)
  • Order field parameters (e.g. type, label, description, sql...)
  • Move primary key to top of dimensions list
  • Check for missing field parameters and report in %f:%l: %m format

🚀 lkml-parser: (Abandoned) Faster LookML parser

looker, lookml, zig

  • Parser for lookml files
  • Finished a first version that works, but very hard to debug due to poor code quality
  • After refactoring with more traditional approach, ran into skill issues related to proper usage of Zig memory management

πŸ‘“ looker-label-viewer: VS Code extension to see localized lookml label values

looker, localization

  • When working on big Looker projects with a lot of localization, it's helpful to be able to quickly see the label associated to a dimension or measure.

πŸ’° borsa: dbt and DuckDB transformations for day trading bot

dbt, DuckDB, python

  • A complete rewrite of my previous bot, created in 2019
  • Implementing a new API (switching from TD Ameritrade to TradeStation)
  • Exploring using sql (dbt + DuckDB) for transformations instead of purely pandas
  • Looking for ways to improve performance/concurrence of backtesting strategy ideas

Learn more

🦎 tcx-extract: fast, simple data extraction

zig, python

  • A speed-optimized extractor for .tcx (XML) files from Garmin.
  • Example implementation here.

🚴 antren: personal training analysis dashboard

airflow, python, docker, google-cloud-run, bigquery, dbt, hex

repo role deployment description
antren-app extract Dockerized python app running as Google Cloud Run Job connects to Garmin API to get latest bike rides/runs, converts tcx to tabular parquet learn more
antren-orchestration orchestrate + load Airflow webserver + scheduler (local) orchestrates the various steps of data pipeline, including triggering writing to BigQuery using training parquet files in Google Bucket learn more
antren-dbt transform Dockerized dbt-core running as Google Cloud Run Job transforms raw training data in BigQuery to make it useful for me! learn more
hex app visualize Hex app (aka a dashboard) visualizes training progress over time with ability to filter and customize layout

Pinned Loading

  1. looker-janitor-action looker-janitor-action Public

    GitHub Action to tidy up LookML view files.

    2

  2. looker-label-viewer looker-label-viewer Public

    VS Code extension to see localized labels in lookml files without having to open the localization file.

    JavaScript

  3. tcx-extract tcx-extract Public

    Speed-optimized data extractor for .tcx (Garmin) files.

    Zig

  4. borsa borsa Public

    Trading bot that relies on dbt and DuckDB for data transformations

    Python 3

  5. antren-dbt antren-dbt Public

    SQL 2

  6. antren-orchestration antren-orchestration Public

    Python 1