並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 383件

新着順 人気順

tigの検索結果1 - 40 件 / 383件

  • Linuxメモ : あると便利かもしれないRust製コマンドラインツール - もた日記

    インストール方法 bat ripgrep, ripgrep-all fd, fselect starship exa, lsd, nat nushell navi, tealdeer delta hyperfine xsv, csview py-spy bandwhich, gping, ht, dog hexyl, bingrep broot tokei genact, globe, glitchcat monolith shellharden fnm, volta pastel gitui, onefetch, git-interactive-rebase-tool skim watchexec dust, diskonaut, dua-cli, dutree zoxide ytop, bottom, zenith mcfly sd, desed topgrade pueue proc

      Linuxメモ : あると便利かもしれないRust製コマンドラインツール - もた日記
    • 設計ドキュメント腐る問題、Git管理で運用してみた結果 | フューチャー技術ブログ

      はじめにTIG真野です。 秋のブログ週間2023 の3本目は、設計ドキュメントをGit管理して腐らせないようにがんばってみた話をします。 前段として6年前、「我々はいかにシステム開発におけるドキュメント腐る問題と戦えば良いのか」という記事を書いたのですが、その後の試行錯誤はどこにも残していないことに気づきました。普段のフューチャー技術ブログですとちょっと引け目を感じるテーマですが、秋の夜長を楽しむため読み物成分を多めに書くというテーマのこのブログリレーにピッタリな気がするため、この機会をお借りします。 ドキュメントも色々な種別があるかと思いますが、この記事では設計ドキュメントを指すことにします。設計ドキュメントは開発メンバーが参照するもので、ステークホルダーへの説明資料に引用して使うことはあれど、主目的は異なるという前提です。Design Docの場合もありますし、システム構成図、ERD、

        設計ドキュメント腐る問題、Git管理で運用してみた結果 | フューチャー技術ブログ
      • GoでWebアプリ開発時にあるあるだったレビューコメント | フューチャー技術ブログ

        The Gopher character is based on the Go mascot designed by Renée French. はじめにTIG DXユニット 1の真野です。 コードレビューについては3,4年ほど前に、コードレビューにおけるレビュアー側のアンチパターン って記事を書いたりもしました。当時はレビュアーの伝え方って大事だよなって話をしてました。いつしかレビュイーからレビュアーに比重が変わることが増えてきました。相互レビューは当たり前にしていますがが、比較的こうしたらもっと良くなるんじゃないかな?と提案される回数より、自分が提案する回数の方が増えてくるタイミングってありますよね? そういうわけで、最近Goで主にバックエンドのWebAPIや、AWS Lambdaで動くETLアプリ、たまにCLIツールを開発する時に、2回以上同じ指摘したコメントをまとめてます。Go言語

          GoでWebアプリ開発時にあるあるだったレビューコメント | フューチャー技術ブログ
        • 書類選考時に見ているポイント - id:onk のはてなブログ

          2019-04-01 に「チーフエンジニア」という肩書きを手に入れてしまった。 はてなのエンジニア組織にはチーフエンジニアという役割のエンジニアがいて、評価や採用、その他大小諸々の施策を通じて、技術部門全体の生産性と幸福度を向上させるのがその仕事です。 はてなのエンジニアのバリューズ - Hatena Developer Blog 前職でも新卒採用、中途採用のお手伝いはしていたのだけれど、今は主業務の一つとして担当しているので、僕がどこを見ているのか、というのを書きとめておこう。 履歴書 チラ見しています。 「通勤片道1時間ぐらいかかりそうだけど大丈夫かなぁ?」とか「趣味がルービックキューブじゃん! はてなの speedcubing 部と戦わせたろ」とかを見ています。 職務経歴書 まぁまぁ見ています。 プロジェクトで使った技術、特にアーキテクチャについてを一番見ていると思います。次にプロジ

            書類選考時に見ているポイント - id:onk のはてなブログ
          • プログラマ歴10年が時給1000円台で仕事をしたら非常に良かった話

            長井産業 今の仕事のやり方では局地的最適化が進みすぎて限界を感じていた ただ立場的に急激に生産性を下げるわけにはいけかない学生アルバイトレベルの給料で仕事をしつつ、非常に多くの新しいツールやサービスを仕事内で試せて満足しているスペック都内在住30歳独身男性。 大学は情報系だったが中退した。 Webプログラマでインフラからデザインまで分野に関わらず幅広くやっている。 今はフリーランスでそこそこの売上がある。 趣味もプログラミングでoss contributionしたりカンファレンスに登壇したりなどをしてる。 多少ぼかして書いてる部分がある 悩み今までに色々な規模や業種の会社でWeb開発をしてきた。 複数のプロジェクトに携わり、多くの人と関わってきた。 「優秀なエンジニア」というものの評価指標は様々あるが、以下のようなことが考えられる。 単位時間あたりの仕様の把握速度が速い単位時間あたりのコー

              プログラマ歴10年が時給1000円台で仕事をしたら非常に良かった話
            • 単体テストの考え方/使い方 の感想文 | フューチャー技術ブログ

              はじめにTIG EXU真野です。 積読を消化しようというテーマの、読書感想文連載 の1冊目は、単体テストの考え方/使い方 です。 書籍の基礎情報です 2022年12月28日発売 Unit Testing Principles, Practices, and Patterns の翻訳書。原著は2020年1月14日に発売 テーマ 質の高いテストを行い、ソフトウェアに価値をもたらそう!単体(unit)テストの原則・実践とそのパターン プロジェクトの持続可能な成長を実現するための戦略 単体テストの原則・実践とそのパターン コード例は C# であるものの、どの言語でも適用できる汎用的な内容とのこと 中を見ると、微妙にC#特有ぽいところに1箇所悩みましたが、それ以外はその通り 翻訳者の須田さんは、他にもセキュア・バイ・デザイン: 安全なソフトウェア設計 やOAuth徹底入門 セキュアな認可システムを適

                単体テストの考え方/使い方 の感想文 | フューチャー技術ブログ
              • Windows開発環境構築メモ

                開発環境構築用のメモを自分用に書き残しておく。 GUIアプリケーション この辺りを入れる。 Google Chrome Google日本語入力 1Password 4 Dropbox Docker Desktop for Windows 未だに購読版に移行せず買い切り版の1Password 4を利用している。 Windows + Vを利用するとクリップボード履歴を有効化できるので、済ませておく。 Google日本語入力の設定 HENKANキーでIMEを有効化 MUHENKANキーでIMEを無効化 というキー設定を普段利用しているのでそのように設定する。 直接入力 入力文字なし 変換前入力中 変換中 以上の4つのモードについて、それぞれキー設定のエントリを追加する。 Windowsライセンス認証 Windows 10 Pro 64bit辺りをライセンスキー無しでインストールしていると思うので

                  Windows開発環境構築メモ
                • HTTP検索条件、GETにするか?POSTにするか? | フューチャー技術ブログ

                  はじめにTIG DXユニット 1真野です。 RESTfullとかRESTishな方針でWebA PIの横断検索を設計する際にチーム内で方針について議論したやり取りの備忘記事です。 注意としてB2C向けなWeb APIを提供するというよりは、主に企業間または企業内部で使われるようなAPIの設計のバイアスがあります。LSUDs(Large Set of Unknown Developers)かSSKDs(Small Set of Known Developers)で言えば、確実にSSKDs脳で記事が書かれています。 REST API広く使われているため日本語記事も多数です。実践RESTful HTTP - InfoQ や、0からREST APIについて調べてみた など良さそうな記事が沢山でてくるの読むと良いでしょう。一般的な設計方法はやや古いですがWeb API: The Good Parts

                    HTTP検索条件、GETにするか?POSTにするか? | フューチャー技術ブログ
                  • AWS内の通信がインターネットを経由しない今、VPC Endpointを利用する意味はあるのか? | フューチャー技術ブログ

                    はじめにこんにちは。TIG村瀬です。 タイトルの通りですがAWS内の通信においてインターネットを経由しないことが最近になって公式ドキュメントに明記されたことを受け、改めてVPC Endpointの必要性について調べてみました。 Q:2 つのインスタンスがパブリック IP アドレスを使用して通信する場合、またはインスタンスが AWS のサービスのパブリックエンドポイントと通信する場合、トラフィックはインターネットを経由しますか? いいえ。パブリックアドレススペースを使用する場合、AWS でホストされているインスタンスとサービス間のすべての通信は AWS のプライベートネットワークを使用します。 AWS ネットワークから発信され、AWS ネットワーク上の送信先を持つパケットは、AWS 中国リージョンとの間のトラフィックを除いて、AWS グローバルネットワークにとどまります。 https://a

                      AWS内の通信がインターネットを経由しない今、VPC Endpointを利用する意味はあるのか? | フューチャー技術ブログ
                    • パスワードレス技術の現状と未来について | フューチャー技術ブログ

                      はじめにこんにちは。TIG の吉岡です。秋のブログ週間 10 本目の投稿です。 2022年の 5 月に Apple, Google, Microsoft そして FIDO Alliance が マルチデバイス対応FIDO認証資格情報 を発表してから、パスワードレス技術に対する注目が高まっています。1 パスワードレスの概要について調査してまとめてみました。 目次 私たちとパスワード パスワードの抱える問題 パスワードマネージャ 公開鍵暗号の活用 パスワードレスと FIDO Alliance FIDO v1.0 FIDO2 FIDO の認証フロー Passkeys パスワードレスな未来 私たちとパスワード今日、私たちのデジタルアイデンティティはパスワードに支えられています。私たちは日々 Google で検索し、Netflix を観て、Twitter でつぶやき、Amazon で買い物をしますが

                        パスワードレス技術の現状と未来について | フューチャー技術ブログ
                      • Makefile覚書: Goアプリ開発に役立ちそうな基礎知識 | フューチャー技術ブログ

                        はじめにTIG真野です。育休明けです。 フューチャー社内のタスクランナーはmakeやTaskなど複数の流派があり、チームによって使い分けられています。個人的にはmakeで良いんじゃないかと思っていますが、Taskも良いですよね。 makeは細かい記法をいつも忘れる+調べるとC言語向けの情報が出てきて脳内変換に手間を感じたため、makeを用いてWebバックエンドアプリをGoで開発するということをテーマに、役立ちそうな情報をまとめます。 なお、今記事におけるmakeは、GNU Makeを指します。バージョンは以下で動かしています。 MakefileのためのEditorConfigMakefileのインデントはハードタブである必要があります。誤りを防ぐためにもEditorConfigを設定しておくと良いでしょう。 makeは通常、Makefileという名称をデフォルトで認識しますが、同一フォルダ

                          Makefile覚書: Goアプリ開発に役立ちそうな基礎知識 | フューチャー技術ブログ
                        • 2020年秋にVue.jsのアプリケーションを作るなら、押さえておきたい5つのポイント | フューチャー技術ブログ

                          TIGの伊藤真彦です。 ここ最近はVue.jsでのフロントエンド開発を行っています。 ほぼ何もない状態からのスタート段階から始めたのですが、その際調査したことが学びになったので共有します。 ※この記事は 2020/10/13 に執筆されました。調査日は2020/08/17~2020/09/01 のため、バージョンなど当時と状況が異なるものがあります。この1ヶ月の間でも、alphaからbetaに変わったり、betaが取れたりと進化が速いです。 公式ライブラリのステータスはこちらもご参考ください。 https://v3.vuejs.org/guide/migration/introduction.html#supporting-libraries 前提として押さえておきたい2点のポイント環境構築はVue CLIフューチャーでは仕事ですぐに使えるTypeScriptと題しまして、TypeScri

                            2020年秋にVue.jsのアプリケーションを作るなら、押さえておきたい5つのポイント | フューチャー技術ブログ
                          • gitのdiff-highlightを使い始めた - りんごとバナナ

                            git log -p や git diff などで差分を見るとき、行単位での追加/削除は表示されるが、行の中のどこが変わったのかは表示してくれない。例えば行の中の一単語を書き換えただけで、しかもその行が長い場合、どこに差分があるのか目で探すのが結構大変だった。 しかし先日、 diff-highlight という便利なモジュールが提供されていることを知り、早速導入してみた。 diff-highlightとは github.com gitコマンドの、行単位での差分を探す動作のポストプロセスとして実行され、同じ行の中の差分をハイライトしてくれる。 例えば、行の一部分だけ変えたときの git diff は、今までこんな感じだった。 それがこうなる。差分がわかりやすい。 diff-highlightの設定 この機能は gitコマンドに同梱されているため、インストールは不要。設定作業のみで使える。 ま

                              gitのdiff-highlightを使い始めた - りんごとバナナ
                            • markdownlintで設計書の品質を高める | フューチャー技術ブログ

                              はじめにフューチャー技術ブログのリレー形式の連載である、春の入門祭り2023の1日目です。TIG真野です。 ここ数年、Markdownで設計書をチームで書き、GitHub(GitLab)上でレビューするフローを採用しています。なるべくテキストベースで設計開発フローを統一するため、私の所属するチームでは以下のようなツールを採用しています。 シーケンス図、業務フロー図 Markdown中にPlantUMLで記載 参照はGitHub上からも見れるように、pegmatite を利用 システム構成図など画像系 Diagrams.net(draw.io)で作成し、.drawio.png の拡張子でMarkdownから参照 これだけは目視で差分チェックとなる Web API定義 OpenAPI SpecのYAMLファイル 参照はGitHub上からも見れるように、swagger-viewer を利用 ER

                                markdownlintで設計書の品質を高める | フューチャー技術ブログ
                              • Terraformerとしてコードを書いて思うこと | フューチャー技術ブログ

                                こんにちは。TIGの伊藤です。この記事は秋のブログ週間2021の3日目です。 はじめに私は普段会社でクラウドをまたいでTerraformを日々書いたり、メンバーに教えたりしています。もはや俗に言うプログラミング言語を書かずにここまで全振りしてきたくらいなので、比較的自信を持ってコードを書いて仕事をしています。 特にここ最近はほぼ1からコード設計をして運用まで持っていくこともあり、「より腐りにくい、より息の長いコード」というものを考えるようになりました。Terraformだからこその「定期メンテを簡易にするためには」「より簡単に変更するためには」をひたすら突き詰めていった結果、アツい気持ちが生まれ、今回は筆を取っています。 そんな私のアツい気持ちをしたためた今回の記事ですが、可能な限り例も添えつつ、いくつか解説できればと思います。公式にも実は載っているような内容もあったりしますが、日本語の記

                                  Terraformerとしてコードを書いて思うこと | フューチャー技術ブログ
                                • 戦略ファーム時代に読んだ700冊のまとめ *随時更新 - Digital, digital and digital

                                  戦略ファーム時代に読んだ700冊程度の本をまとめています*随時更新 戦略ファーム時代に読んだ700冊程度の本をまとめています I. 戦略 企業参謀 https://amzn.to/44iKVxM 当初、いまいち戦略というものが掴めきれず迷子になっていた時に「大前研一はこれだけ読め」と教わった本。大量に出ている他の大前本を読まなくて済むのが見過ごせない大きな価値 戦略サファリ 第2版 https://amzn.to/3csZg0t 経営戦略の本を読み漁るも、実プロジェクトの方が全くもって学びになるという普通の感想をもち、俯瞰での戦略論を求めるようになる。いやあ懐かしい 企業戦略論【上】基本編 競争優位の構築と持続 Jay Barney https://amzn.to/3dJjVxB 任天堂の戦略の妙に気が付きはじめ、ベースか似通ったものはないだろうかと思うようになった時にJay Barney

                                    戦略ファーム時代に読んだ700冊のまとめ *随時更新 - Digital, digital and digital
                                  • 社内勉強会で発表したGCP資料を公開します | フューチャー技術ブログ

                                    はじめにこんにちは。TIG/DXチームの伊藤です。この技術ブログでGCPネタをよく発信していますが、今回もGCPネタです。好きです、GCP。フューチャーの社内では定期的に勉強会を開催している部門があり、全社的に登壇者を募って発表しています。今回は私自身社内にGCPを広めたいという思いがあり登壇の機会をいただきました。今回はその時のまとめや一部改善した内容になります。また、リモートでの勉強会ということもあり、個人的に気をつけた点も簡単にまとめたので、その辺も参考になればと思います。 話す前の準備今回は社内で広く利用しているGoogle Meetを使ってオンラインで勉強を行いました。勉強会としても私としてもリモート開催がそもそも初めてなので、質問を受けやすいように区切りのいいとこで質問タイムを設けました。また、オンラインだと反応が見にくいというのがあり、sli.doで質問を募ったり、単純な感想

                                      社内勉強会で発表したGCP資料を公開します | フューチャー技術ブログ
                                    • 「実践Redis入門」所感 ~「E.G.コンバット」の観点から語る~ | フューチャー技術ブログ

                                      積読を消化しようというテーマの、読書感想文連載 の2冊目です。 導入『自分たちは、クラウドネイティブじゃなくてマネージドネイティブなんだよ…』 TIGの原木です。 最近、冒頭のような開発者の嘆きを人づてに聞く機会があり、今も脳裏に残り続けています。 昨今のITシステムにおいて、クラウドサービスは欠かせないものとなっています。しかしユーザー、そして開発者として大きな利便性を享受する裏で、クラウドサービスによって巧妙に隠蔽された裏のソフトウェアを意識する機会は減り続けているのではないでしょうか? Webサービスにおいて、RedisやMemcachedに代表されるキャッシュサーバーもそのようなソフトウェアの1つです。 キャッシュサーバーは、Webアプリケーションなどデータの読み込みや保存を効率化するために欠かせない存在ですが、同じデータストアであるRDBMSなどと比較していま一歩隠れた存在だと思

                                        「実践Redis入門」所感 ~「E.G.コンバット」の観点から語る~ | フューチャー技術ブログ
                                      • 事業会社とOSS - Qiita

                                        最近、社内でよく話をする内容についてまとめました。 企業がOSS化するといろいろメリットがあると思っていて、社内でもそこのコンセンサスはうちの技術横断部門のメンバー間では取れていたりするのですが、自社以外の人とかと話をする時もあるので、いろいろまとめておきます。 なお、この文章では本業をOSSにしつつビジネスを回そうみたいなElasticsearchとかMongoDBとかMySQLみたいな話題はとりあげず、本業が別にある会社がOSS化する、という部分に特化した話です。 9/13に追記 よく言われるメリットとデメリット メリットは、公開することで開発が自然と進み、コスト削減になる。一方でノウハウの流出などのデメリットがある、みたいなトレードオフ、という理解をしている人が多いようです。 コストは削減にならない OSS化したら多くの人に使ってもらいたいですよね?というのは考えるわけですが、その「

                                          事業会社とOSS - Qiita
                                        • スキーマファースト開発のためのOpenAPI(Swagger)設計規約 | フューチャー技術ブログ

                                          はじめまして。TIG DXユニット 1の亀井です。 はじめに みなさん、Swagger使ってますか? Swaggerや周辺ツールについては 某先輩の記事 にて丁寧に解説されていますので、 本記事では実際にSwaggerのスキーマ定義を設計していく上で取り決めた規約について書いてみたいと思います。 前提私が在籍しているプロジェクトでは、REST APIは golang でフロントエンドを Vue.js + TypeScript で構築しています。 短期間・高品質での構築を実現するためにSwaggerを設計ドキュメントとしてだけではなく、コード自動生成やモックサーバーに活用させることで徹底したスキーマファーストな開発を行ってきました。 というわけで、今回は下記のツールを利用することを前提として規約を作成しています。 go-swagger: Goアプリケーションのハンドラ、リクエスト/レスポンス

                                            スキーマファースト開発のためのOpenAPI(Swagger)設計規約 | フューチャー技術ブログ
                                          • Goのテストに入門してみよう! | フューチャー技術ブログ

                                            2020/08/15更新: 「テストの失敗をレポートしたい」と「サブテストの一部のみ実施したい」の章を追加 はじめにTIG の辻です。今回は春の入門祭りということで Go のテストに入門してみよう!という記事です。 書いた背景ですが Go の標準ライブラリのコードリーディング会で testing パッケージにチャレンジしてみましたが、難しすぎてわからん。そもそも Go のテストって何ができるんだっけ?という話になり、基本的な内容をなるべく具体例をまじえながらまとめました。 ざっとどんなことができるんだろう、という index になれば幸いです。 TipsGo に組み込まれているテストの仕組みの中に、ベンチマークに関するテストと Example テストというサンプルコード用のテストも含まれているのですが、この 2 つは対象外にします。基礎的と思われる内容から順に並べてみました。 はじめに T

                                              Goのテストに入門してみよう! | フューチャー技術ブログ
                                            • 個人開発者のためのコマンドラインGit使いこなし術

                                              英語で先に書いてから翻訳しています どうも個人アプリ作家のTAKUYAと申します。 Gitはコードベースや変更履歴の管理に必要不可欠なツールです。たとえ個人でアプリを開発していたとしても。 僕はデスクトップとモバイルの両方で動作する、InkdropというMarkdownのノートアプリを独りで開発しています。 当アプリはデスクトップ版はElectron、モバイル版はReact Nativeで作られています。 僕は開発作業は基本的にtmuxとvimでターミナル上で行っています。vimによるJavaScriptコーディングのためのセットアップについては前回シェアしたとおりです。 本稿では、僕のGitのワークフローについてご紹介したいと思います。 内容はすでにGitの基本をご存知の方向けとなります。 Gitの操作も基本的にはターミナル上で行っています。 色んなGUIベースのGitクライアントアプリ

                                                個人開発者のためのコマンドラインGit使いこなし術
                                              • Git使うのに便利なCLIツール - Qiita

                                                背景 日々の業務やらプライベートでのチーム開発で使ってるgit関連のツール紹介です。 gitコマンドは大変便利ですけどそれ以外の周辺ツールを使うことでより便利に使うことができたりします。 (基本的にはmacとlinuxでしか動かしてないですが一部windowsでは使えないものがあります) github/hub ■ github/hub お馴染みのやつ。 プルリクエストやカレントディレクトリのgithubページを開いたりすると言った動作をCLIから行えます。 GitHubやGitHub Enterpriseを使ってるなるなら入れておくべきかなって思います。 ソースリーディングだけでもgit clone {user}/{repo}でcloneできたりするのでとても便利。 参考記事 GitHub を CLI で使う時の便利コマンド Hub コマンド の使い方をまとめてみた! インストール $ b

                                                  Git使うのに便利なCLIツール - Qiita
                                                • GoのWebアプリ開発でフラットパッケージにした話 | フューチャー技術ブログ

                                                  2023.10.5追記: Goチームからプロジェクトの目的に応じたディレクトリ構造についてのドキュメントが公式に公開されています。 https://go.dev/doc/modules/layout 2020/11/13 「やってみてよかったことまとめ」、「やってみて困ったこと」、「外部モックサービスを使ったユニットテストの未来」の章を追記 2020/11/18 「やってみてよかったことまとめ」にSNSでもらったフィードバック内容を追記 はじめにこんにちは、TIG 真野です。秋のブログ週間連載の第9弾です。 1年弱ほどGo言語でWebAPIアプリケーション開発を行っていますが、かなり割り切った構成・テスト方針を採用しました。そろそろ1年弱になり機能開発も比較的落ち着き、保守運用フェーズの割合も徐々に増えてきた頃合いなので、やったこと・学び・反省といった振り返りを共有します。 Goのパッケー

                                                    GoのWebアプリ開発でフラットパッケージにした話 | フューチャー技術ブログ
                                                  • SQLファイルから型安全なコードを生成するsqlc | フューチャー技術ブログ

                                                    TIGの辻です。GoのORマッパー連載8日目です。本記事では sqlc を紹介します。早速ですが、結論から行きましょう。 sqlc まとめ SQLファイルからデータベースにアクセスできる型安全なGoのコードを生成するライブラリ 構造体のモデルの手書き実装不要 複数テーブルをJOINしたときのマッパー実装不要 生成されるコードは不要なリフレクションなし SQLをがんがん書きたい、でも面倒なマッパー構造体は書きたくない、という開発者にとっては大きな味方になります。 sqlc の紹介 sqlc はSQLファイルからGoのアプリケーションコードを生成するライブラリです。2020/2に v1.0.0 をリリースし、着々とスターを伸ばしています。2021/08現在は v1.8.0 をリリースしています。本資料で生成しているコードも v1.8.0 を用いています。 https://star-histor

                                                      SQLファイルから型安全なコードを生成するsqlc | フューチャー技術ブログ
                                                    • DockerでRUNをまとめた方が良いとは限らない | フューチャー技術ブログ

                                                      TIG/DXの渋川です。 ソフトウェアの世界では、ツールや言語の進歩があって、もはや古い知識になっているにも関わらず、古い知識がベストプラクティスと呼ばれて蔓延し続けている例があります。Dockerだと「RUNをまとめよう」というのがそうです。かつてはこれは常に行うべきプラクティスでしたが、現代だとそうじゃないケースもあり、デメリットもあります。 https://www.docker.com/company/newsroom/media-resources 1. ただファイルが増えるだけのケースであれば気にしなくていい次の2つのファイルで実験してみます。ベースイメージに、10MBのファイルを作成するコマンドをふたつ並べたものです。 FROM debian:bullseye-slim RUN dd if=/dev/zero of=dummy1 bs=1M count=10 RUN dd if

                                                        DockerでRUNをまとめた方が良いとは限らない | フューチャー技術ブログ
                                                      • Terraformのベストなプラクティスってなんだろうか | フューチャー技術ブログ

                                                        はじめにこんにちは、TIG DXユニット 1の木村です。 入社以降ずっと触ってきたTerraformですが、巷ではWorkspace派だったり、module派だったり、ディレクトリ完全分離派だったり、様々な流派(プラクティス)が乱立しているのを目にします。私自身ベストな構成を模索していく中で辿り着いた結論は、ケースバイケースで全てのデザインパターンに対応できる万能なものは存在しないのかな (当たり障りないですね..)ということです。 そんなわけで、様々なTerraformの流派を紹介し、各流派がどのようなパターンに向いているのか(はたまた不向きなのか)の個人的見解をまとめてみました。 ※本記事中のサンプルコードはすべて Terraform 0.12、 provider google cloud で解説してます Terraformとは?当社過去記事に解説があります。Terraformの概要や

                                                          Terraformのベストなプラクティスってなんだろうか | フューチャー技術ブログ
                                                        • GoとDynamoDBを用いた開発で反省していること | フューチャー技術ブログ

                                                          はじめにTIG真野です。失敗談をテーマにした連載で、ちょうどプロダクト開発的に良い区切りのタイミングでもあるため、振り返りがてら、DynamoDB,Go,AWS Lambdaの技術要素について自分自身の理解・見込みの甘さについて反省します。 DynamoDBのシステム項目created_atとかupdated_atのタイムゾーンはJSTにすれば良かったDynamoDBは日付型を直接サポートしておらず、文字列型で保存することになります。 https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.NamingRulesDataTypes.html#HowItWorks.DataTypes.String データサイズや諸々の理由でUnixTime 勢力もあるかもしれませんが、アプリケーションから直接参照

                                                          • 【解説】開発ライブ実況 #1 (Vim / Go) 編 by メルペイ Architect チーム Backend エンジニア #mercari_codecast | メルカリエンジニアリング

                                                            【解説】開発ライブ実況 #1 (Vim / Go) 編 by メルペイ Architect チーム Backend エンジニア #mercari_codecast Merpay Architect / Mercari Microservices Platform チームの伊藤です。この記事は Merpay Tech Openness Month の3日目の投稿となります。本稿では、先日開催した開発ライブ実況のイベントで紹介した筆者の開発環境(Vim / Go)について、言語に依存しない「全般的な設定」と「Goの設定」の2つに大別して解説します。Vim に関する話題が多いですが、Go のために自作したツールについての解説はエディタに依存しないので、他のエディタを利用している方々もぜひご一読ください。 開発ライブ実況とは 「他人の開発風景を覗いてみよう!」というコンセプトのもとに弊社が開催して

                                                              【解説】開発ライブ実況 #1 (Vim / Go) 編 by メルペイ Architect チーム Backend エンジニア #mercari_codecast | メルカリエンジニアリング
                                                            • 作って学ぶGraphQL。gqlgenを用いて鉄道データ検索API開発入門 | フューチャー技術ブログ

                                                              春の入門祭りの7日目です。 はじめに※このエントリーはGoでGraphQLサーバアプリ開発の入門記事です。技術要素にGo, gqlgen, Docker, PosgreSQLなどが登場します。 TIG DXユニット 1の真野です。技術ブログ運営もしています。 フューチャーではOpenAPI関連の過去記事からお察しもできるように、REST-likeなWebAPIを実装することが多いです。しかし日本製HeadlessCMSのmicroCMSを触ってみたの記事で紹介されたように、HeadlessCMS界隈を初めGraphQLのAPIを提供するサービスが増えている体感もあり、GraphQLを春の入門祭りのテーマにしました。 学習する上でドキュメントを読み込むだけでは忘れがちです。手を動かしながらタイトルにあるように鉄道データ検索APIをGraphQLで実装していきましょう。実装の前に結果のみを知り

                                                                作って学ぶGraphQL。gqlgenを用いて鉄道データ検索API開発入門 | フューチャー技術ブログ
                                                              • OpenAPI GeneratorでPython Web API構築 | フューチャー技術ブログ

                                                                この記事はPython Advent Calendar 2022 カレンダー2の3日目です。昨日はtttakehさんのじゃんけん画像を分類してみたでした。 はじめにこんにちは。TIG DXユニットの村上です! さて、私の所属しているプロジェクトではバックエンドシステムに主にGo言語を用いており、Go言語によるWebAPIを構築しています。 例えばLambdaとGoを使ったサーバーレスWebAPI開発実践入門など、Future Tech Blogには多くのノウハウが投稿されていますので是非ご覧になっていただければと思います。 今回はGo言語ではなくPythonでWebAPIを構築しました。その際にOpenAPI Generatorが便利だったのでご共有します。 OpenAPI GeneratorOpenAPI GeneratorはAPIリクエストやレスポンスの内容を定義し、それを元にプログラ

                                                                  OpenAPI GeneratorでPython Web API構築 | フューチャー技術ブログ
                                                                • go-swaggerを用いたWebアプリケーション開発Tips19選 | フューチャー技術ブログ

                                                                  はじめにTIG DXユニット 1の真野です。echo → 生net/http → gorilla/mux → go-swagger, gqlgenの経歴でGoのHTTP APIを実装してきました。本記事では最近業務でヘビーユーズしているgo-swaggerについての開発Tipsをまとめました。 背景フューチャーではGoを採用する案件が増えて来ており、その際にgo-swagger というツールを利用することが多いです。 2 理由はWebAPIのスキーマを駆動に開発することに慣れているという開発文化(DBレイヤのERDやデータフローを駆動に開発することは今も多い)や、リリース後の保守や将来のマイグレーションを考慮しなるべく特定のDSLに依存したくないというポリシーを強く持つこと、開発前にある程度固く機能数を洗い出して工数見積もりや開発スケジュールに活かしたいといった大人な事情など、色々相性が良

                                                                    go-swaggerを用いたWebアプリケーション開発Tips19選 | フューチャー技術ブログ
                                                                  • 「リーダブルコード」を読んでTerraformの可読性について考える | フューチャー技術ブログ

                                                                    こんにちは。TIGの伊藤太斉です。 この記事は、読書感想連載の6日目です。 今回取り上げる書籍は、多くのエンジニアが通過するであろう、「リーダブルコード」についてです。 最近、「もし「リーダブルコード」を弁護士が読んだら?」という記事をたまたま見かけて読んでみました。記事としては契約書にも同じことが言える、と自分が知らない世界でも使える部分はあるのだと読んでいました。そして、ふと考えてみると、「うちにも本があったじゃないか。しかも積読している。」と思い出し、今回積読解消の機会としてこの連載に参加しました。 リーダブルコードを書評や感想については既に多くの方が書いている内容があるので、今回はTerraformと絡めて書いていければと思います。私は、俗にいうプログラミング言語に対しては明るくない方なので、自分が理解できうるTerraformにおいて考えたらどうなるか、について地震の頭の整理、理

                                                                      「リーダブルコード」を読んでTerraformの可読性について考える | フューチャー技術ブログ
                                                                    • Goのデバッグ環境 on VSCode | フューチャー技術ブログ

                                                                      はじめにこんにちは。TIG/DXユニットの富山です。 私の使用するテキストエディタはVim一択でしたが、最近はVSCodeに浮気気味です。(言わずもがな Vimプラグインは入れています) 今回はVSCodeでGo言語用のデバッグ環境をテーマします! 環境構築前提条件: VSCodeがインストール済であること Goがインストール済であること Step 1:プラグインのインストールGoogleが公開しているVSCode用のGoプラグインである、Go for Visual Studio Codeをインストールします。(2020年6月に開発管理がMicrosoftからGoogleのGo開発チームへ移管されました)。 インストールが終わったら、Goプラグインに必要な各種ツールをインストールしていきます。 コマンドパレットを開く(Windows: Ctrl + Shift + p / Mac: Com

                                                                        Goのデバッグ環境 on VSCode | フューチャー技術ブログ
                                                                      • フューチャー技術ブログの運営で心がけていること | フューチャー技術ブログ

                                                                        はじめにTIG DXユニットの真野です。フューチャー技術ブログの運営の1人です。未来報を運営している岡田さんなどと一緒に、気持ちは草の根活動で外部発信に携わっています。 IT企業の技術ブログ運営は、ある一定の質をキープしながらも、投稿頻度を高め・それを継続することが求められ、周囲の期待値もあるので中々気を抜けない仕事だと思います。単発ならともかく、継続することは忍耐が必要なので特に大変です。運営していてこれはナレッジだなと感じたことをまとめていきます。 2020/09/08 続編を公開しました: フューチャー技術ブログで行っている連載企画が良いよって話 技術ブログの大変なところ≒記事ネタを探すところ熱心な寄稿者が複数いて、運営からの声掛け無しで記事が集まるのであれば非常に楽ですが、たいていの組織やチームはそうでないと思います。また、本業は記事を書くことではなく、自社プロダクトの開発やシステ

                                                                          フューチャー技術ブログの運営で心がけていること | フューチャー技術ブログ
                                                                        • 資料作成のポイント(定例、課題解決用) | フューチャー技術ブログ

                                                                          はじめにTIG真野です。説明資料のスライドを作成するときにチームメンバーによくフィードバックしたポイントをまとめました。 以下この記事の前提です。 Google Slideなどのスライド形式が前提です わざわざスライド化しなくてMarkdownに箇条書きで良い場面も多いと思います。先輩はマインドマップでディスカッションしていて憧れました。ただ、この記事ではスライド前提とさせてください 5,6名のメンバーと気合を入れて資料作成し、数ヶ月かけてドメインエキスパートとディスカッションしました経験のまとめです 作成した資料は議論のたたき台+システム設計における要件定義のような位置づけで用いました 資料はフルリモート会議で用いたので、なるべくスライドだけで完結して伝わるような志向があります この記事の記載内容は資料作成の全てのユースケースで使えるわけじゃないです コンテキストを共有しているチームメン

                                                                            資料作成のポイント(定例、課題解決用) | フューチャー技術ブログ
                                                                          • fzfを使ってgit stashを便利に扱えるように - $shibayu36->blog;

                                                                            git stashをもっと便利に扱いたいと思い、fzfを使って使いやすくしてみた。以下のURLに載っているものを参考にして自分にとって使いやすいように改変した。 fzfでGUI選択したファイルをgit stashするシェルスクリプト git-stash-explore できたこと 今の変更ファイルをfzfを使って選択して、選択したものだけをstash (git-stash-select) stash一覧の中から中身をpreviewしながら選び、apply or deleteする (git-stashes) 現在の変更ファイルから一部を選んでgit stashするコマンド fzfでGUI選択したファイルをgit stashするシェルスクリプト を参考に、git-stash-selectというコマンドを作った。 #!/usr/bin/env bash # Get the root direct

                                                                              fzfを使ってgit stashを便利に扱えるように - $shibayu36->blog;
                                                                            • フィーチャーフラグを管理するためのOpenFeature | フューチャー技術ブログ

                                                                              はじめにTIG DXユニット真野です。 CNCF連載の2本目はクラウドネイティブなフィーチャーフラグの標準とAPI、SDKを提供するOpenFeatureについてです。 フィーチャーフラグとはフィーチャーフラグとはコードを変更せずに、フラグを使って機能を有効/無効化する開発/デプロイ手法のことです。一般的なユースケースとしては、特定のユーザーに対して再起動とか再デプロイをせずに、新機能を有効化したいといった場合に役立ちます。信頼度が高くなったらより段階的に広範囲に対象を広げていくと安心ですね。この使い方だけであれば、カナリアリリースを想像しますが、他にも次のようなユースケースが考えられます。 初期から契約している特別な顧客(あるいはプレミアムプランに契約している顧客)に向けて開発した機能を提供する バグが見つかったので、該当機能を無効化してアプリの振る舞いをロールバックする 繁忙期にシステ

                                                                                フィーチャーフラグを管理するためのOpenFeature | フューチャー技術ブログ
                                                                              • Testcontainersを用いてテスト実行前の docker compose up を無くし、Goで並列テストする | フューチャー技術ブログ

                                                                                春の入門祭り2024の1記事目です。 はじめにTIG真野です。 Testcontainers を用いて、単体テスト実行前に docker compose up -d 無しで、PostgreSQLにアクセスする単体テストを行う、入門記事です。 恩恵は次のような開発者体感の向上が個人的にあります。 テストを実行するうえで、別プロセスのサービスを起動しておく必要があるといった前提条件を考えなくても済むため、テストを行うビジネスロジックに集中できるdocker compose up -d 打たないだけだが、テストに必要なコンテナを考慮しなくても済む停止し忘れて、別のリポジトリの開発するときに混乱しなくても済む並列テストしやすくなるので、テストの実行速度が向上するGoにおいて、複数のパッケージを同時にテストするとき、 -p 1 で絞らずに済むTestcontainers とはhttps://test

                                                                                  Testcontainersを用いてテスト実行前の docker compose up を無くし、Goで並列テストする | フューチャー技術ブログ
                                                                                • Commitizenを使ってgitのコミットメッセージをしっかり書こう | DevelopersIO

                                                                                  はじめに gitのコミットメッセージを記述するとき、内容について悩むことが度々あります。 簡潔に要点をまとめて書きたいけどいちいち記述が面倒だったり、チームで書き方がバラバラだったり・・・ そして結局「fix bug」のひとことだけメッセージを記述するだけになったりします。 この記事ではそんなコミットメッセージを少しでも簡単に有用にするためのツールを紹介します。 Commitizen? コミットメッセージを簡単・簡潔に記述したいときに使えるのがCommitizenです。 Commitizenはインタラクティブにコミットメッセージを作成できるツールで、 このコミットのタイプ スコープ コミットのサマリー コミットの詳細 などについて対話的に記述していくことで、適切なコミットメッセージを作成できます。 ? Select the type of change that you're commit

                                                                                    Commitizenを使ってgitのコミットメッセージをしっかり書こう | DevelopersIO