Note: The compilation of the C files (make
) requires GCC version 7. Maybe LLVM?
- Git clone & init the project
git clone ...
git submodule update --init
"""A small script to find all months that have a Monday 25th for a particular | |
year. | |
Input: year in format YYYY | |
Output: print list of dates that are a Monday 25 in that year | |
""" | |
import re | |
import sys | |
from typing import Iterator | |
from datetime import date |
As a user, to use the new implementation of gRCP in the asynchronous version, I will compile by passing a specific flag:
$ python -m grpc_tools.protoc -I. --python_out=. --grpc_python_out=. proto/echo.proto --aiogrpc
This compiles the stubs, generated with the asynchronous code.
"""Code for the talk "Discovering Descriptors" | |
> PyCon CZ 2017 - 8 to 10 June - Prage, Czech Republic | |
June 9th, 2017 11:00 CET | |
> EuroPython 2017 - 9 to 16 July - Rimini, Italy | |
July 11th, 2017 15:45 CET | |
https://ep2017.europython.eu/conference/talks/discovering-descriptors | |
Python 3.6 |
// Run PostgreSQL server: | |
// docker run -e POSTGRES_PASSWORD="" -p 5432:5432 postgres | |
// Monitor running processes: | |
// watch -n 1 'echo "select pid,query_start,state,query from pg_stat_activity;" | psql -h localhost -U postgres | |
// | |
// For all handlers, call to db takes 5 seconds, | |
// | |
// Three endpoints: | |
// - "/" - take 5 seconds | |
// - "/ctx" - take 1 seconds, due to 1 second cancellation policy |
""" | |
Object that allows chaining functional programming operations | |
over a provided data set. | |
""" | |
from operator import add | |
from functools import partialmethod, reduce | |
class ChainedFunctional: |
/* | |
Code below can be run directly into LINQPad - https://www.linqpad.net/ | |
Return the owner and repo name of the most starred project with more than 100 contributors, for each language | |
The declarative implementation can be solved using the Select, Where, Aggregate and GroupBy LINQ extension methods | |
*/ | |
void Main() | |
{ | |
var repos = new List<Repo> { |
class Top(object): | |
pass | |
class A(Top): pass | |
class B(Top): pass | |
class A1(A): pass |
# -*- mode: ruby -*- | |
# vi: set ft=ruby : | |
# | |
Vagrant.configure(2) do |config| | |
# This is an image of Ubuntu 14.04 LTS with libvirt support | |
config.vm.box = "baremettle/ubuntu-14.04" | |
config.vm.provision :shell, path: "provision.sh" | |
# config.vm.synced_folder "../data", "/vagrant_data" |
This file should summarize some important points to take into account in order to achieve a clean code base, enumerating not only style traits but also tips that might make the code more readable and maintainable.
1. PEP8 with criteria: for example if a line goes beyond 80 cols, but breaking it would make an ugly code, or if the exceeding part is trivial (a comma, brackets, etc.), then leave it as it is, do not make pointless trims.