Skip to content

Instantly share code, notes, and snippets.

View tacigar's full-sized avatar
🏠
Working from home

tacigar tacigar

🏠
Working from home
View GitHub Profile
@mpppk
mpppk / clean_architecture.md
Last active July 27, 2024 06:23
クリーンアーキテクチャ完全に理解した

2020/5/31追記: 自分用のメモに書いていたつもりだったのですが、たくさんのスターを頂けてとても嬉しいです。
と同時に、書きかけで中途半端な状態のドキュメントをご覧いただくことになっており、大変心苦しく思っています。

このドキュメントを完成させるために、今後以下のような更新を予定しています。

  • TODO部分を埋める
  • 書籍を基にした理論・原則パートと、実装例パートを分割
    • 現在は4層のレイヤそれぞれごとに原則の確認→実装時の課題リスト→実装例という構成ですが、同じリポジトリへの言及箇所がバラバラになってしまう問題がありました。更新後は、実装時の課題リストを全て洗い出した後にまとめて実装を確認する構成とする予定です。

2021/1/22追記:

@kenmori
kenmori / TypeScriptPractice.md
Last active May 19, 2024 01:52
TypeScript 練習問題集
@shomah4a
shomah4a / spam.txt
Last active May 1, 2020 02:16
spam
From: James Porter james@j-tech.dev
My name is James from J-Tech.dev. I am a specialist recruiter for software engineering. I speak Japanese and English and can write a little bit of code. Our goal is to tell you about the newest tech companies in Tokyo.
Global Fintech Company - Fastest Growing Engineering Team in Japan
Global team spread across North America and Asia
Office is located inside of a WeWork office
Very competitive salaries
Startup atmosphere
Modern tech stack
@dai0304
dai0304 / gist:6db4cfb88a9494d93b69a57d08c14142
Last active August 23, 2020 01:34
首狩り族からの手紙
日付: 2017年10月25日 17:08
件名: Steve Maddenでございます。
ミヤモト様
お世話になっております。
IT業界に特化したヘッドハンター、Steve Maddenと申します。
度々のご連絡、大変失礼いたします。
-- This is a sample custom writer for pandoc.
-- hatena
-- Character escaping
local function escape(s, in_attribute)
return s:gsub("[<>&\"']",
function(x)
if x == '<' then
return '&lt;'
elseif x == '>' then
@jto
jto / qs.scala
Last active December 9, 2019 07:14
Type level quicksort
object jto {
type _1 = Succ[_0]
type _2 = Succ[_1]
type _3 = Succ[_2]
type _4 = Succ[_3]
type _5 = Succ[_4]
// Natural numbers (extracted from shapeless)
@sile
sile / 0_raft.md
Last active May 27, 2024 07:53
Raft(分散合意アルゴリズム)について
@voluntas
voluntas / new_to_mqtt.rst
Last active October 2, 2023 06:26
初めての MQTT
@mikhailov
mikhailov / gist:9639593
Last active November 10, 2023 22:04
Nginx S3 Proxy with caching
events {
worker_connections 1024;
}
http {
default_type text/html;
access_log /dev/stdout;
sendfile on;
keepalive_timeout 65;
@pthariensflame
pthariensflame / IndexedPrivilege.md
Last active November 7, 2019 10:58
An introduction to the indexed privilege monad in Haskell, Scala and C#.

The Indexed Privilege Monad in Haskell, Scala, and C#

We've already looked at two different indexed monads in our tour so far, so let's go for a third whose regular counterpart isn't as well known: the privilege monad.

Motivation

The regular privilege monad allows you to express constraints on which operations a given component is allowed to perform. This lets the developers of seperate interacting components be statically assured that other components can't access their private state, and it gives you a compile-time guarantee that any code that doesn't have appropriate permissions cannot do things that would require those permissions. Unfortunately, you cannot easily, and sometimes cannot at all, build code in the privilege monad that gains or loses permissions as the code runs; in other words, you cannot (in general) raise or lower your own privilege level, not even when it really should be a