Skip to content

Instantly share code, notes, and snippets.

View tolicodes's full-sized avatar

Anatoliy (Toli) Zaslavskiy tolicodes

View GitHub Profile
@tolicodes
tolicodes / .deps...npm...@opengsn...contracts...src...BasePaymaster.sol
Created January 2, 2022 17:40
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.8.7+commit.e28d00a7.js&optimize=false&runs=200&gist=
// SPDX-License-Identifier: GPL-3.0-only
pragma solidity >=0.7.6;
pragma abicoder v2;
import "@openzeppelin/contracts/access/Ownable.sol";
import "./utils/GsnTypes.sol";
import "./interfaces/IPaymaster.sol";
import "./interfaces/IRelayHub.sol";
import "./utils/GsnEip712Library.sol";
@tolicodes
tolicodes / README.md
Created December 9, 2019 18:02
Infragen Preface

It seems that nobody reads prefaces, especially in "technical" material such as this one. I'm guilty of that. I just want the facts, the list of bash commands I have to run and list of npm packages I have to install. With the volume of information out there and tight deadlines, I was conditioned to glaze over explanations, especially non-technical back story. So I'll give you the tl;dr;

I went to a meditation retreat, and realized I was coding InfraGen (Infrastructure Generator) all wrong. I was ignoring software development practices (such as small PRs, KISS, planning first). Ironically I intended for InfraGen to simplify and even enforce such concepts for developers.

I just wanted to get something out quickly, to impress my colleagues, my boss, and the Open Source community.

After this realization, I became committed to building InfraGen the right way, and documenting the process, and documenting some of the Programming Principles I identified.

  • KISS
  • Plan First

Keybase proof

I hereby claim:

  • I am tolicodes on github.
  • I am tolicodes (https://keybase.io/tolicodes) on keybase.
  • I have a public key ASAEflNzQmEgr3XiFm8I86kUzzDs7ITbSg5sIMqOK9bJRQo

To claim this, I am signing this object: