RAKUS Developers Blog | ラクス エンジニアブログ

株式会社ラクスのITエンジニアによる技術ブログです。

トレカは会話に効果バツグン!!PHPer Kaigi 参加録

先日、弊社がスポンサーとなっている PHPer Kaigi 2020 に、私 Y-Kanoh も参加してまいりました。

PHPer Kaigiとは?

公式サイトによると、PHPに携わる人が、技術的なノウハウとPHP愛を共有するためのイベントです。 一般から公募された登壇者のトークセッションや、アンカンファレンス、懇親会などのイベントが3日にわたり催されていました。 私は開催場所が東京だったこともあり、最終日である3日目のみ参戦させていただきました。

会場について

f:id:Y-Kanoh:20200224005505p:plain

すでに二日間開催されていたためなのか、会場に到着すると、すでに活気付いた雰囲気がありました。 朝早いはずですが、会場のいたるところにエンジニアが集まりコミュニケーションをとっています。 これは、なんといっても今回取り入れられたトレーディングカードが大きいと思います。

続きを読む

【PostgreSQL】indexとカーディナリティについて調べてみた

新卒2年目のyk_itgです。早いもので社会人2年目も残り1ヶ月となりました。
パフォーマンスチューニングの開発をする際に、indexはどのようなカラムに貼るのが良いのか気になったので、今回はそこで調べたことを書いてみます。

PostgreSQLのバージョン: 11.5

  • まずはindexを貼ってみる
  • indexを使ってみる
  • カーディナリティ
    • カーディナリティを変えて比べてみる
  • 参考資料

まずはindexを貼ってみる

まずはindexを貼るためのテーブルを作っていきます。
テーブルには主キーのidの他に以下の2つのカラムを定義します。

続きを読む

Developers Summit 2020 に参加してきました。#devsumi

はじめに

こんにちは。aa_cryingです。早いもので、4月で入社して3年目になります。
2020/2/13-14 で実施された Developers Summit 2020 に参加してきましたので、

event.shoeisha.jp

今回はそのレポートとして、 聞いてきたセッションの内容の紹介と感想を残していこうと思います。

  • はじめに
  • Developers Summit とは?
  • セッション内容を紹介
    • 【14-D-5】マルチクラウドに向けてNGINX活用促進する為に知っておいてほしいこと
    • 【14-E-6】生涯イチ・エンジニアとして好きな技術でジャンプアップし続けよう - 夢のつづきはビッグデータ
    • 【14-E-7】月間約10億件のクラッシュデータから見えたアプリ品質の実態! エンジニアが仕掛ける、『ONE TEAMで挑む、賢いアプリの品質管理』とは?
  • 終わりに

Developers Summit とは?

翔泳社が主催されており、「技術者コミュニティとの連携から生まれた総合ITコンファレンス」というテーマで年に数回開催されています。 総合コンファレンス ということもあり、内容は技術寄りの話から、サービス運用の話、マインド的な話など多岐に渡っていました。 数あるセッションの中から3つのセッションを選び聞いてきたので、それらの紹介をしようと思います。

続きを読む

Java14からswitchがより便利に

id:logy0704です。

もうすぐJava14がリリースされますね。

いくつかの変更が予定されていますが、その中でも今回はswitch文の変更についてご紹介しようと思います。*1

  • そもそもswitch文って?
  • 従来のswitch文の課題
    • fall through
    • ブロック
    • 文であること
  • これからのswitch
    • 矢印構文の導入
    • 式として扱えるように
  • 最後に
  • 参考

そもそもswitch文って?

Javaを学んだことのある方ならば一度は触れたことがあるかと思います。

以下のような形式で複数分岐を表現することができ、特にEnumと組み合わせて使われることが多いです。

switch(case) {
    case1:
        hoge;
        break;
    case2:
        huga;
        break;
    default:
        piyo;
}

*1:Java12からプレビュー版として提供されていた内容ですが、フィードバックを経てJava14で正式導入されます。

続きを読む

【1月】大阪開発ビアバッシュレポート

こんにちは!遅くなってしまいましたが、今回は1月21日に行われたビアバッシュのご紹介をします。

今回のビアバッシュは自由枠の発表とLTの構成となっております。

発表一覧

自由枠

  1. 情報管理アプリ「Notion」
  2. へんなScala
  3. ドメイン駆動設計を支えるアーキテクチャテスト

LT

  1. git switch & git restore

  2. PHPerKaigi2019の参加がきっかけで社内勉強会を主催するようになった話

発表内容

情報管理アプリ「Notion」

