Skip to content

Instantly share code, notes, and snippets.


Eduard Tsech edtsech

  • Prague, Czech Republic
View GitHub Profile
edtsech / keybindings.json
Created Jul 3, 2019
VSCode: Exit Vim Insert Mode on File Save
View keybindings.json
"key": "cmd+s",
"command": "macros.saveAndExitVimInsertMode"
edtsech / merge.rb
Created Dec 23, 2012
Merge two hashes/dictionaries in Ruby and Python.
View merge.rb
h1 = { "a" => 100, "b" => 200 }
h2 = { "b" => 254, "c" => 300 }
h3 = h1.merge(h2)
h3 #=> {"a"=>100, "b"=>254, "c"=>300}
h1 #=> { "a" => 100, "b" => 200 }
edtsech /
Last active Dec 20, 2021
Combining snapshot testing and component library -- ReactiveConf 2017 talk proposal

This is a proposal for a lightning talk at Reactive Conf. Please 🌟 this gist to push the proposal!

Combining snapshot testing and component library

Do you test presentational logic of your components? No? Yes, but you feel like you are writing a lot of dummy tests? You even probably use snapshot tests for that, but don't feel like you make enought value from them..

If so, click 🌟 button on that Gist!

I'll talk how our team is using snapshot testing to iterate faster,

View CustomQuill.tsx
import React from 'react'
import * as ReactQuill from 'react-quill'
import { merge } from 'lodash'
import 'react-quill/dist/quill.snow.css'
toolbar: [
['bold', 'italic', 'underline'],

People frequently blame retrospectives being unproductive and boring. But it’s the same as blaming Vodka for getting drunk. Execution is the key.

Some stuff people say about retrospectives:

“I hate scrum and everything about it”

Retrospectives don’t come from Scrum. They don’t even come from Agile. If you know continuous improvement approach sometimes fancy called Kaizen, initially implemented in Toyota it comes from there. But the idea of retrospectives is probably as old as the world.


edtsech /
Created Jul 24, 2020
Thoughts on Retrospectives
title published description tags
Thoughts on Retrospectives
agile, scrum, retro

People frequently blame retrospectives being unproductive and boring. But it’s the same as blaming Vodka for getting drunk. Execution is the key.

View demo.spec.ts
/// <reference types="cypress"/>
import createEmptyDb from '../../../back-end/test/create-empty-db'
describe('Demo test', () => {
before(async () => {
await createEmptyDb()
View xxx.ts
type: () => TopicEnrolmentModel,
description: `creates a new enrolment if retries are allowed`
async reEnrol(
@Context ctx: UserSessionModel
) {
const tv = await this.$relatedQuery('currentTopicVersion')
if (tv.allow_retry) {
edtsech / check.ts
Created Jun 24, 2019
Check TypeScript files for type errors (ignoring imported files)
View check.ts
const _ = require('lodash')
const ts = require('typescript')
const config = require('./tsconfig.json')
let exitStatus = 0
const files = process.argv.slice(2)
const compilerOptions = _.omit(config.compilerOptions, ['moduleResolution'])
compilerOptions.noEmit = true
compilerOptions.lib = ['lib.dom.d.ts']
edtsech /
Last active Aug 17, 2018
Weekly update 17.08.2018

Weekly update 17.08.2018


DiamondBank & GTBank integration

- We went through couple of iterations regarding API design with both banks.
- We were able to unify the API so we don't have to develop it twice.
- We've provided demo API gateway to them. They can use it for integration process.
- On Monday we starting to develop API according to the specification we discussed with them.