Skip to content

Instantly share code, notes, and snippets.

View jciechowski's full-sized avatar

Jakub Ciechowski jciechowski

View GitHub Profile
open System.Net.Http
open System.Net.Http.Json
type Rate = { PLN: double }
type ApiResponse =
{ Amount: double
Base: string
Date: string
Rates: Rate }

Speaker Rider

by Tatiana Mac

Before I'll agree to a speaking event, I try to do as much research I can around the event to ensure it aligns with my ethos. I want to share this in case it's helpful to any other speakers.

👐 Speaking comes with immense privilege. I am grateful to all the conference organisers who have brilliantly hosted me. I would love to continue to exercise this privilege to speak at conferences, and use this privilege to make the landscape more accessible and beneficial to tech's most marginalised and suppressed communities.

😫 I wish I didn't have to, but this is long because I provide a lot of explanations for those of you who never had to consider these things. And I will be honest, most thoughtful conferences I've attended check most of these boxes intrinsically, particularly when conference runners are experienced speakers. They get it.

1️⃣ All of these are based on my own ethos. I don't wish to or attempt to speak on behalf of all conference speake

jciechowski / index.html
Created May 13, 2019 11:11
Webinar CodersTrust 09.05.2019 - layout bloga
<!DOCTYPE html>
<title>Nasz super blog</title>
<link rel="stylesheet" href="" />
jciechowski / Git branch bash autocomplete *with aliases*
Created October 28, 2018 07:43 — forked from JuggoPop/Git branch bash autocomplete *with aliases*
Git branch bash autocomplete *with aliases* (add to .bash_profile)
# To Setup:
# 1) Save the .git-completion.bash file found here:
# 2) Add the following lines to your .bash_profile, be sure to reload (for example: source ~/.bash_profile) for the changes to take effect:
# Git branch bash completion
if [ -f ~/.git-completion.bash ]; then
. ~/.git-completion.bash
# Add git completion to aliases
public class CourseTests
public void PlayIncreaseViewers()
Func<int, int> doubleX = x => x*2;
var memoized = doubleX.Memoize();
var result = memoized(4);
var obj = memoized(1);
Assert.Equal(result, obj);
public PizzaRepository() => _pizzas = new List<Pizza>()
public Maybe<Pizza> Get(int id)
var pizza = _pizzas.FirstOrDefault(_ => _.Id == id);
return pizza == null ? Maybe.Empty<Pizza>() : pizza.ToMaybe();
public class Maybe<T> : IEnumerable<T>
private readonly IEnumerable<T> _values;
public Maybe()
_values = new T[0];
public Maybe(T value)
manipulateRemoteData: function(url) {
return new Promise((resolve, reject) => {
var result = [];
$.getJSON(url, (json) => {jsonFromUrl = json;
result = jsonFromUrl.people.sort((a, b) => {
if( > return 1;
if( == return 0;
return -1;})
#include <stdio.h>
#include <unistd.h>
#include <signal.h>
#include <fcntl.h>
#include <string.h>
#include <stdlib.h>
int descr[2]; //tablica deskryptorow
int main()
\subsection{Ograniczenie górne}
Rozpatrzmy zbiór $F =\{S_1,\ldots,S_n\}$ rozłącznych odcinków prostych na płaszczyźnie oraz graf $G(F)$ zawierający $n$ wierzchołków $v_1$,\ldots,$v_n$ takich, że $v_i$ jest sąsiedni z $v_j$ wtedy i tylko wtedy, gdy istnieje punkt $x$ na płaszczyźnie, który widzi przynajmniej jeden punkt na odcinku $S_i$ i $S_j$ tzn. $x$ strzeże oba odcinki $S_i$ oraz $S_j$ \ref{fig:zbior odcinkow rozlacznych}.
Aby udowodnić twierdzenie \ref{straznicy strzezenie} na początku wykażemy, że dla każdego zbioru $F$ rozłącznych odcinków prostych, których jest parzysta liczba $n$, odpowiednio zdefiniowany graf $G(F)$ ma doskonałe skojarzenie (rysunek \ref{fig:zbior odcinkow rozlacznych})
\caption{Zbiór $F$ rozłącznych odcinków oraz odpowiadający mu graf $G(F)$.}
\label{fig:zbior odcinkow rozlacznych}