開発者が超効率的になるための15のツール
優れたソフトウェア開発者は、仕事を成し遂げるために特定のツールに精通しています。
経験豊富な開発者とのペアプログラミングを通じて、彼らがアクセスして習得し、製品のビジネスロジックに集中するのを助けるための多くのコツやショートカット、ツールが手に入ります。
今日は、あなたの生産性を大幅に向上させる15の開発者ツールを紹介します。
さあ、始めましょう!
1. Cloudinary
Cloudinary はメディア全般を扱うフルスタックサービスで、メディア資産を簡単に扱えるAPIやウィジェットを使って保存、変換、最適化、配信します。
たとえばこんなときにCloudinaryは最適です:
- 多数の画像や動画を保存する機能/アプリを作る。
- シングルや複数アップロードができるUIを作る。Cloudinaryがプラグアンドプレイのスキン対応UIウィジェットを提供するため、あなたやチームはUIを一から作る必要がありません。
- アプリやウェブサイトの読み込みを速くする。Cloudinaryは、彼らのグローバルCDNを通じてメディア資産を狂ったように速く配信します!
- Instagramのような動画の配信や変換機能を持つ機能/アプリを作る。Cloudinaryはそれを助けるためのいくつかのAPIを提供します。
- 画像からテキストを読み取る、ビデオからキャプションを抽出する、メディアファイルを圧縮・最適化するなど、メディアファイルをクロップしたり操作したりするバックエンドサービスを構築します。
Cloudinaryはさまざまな言語やフレームワークのSDKを提供しているため、統合は非常に簡単です!
2. Sourcegraph
Sourcegraph は、全てのあなたのコードを検索できるソフトウェアツールです。正確なコードインテリジェンスと洞察を提供します。Sourcegraphを使えば、小規模、中規模、巨大なコードベース(例えばLinuxやKubernetes、Chromeなど)を検索できます。
たとえばこんなときにSourcegraphは最適です:
- いくつかのリポジトリにまたがるすべての公開・非公開のコードを検索します。
- オーガナイゼーション全体でのコードのすべての出現を見つけます。
- GitHubやGitlabで200万以上のオープンソースリポジトリにわたって、特定のAPIやコードブロックを他の開発者がどのように使っているか検索します。
- コードベースを簡単かつ迅速にリファクタリングします。
- すべてのコードに対して正確なコードインテリジェンスを提供します。
- 移行、廃止、Sourcegraph検索で見つけることのできるものの使用状況を追跡するリアルタイムダッシュボードを作成します。
- 大規模なコードの変更を自動化します。Sourcegraph バッチ変更を使えば、簡単な変更を行うためにいくつかのリポジトリにわたって何度もPRを作成する必要はありません!
3. Insomnia
Insomnia はAPIエンドポイントをすばやくテストできるソフトウェアツールです。
たとえばこんなときにInsomniaは最適です:
- ビルド中にRest、Soap、GraphQL、GRPC APIエンドポイントをテストする。
- コードベース用のAPIドキュメントを生成する。
- APIパイプラインを作る。
- OpenAPIを使ったAPIをデザインする。
4. Netlify
Netlify はフロントエンドコードをすばやくビルドしてデプロイするサービスです。Netlifyは、多くの開発者が関わるアプリ作成の非常に効率的なワークフローを提供します。
たとえばこんなときにNetlifyは最適です:
- フロントエンドコードをインターネットに簡単にデプロイする。NetlifyはJamstackアプリの大きなベットをしており、Jamstackアプリを構築して開発するためのツールとリソースを提供しています。
- 他の開発者やQA担当者が、進行中のものをすぐにテストするために、毎回のプルリクエストやコミットごとに新しい一意で公開可能なURLを生成する。
- 高速CDNで静的アセットを提供する。
5. Retool
Retool は、一行のコードも書かずに内部ツールを作成できるソフトウェアツールです。
たとえばこんなときにRetoolは最適です:
- データを監視・変更するために内部でダッシュボード/UIを構築する。Retoolを使うと、データベースやどんなデータソースにも接続して、ドラッグアンドドロップのコンポーネントを使って、驚くほど速く内部ツールを構築できます。
- 非開発者がデータベース環境を設定することなくデータベースにアクセスすることを可能にする。
- 新しいツールを作ることなく顧客問題のデバッグに役立つツールをカスタマーサポートに提供する。
6. Laravel Forge
Laravel Forge は、PHPアプリケーション向けのサーバを構築し、管理し、チューニングし、デプロイし、アップグレードする手間を省くソフトウェアサービスです。
たとえばこんなときにLaravel Forgeは最適です:
- DevOpsに関する最小限または全く知識がない状態でサーバーを担当する。
- Laravel、WordPress、Statamic、PHP、データベースサーバインスタンスをデプロイして管理する。
- キューワーカーやサーバインスタンスのスケーリングを管理する追加の頭痛を抱えずにアプリケーション構築に集中する。
7. AWS Amplify
AWS Amplify は、フロントエンド、ウェブ、モバイル開発者が、AWS上でスケーラブルなフルスタックアプリケーションを構築するために、一緒に、または個別に使用できる一連のツールとサービスです。
たとえばこんなときにAWS Amplifyは最適です:
- 数クリックで静的ウェブアプリをインターネットにデプロイする。
- 非開発者にアプリコンテンツを管理するための管理UIを提供する。
- スクラッチから認証コードをビルド/管理/書くことなく、アプリに認証を追加する。
- パブリック、保護された、或いはプライベートなAWSストレージバケット内で、アプリのユーザー生成コンテンツを管理するためのシンプルなメカニズムを提供する。
8. Auth0
Auth0 は、開発者に認証、連合アイデンティティ、シングルサインオン、サーバレス機能を提供するサービスとして最もよく知られています。さらに、全世界の開発者エコシステムで最も広く使用されているオープンソースの認証モジュール、passportを管理し、維持しています!
たとえばこんなときにAuth0は最適です:
- ウェブやモバイルアプリに基本的かつソーシャル(Facebook、Google、LinkedIn、Dropbox)認証を追加する。
- アプリスイートにシングルサインオン機能を追加する。
- アプリに連合アイデンティティを追加する。
- サーバレスサービスを構築する。Auth0ウェブタスクを使えば、サーバレスアプリを開発できます。
- アプリにパスワードレス認証を追加する。
9. Garden
Garden は、Kubernetesの開発を迅速かつ効率的に行えるクラウドサービスです。分散アプリケーションを構築しながら、Kubernetesインスタンスの開発と管理を簡素化し、自動化します。
たとえばこんなときにGardenは最適です:
- Kubernetesインスタンスの管理と開発を自分でやりたくない。
10. Bitrise
Bitrise は、全てのモバイルアプリ開発とデプロイメントを簡単にする、高速、柔軟かつスケーラブルなモバイルCI/CDサービスです。
たとえばこんなときにBitriseは最適です:
- オーバーザエア配信サービスで、アプリのアップデートを迅速にユーザーに共有する必要がある。
- モバイルアプリコードのPRに対して自動的にいくつかのテストランナーを実行する。
- GitHubなどのコードホストブランチを自動的に異なるプラットフォーム用の実行可能ファイルにビルド、デプロイ、リリースする。例えばFlutterやIonicのようなハイブリッドアプリでは、Bitriseが自動的にAndroidとiOSプラットフォームのバンドルをビルドします。
- コードに集中しながらモバイルアプリのすべてのDevOpsを処理してくれるサービスが必要です。
11. Vercel
Vercel は開発者に焦点を当てたサービスです。フロントエンドアプリを3回以下のクリックでデプロイするための最高のツールの一つです。
たとえばこんなときにVercelは最適です:
- フロントエンドのコードベースをワンクリックでデプロイする。GitHub、Gitlab、Bitbucketからリポジトリをインポートし、記録的な時間でデプロイされたURLが返されます。
- コードホストにプッシュされた変更ごとにプレビューURLを取得する。
- 戦場でテストされたフロントエンドのフレームワークやeコマーステンプレートで始める。
- 実戦で試された、高可用性で高速なウェブサイトをNext.jsでデプロイする(Vercelがこのフレームワークを発表し、保守しています)。静的アセットは自動的にVercelのCDNを通じて提供されます。
12. EasyCron
Easycron は、クラウド上であなたのすべてのcron jobを実行するサービスです。設定が簡単で、手間がありません!
たとえばこんなときにEasycronは最適です:
- サーバ上でのcrontabやインフラの設定を面倒しいと感じる。
- 定期的に実行する必要があるサーバレス関数やAPI URLがある。EasyCronにそれを追加し、UIで定期実行の回数を設定するだけです。ジョブが失敗した場合、EasyCronは失敗に関する通知を送信します。
- ジョブを簡単にオン/オフに切り替えたり、手動で実行したりする贅沢を楽しみたい。EasyCronはcron jobの管理に簡単なUIを提供します。
- 既存のジョブを複製したい。EasyCronもそれを処理します。
13. WakaTime
WakaTime は、あなたのコードエディタから直接統計とメトリックを自動報告するツールです。WakaTimeは、タスクに費やした時間の内訳がわかるダッシュボードを提供します。
たとえばこんなときにWakaTimeは最適です:
- コーディングタスクに費やす時間を測定
こちらの記事はdev.toの良い記事を日本人向けに翻訳しています。
https://dev.to/sourcegraph/15-developer-tools-to-make-you-super-productive-2g0a