PWA Conference 2022 でのセッションの資料です。 https://conf2022.pwanight.jp/
![Reactのトレンドよくわからん](https://cdn-ak-scissors.b.st-hatena.com/image/square/0072bcea7eb58e9bed17d2474c9b17658b9e9c72/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F3cca26ed35144037a92ab734e3421cee%2Fslide_0.jpg%3F23659795)
kotlin-resultとは? この記事は株式会社ログラスDevアドベントカレンダー2022の12/3(土)の記事です! 手頃にKotlinで書かれているOSSのコードを読みたい、でもExposedとかKtorとか大きすぎてどこから読めばいいかわからないよ、、、という皆さん! 読んで勉強になるシンプルでコンパクトな素晴らしいOSSを紹介します! それが、kotlin-resultというOSSです。 kotlin-resultは Rust、Elm、HaskellのResult型にインスパイアされたようなインターフェースを持つライブラリです。 成功したときの値か、失敗したときの値かのどちらかを持つResult型を提供しています。 例外とは違って返り値にエラー情報を明示することで可読性を上げたり、使用者にエラーハンドリングを強制させることができます。 日本語でよくまとまっている記事はこちら(な
こんにちは、Slack の公式 SDK 開発と日本の Developer Relations を担当している瀬良 (@seratch) と申します 次世代プラットフォーム機能が盛り上がりつつある昨今ですが、以下の記事でも書きました通り、Bolt フレームワークも引き続きご利用いただけます。 この記事では、Bolt for Python を使ってほぼゼロコストで運用することができる Slack アプリのデザイン例についてご紹介します。 Bolt for Python とは? Bolt とは、Slack が提供する公式の Slack アプリ開発フレームワークです。全てのプラットフォーム機能をサポートしており、Express.js のルーティング機能に似たインターフェースでリスナー関数を登録するだけで、様々なイベントに応答するインタラクティブな Slack アプリを簡単に開発することができます。
Go言語ではながらく公式のロガーとして log パッケージがありました。これは非常にシンプルなもので構造データをうまく表現できなかったりログレベルを分けるということができません。CLIで使うシンプルなインタラクションであればこれで十分なのですが、クラウド上のバックエンドで動かすサービスにとっては構造化ロギングやログレベルの出し分けは事実上必須であり、そのための機能は十分と言えませんでした。 これに対して様々なロガーが3rd party packageとして公開されてきましたが、一方で公式に導入されようとしているロガーもあります。それがslogです。まだ提案の段階ではありますが、現状で使える実装を触ってみたところかなり実用的な段階だなと感じたので、自分用の備忘録を兼ねてメモを残してみます。 サンプルコードはここにも置いてあります。 基本的な使い方 まず基本的な使い方を見てみます。ログ出力用に
M 年前にも N 年後にも人類は同じ話をしている. まとめ エラーの発生方法は throw と return に大別できる throw には簡潔さ, return には明瞭さと型安全性といった特徴がある どちらの方法がより適しているかはプログラムの規模, エラーの種類, ハンドリングの方法などが判断の材料になる 実際にどちらの方法を使うかは上の判断材料と, フレームワークやプロジェクトのコーディング規約なども合わせて複合的に決めるのがよい エラー発生方法の分類 まず前提として, 関数から呼び出し元にエラーを伝える方法は以下の 2 つに大別できます. 逆にこの記事ではこれ以上の具体的な方法についての議論はしません. throw エラーを throw して呼び出し元に伝える方法です. 例えば以下のようなものが当てはまります. throw new Error("...") Promise.rej
現在の会社にテックリード(1人目の正社員エンジニア)として入社して、2年間やってきたことを書いています。 エンジニア二年目でテックリードとして試行錯誤してきて、自分の振り返りもしたいという思いから記事を書きました。 (前提として、シード期のスタートアップで実行してきたことです。) 入社時のチーム課題 入社当時は、2週間単位のスプリントでスクラムを回してましたが、全員が業務委託だったこともあり、完全な内製化を進める必要があり、主な課題は以下でした。 継続的リリースが困難な状態になっており、それを解消することが急務 社内にエンジニアがいなかったので、開発組織体制づくりが必要だった。 ウォーターフォール寄りのリリースが多く、継続的にリリースする文化がなかった。 リファクタリングやテストコードが不十分だった。 改善したこと Zenhubを導入 それまでは、GitHub Projectで進捗管理をし
Webサイトやアプリでよく使用される各UIコンポーネントのさまざまな実装方法がまとめられたThe Component Galleryを紹介します。 コンポーネントは再利用可能な単一の部品として利用でき、実装するコードや名前の付け方など、Web制作者には非常に勉強になると思います。 The Component Gallery The Component Galleryの特徴 The Component Galleryの利用方法 各UIコンポーネントのまとめ The Component Galleryの特徴 The Component Galleryには、実際のデザインシステムで使用されているUIコンポーネントがまとめられています。フロントエンドのデベロッパーとして毎日経験する問題を解決するために作成されました。 The Component Gallery コンポーネントや要素に名前を付けるの
Discover amazing ML apps made by the community
Spring Bootを使う時のログ設定方法とlogback.xmlを記述する際のガイドラインです。 Spring Bootのデフォルトログ設定 コンソールにのみログが出力されます。 ルートのログレベルは[INFO]です。 ログの書式は 25.1 Log format に書かれています。 ログ実装はLogbackが使用されます。 Logback以外を使用したい場合は 66.2 Configure Log4j for logging を参考にpom.xmlを変更します。 ログ設定方法 Spring Bootでのログ設定方法は2つあります。 プロパティで設定する application.ymlなどでプロパティを設定します。 設定は簡単ですが、設定できる内容は限られています。 logback.xmlを記述する Logbackの通常の使い方と同じでクラスパスのルートにlogback.xmlを作成し
gnab/remark | GitHub Markdown で記述したテキストをスライド形式にして表示してくれるツール。 同種のツールに reveal.js があるが、あちらよりもシンプル。 というか、デフォルトだとスタイルについては基本なにもしない。 スタイルは CSS を使って自力で調整する。 必要なファイルも、特別なフォントを指定しないのであれば、実質 js ファイルのみ。 シンプルなスライドをパパっと作りたい場合は、 Remark がいい気がする。 凝りたい場合は、 CSS 使っていくらでも凝ることができる。 Hello World <!DOCTYPE html> <html> <head> <title>Title</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <style
例外スロー自作例外クラスSpring Boot では、自作した例外クラスに@ResponseStatusで HTTP ステータスを設定することができます。 この例外がスローされると、設定したステータスのレスポンスが返されます。 注意点として、非検査例外(RuntimeExceptionおよびサブクラス)を継承する必要があります。 @ResponseStatus(HttpStatus.NOT_FOUND) public class NotFoundException extends RuntimeException { public NotFoundexception(String message) { super(message); } }
コンテンツ投稿系のWebサービスでは「ユーザーのページに好きな独自ドメインを登録できる」という機能をつけたくなることがあります。ユーザーからすると「コンテンツが自分自身の所有物であること」を感じやすいですし、コンテンツのポータビリティが上がりますし、とても夢がありますよね。僕もいつか実装してみたい機能のひとつです。 しかし、この機能を提供するには、以下のようなハードルがあります。 料金 ベンダーロックイン 複雑な実装(とくに認証) (1)の料金についてはデプロイ先によります。例えばVercelであればProプラン以上であれば無制限に独自ドメインを登録できます(Unlimited custom domains for all Pro teams)。 Google Cloudの場合にはCertificate Managerで独自ドメインごとの証明書を管理するのに「ひとつあたり○USD」という感
はじめに この記事は前後編に分かれています。 順序だてた解説になっているので最後までお付き合いいただけると幸いです。 後編記事: https://nrslib.com/bottomup-ddd-2/ 順序立っての説明になっておりますので、前編からご覧になることを強くお勧めします。 セミナー情報 こちらの内容のセミナーを不定期で開催しています。 ◆セミナーページ 第一回: https://ddd-community-jp.connpass.com/event/103428/ 第二回: https://ddd-community-jp.connpass.com/event/107106/ 第三回: https://nrs-seminar.connpass.com/event/117283/ ◆あとがき 第一回ボトムアップドメイン駆動設計勉強会を開催しました セミナースライド まえがき この章は
2022年5月6日 人事制度 人事制度ハンドブック 22年1月から開始したブログ。 人事制度の設計・運用に関する記事のまとめです。 今後、人事制度を設計する際のハンドブックとして、随時更新していきます。 ■書籍:スタートアップのための人事制度の作り方 ■ブログ本体:https://kaneda3.com/ Pickup スタートアップにおける組織づくりの鉄則 今年、何パーセント昇給しましたか?(昇給率の話) 「売上が上がらないことよりも、人が辞める方がつらい」という本音 人事制度を使って、入社時に「期待」を伝える方法 等級の中に「サブグレード」をつくってはいけない 等級制度と評価制度の違い 降格・降給は、「カルチャー」である 【スライド公開】スタートアップにおける等級別の報酬レンジ 報酬水準に関する公開資料_ver5.0 昇格に、メリットはあるのか? 急成長できるスタートアップの組織文化と
AWS 日本語ハンズオン Amazon Web Services(AWS) の 日本語ハンズオンやワークショップを、カテゴリごとにまとめています。 右側の目次や、ヘッダー部分の検索ボックスから、各コンテンツにたどり着けます。 また、Ctrl + F や command + F を使ったページ内検索もご活用いただけます。 料金について ハンズオンで作成した AWS リソースは通常の料金が発生します。作成したリソースの削除を忘れずにお願いします。 もし忘れてしまうと、想定外の料金が発生する可能性があります。 画面の差異について ハンズオンで紹介されている手順と、実際の操作方法に差異がある場合があります。 AWS は随時アップデートされており、タイミングによってはハンズオンコンテンツが追いついていない事もあります。 差異がある場合、AWS Document などを活用しながら進めて頂けますと幸い
こんにちは!フロントエンドエキスパートチームの@nus3_です。 kintone のフロントエンド刷新プロジェクト(フロリア)では、品質を保ったまま開発を加速させるためにフロントエンドのテストを積極的に行っています。 今回はそんなフロントエンドのテストの実装例をいくつか紹介します。この記事がフロントエンドのテストを行う上での参考になれば幸いです。 テストに使用する主なパッケージ コンポーネントのテスト 補足: Testing Library の記法をチェックしてくれるeslint-plugin-testing-library カスタムフックのテスト 補足: React v18 では @testing-library/react の renderHook を使う 参考リンク 色々なテスト事例 setTimeout を使うコンポーネントのテスト 補足: Storybook の story を使
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く