Twitterでふぁぼったものをひたすら試します

女性エンジニアなので本気で思ったことを本気で書く

他人の個人情報を勝手に掲載することについて

  • 勝手に個人情報を載せてはいけない

いくら公開されていてもそれは他人のものです。ダメです。オープンソースですらオープンだからって好き勝手したら怒られるだろ。ちゃんと各々のlicense.mdとかに目を通して確認するだろ。ましてや他人を使って遊んではいけません。

  • (特にマイノリティに属する)人のリストを不可解な基準で作成してはならない

マイノリティの人たちはそれゆえに頻繁に被害を受けています(今回なら女性なのでセクハラ案件とか)。その予兆があるならば万が一に備え身構えるようになっているかと思います。
ゆえに、そういう人のリストが作られている場合、「これから犯罪をふっかけにいくリスト」に見えてしまいます。別に犯罪予告が書かれていなかったとしても、「安全/危険」の2値で行ったら危険に入れて動向を注視するほうが身のためです。特にこの界隈は勉強会やカンファレンスで知らない人とあっちこっち夜までやってることが多いので、今回のような意図不明のリストがあると夜道が怖いです。

これが「今活躍の女性CTO本人たちに許可とってリスト作りました!」とかだったら少なくとも私は安心するわけです。
「本人に許可とった」&「CTOっていう明確な判断基準」がありますから。

みなさんはどの辺からOKでNGですか。

アカウント削除?

リポジトリ削除は(本人かGitHubのどちらが実行すべきかは別として)妥当でしょう。PRで名前を削除してもgitの歴史には残り続けます。

最近はGitHubもハラスメントにぴりぴりしているようなのでそんな事態もあるでしょう。即刻アカウント削除がいいか悪いかは知りません。
GitHub Terms of Service - User Documentation

「イケメンなら許されるんだろ?w」

これ、犯罪ごととかでよく聞きますけど、

他人の顔ごときで判断鈍るほどに私の頭が悪いというのなら、よろしい、戦争……はしません。
少なくとも私が今まで会ってきた方々がそういう判断の誤りをするとは思いません。

なぜ女性エンジニアは集まるのか

Geek Women Japan 2016でボランティアスタッフしてたはなし - S_Shimotori’s diary

弊大学の情報工学科は約80〜100人程度いたかと思いますが、このうち女性は5人ほどです。この手の分野はおよそ5%〜10%の女性率になるような気がしています。
5%なんて言われるとイメージがわかないと思うので、私は以下のような表現をしています。

意図して集まらなければ同じ分野の女性エンジニアに会えない

上記の5人は全員分野が違います。インフラの研究や開発の研究やセキュリティの研究をしています。つまり、日々会う範囲に「Swiftまじ最高じゃん!?」と話しかけて話が通じる人はいません。というかプログラミングアレルギーを発症していて逃げられる可能性大です。
ここでSwiftの勉強会に行くとようやくもう1人か2人の女性と会うことができます(会えないこともあります)。ここでSwift女子部を作ると、なんと10〜20人くらいとSwiftの素晴らしさについて対面で気軽に質問したり一緒に勉強したりできます。お互いの技量や進捗や領域は違うので、2人よって文殊の知恵するより10〜20人のほうが良い知恵のできる可能性が高まります。

Q 9〜19人の男性と友達になってそこで勉強会やれ
A これについては、9〜19人の女性と囲まれてもアウェイ感を感じず平常運転で居られる人からコツを聞きたいです。

同性で同じ趣味の友達がすぐに見つかるなんて羨ましいなんて、言わないぞ言わないぞ言ってる。
せめて後世のコミュ障女性エンジニアが友達作りに悩まないように貢献していきたい。

技術について

以下個人の完全なる感想です。

わたしはこのエンジニア界隈が好きです。いい人たちがいっぱいいるというだけでなく、「Swiftが好きである」というだけでSwift界隈と楽しくお話ができます。SwiftでOSSを公開したり記事を書いたりし、それが素晴らしいものであれば「素晴らしいから」という理由だけで評価してもらえます。本来ここに技術と関係のない属性(性別など)は介入してこないはずで、だからこそ自分が心地よさを感じているのだと思います。

だからそういう話をGitHub上でやられて、ちょっと悲しかった。このあいだのGeek Women JapanのGitHubの人の講演聞いてて思ったけど、私はすこしGitHubを神聖化していたかも。人が関わる以上いいこと悪いことあるのが現実なのにね。

まとめ

