Skip to content

Commit c76c0b7

Browse files
authored
init PyConIT 2024 (#97)
2 parents fd016fd + d02d344 commit c76c0b7

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+1002468
-0
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,6 @@
44
/2023_EuroSciPy/.2023_EuroSciPy/
55
*.venv/
66
*.egg-info/
7+
.idea
8+
.DS_Store
9+
.hypothesis

2023_PyConIT/__init__.py

Whitespace-only changes.

2024_PyConIT/.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# GitHub syntax highlighting
2+
pixi.lock linguist-language=YAML

2024_PyConIT/.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# pixi environments
2+
.pixi
3+
*.egg-info

2024_PyConIT/README.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Simplifying Python Code through the Lens of Functional Programming
2+
3+
A repo for my PyConIT talk:
4+
https://2024.pycon.it/en/event/simplifying-python-code-through-the-lens-of-functional-programming
5+
6+
## Project Overview
7+
This project is a collection of Python scripts demonstrating various approaches to data processing pipelines.
8+
The main focus is on functional programming techniques and error handling in Python.
9+
The scripts read data from a CSV file, perform various transformations, and compute the average score.
10+
11+
## Getting Started
12+
To run the scripts, you need to have pixi installed. If you don't have pixi, you can install it following the instructions at:
13+
https://pixi.sh/latest/
14+
15+
## Scripts
16+
17+
The `src/pipeline` directory contains several Python scripts, each demonstrating a different approach to building a
18+
data processing pipeline:
19+
20+
* [pipeline_a_polars.py](./src/pipeline/pipeline_a_polars.py): Uses the Polars library to compute the average score.
21+
* [pipeline_b_imperative.py](./src/pipeline/pipeline_b_imperative.py): An imperative approach to building the pipeline.
22+
* [pipeline_c_imperative_with_one_thing.py](./src/pipeline/pipeline_c_imperative_with_one_thing.py): An improved version of the imperative approach.
23+
* [pipeline_d_with_currying.py](./src/pipeline/pipeline_d_with_currying.py): Uses currying to build the pipeline.
24+
* [pipeline_e_function_composition.py](./src/pipeline/pipeline_e_function_composition.py): Uses function composition to build the pipeline.
25+
* [pipeline_f_error_handling.py](./src/pipeline/pipeline_f_error_handling.py): Focuses on error handling in the pipeline.
26+
* [pipeline_g_pymonad.py](./src/pipeline/pipeline_g_pymonad.py): Uses the PyMonad library to build the pipeline.
27+
28+
## Contributing
29+
Contributions are welcome. Please submit an issue if you have something to add or fix.
30+
31+
## Resources

2024_PyConIT/__init__.py

Whitespace-only changes.

0 commit comments

Comments
 (0)