Skip to content

Instantly share code, notes, and snippets.

Roman Heinrich mindreframer

Block or report user

Report or block mindreframer

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@mindreframer
mindreframer / hex-packages.md
Last active Aug 13, 2019
Elixir - Dealing with nested datastructures (validating / traversing / transforming)
View hex-packages.md
@mindreframer
mindreframer / adjustowner.sql
Created Jul 11, 2019
Change owner for a Postgres DB (all relations)
View adjustowner.sql
- https://stackoverflow.com/questions/1348126/modify-owner-on-all-tables-simultaneously-in-postgresql
-- I like this one since it modifies tables, views, sequences and functions owner of a certain schema in one go (in one sql statement), without creating a function
DO $$DECLARE r record;
DECLARE
v_schema varchar := 'public';
v_new_owner varchar := 'bn_redash';
text_var1 varchar := '';
text_var2 varchar := '';
text_var3 varchar := '';
BEGIN
View talon-one-devops-position.md

DevOps / SRE - Go(lang) / Kubernetes / Google Cloud - Junior / Senior

Talon.One is a young startup building a Promotion Engine as a service for business clients. Our core product is a platform that integrates with our clients’ systems via public APIs and automates all kinds of promotional marketing campaigns (using discounts, coupon codes, loyalty and referral programs). Marketers manage their promotions via our web app, while developers can customize the platform with webhook integrations, custom events, and even writing code in our specialized LISP dialect Talang!

There is currently no comparable product on the market that provides such level of flexibility.

View Effective_Engineer.md

Effective Engineer - Notes

What's an Effective Engineer?

  • They are the people who get things done. Effective Engineers produce results.

Adopt the Right Mindsets

View gist:23fd6bddbfaacf4bc84ee43e9be6e88c
$ root@plz-playground:~/please# ./bootstrap.sh
Installing Go dependencies...
pypy not found; won't build parser engine for it.
You won't be able to build Please packages unless all parsers are present.
Building Please...
Build finished; total time 0.36s, incrementality 0.0%. Outputs:
//src:please:
plz-out/bin/src/please
//src:please_parser_python2:
View gist:825e292183f15a8e7e7f134502293b14

If you have two days to learn the very basics of modelling, Domain-Driven Design, CQRS and Event Sourcing, here's what you should do:

In the evenings read the [Domain-Driven Design Quickly Minibook]{http://www.infoq.com/minibooks/domain-driven-design-quickly}. During the day watch following great videos (in this order):

  1. Eric Evans' [What I've learned about DDD since the book]{http://www.infoq.com/presentations/ddd-eric-evans}
  2. Eric Evans' [Strategic Design - Responsibility Traps]{http://www.infoq.com/presentations/design-strategic-eric-evans}
  3. Udi Dahan's [Avoid a Failed SOA: Business & Autonomous Components to the Rescue]{http://www.infoq.com/presentations/SOA-Business-Autonomous-Components}
  4. Udi Dahan's [Command-Query Responsibility Segregation]{http://www.infoq.com/presentations/Command-Query-Responsibility-Segregation}
  5. Greg Young's [Unshackle Your Domain]{http://www.infoq.com/presentations/greg-young-unshackle-qcon08}
  6. Eric Evans' [Acknowledging CAP at the Root -- in the Domain Model]{ht
@mindreframer
mindreframer / dyanmic_or_di_elixir.md
Created Sep 5, 2016 — forked from timruffles/dyanmic_or_di_elixir.md
Approaches to dependency-injection/dynamic dispatch in elixir
View dyanmic_or_di_elixir.md

In many production systems you'll want to have one module capable of talking to many potential implementations of a collaborator module (e.g a in memory cache, a redis-based cache etc). While testing it's useful to control which module the module under test is talking to.

Here are the approaches I can see. The two points that seem to divide the approaches are their tool-ability (dialyzer) and their ability to handle stateful implementations (which need a pid).

Passing modules

Modules are first class, so you can pass them in. Used in EEx, where passed module must implement a behaviour.

You can’t perform that action at this time.