上記のことを考えまとめ書き綴ることによりここ数時間のもやもやを解消する効果が得られた。
そんだけ。それ以上の意味はない。

#vimconf2016 へ行って女性参加率を上げてきた

おい、おじさまおにいさましかいねえぞ!?嘘だよな!見落としただけだよな!!

「女性ですオンサイトで参加しました」という名乗り出がどちら様からか無いと、このままではわたしが日本一の女性vimmerとなってしまいますので、どうぞよろしくお願いします。

まあそれは置いておいて、初参加した報告をば。

vimconf参加に必要なレベル

この人vim以外触ってないんじゃないかみたいな人が複数参加&発表していて、かき消されるんではないかと思ったが、初心者の知見も共有されていて安心した。
最低限の操作を習ってプラグインを物色しはじめたくらいからでもOK。

わたし自身はXcodeIntelliJ系のキーバインドを使うくらいなので、あまりよくわかってない。CUI onlyの環境で開発することもないしなあ。

学生枠

もっと増やして〜!

vim vs emacs

以前からどうもemacs界隈が静かというか、あまり話を聞かないなあと思ってた。わたしがたまたまvim使う人ばかりフォローしているだけかと思ったけど、vimに日本人が随分貢献していたりvim-jpが盛んだったり、そのあたりで本当に差がついているのかもしれない。

Shougoさんの一昨年のスライド
www.slideshare.net

まとめ: vim-jpがすごすぎたのだ

ところで、初めて暗黒美夢王の姿を見たんですけど、数々の功績に裏付けられた厨二病のダークパワーってヤバイ

おみやげ

以前KoRoNさんが配布していたリストバンドをゲット。

twitter.com

レッツトライ

本当はvim8/neovimへの移管しなくちゃなー、といったところなのだが、普段 git commit でしか使ってないのでモチベがマイナス状態。

Vimium

Vimium - the hacker's browser

vimってこんなコマンドだったっけ(何もわかってない)。
思えば無意識にChromeに対してhjklを叩いてたりしたし、ネットサーフィンしまくってるし、確かに練習として良いのかもしれない。

コマンドわかんねえ。

Windowsでの開発がしんどい

ja.stackoverflow.com

まあWindowsだし

set breakindent

rcmdnk.github.io

テストの実装かなにかでマージされるのに10年かかったという代物
(私はIDE使ってるんでお世話になる機会がないですね……)

set spelllang=en,cjk

set spell
set spelllang=en,cjk

これで日本語が赤線まみれにならずに済む

テキストオブジェクト

qiita.com

もっと早くに知るべきだった……XVimでも使えるし。
vi" とかの " がshift打たないと入らないのでめっちゃ打ちづらい。

僕の友達を紹介するよ by aiya000さん

github.com

vim-textobj-indentとかめっちゃ便利じゃん。もっと早くに……

懇親会

「大学は非コンピュータサイエンス専攻で、xxを習ったことがないのでコンプレックス」という話がありましたが、弊大学にはxxをやる授業なんてちっともなかったし、「y学生からプログラミングしてた」という人がこちらとしてはむしろちょっぴりコンプレックスです。

何が言いたいかっていうと、

欲しい知識は自主学習でのみ身につく。

現場からは以上です。

Geek Women Japan 2016でボランティアスタッフしてたはなし

geekwomenjapan.github.io

ボランティアしてました

雑用をするべくスタッフ側で参加(DroidKaigiに続き2回目)。
イベントの雑用は結構気に入っているつもり。

お客さま

老若男女来ていただきました。大変うれしい。

cocoatomoさまのブログ記事からひとこと拝借。
Geek Women Japan 2016へ行ってきました — Elliptium

参加者の男女比がいつもの勉強会と大きく違っていたり, スタッフが全員女性だったりして, かなりアウェイ感を感じたイベントでした. もしかして女性はいつもの勉強会でこういう感覚でいるのかなと思うと, それを経験できたのは貴重なことだったのかもしれません.

わたしの勉強会デビューを思い出した。

「いいから勉強会へ行け!」の兄のひとことでデビューするも、ベンキョウカイとやらに一体誰がいるかもわからず、

  • 勉強会=オフ会=危ない!?
  • ほぼ間違いなく終業後開催なので夜遅い=危ない!?*1
  • 知らない男性の皆様方多数=油断ならない!?*2
  • ザコな学生が社会人のみなさまに混じっていいものか

それはそれはもうびびっていた。
今は技術を愛する良い方々ばかりで安心して参加できてます感謝感謝。