サンフランシスコにオフィスを構えるNotion社が開発した情報管理アプリ「Notion」について紹介してくださいました。 議事録などのテンプレートを用意することができるなど便利な機能がそろっています。 非常に柔軟でアイディア次第で何でもできるアプリですが、柔軟すぎるがゆえに迷うこともあるそうです。 f:id:y_kwmt:20200221095339p:plain

へんなscala

今月もScalaが好きなエンジニアがScalaについて語ってくださいました。本発表ではScalaの処理系について紹介してくださいました。

 ScalaをJSにトランスパイルすることができます。

  • ScalaNative

 Javaスタンダードライブラリを一部使用することができます。

  • Ammonite

 Scalaスクリプトを書くことができます。replだけでなく、shellも書くことができます。

  • Dotty

 Scalaの新しい処理系。コンパイル速度が速くなります。

 NET用の実行ファイルを作成します。公式サポートされていましたが、2012年でサポートが終了しました。

ドメイン駆動設計を支えるアーキテクチャテスト

2/16に開催されたOOC2020の先取りの発表をしてくださいました。 Javaアーキテクチャテストツールの ArchUnit を用いたドメイン駆動なアーキテクチャ設計を運用する方法についてのお話です。 また、PHPアーキテクチャテストツールの紹介もしてくださいました。 こちらが実際にOOCで発表されたスライドなので気になる方はどうぞ。

speakerdeck.com

git switch & git restore

Git2.23の新機能で、gitのブランチを変更する「switch」とファイルを変更する「restore」コマンドについて紹介して頂きました。 「switch」と「restore」は「checkout」を分割した機能です。 ただ本人曰くcheckoutの方が打ちやすいらしいです

PHPerKaigi2019の参加がきっかけで社内勉強会を主催するようになった話

若手エンジニアがPHPerKaigi2019に参加したことがきっかけで開催した社内勉強会についてのお話です。 勉強会を開催したきっかけや開催してよかったこと、気づいたことなどを語ってくださいました。 勉強会の開催を実行、継続する難しさを発表から感じました。

終わりに

今回のビアバッシュではGitの便利な機能など、業務の役に立ちそうなものや、 勉強会開催で得たものについての発表などためになる話を聞くことができました。 今後もビアバッシュの内容をブログに掲載しますので、どうぞお楽しみに!

Stylusでデザインを変更してみた

はじめに

こんにちは。新卒2年目のmrym_618です。 最近業務でChrome拡張の「Stylus」を使い、CSSの設定とデザインの変更を行うことがありましたので、 今回はその使い方について紹介していきたいと思います。

  • はじめに
  • Stylusとは
    • インストール方法
    • CSSの設定方法
  • おわりに

Stylusとは

Stylusとは、特定のCSSをブラウザ側で設定するためのChrome拡張機能です。

インストール方法

インストール方法は、以下のサイトより

chrome.google.com

Chromeウェブストアを開き、「Chromeに追加」を押してインストールするだけです。

f:id:mrym_618:20200218131219p:plain

続きを読む

【PHPerKaigi2020】憧れのカンファレンスでライトニングトークしてきました!【参加レポート】

はじめに

こんにちは、MasaKuです。

PHPer による PHPer のためのお祭り、 PHPerKaigi が今年も開催されました。 (弊社もスポンサーをさせていただいております)

f:id:MasaKu:20200216165553j:plain
PHPerKaigi2020

phperkaigi.jp

今回は LT にチャレンジさせていただいたのですが、登壇にあたり様々な学びがありました。

本記事では、LT にチャレンジする上で学びにつながった以下のポイントについて記載していきたいと思います。

  • 本記事で記載する内容
    • トークテーマの選定
    • 発表資料の作成
    • LT 発表

登壇資料

speakerdeck.com

参加にあたって

去年の PHPerKaigi2019 には一般参加という形で参加させていただいており、大変興味深い発表ばかりだったので、「来年こそはぜひスピーカーに!」と意気込んでおりました。

去年の参加レポートはこちら

tech-blog.rakus.co.jp

実は昨年開催された PHPerKaigi2019 のプロポーザルにも挑戦していたのですが、残念ながら非採択という結果になってしまっていました。

そのため、今年の開催でトークが採択された時は嬉しさ半分驚き半分といった気持ちでした。

なお、昨年度のトークテーマは以下です。

  1. Laravel + MongoDB でつなげる、つながるオープンデータ
  2. エンジニアとしての成長を加速させた3つの取り組み

fortee.jp

fortee.jp

プロポーザル応募

