33-day longest streak
👋 Welcome to my Github profile. My name is Erez. I started programming at a young age. I began with QBasic, which was wonderful for making geometric patterns, and simple…
👋 Welcome to my Github profile.
My name is Erez. I started programming at a young age. I began with QBasic, which was wonderful for making geometric patterns, and simple games.
I then moved on to C and Assembly, which introduced me to how computers really work. I began to find beauty in optimization, and experiment with hacking. Then I discovered Python, which ended up as my main language to this day. Its flexibility and careful design made it especially pleasant and productive to work in. I started exploring more academic topics, such as parsing, static analysis, and compilation, which are topics that still interest me, many years after. I also explored many other topics, such as games, databases, web-development, and machine-learning.
As time went on, I shared a lot of code online. At first on sourceforge, then google-code, and finally here on github. Not all of it was worth reading, or even using. But when I shared code, it was always with the intention of contributing something new and special to the world - something that otherwise wouldn't exist.
I'm especially proud of these projects:
- Lark is an innovative parsing toolkit, that's grown to be the most popular parser in the Python ecosystem. When I started it in 2017, I asked to myself, what would my ideal parser look like? That led to several unique design choices, that focused on ergonomics, performance and modularity. But what really made Lark a success, was the fantastic community that grew around it, and their many contributions.
- Reladiff is a tool for high-performance diffing of large datasets across databases. The problem statement is deceptively simple, but the solution is nothing but. Reladiff employs many little database and algorithmic tricks, that all combine to provide unparalleled performance for diffing tables in relational databases. Originally created for Datafold (under the name data-diff), I’m grateful for all the contributions from my colleagues there.
- Runtype is a collection of run-time type utilities, including validation and multiple dispatch. It is so useful, I end up importing it in nearly every project I work on.
- Preql is an ambitious new programming language that compiles to SQL. It aims to bridge the gap between modern programming and databases (inactive, but I plan to resume working on it some day!)
- Sqeleton is a Python library for efficiently interacting and querying SQL databases. It is still incomplete, but I believe it could one day become a great alternative to SQLAlchemy. (except Sqeleton is not an ORM). It is already used by Reladiff.
- PyBW - Python bindings for creating agents that play Starcraft:Broodwar. I created it in 2009 using SWIG. (The link is to a fork, because the original google-code repo no longer exists.)
🌎 I live the digital nomad lifestyle, often spending time in Amsterdam.
👅 I speak Hebrew, English and Spanish.
💞️ I would like to collaborate. If you have a cool project in mind, or want to help with one of mine, let me know. I'm especially interested in programming languages, static analysis, AI, and recommendation systems.
👷♂️ I am a freelancer, and may be available for hire for cool and interesting projects, both open-source and proprietry.
🔗 Would you like to know more? Visit my website.
-
reladiff ★ PINNED
High-performance diffing of large datasets across databases
Python ★ 535 10mo agoExplain → -
Preql ★ PINNED
An interpreted relational query language that compiles to SQL.
Python ★ 631 3y agoExplain → -
runtype ★ PINNED
Utilities for run-time type validation and multiple dispatch
Python ★ 176 12d agoExplain → -
plyplus ★ PINNED
a friendly yet powerful LR-parser written in Python
Python ★ 267 8y agoExplain → -
sqeleton
A python library for efficiently interacting and querying SQL databases
Python ★ 36 8mo agoExplain → -
lambdaX
Partial evaluation for Python with syntactic sugar
Python ★ 36 10y agoExplain → -
zodengine
ZodEngine fork, pull-requests are welcome
C++ ★ 18 13y agoExplain → -
typecast
Typecast is an experimental python library for defining casts between classes.
Python ★ 13 9y agoExplain → -
TotalRecall
Bookmarks for power-users
Svelte ★ 12 4y agoExplain → -
filedict
Persistent Dictionary for Python using sqlite
Python ★ 8 6y agoExplain → -
erezvim
My settings, colors and plugins for vim
VimL ★ 8 12y agoExplain → -
tinyAjaxForm
A very tiny library that transforms regular forms into ajax forms
JavaScript ★ 7 13y agoExplain → -
hypermako
mako-html generator inspired by haml
Python ★ 4 13y agoExplain → -
fucking-awesome-python ⑂
awesome-python with :octocat: :star: and :fork_and_knife:
★ 3 7y agoExplain → -
py2js
No description.
Python ★ 3 5y agoExplain → -
Lark_Julia
LALR parser implementation for Julia, based on Python's Lark
Julia ★ 3 6y agoExplain → -
erezsh.github.io
The source code for erezsh.com
Svelte ★ 2 1y agoExplain → -
autocast
Autocast is an experimental python library for defining casts between different types
Python ★ 2 8y agoExplain → -
AllocTracker
track allocations/acquires/opens to debug resource leaks
Python ★ 2 15y agoExplain → -
erezsh
Config files for my GitHub profile.
★ 1 6mo agoExplain → -
flower ⑂
Real-time monitor and web admin for Celery distributed task queue
Python ★ 1 12y agoExplain → -
awesome-python ⑂ ▣
A curated list of awesome Python frameworks, libraries, software and resources
Python ★ 1 5y agoExplain → -
awesome-programming-languages ⑂
The list of an awesome programming languages that you might be interested in
★ 1 4y agoExplain → -
portal-radar ▣
A radar for portals
Python ★ 1 2y agoExplain → -
open-letter ⑂
An open letter calling for a hard fork of Rails to remove DHH's influence
★ 0 9mo agoExplain → -
hexx ⑂ ▣
Hexagonal tools lib in rust
Rust ★ 0 2y agoExplain → -
pydantic ⑂ ▣
Data parsing and validation using Python type hints
Python ★ 0 4y agoExplain → -
youtube-dl ⑂
Small command-line program to download videos from YouTube.com and other video sites
Python ★ 0 13y agoExplain → -
homeconf
Configuration files to put at home
Shell ★ 0 3y agoExplain → -
python-parsing-benchmarks ⑂
Compares Python's text parsing libraries
★ 0 4y agoExplain → -
webpack-lark-loader ⑂
No description.
★ 0 4y agoExplain → -
preql-binder
No description.
Jupyter Notebook ★ 0 5y agoExplain → -
rex ⑂
A lean terminal hex editor written in Rust
Rust ★ 0 10y agoExplain → -
python-typecheckers ⑂
A list of Python type checkers (PEP 484 compliant and not, static and runtime/dynamic)
★ 0 6y agoExplain → -
minisynth ⑂
program synthesis is possible
Python ★ 0 6y agoExplain →
No repos match these filters.