Skip to content

Instantly share code, notes, and snippets.

View legokichi's full-sized avatar
😇
neary heaven

Legokichi Duckscallion legokichi

😇
neary heaven
View GitHub Profile
@legokichi
legokichi / IRC.md
Created September 28, 2021 02:00 — forked from rain-1/IRC.md
why we use IRC nodes

Why is IRC distributed across multiple servers?

I have been wondering for a long time why IRC networks have multiple servers. Wouldn't it be simpler just to use a single server?

One of the problems of having multiple servers is that netsplits can occur. Anybody who has been on IRC for a while will have witnessed one. Hundreds of people suddenly ripped out of the chat. This can also screw up channel and user modes, and 'some people' have been known to wait for netsplits in order to takeover channels or enter password protected channels.

So lets compare situation (A) a single IRC server everyone connects to with the current setup people use (B) multiple servers. Let's say you run an IRC network with u = 40,000 users and n = 20 server nodes that people connect to via round robin DNS (meaning that when people resolve the DNS it gives them a random server from the set of 20 to connect to). These are vaguely realistic numbers modelled after libera.chat.

So in (B) you have roughly u/n = 2000 clients connected

@legokichi
legokichi / atr.md
Created May 14, 2021 04:25 — forked from Ishotihadus/atr.md
ATR503文元ネタ集

ATR 音素バランス 503 文元ネタ集

判明している音素バランス文の元ネタを集めた。

Subset A

a01: あらゆる現実をすべて自分のほうへねじ曲げたのだ。

「マルサの女 撮影日記」(伊丹十三)(文藝春秋 1987 年 2 月)(c03、g01 と同一)

PostgreSQL Type PostgreSQL Size Description Range Diesel Type Rust Type
Nullable Types nullable Nullable``
@legokichi
legokichi / doctor.md
Created November 30, 2020 04:55 — forked from kaityo256/doctor.md
博士の話

博士の話

はじめに

アニメや映画などを見ていると、「博士」と呼ばれる人が出てくることがあります。ポケモンにもオーキド博士がいますね。多くの場合物語に登場する「博士」は一人だけで、たんに「はかせ」と呼ばれます。物語に出てくる博士はだいたい物知りで、年配であることが多く、「○○じゃよ」みたいな話し方をしたりします。この「博士」、実際にはどうやってなるのでしょうか?本稿では、「博士」にあまり馴染みのない人向けに博士の仕組みを説明してみようと思います。なお、博士号のとり方は分野によりかなり違います。以下は筆者の知る理工系、特に工学系に限った話だと思ってください。

博士とは

物語では「博士」を「はかせ」と呼ぶことが多いですが、称号としての「博士」は「はくし」と呼ばれます。大学などの高等教育機関は、学術上の知識、能力が十分にあると認めたものに対して学位(degree)を授与することができます。学位にはいろいろありますが、その最高位に位置づけられるのが「博士号」です。戦前は博士号を授与できる機関が帝国大学に限られていたために希少性が高かったようですが、現在は学校教育法により、大学院を置く大学は課程修了者に修士または博士の学位を授与できることが定められています。他にも学位授与機構という、大学以外で学位を授与できる機関があります。

@legokichi
legokichi / re_howto.md
Created November 30, 2020 04:54 — forked from kaityo256/re_howto.md
Re:研究者として生きていくコツ

Re:研究者として生きていくコツ

これは以前書いた研究者として生きていくコツへの補足のようなものです。主にはてブ等でついたコメントへの返事です。

誰に向けて書いたか?

Twitter等で偶然見かけた、顔も名前も知らないポスドクさんたちの言動を見て、これから研究者を目指す学生さんに向けて書きました。そのポスドクさんたちは分野も違うので、私とは直接の知り合いではありません。何年も前のつぶやきに対する反応で、最近の投稿へのエアリプではありません。

研究者も人間です。長くポスドクをしていると、いつも任期に追われ、かつ自分の望むテーマとは必ずしも合致しないプロジェクトをわたり歩くことで、だんだん「自分は何屋さんなのか」がぼやけてくるなか、同期、後輩がポストを取っていくのを見て焦り、「もっとがんばらなきゃ」と自分を追い込んだり、社会や身近な人に呪詛を吐いたり、ということがありがちです。そんな人たちの言動を見て、将来ある若い人が負の影響を受けないといいな、と思って書いたものです。なので、現在ポスドクをやっている人に向けて書いたものではありません。

