Skip to content

Instantly share code, notes, and snippets.

go 1.1 scheduler

where

src/pkg/runtime proc.c asm_*.s

design

@nekoruri
nekoruri / vim_risk.md
Last active December 14, 2015 09:19 — forked from repeatedly/d_risk.md

ついに顕在化しはじめた「vimリスク」

英語圏ではかなり前からvimで開発し続けることのリスクについて語られていたが、いよいよ具体的な弊害が出て来ているようなので、かいつまんでメモ。日本でもそう遠くない未来だと思う。

若手エンジニアの不足

Visual Studioのように需要が逼迫しているのに人材の供給が増えず需給ミスマッチが起っているわけでは無く、需要も供給も減るという状況下でわずかだが需要が上回っているとう性質の悪い状況がvimに起きている。特に深刻なのは安価な若手エンジニアの採用が絶望的に難しいという現実だ。TextMateが台頭して数年経ちXcodeがメインストリームの先頭を突っ走る2013年において新しくvimを勉強しようとする若者はよほどの物好きしかいない。30~40歳のvimエンジニアを雇うのはそれほど難しく無いだろうがコストがかかる。安価な20代前半の若手エンジニアを雇いたいという企業の思いとは裏腹にvimを新たに学ぶ若者は絶滅寸前だ。

とても優秀な若者を雇用できるチャンスが巡って来た。採用担当者はこう尋ねる。「vimは習得していますか?」「もちろんEclipse/NetBeans/Xcodeはお手の物です。IntelliJもある程度可能です」「もう一度伺いますがvimは習得していますか?」「申し訳ございません 未習得です」

@methane
methane / gist:4748822
Created February 10, 2013 07:45
GOMAXPROCSについてのメモ
gogoutineてGOMAXPROCSを設定しない限りはシングルスレッドなんですねえ。
GOMAXPROCSはもうちょっとだけ複雑です。
同時に動けるgoroutineの数の制限なのですが、
read などのブロックするかもしれないシステムコールを発行する場合、発行前に「現在実行中のゴルーチン数」をデクリメントして、
システムコールから返ってきたらそれをインクリメントします。
で、デクリメントした時に、他に動けるスレッドがいなかったらスレッド起動して、他のgoroutineが動けるようにします。
他のスレッドがすでにあって眠っていたら、それを起こしてgoroutineを実行させます。
なので、ブロックする処理としない処理を混ぜてもいい感じに動くのです。
で、その、スレッドを作ったり起動したりするのが実はちょっとだけ重いので、ベンチマーク結果を良くするためにはその処理が走らないように、
@karad
karad / Application.java
Created January 9, 2013 02:02
Play 2.0 JavaでScalateを使いたい場合はorg.fusesource.scalate.japi.TemplateEngineFacadeを使えばプラグインなしでいける。
package controllers;
import play.*;
import play.mvc.*;
import controllers.*;
import views.html.*;
import org.fusesource.scalate.japi.TemplateEngineFacade;
import java.util.HashMap;
import java.util.Map;
@amashigeseiji
amashigeseiji / vim-keybind_on_google-spreadsheet
Last active May 11, 2021 08:08
googlespreadsheetをvimキーバインドで操作したかったので設定してみた(要feedSomeKey_3.js) ※以下の設定をvimperatorrcにコピーすればhjklでの移動、insert-mode/normal-modeの切り替えとか出来ます
command! -nargs=+ lazy autocmd VimperatorEnter .* <args>
"googlespreadshet{{{
autocmd LocationChange '((drive|docs)\.google\.com).*(/spreadsheet/).*[0-9]+$' <C-j>
"insert-modeでの<esc>キーはspreadsheetでのエスケープキーにする(insert-modeは抜けない)
lazy fmaps -u='((drive|docs)\.google\.com).*(/spreadsheet/).*[0-9]+$' -modes=i <esc>
"insert-mode/normal-modeの切り替え(iでinsert-mode/<C-j>でnormal-mode)
inoremap -u='((drive|docs)\.google\.com).*(/spreadsheet/).*[0-9]+$' <C-j> <esc>
@naoyat
naoyat / base⠼⠋⠙.py
Created December 13, 2012 19:24
use braille patterns for base64, instead of alphanumerics. joke.
#!/usr/bin/env python
#coding:utf-8
import sys
def base64_encode_(in_data, padding=False):
in_len = len(in_data)
out_data = []
for i in range(0, in_len, 3):
out_data.append(in_data[i] >> 2)
@tamoot
tamoot / 受託開発カルタ
Created December 13, 2012 00:53
受託開発の現場を表した、受託開発カルタです。忘年会にどうぞ。fork大歓迎。
【あ】 あー、あの人に聞いて。別プロジェクトだけど。
【い】 いいから作っちゃって!
【う】 嘘でもいいからバグの数でっちあげて
【え】 影響範囲は調査済みです!問題ありません!(キリッ
【お】 おまかせしてください!(発注元へのアピール)
【か】 カイゼンを やってるヒマが ありません やってることには なってるけどね
【き】 昨日の仕様書に書いてない!
【く】 クラウドが強み!(クスクス
【け】 検討中というラストカード
【こ】 コードが仕様書だろJK
@co3k
co3k / append_target_versions_to_related_issues.user.js
Created November 8, 2012 12:16
User script to append version information to related issues of redmine.openpne.jp
@hayajo
hayajo / changelog_en.md
Last active May 3, 2024 08:29
ChangeLog を支える英語

ChangeLog を支える英語

ChangeLog を書く際によく使われる英語をまとめました。

ほとんど引用です。

基本形

@Gab-km
Gab-km / github-flow.ja.md
Last active April 25, 2024 04:01 — forked from juno/github-flow.ja.md
GitHub Flow (Japanese translation)