何が言いたいかというと、びびっている人がいれば誰であれ温かく歓迎してほしいし、そうする側にまわっていきたいものです。

託児所システムは素晴らしい。
これからの時代、アンチハラスメントの文と託児所と……なんてね。カンファレンスは1日で最新動向をざっくり追えるので、家事育児他に忙しい人にこそ良いイベントなんじゃないでしょうか。どうですかだめですか。

なかみ

技術的な話というよりはコミュニティの話だったりマイノリティの話だったり。ぜひ1度こっち方面の話を聞いて考える機会にしていただければなあと思う。

keynote 2: "Encouraging healthy communities at GitHub"あたりは特に興味深い。

speakerdeck.com

悲しいかな、GitHub上でもハラスメントがあるという。マジかよ。
ぜひ読んでみてね必見だよ

朝ごはん

パン屋さんの朝は早い。

ブーランジュリー ラ・セゾン 本店 (BOULANGERIE LA SAISON) - 参宮橋/パン [食べログ]

祝日揚げカレーパン

A photo posted by @s_shimotori on

祝日なのに授業日だった弊大学の人たちに見せつけていくスタイル
※授業はサボってないよ

お昼

オリンピック記念青少年総合センタ近辺 ランチ情報の情報を頼りにカレー屋さんへ。
ヒマラヤカリー 参宮橋店 (Himalaya Curry) - 参宮橋/ネパール料理 [食べログ]

でか

A photo posted by @s_shimotori on

ナンが大きすぎて、休み時間中に食べきれずお持ち帰り。ふつーに美味しかった。

まとめ

みなさまありがとうございました
新年会でお会いしましょう(研究がやばくなってなければ)

*1:訪問先の報告と門限厳守が必須の家庭はまれによくあります。1人暮らしを始めて開催場所と自宅が近くなったら2次会デビューしたいですね

*2:ひどい身構え方かもしれないですが、ハラスメント野郎等々と出くわした後では、知らないクラスタの知らない人に初対面から100%オープンに行くのは…ちょっと勘弁……

南アジア料理のおすすめのお店

授業で紹介があったのを勝手に掲載するので先生に怒られたら消す

「Amazon Web Services クラウドネイティブ・アプリケーション開発技法」を読んでTwitterのbotを作った

botってほどじゃないんだけどね

本について

Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく (Informatics&IDEA)

Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく (Informatics&IDEA)

  • 作者: NRIネットコム株式会社,佐々木拓郎,佐藤瞬,石川修,高柳怜士,佐藤雄也,岸本勇貴
  • 出版社/メーカー: SBクリエイティブ
  • 発売日: 2016/04/20
  • メディア: 単行本
  • この商品を含むブログ (1件) を見る

AWSというとやはり秘密鍵公開からの爆死が非常に怖い。Amazonのレビューにもあるとおり、本執筆当時の手順(というかUI)と今のAWSが違うとはいえ、アカウント作成段階のセキュリティ設定からフォローしてくれるのはやはりありがたい。後半は飽きて読んでない一通り読めばAWSの雰囲気もつかめて、多分本番もいける。多分。

本なしじゃAWSむずいじゃん。基本英語だし。怖いし。Qiitaに一通りの手順がまとまった記事があるわけじゃないし。
っていう人にはまあ買ってもいいんじゃないかと思った。サーバの特にセキュリティはわからないから、EC2は怖くて使えないなと思ったけど、EC2以外のサービスを組み合わせれば比較的安全にいけることを学んだ。例題がスマホアプリとNode.js(ただのjavascript程度)だしね。

Twitterといっしょにあそぶ

わたしは毎日のツイートの2番目が必ず「おはようおやすみ」である。起きたと見せかけて2度寝する可能性が非常に高いからである。2番目である理由は特にない。これの自動化を試みる。
面倒なのは、AWSで組み上げることよりも、直近ツイートがその日最初かどうかの判断のほう。3時寝7時起きツイートとか17時頃にその日のツイッタ活動開始とかがありうる。

起床後最初のツイートに「おはようおやすみ」のリプライを送れ!

構成は基本的に↓のパクリ。CloudWatchのところからイベントを作って入力や対象Lambdaのバージョンを指定すれば完璧。
面倒なのでAPI Gatewayは挟まず直接DynamoDBを操作している。

qiita.com

Lambdaで動かすプログラムはなんといってもやはりGradle+Kotlinである。JavaPythonは書いててつまらないので採用を見送った。Mavenxmlがキモいので今後のご活躍をお祈りする。