@legokichi
legokichi / gist:4e4d051f4d77a817a700614049f81092
Created November 30, 2020 04:52 — forked from shyouhei/gist:266178ffedab5767a5b69b972c76f88a
優秀なプログラマーになるためのコツ

優秀なプログラマーになるためのコツ

重要な順で

優秀なプログラマーになるには非常に長い時間がかかるという現実を直視すべし

優秀なプログラマーというのは寝ている間に異世界に召喚されて無双するのとはわけが違うんですよ。

自分の例で言うとプログラミングを始めた中学生の時から優秀なプログラマだったかって、そんなわけない。みんなヘッポコからスタートしているに決まってるわけです。以来二十余年、地道に生き恥を晒し続けてきた結果として、現在いちおう業界の末席を汚すところまで来ている。このプロセスから目を背けるべきではないです。優秀なプログラマーに生まれる人間なんかいない。優秀なプログラマーに「育つ」んだし、それには時間が必要。今日から無双したいと思うな。

@legokichi
legokichi / howto.md
Created November 30, 2020 04:51 — forked from kaityo256/howto.md
研究者として生きていくコツ

研究者として生きていくコツ

これは卜部さんの優秀なプログラマーになるためのコツに影響されて書いたものです。

著者について

自分を構成する要素は、大きい順にシステムエンジニア、プログラマ、研究者だと思っています。でも、おそらく給料は「研究者」として払われているため、研究者として生きていくコツとしました。僕はさほど優秀とは言えませんが、とりあえずそれなりに長いことそれで食っています。大学の教授のウェブサイトに「研究者としてのコツ」みたいなことが書いてあることがありますが、これには「既に大学の教授になっている人が書いている」という強烈なバイアスがかかっています。もちろん参考になることも書いてありますが、「死ぬほど研究しろ、研究のことだけ考えろ」的な文章が多い印象です。これは普通の人にとって役に立たない助言です。これは平均的な研究者として生きていくための戯言、ポエムだと思ってください。

健康第一

@legokichi
legokichi / howto.md
Created November 30, 2020 04:51 — forked from kaityo256/howto.md
研究者として生きていくコツ

研究者として生きていくコツ

これは卜部さんの優秀なプログラマーになるためのコツに影響されて書いたものです。

著者について

自分を構成する要素は、大きい順にシステムエンジニア、プログラマ、研究者だと思っています。でも、おそらく給料は「研究者」として払われているため、研究者として生きていくコツとしました。僕はさほど優秀とは言えませんが、とりあえずそれなりに長いことそれで食っています。大学の教授のウェブサイトに「研究者としてのコツ」みたいなことが書いてあることがありますが、これには「既に大学の教授になっている人が書いている」という強烈なバイアスがかかっています。もちろん参考になることも書いてありますが、「死ぬほど研究しろ、研究のことだけ考えろ」的な文章が多い印象です。これは普通の人にとって役に立たない助言です。これは平均的な研究者として生きていくための戯言、ポエムだと思ってください。

健康第一

@legokichi
legokichi / note_vuln.md
Created October 1, 2020 08:55 — forked from mala/note_vuln.md
noteとインシデントハンドリングと広報の仕事

noteとインシデントハンドリングと広報の仕事

前提

  • この文章はmalaが書いています。個人の見解であり所属している企業とは関係ありません。
  • noteには知り合いが何人かいるし、中の人と直接コンタクトも取っているし相談もされているが、正規の仕事としては請け負っていない

重要

この記事には、9月30日付けと、10月1日付けでnoteに報告した脆弱性についての解説を後ほど追記します。誠実な対応が取られないのであれば、未修正の状態でも公開します。

@legokichi
legokichi / gnuplot_quickstart.md
Created August 6, 2020 17:15 — forked from darencard/gnuplot_quickstart.md
A quick-start guide for using gnuplot for in-terminal plotting

A quick-start guide for using gnuplot for in-terminal plotting

Sometimes it is really nice to just take a quick look at some data. However, when working on remote computers, it is a bit of a burden to move data files to a local computer to create a plot in something like R. One solution is to use gnuplot and make a quick plot that is rendered in the terminal. It isn't very pretty by default, but it gets the job done quickly and easily. There are also advanced gnuplot capabilities that aren't covered here at all.

gnuplot has it's own internal syntax that can be fed in as a script, which I won't get into. Here is the very simplified gnuplot code we'll be using:

set terminal dumb size 120, 30; set autoscale; plot '-' using 1:3 with lines notitle

Let's break this down: