カテゴリー : Study

PDXNode Presentation Night July 2017 参加レポート

せっかくポートランドに出張に来ているので PDXNode Presentation Night というミートアップに参加してきました。その様子をご紹介させていただきます。

続きを読む

Vue.js Tokyo v-meetup=”#3” 参加レポート #vuejs_meetup3

Vue.js Tokyo v-meetup="#3" に参加してきました。

本記事は、参加レポートという名の自分用まとめです。

Vue.js Tokyo v-meetup="#3"

Vue.js の中身 – 算出プロパティはどうやって動いているか @kitak

Vuexを使ってみなかった話 @atsushiss15

E2D3 の Vue.js 活用 @chimerast

型付きテンプレートがほしい @ktsn

VueでComponentをはじめました @kawakami_kazuyoshi

Vue.js with Go @k2wanko

Vue.js with Go from Kazuhiro Kubota

サーバーサイド Node.js で書いてる自分的には意味がわからなかった 笑

Vue.jsとFirebaseでSPA @buddy7

Firebase 使ってるらしく、初期リリースで採用するの賛成だけど、あとでツラくなるからサービス上手くいきそうな兆しが見えたらリプレースを早めに考えた方がいいと思ってます。

Nuxt.js @inouetakuya

nuxt/nuxt.js: Framework for server-rendered Vue.js applications. の話。

おまけ 懇親会

運営スタッフのみなさま、マイクロソフト社さま、ありがとうございました!

Microsoft Japan Office

Inside Frontend #1 参加レポート #insideFE

Inside Frontend という「Web フロントエンドの現場とこれからをつなぐカンファレンス」に参加してきました。

以下、聴講したセッションと所感です。セッション聴いてるときに他の方がよいツイートをしていたのをメモ代わりに「いいね」していたので、それも貼って備忘録としています。

Web over ServiceWorker @jxck_

ServiceWorker についてよく知らなかったので勉強になったという感想です。実務で使われている事例がもっと増えてくるといいなと思ってます。

Progressive Web Apps by @jxck_

Polyfills are part of the web – FT & Nikkei @triblondon

フロントエンドの課題を啓蒙する方法 by @yhassy

アメブロ2016: 実録、アメブロフロントリニューアル275日 – CyberAgent @herablog

karmaを使ったSPA向けのE2Eテスト技法 @kyo_ago

まとめ

フロントエンドの知見をいくつか得られて、満足度が高かったです。

あと、スタバのコーヒー、終わり際までほぼ無限に飲めたのは幸せでした。

FRESH! での配信もされていて、動画も残ってるので気になるセッションはまた観てみます。いい時代になったなー。

Inside Frontend の運営スタッフ、登壇者のみなさま、ありがとうございました!

「UZABASE Meetup#3 〜チームの生産性を向上させる〜」参加レポート #UzabaseMeetup

「UZABASE Meetup#3 〜チームの生産性を向上させる〜」という勉強会に参加してきたレポートです。

UZABASE Meetup#3

オープニングLT

チームの生産性を下げる要因が2つある。

1. 役割を明確にし過ぎること

  • 視野が狭くなる。
  • 個人プレーになり連携がしにくくなる。

2. 責任の所在を決めてしまうこと

失敗したときの責任を考えてしまうのに時間を割くのは本当に無駄ですよね。

UZABASE Meetup#3 責任の所在を求めてしまう

“役割の線引を曖昧にし、成すべきことを俯瞰して見るべき。”

  • Q) 曖昧にすると特定の人に仕事の負荷が偏ったり、誰もタスクを拾わなくなったりするけど何か工夫してるのか?
  • A) 毎日 10 分はチームで会話して「こういうことに困ってるんだよ」とかリアルなコミュニケーションをとると、いい感じにチームが回った。

生産性を高めてハッピーライフを

なぜ「生産性」を重視するか?

なぜ「生産性」を重視するか?

  • スピードは競争力の源泉
  • 仕事以外の時間も大切に

ホント、この2つですよね。

chatopsのおかけでエンジニアがルーティンワークから解放された話

エンジニアで工数でやってると肝心な開発が進まない

  • Q) Push 通知以外で非エンジニアに chatops を導入できてる事例は?
  • A)

三位一体GitHub駆動開発

ZenHub を使っているのか。以前、使っていたけどページの表示処理が遅すぎて使うの辞めたけど Trello と比べてどうなんだろう?

  • Q) 以前 ZenHub を使っていたんですが表示が遅くてイライラしませんか?
  • A) 遅いという認識はある。

まとめ

懇親会のピザ

ユーザベース、エンジニア的にいい雰囲気な会社という印象でした。

「渋谷ECミートアップvol.2」参加レポート #pbtech

「渋谷ECミートアップ」というタイトルに釣られて参加してきました。

渋谷ECミートアップ

ペパボが主催で「渋谷ECミートアップ」という名前を付けるのはどないやねんという話は置いておいて。

ノベルティのレポート

ペパボ ノベルティ

もらったノベルティたちです。

ペパボ ノート

ノベルティでノートをもらったので仕事で使いたいです。

イベント参加レポート

LT

LT の内容は「どんな感じで業務をやってるか」ということがふわっと分かる感じだった。特に EC は関係ない印象でした。

新卒1〜3年目でペパボに転職を考えてるエンジニア、デザイナーにとっては「ペパボで働くのはどんな雰囲気なのか?」ということがなんとなく分かって良いのかもしれません。

演劇「雨あがりの5月30日、月曜日の夕会」

シュールなネタでした。

懇親会

ペパボ ピザ

入社1週間目のエンジニアさんとひたすらお話しました。

「ほとんどの人が定時退社する」「残業してると上司から怒られる」というホワイト企業な話を聞いて、「すごいなー。でも、限られた時間の中でアウトプットを出さないといけないのでシビアな職場だなー」という好印象を受けました。

まとめ

もっと EC の話をしたかったです。

「YAPC::Asia Tokyo 2015」8/22(土) 振り返り #yapcasia

「YAPC::Asia Tokyo 2015」の最終日を振り返ります。

2015-08-22 17.45.09

ISUCONの勝ち方

チューニングの進め方

課題の理解
プロファイリング
Web アプリケーションで起きていることを知る

プロファイリング結果を読み解く慣れも必要

matsuu/kataribe
Nginx/Apache Log Profiler

MySQL SlowLog解析
クエリ実行回数と頻度

アプリケーションのプロファイリング

各プログラミング言語のツールを使う
strace

tcpdump

サーバの負荷をみる
top
iftop

サーバ構成の把握

Nginx vs. h2o

参考資料

MySQL の offset はレコード数が多くなると遅くなる

参考資料

Covering Index を使おう。

参考資料


我々はどのように冗長化を失敗したのか

Q) LVS 使えばいいんじゃないの?
A) そうですね。

参考資料


MySQLで2億件のシリアルデータと格闘したチューニングの話

TL;DR

サーバリソースが乏しい中で大量データを扱うのは大変


データ分析基盤を支える技術

TL;DR

  • データ解析基盤を作るのはやめましょう
  • クラウドベンダーにお任せしましょう
  • 実現したいことに対して、クラウドベンダーを使いましょう

「Hadoop を自社で持ちたい?やめろ!」


【特別企画】YAPCあるある(仮)

CONBU

”大規模なカンファレンスや勉強会が行われる会場において、会場ネットワークを構築し、インターネット接続を提供するネットワークエンジニアの集団”

所感

CONBU の存在を初めて知りました。YAPC の会場内のネットワーク構築ありがとうございました。

そして、YAPC の運営に関わってきたみなさま、ありがとうございました。


HTTP2 時代の Web

個人的なメモ

  • Browser Cache について、75% の人は 48h で使い切る。
  • インフラの実装は過渡期

Lightning Talks Day 2

MySQL 5.7 は罠が多いので、秘伝のタレな設定ファイルが切望される。


クロージング

2015-08-22 17.53.57


まとめ

エンジニアが2000人以上も集まるイベントに参加できて、良い刺激を得れました。運営メンバーのみなさま、ありがとうございました!

追えてない、理解できてない技術トピックのキーワードを拾うことができただけでも収穫でした。全部、追うのは無理なので、ここから必要なものに絞ってキャッチアップしていきたいです。

「YAPC::Asia Tokyo 2015」8/21(金) 振り返り #yapcasia

10周年、そして、今年で終わってしまうということで最初で最後の「YAPC::Asia Tokyo」に参加してきました。

2015-08-21 11.02.55

各トークセッションの流れは Togetter にまとめられているので、こちらから探すとよさそうです。

以下、視聴したトークと個人的なメモ&所感です。


世界展開する大規模ウェブサービスのデプロイを支える技術

Miiverse | Wii U|Nintendo

AWS US/JP/EU の 3 リージョンでサーバ台数が多いと git pull が重い。

  • Git Slave への同期
  • Git Slave から Pull するときの負荷問題

Mackerel(マカレル): 新世代のサーバ管理・監視ツールを使ってるらしい。

GHE と Git Slave repository の同期が大変なので、新しくリポジトリ同期システムを作った。

所感

Consul + stretcher での deploy は規模大きくなったときに考えたい。しばらくその心配はなさそうだけど。

あと、最近だと AWS CodeDeploy (Amazon EC2 インスタンスへのコードデプロイを自動化) もあるけど、どうなんだろ?


今フロントエンドで何が起こっているのか

所感

最近のfrontendをちゃんと把握できてなかったので、なんとなく流れを理解できてよかったです。


Conway's Law of Distributed Work

分散したチームで効果的に仕事をするために使うべきツールや心構えなどが発表されていた。

Distributed Work では、効果的なコミュニケーションで時間短縮できる。

リモートワークをしている場合、その場にいるかのようにコミュニケーションに入れてあげることが重要である。

Commit Messages

コミットメッセージで会話をする。
考古学者として、あとでコードを掘り起こしたときに何か手掛かりがほしいだろう?

「何を考えていて、どうしてこうなったか?」という情報がときどき失われる。
これを残さないといけない。

CODE REVIEW

コードレビューはバグを 60% 減らせるという分析がある(らしい)。

Email

非同期コミュニケーションには適している。
すぐに返事がくることを期待しない。

Everyone should experience remote work.
まず、課題を実感して、共感して、改善するということが大切。

Have on-site meetups
一堂に会する機会を定期的につくる。

Over communicate.
「常に話す」というわけではない。
「常に書く」ということを意識する。

Share your personality
自分の個性や人格を共有するようにしましょう。
日頃のテキストチャットで共有しよう。
Off Topic の Slack channel を用意する。

Exhibit a “visible pulse.”
リモートで仕事をする場合には、自分が何をしているかアピールしなければならない。

Pick a timezone.
Standard Operating Time (SOT)

CAP THEOREM (SOME LIMITATIONS)

リモートワークでも CAP 定理が当てはまる。

Q&A

Q) リモートワークだと働きすぎる場合がありますが、どうしてますか?
A) なりますね。でも、そうすると家族が寂しくなる。
自分を律する。自分のスケジュール管理をする。
オフィスを離れるタイミング、疲れたら休む。

チームで「あなた仕事しすぎだから帰ったほうがいいよ」と声を掛ける習慣をつける。
自分の仕事に余裕を持って取り組む。

Q) Timezone が異なるとリモートワークが難しくないか?
例えば、日本とアメリカなど。
A) 日本やアメリカ毎に数人のチームを置くべきだね。
自分の意見) 実践したことがあるが On time が重なる時間帯があったので、特に問題にはならなかった。

Q) Face to face の頻度は?
A) 四半期に1回がミニマム
そのときはコードに埋没するべきではない。
中長期的な話をする場にしよう。

Q) リモートワークではモバイルは重要なツールだけど、使っているか?
A) 便利ですね。
友達や家族にとってフラストレーションになる。
時にはスマートフォンを横に置くべき。

所感

リモートワークの経験はあったので、自分のケースと照らしあわせて良い振り返りができました。

「Commit Messages がいかに大切か?」という話をするときの例えとして、「考古学者が発掘するときにヒントが欲しいでしょう?」ってのはわかりやすかった。今度、コミットメッセージの大切さを説明するときにこの例を使わせてもらおう。

※ 考古学者の仕事は、「遺跡や遺構など人類が残した痕跡を探し、発掘し、過去の人類の活動と変化を研究すること」


Electron: Building desktop apps with web technologies

所感

Demo 中心なセッションでした。

直近で、デスクトップアプリを開発する予定がないのですが、作ることがあればまず Electron を使うことになるでしょう。


esa.io – 趣味から育てたWebサービスで生きていく

「楽しく開発したい!」

自分が最近あまりできてないので見習いたい。

開発スケジュールを決めない

  • モチベーションが上がったら開発する。
  • ユーザからのフィードバックがモチベーションにつながる。

理想的っすねー。
開発自体にモチベーションが上がらなくなったときにどうしてるか?ってのが気になる。


Lightning Talks Day 1

LT もぜんぶ聴きました。


懇親会

懇親会の申し込みを忘れてたのだけど、チケット譲ってもらえて入場できました。
ありがとうございました!

2015-08-21 18.02.46

2015-08-21 18.24.02

まとめ

以上です。

「ボクのワタシの裏ワザ天下一武道会! #1」でSlack入門の話をしました

社内で「ボクのワタシの裏ワザ天下一武道会!」という業務効率化のTipsを共有しあう勉強会を開催しました。

その記念すべき第1回目に「Slack入門」の話をしたスライドです。

口頭やDEMOで補足した内容が多いので後日加筆した資料を作成する予定です。乞うご期待ください。

東京Node学園 15時限目 メモ #tng15

東京Node学園 15時限目に参加したので個人的なメモ

「io.jsについて」 by @yosuke_furukawa

io.js – JavaScript I/O

io.js-v1.0.0のリリースによせて – ぼちぼち日記

「extensible web」 by @Jxck_

Extensible web from Jxck 🙂

The Extensible Web Manifesto

Extensible Web の夜明けと開発者が得た可能性の話 – Block Rockin’ Codes

「ws の permessage deflateを実装した話とそれによりsocket.ioがどう変わるか」 by @nkzawa

draft-ietf-hybi-permessage-compression-19 – Compression Extensions for WebSocket

「CodeOnMobile」 by @dai_shi

dai-shi/codeonmobile

「今できる通信高速化にトライしてみた」 by @shibu_jp

東京Node学園 今できる通信高速化にトライしてみた from Yoshiki Shibukawa

DeNA さん、会場提供ありがとうございました!

懇親会まで含めて、めっちゃ楽しかったです!!

nanapi勉強会 vol4【nanapi x はてな】はてなとnanapiの開発フローから盗めるポイント

nanapi勉強会 vol4 – 【nanapi x はてな】はてなとnanapiの開発フロー – nanapi勉強会 に参加するはずだったのですが、日程を勘違いしていて参加できなかったので、参加レポートを読んで気になる点だけ追っていきたいと思います。

無料のCIサービス Wercker

・Beta 版なので、現在は無料のCIサービス
・GitHub, Bitbucket に対応している
・プライベートレポジトリでも大丈夫

ステージング環境を提供してくれるサービス Teatro

・Pull Request を自動でデプロイするステージング環境を提供してくれるサービス
・トピックブランチをすぐに動作確認できるので便利そう

クライアントサイドのテストライブラリとして使いたい CasperJS

CasperJS, a navigation scripting and testing utility for PhantomJS and SlimerJS

・PhamtomJS を使ってスクレイピングや受け入れテストを実行するツール
・Web の E2E テストに使える

nanapi のデプロイまでのフロー

下記の構成は社内にも取り入れたい。特にクライアントサイドのテストをもっと充実させていきたい。

nanapi-study4-p75

以上です。


参考情報

nanapiにおける継続的インテグレーション

nanapi 勉強会 vol.4 #nanapi_study に参加してきました – めも帖