今回のプロポーザル募集にあたり、話したいトークテーマはすぐに思いつきました。

というのも、PHPerKaigi の参加がきっかけで社内で行った上映会からいろいろな活動を開始するようになったので、その経過報告をしようと考えていたからです。

社内のビアバッシュでも何度か発表したテーマでしたが、今回の PHPerKaigi2020 でも発表することができれば最高だなあと考えていたためです。

しかし、どのような展開で話していけば盛り上がるかという視点はサッパリだったので、トークの方向性についてはブレブレでした。

  • 個人としてのモチベーションの変化を話すべきか
  • 勉強会開催にあたってのノウハウを話すべきか

テーマ検討でトークを聞いてくださる方に受けそうなのはどちらか、自分として話しやすいのはどちらか、という視点でテーマ選定を行っていきました。

発表資料の準備

トークが採択された後は発表資料の準備を始めましたが、弊社で定期的に開催している MeetUP という社内イベントで登壇した経験があったため、どのように話を構築していくと資料が作りやすいかというノウハウがあったため、資料作りはスムーズに進みました。

イベントページ

rakus.connpass.com

登壇資料

speakerdeck.com

今回の登壇資料の作成は以下のような流れで進めました。

  1. トークテーマの再確認
  2. 伝えたいポイントを大きく書き出す
  3. そのポイントを一番盛り上げられそうな話の展開を考える
  4. 箇条書きレベルで話を整理してアウトラインを作成する
  5. アウトラインをレビューしてもらう
  6. レビュー結果を元にスライドを作成する

個人的に一番大切だと思うのは 4 番目の内容です。

箇条書きレベルで話がまとめられていると、それをスライド化するのは非常に容易です。

「それならスライドを作りながら内容を整理しても同じなのでは?」と思うかもしれません。

これは個人的な感覚ですが、グラフィカルなアウトプットができてしまうと伝えたいポイントが見えにくくなる気がするので、まずは文字ベースのアウトプットを作成するのが良いと思っています。

逆に、文字ベースでも自分の話たい内容がきちんと整理できていればそれをスライド化するのは難しくなく、むしろ、図的な説明も可能になるので、自分としてもより納得できる説明を組み立てられるようになります。

発表練習

発表練習は個人でやるのも大切だと思いますが、やはりフィードバックをもらえる環境で実践するのが最適です。

幸いにも今回は発表練習をする機会が豊富だったので、実践的な練習を繰り返すことができました。

今回、発表練習を通して得た教訓としては、LT で登壇するう上で特に気をつけなければならないポイントは以下のように感じました。

  • ウケを狙うポイントはちゃんと意識すること
  • 画面を読んでいるときはどこを読んでいるのかを分かるようにすること
  • 5 分間フルで使い切ること

特に、5分間をフルで使い切ることは大切だと感じました。

通常の発表の場合は話たい内容を時間内に収められるように簡潔に話すことが重要かと思いますが、様々なカンファレンスのLTを見て感じることとしては、LT では 5 分間という時間を綺麗に使い切ることのほうが芸術点が高いように感じておりました。

そのため、タイムキーパーの「終了です!」の一言と同時に発表をキレイに切れるように、最後のスライドに向けてどれくらいの時間を残すかということを意識して練習するようにしました。

登壇してみて

f:id:MasaKu:20200216165504j:plain
PHPerKaigi2020 登壇風景

LT の会場には推定 200 人を超える参加者の方がいらっしゃったように思います(もっと多かったかも)

このような大勢の前で発表した経験がこれまでなかったこともさることながら、カンファレンスでの登壇も初めてでしたので非常に緊張した 5 分間でした。

練習通りにできたところもあれば、自分で何を話しているのかすらわからなくなるような場面もありましたが、非常にいい経験になったと思っています。

会場内から笑いの声や拍手が聞こえてくると勇気づけられるような感覚があったので、今後、こういったカンファレンスに出席する際は、リアクション増しを意識していきたいと思いました。

最後に

いつかはスピーカーとして登壇したいと思っていたカンファレンスに出ることができてとても良い経験ができたと思っております。

発表内容について Twitter でたくさんのリアクションをいただいておりましたが、自分が想像していた以上に発表内容に共感していただけたようで嬉しかったです。

イベントを通して様々な方と交流することができたこともとても良い経験になったと思います。

今回の PHPerKaigi2020 での登壇をきっかけとして、また次のステップに向けて再チャレンジしていければと思います。

参考サイト

PHPerKaigi 2019

PHPerKaigi 2020

Copyright © RAKUS Co., Ltd. All rights reserved.