{"id":21374789,"url":"https://github.com/radrow/radrow","last_synced_at":"2026-02-09T07:06:33.382Z","repository":{"id":137636766,"uuid":"374987645","full_name":"radrow/radrow","owner":"radrow","description":"The frontpage of my github","archived":false,"fork":false,"pushed_at":"2024-03-09T11:55:20.000Z","size":78,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-22T21:28:32.001Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/radrow.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-06-08T11:40:42.000Z","updated_at":"2022-01-08T21:22:43.000Z","dependencies_parsed_at":"2024-11-22T09:15:20.882Z","dependency_job_id":null,"html_url":"https://github.com/radrow/radrow","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radrow%2Fradrow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radrow%2Fradrow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radrow%2Fradrow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radrow%2Fradrow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/radrow","download_url":"https://codeload.github.com/radrow/radrow/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243847969,"owners_count":20357472,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-22T08:45:26.081Z","updated_at":"2026-02-09T07:06:33.377Z","avatar_url":"https://github.com/radrow.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Radosław Rowicki\n\nA computer scientist by passion and profession. Graduate at the University of Warsaw, [master's degree](https://github.com/radrow/masters-thesis), currently a PhD student at [DTU Compute](https://www.compute.dtu.dk/).\n\n[![GitHub radrow](https://img.shields.io/github/followers/radrow?label=follow\u0026style=social\u0026cacheSeconds=86400)](https://github.com/radrow)\n[![Linkedin radrow](https://img.shields.io/badge/-Linkedin-blue?style=flat-square\u0026logo=Linkedin\u0026logoColor=white\u0026link=https://www.linkedin.com/in/radrow-85ab63b4\u0026cacheSeconds=864000)](https://www.linkedin.com/in/radrow)\n[![Stack Exchange reputation](https://img.shields.io/stackexchange/stackoverflow/r/4400060)](https://stackoverflow.com/users/4400060/radrow?tab=profile)\n\n[![Top Langs](https://github-readme-stats.vercel.app/api/top-langs/?username=radrow\u0026layout=compact\u0026hide=TeX,HTML\u0026theme=dark)](https://github.com/anuraghazra/github-readme-stats)\n\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eSkills\u003c/b\u003e\u003c/summary\u003e\n  \n### Areas\n\n- Functional programming\n- Compiler construction\n- Type theory\n- Blockchain\n- Formal verification\n\n### Technologies \u0026 lanugages\n\n- **Advanced:** Haskell, Erlang, Coq\n- **Semi-advanced:** C#, Rust\n- **Intermediate:** Python, Prolog\n\n### Natural languages\n\n- **Mothertongue:** Polish\n- **Fluent:** English\n- **Communicative:** German\n  \n\u003chr\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eProfessional experience\u003c/b\u003e\u003c/summary\u003e\n\n### 2023–present — PhD Student at **DTU Compute**\n\n- Researching methods for verification of distributed systems\n- Teaching assistance in computer science master's courses\n  \n### 2019–present — Erlang Developer at **æternity blockchain**\n\n- Developing a compiler for a smart contract language\n- Developing tooling for smart contract development\n- Developing a virtual machine for smart contracts\n- Conducting technical interviews and onboarding new members\n  \n### 2021–2022 — Software Engineer at **Microsoft Corporation**\n\n- Developed the server behind Business Central 365\n- Maintained site reliability\n  \n### 2018 — Haskell \u0026 Elm Developer Intern at **Vacation Labs**\n  \n- Introduced a new booking infra for the company's services\n- Introduced Elm to the codebase\n\n\u003chr\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eEducation\u003c/b\u003e\u003c/summary\u003e\n\n### 2023–2026 (est.) Technical University of Denmark\n\n- Research project: \"Hyben - Hybrid Verification of Heterogeneous Message-Passing Applications\"\n- Formalised methods of distributed deadlock detection via black-box monitors\n- Mechanised theoretical results in [Rocq](https://github.com/radrow/dlstalk-coq)\n- Implemented tools for deadlock detection in gen_server-based systems: [DDMon](https://github.com/radrow/ddmon) and [DDTrace](https://github.com/radrow/ddtrace)\n\n### 2019–2022 University of Warsaw\n\nMaster's degree in computer science.\n  \n- Thesis: [Liquid types for verification of smart contracts](https://students.mimuw.edu.pl/~radrow/master.pdf)\n- Grade: Very Good (5 in a 2–5 scale)\n  \n### 2020–2021 Ludwig Maximilian University of Munich\n\nStudent exchange programme\n\n### 2016–2019 University of Warsaw\n\nBachelor's degree in computer science\n  \n- Thesis: [Variational autoencoder for collaborative filtering - implementation and performance optimization](https://students.mimuw.edu.pl/~radrow/bachelor.pdf)\n- Grade: Good (4 in a 2–5 scale)\n\n\u003chr\u003e\n\u003c/details\u003e\n\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eSelected projects\u003c/b\u003e\u003c/summary\u003e\n\n### PhD related\n\n- [`ddmon`](https://github.com/radrow/ddmon) — A prototype tool for distributed deadlock detection in Erlang/Elixir systems based on the `gen_server` behaviour. Implemented as *black-box proxy monitors*. Works as a drop-in replacement for the `gen_server` module.\n- [`ddtrace`](https://github.com/radrow/ddtrace) — Another distributed deadlock detecting tool for generic servers in Erlang, but this time based on *observing monitors* that do not require any intervention in the code of the monitored process. Instead, uses built-in `trace` facility to make deadlock verdicts based solely on incoming and outgoing communication.\n- [`dlstalk`](https://github.com/radrow/dlstalk-coq) — Fully mechanised formalisation of a deadlock detecting algorithm via proxy monitors. Specifies syntax and semantics of monitored and unmonitored services and networks and proves transparency and preciseness of deadlock verdicts. [`ddmon`](https://github.com/radrow/ddmon) is the implementation of this model.\n\n### Work related\n\n- [`aesophia`](https://github.com/aeternity/aesophia) — I developed the Sophia smart contract language for the [æternity blockchain](aeternity.com).\n- [`aerepl`](https://github.com//aeternity/aerepl) — I designed and implemented a Read-Eval-Print Loop and debugger for the Sophia language.\n- [`aerepl-web`](https://github.com//aeternity/aerepl-web) — Web interface for æREPL implemented by me.\n- [`aeserialization-rust`](https://github.com/aeternity/aeserialization-rust/) — I rewrote core components of the æternity blockchain in Rust.\n- [`tree-sitter-aesophia`](https://github.com/aeternity/tree-sitter-aesophia/) — I implemented a [Tree-sitter](https://tree-sitter.github.io/tree-sit) grammar for æternity's smart contract language.\n- [`erlscripten`](https://github.com/erlscripten/erlscripten) — I took key part in the erlscripten project, which aims to port Erlang applications to the frontend of web applications by transpiling it into [PureScript](https://www.purescript.org/).\n- [`erlscripten/purescript`](https://github.com/erlscripten/purescript) — For the erlscripten project I did a lot of tinkering in the source generator and optimizer of PureScript's compiler. My work resulted in a few contributions to the original project:\n  - [#4006](https://github.com/purescript/purescript/pull/4006) — I identified and fixed a performance issue in one of PureScript's AST transformations. \n  - [#3968](https://github.com/purescript/purescript/pull/3968) — I proposed changes to how tail-call optimizations are triggered (unmerged).\n\n### University related\n\n- [`radlang`](https://github.com/radrow/radlang) — An interpreter of a Haskell-like language. Supports type classes, full type inference, higher kinded types, `for` notation for monads and lazy evaluation.\n- [`latte`](https://github.com/radrow/latte) — An x86 compiler for a Java-like OOP language. Implements class inheritance, polymorphism via virtual methods and some simple optimization techniques.\n- [`satisfaction`](https://github.com/radrow/satisfaction) — A SAT solver implementing CDCL and DPLL algorithms written in Rust as an assessment task for courses at LMU. \n- [`VAE-CF`](https://github.com/mkfilipiuk/VAE-CF) — Bachelor's thesis project. A variational autoencoder for collaborative filtering written in [Tensorflow](https://www.tensorflow.org/). Created in cooperation with NVIDIA Corporation to optimize it for their hardware and infrastructure.\n- [`tftp-client-coq`](https://github.com/radrow/tftp-client-coq) — A TFTP client written in Coq/OCaml. Provides proofs for compliance with the RFC standard.\n- [`Tiny-Semantics`](https://github.com/radrow/Tiny-Semantics) — A simple CPS-styled interpreter of an imperative language written in Haskell.\n- [`instant-compiler`](https://github.com/radrow/instant-compiler) — A calculator-like language compiler that targets LLVM and JVM.\n  \n### Independent / personal\n  \n- [`i3hloc`](https://github.com/radrow/i3hloc2) — A customizable, parallelized scheduler for the [`i3status`](i3/i3status) status bar for i3 WM. Written in Haskell.\n- [`fizzbuzz-coq`](https://github.com/radrow/fizzbuzz-coq) — A super defensive joke implementation of the [Fizz Buzz](https://en.wikipedia.org/wiki/Fizz_buzz) problem written as a sophisticated proposal to the [state-of-the-art implementation](https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition). Written in Coq to prove correctness of every step of the algorithm. Obfuscation warning. \n- [`blockchain-toy`](https://github.com/radrow/blockchain-toy) — A simple centralized blockchain implementation written in Haskell.\n- [`Iris`](https://github.com/jaedb/Iris) — I provided the Iris Mopidy frontend with Polish localization.\n\n\u003chr/\u003e\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fradrow%2Fradrow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fradrow%2Fradrow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fradrow%2Fradrow/lists"}