jarに依存関係のものを全て入れなければならないので、Kotlinやaws-lambda-javaやtwitter4j以外に

jar {
    from {
        configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
    }
}

が必要である。え、必要だよね?

log4jを使うときはsrc/main/resources/log4j.propertiesが必要。→ロギング(Java) - AWS Lambda

料金とか制限とか

そもそものbotの動作として、

  1. CloudWatchに呼ばれる
  2. DynamoDBを読んで今日の「おはようおやすみ」ツイートが終わっているか確認
  3. 終わっていなければTwitterをなぐって起床後最初のツイートがあるか確認
  4. 起床後最初のツイートがあればTwitterに投稿、投稿が成功すればDynamoDBに記録

である。毎分DynamoDBを殴るのは確実で、TwitterAPIはツイートしてしまえば回数を消費しない。

AWS Lambdaの料金

1分刻みのスケジュールを使用すると31日間で2678400回起動することになる。このうち1000000回は無料である。超えた分は$0.20/1000000回といったところ。つまり月$0.33568。ま、いいっしょ。

AWS DynamoDBの料金

う〜んわからん。Amazon Web Services Simple Monthly CalculatorのDynamoDBで計算しようにも、1秒間に0.017回の読み込みを指定できない。ま、なんとかなるっしょ。

Twitter APIの叩きすぎ?

今回はTwitter4jのTwitter.getUserTimelineで自分のツイートを取ってきている。こいつは中でGET statuses/user_timelineを叩いていて、user authで180回/15分とかなのでまあなんとかなるっしょ。
app authのほうが300回/15分でお得っぽいけど面倒だしそんなにいらないのでパス。

運用結果

良い感じ。あとは回数をこなしてバグが出てくるのを待つか〜。

まとめ

やってみると以外と簡単! 課金が怖いので、これいじょうのことはしゃかいじんになってえらいひとにえーだぶりゅーえすつかえっていわれたらかんがえる。辛い。

道東民が食べると噂のアメリカンドッグ+グラニュー糖を食べた

最初聞いた時、肉の入った食物に砂糖ぶっかけるとはどういう神経しているんだと思ってしまい、そういう文化が成立しているという北の大地の皆様にはこの疑った心をおわびする次第であります。

皆さんも是非「道東 アメリカンドッグ」でぐぐってみてほしい。

アメリカンドッグ - Wikipedia

北海道の一部では「フレンチドッグ」と称して他の地方とは調理方法がやや異なる。

それではまるでおフランスが砂糖かけて食っているようだが、さすがにフレンチトーストみたいな肉のない物品を甘くしてるってそういう意味だよな?

北海道の一部の地域(主に道東地方)では「フレンチドッグ」と称し、調味料として砂糖をまぶすことも多い。縁日などの屋台では、購入の際の味付けが砂糖か、アメリカンドッグ風の味付けに倣ったケチャップ(&マスタード)の選択式となっているものが多く見られる。

とのこと。ひとつかしこくなった。

材料 分量
ビッ(|)アメリカンドッグ 1本
ラニュー糖 ティースプーンすりきり1杯とかそのへん

セブンイレブンのページ見たらビッグとビックがあって意味わからん。地味に販売地域違うし。

で。
20秒ほどおうちでレンチンして砂糖にすりつける。

f:id:S_Shimotori:20160903173417j:plain

アメリカンドッグの生地は砂糖にも合うとして、肉を噛んだところで肉の味で全てが消えた。まあコテッコテにして砂糖vs肉の正面切ってのバトルにするよりはそのくらいの甘さのほうがいいかもしれない。まあ意外とまずくはないよ。

でもケチャップのほうがよくない?

パスタを余熱で茹でてゆっくり具を作る時間を捻出した

7分パスタは7分注視しなければならないのか!?否!

材料 分量
7分パスタ 1人前100gって多くないですか?今回2人で140gだったんですけど
沸騰した水 たくさん
塩分は人類の敵なのでいりません

上記ツイートで「1+7分じゃ茹ですぎにならないか?」という話があったので、1+5分のところで一旦味見してみたら……ダメだ芯が残ってやがる。1+7分まで待てばちょうどよくなった。放っておいてもくっつかなかったしムラが出ることもないしいいんじゃないっすかね放置で。

以上、余熱で茹でれば7分浮くことが証明された。

さ〜てここでコイツの出番ですよ。

青の洞窟 香味野菜とハーブ引き立つ ボロネーゼ | 日清フーズ 青の洞窟 | 日清製粉グループ

浮いた7分でレトルt……