依存パッケージの更新はしていますか??
小さくコツコツ手をつけておけばよかった…そんな気持ちになることもあるかもしれません。。
日々降ってくる、マイナーバージョン・パッチバージョンの更新を適応するのは大事です。
メジャーバージョンがあった場合はどうでしょう??
依存パッケージ間の依存関係があるなど、マイナーバージョン・パッチバージョンの更新と比較して、複数のパッケージの同時更新が必要だったりもします。Renovateがプルリクエストを出してきたが、エラーになってそのままマージにならない…なんてこともあったりします。
本トークではパッケージを更新するコマンドであるcomposer updateをおさらいしつつ、何ができるか?何が起こるか?を確認しながら、今一度パッケージのバージョンアップについての手順やはまりポイントについてお話ししたいと思っています。
私は首都圏企業の札幌開発拠点のエンジニアとして働いており、弊社では定期的に札幌市内でエンジニア向けのイベントを開催しています。
イベントで学生や初学者の方々と交流する中で、
「エンジニアを目指していく上でどんなことを学べば良いのか」「実際の開発の現場ではどのようなことをしているのか」
という情報を特に地方都市では得る機会が少ないと感じました。
少しでもきっかけになればと思い、「Laravelを用いて勤怠管理システムを作成する」というお題で、要件の検討や設計も実施するソフトウェア開発を体験いただくハンズオンを開催し
道内の学生や初学者の方計10名に参加いただきました。
本セッションではイベントを通して自身が気づいたことと経験、エンジニアを目指す人々がどんなことを気にしているのか
そして地方都市でこそもっとハンズオンイベントを開催した方が良い理由をお話しします。
GitHub Enterprise には、自社サーバにインストールして利用する GitHub Enterprise Server (GHES) と GitHub Enterprise Cloud (GHEC) があります。
会社によっては、自社のサーバでデータを保持したい等の理由で GHES を使用していると思います。
サイボウズの Garoon 開発チームでも GHES で開発を進めてきましたが、最近その負荷が高まっており、運用の限界が見えていました。
そのため、リポジトリを github.com (GitHub Enterprise Cloud) に移行しています。
しかしながら、100 人規模のチームで利用しており、ほぼ毎日のリリースへの影響もあるため、移行はなるべく開発を止めずに行う必要があります。
このセッションではそのためにやったことや移行時の困りごとなどを共有します。
柔軟に小さく作る。言葉は簡単だが、実際には難しいところである。
顧客の欲しいものは本当のところ顧客自身もわかっていないことも多々ある。
我々も顧客に寄り添って価値を想像するために、小さく決めて開発をする必要が出てきた。
しかし時には、小さく作ることが開発チームのエゴになるときもありうる。顧客だけでなくチームとしてどの単位が最小価値なのか、悩まれる方も多いのではないだろうか。
小さな、動くものが正義。嘘か真か、顧客や世の中に問いながら細かく作り、大きな決定を遅らせる開発手法を紹介しようと思う。
eBPF(いいBPF、あるいはよかBPF)はLinuxの最先端技術の一つです。具体的用途として、ネットワークパケットのフィルターやフォワーディング、可観測性ツール、セキュリティ関係のツールの内部で利用されています。
eBPFはLinuxの謎技術なので一見難しそうですが、実は簡単な内容なら、C言語風DSLのパターンとPythonやRubyなどLLの若干の知識だけで、問題なく使えます。bpftraceという簡単に使えるコマンドツールも存在し、PHPのアプリ改善にも活用できるのです!
今回のトークでは、まず、PHPのためのeBPFの概要と、その周辺技術やツールなどを紹介します。その後、PHPと関連ミドルウェアを題材に、eBPFを使ってみましょう。例えばPHPの友達Apacheの計測であったり、PHP自体のアプリケーションprobeを利用した例をデモします。
どの企業でもPHPerのミドルクラス、テックリードクラスの採用とオンボーディングには苦労されていることと思います。特にオンボーディングにおいては、別言語をメインでやっていた方を採用し、活躍してもらうためにはこのくらいはキャッチアップできるだろうし、大丈夫!というサボりが、認知負荷を高め、活躍までのリードタイムを長くしたり、副業エンジニアの離職を招きます。このトークでは、実際にTechTrainの開発現場で行なっているオンボーディングを出来る限り見せながら、一般的に利用できる形式にしてお伝えします。
対象者
PHPerなら誰しも通ったことのある(?)オレオレフレームワーク作り
ルーティングやDIコンテナのライブラリをcomposer requireすることでオレオレフレームワークを作ることは簡単ですが、今回はあえて(四角い?)車輪の再発明をすることで、普段皆さんが使っているであろうフレームワークやそのコンポーネントがどんなことをやっているのか?を掘り下げていきます
一般的なFWがどのようにルーティングとコントローラーを繋げているか雰囲気をつかめた!
皆さん、スクラム開発してますか?
このトークでは雰囲気でしかスクラムを知らなかった私が認定スクラムマスター(RSM)研修を通じて
を共有しつつ、知識のアップデートと適応により私の周りで実際に起きた変化についてお話します
「明日から始められる何か」を持って帰ってもらうことを目指します
みなさん三角関数覚えていますか?
本発表では、三角関数の基礎から説明し、それがどのようにソフトウェア開発のフロントエンドで活用されているのか、具体的な有用性を伝えることを目指します。
目標:
三角関数の基本的な概念を理解し、どのようにソフトウェア開発において生かされているのか理解する
話すこと(予定):
・三角関数の基礎: 三角関数の定義と基本的な性質
・実例
三角関数がどのように問題解決に役立つのか、円状のオブジェクトの接触判定を行うプログラムを通じ解説を行う。
対象:
三角関数を理解したい人
三角関数が実際にどのように使われているのか知りたい人
実行中のPHP スクリプト内部は様々な配列やオブジェクト、文字列にその他スカラ値といった値の飛び交う混沌とした空間で、ふつうの PHP プログラマーは何がどうなっているかを詳細に把握することなく、けっこう漠然としたイメージでスクリプトの状態をとらえつつ日々の仕事をこなしています。トラブルシュートのためにデバッガやログから局所的なデータの流れを追いかけることはあっても、全体として「スクリプトの状態」がどんな形のものなのか、のイメージを持っている人は少ないことかと思います。
このトークでは自作のメモリ解析ツール Reli を活用し、実行中の PHP スクリプトの内部状態を様々な形で見える化していく方法を紹介します。SQL でスクリプトの状態を問い合わせて表にしたり、データ可視化ライブラリを使って超かっこいいグラフを見せたりします。
Webサービスではプロフィールアイコンや記事画像、そのサムネイルなど、さまざまな場面で画像ファイルを取り扱います。画像ファイルは、とりあえずアップロードできて、表示できれば十分でしょう、と思われがちですが、どのような形式でどこに保存するか、どうやってユーザーに配信するか、どのようにして配信する形式に変換するか、実際には多くの考慮すべき点があります。
この発表では、Webサービスにおいて、ユーザーがアップロードした画像を保存し、適切な形式に変換し、それをユーザーのもとに配信する一連のプロセスに焦点を当てます。画像フォーマット、セキュリティ、PHPでの実装、ストレージ、CDNの利用方法など、各段階での重要なポイントをまとめ、考慮すべき要素を紹介します。
コードレビューは単なるエラー探しではありません。それはチーム全体の成長と製品の品質を高めるための共同作業です。
『コードレビュー、時間がかかりすぎてなかなか進まない...』『レビューで指摘されることが多く、コードの品質に自信が持てない...』『ドキュメントやコメントが不足していて、コードの意図を理解するのが難しい...』こんな悩みを抱えてはいませんか?
このセッションではPHPプロジェクトにおけるコードレビューの効率化と品質向上のために行った取り組みについて紹介します!
初学者向けの内容です。
暗号化とハッシュ化とは、それぞれどのようなものか。どういう性質があり、どのように使われているのか。また、電子署名とはどのようなものか。
ごく簡易的なサンプルコードを用いながらお話しします。
composer require "laravel/laravel"
コマンド一発でライブラリをインストールできる composer 、便利ですよね。
ところで composer 、なぜ世界中のライブラリが「名前」だけでインストールできるのか、ご存知ですか?
自分で作った便利ツールやモジュールも、composer でインストールできるようにして、みんなに使ってもらえるようにしませんか?
弊社では、今までエンジニア採用において約6~7割未経験採用をしてきました。その中でほとんどの方が早期離脱をせずに長く働いてくれました。
そこで、プログラミング未経験の人にどのような点を期待して採用しているのか?なぜ未経験エンジニアを採用するのか?などを中心に話していきたいと思っています。
アジェンダ
1.なぜ企業は未経験エンジニアを採用するのか?
2.未経験エンジニアの採用観点
3.未経験エンジニアに期待すること
4.どうやって未経験エンジニアを育てるのか?
皆さん、他社のエンジニア評価制度がどのように設計されて作られているか気になりませんか?
今回は私が0からエンジニア組織を立ち上げて、評価制度作りを行なった事例も交えて説明していきます。
アジェンダ
1.会社は評価制度をなぜ作るのか?
2.他社の評価制度の事例
3.弊社が評価制度を作った流れや設計方針
このトークはユーティリティファーストCSSフレームワークと呼ばれる Tailwind CSS をまだ触ったことのない人や、うまく使えていない気がする人向けに解説するものです。ですが、「こう書くと使えます」というようなハウツーではなく、「Tailwind CSSってこういうツールなんだ」という概念の理解に重きをおきます。
たとえTailwind CSSを使うことがなくても、巷で話題のツールがいったいどんな役割のものでどんな特徴があるのか、Tailwind CSSとは何であり何でないのか、ということをわかっておくことは、その他の技術選定の場面で役に立つでしょう。
テストをなんのために書くのか?
この目的設定はとても大事なことだと気づいてしまった。もう後戻りはできない。
エンジニアが果たす努めとはソースコードを書くことではないかもしれない。でもソースコードを書くことを辞めることはできない。
私達が果たすべき目的は、コードを書くことでもなくJSONに色をつけることでもない。
顧客に届ける価値を取り巻く様々な開発手法を織り交ぜながら、テスト駆動開発について紹介する。
私は普段からAWSの構築など、クラウドインフラに関する技術支援を行っていますが、PHPは"ド"初心者です(>_<)
ですので本セッションでは、PHP・Laravelのキャッチアップを兼ねて、AWSクラウドインフラ上にLaravelのAPIサーバーを構築してみたいと思います。
Laravelアプリ開発の際には、PHPのコーディングはもちろんのこと、
ホスティング先(仮想サーバー・コンテナ)、サービススケーリング、RDSやファイルサーバーを用いたデータ永続化、CI/CDパイプラインの構築、ロギングやモニタリングなどの運用監視、セキュリティ対策などなど、
本番運用レベルのガチ構成で構築して、Laravelアプリケーションの良さを最大限引き出してみます。
PHPプロのみなさんからのツッコミもお待ちしております!
「テストを書く時間がなくてぇ」「違うよ〜時間がないからテストを書くんだよぉ〜」
なるほど人はそんな風に言いますが、一体どうしたら…
鶏卵の問題にせずに、やれる所から始めていく事が重要です
テストを使って早く書くとは、楽してコードを書く技術です
長い目で見た「早さ」もありますが、決して「未来の為に歯を食いしばれ」と言う訳ではありません
今日のタスクを早く。その為に使えます
「うちにはテストを書く土壌も仕組みもなくて…」で諦めたくない!
「書いた方が早い」「書いた方が楽」の感覚を、小さくても掴める事を狙いとします