並び順

ブックマーク数

期間指定

  • から
  • まで

81 - 120 件 / 248件

新着順 人気順

技術的負債の検索結果81 - 120 件 / 248件

  • 技術的負債を減らす - mixi engineer blog

    こんにちは、システム本部長の松岡です。 はじめに 今回はミクシィの物作りの中で、技術的な負債を返済する取り組みの一つについてご紹介します。 ミクシィは2012年8月にユニット制に移行しました。これはユーザーファーストな開発を促進するための挑戦です。 裁量権が各ユニット長に落ちることで早い判断と実施が可能になります。 反面、ソースコードがユニットごとに完全に疎結合しているわけではありませんので、早い判断と実施の結果、他のユニットに迷惑がかかるかもしれません。 いつまでも、どの開発者も困らないような開発を進めていければ、問題ないことですが、これまでの開発で負債として溜まってきた事、今後の進め方次第でいずれ行き詰まる事があるとも考えています。 そこで、負債を解消するため or 未来に積まないための対応が必要となります。 ミクシィはとても技術に理解のある会社です。 私含め経営陣から積極的に負債を返

      技術的負債を減らす - mixi engineer blog
    • 未だ現役なPerl5.8 & MySQL4.0とどう戦うか? ライブドアブログが生んだカオスとレガシーからの脱却

      未だ現役なPerl5.8 & MySQL4.0とどう戦うか? ライブドアブログが生んだカオスとレガシーからの脱却 Inside of Blog 15年熟成されたサービスの光と影、カオスとレガシーへの挑戦 #2/2 2019年11月20、21日の2日間、LINE株式会社が主催するエンジニア向け技術カンファレンス「LINE DEVELOPER DAY 2019」が開催されました。1日目は「Engineering」をテーマに、LINEの技術の深堀りを、2日目は「Production」をテーマに、Web開発技術やUI/UX、プロジェクトマネジメントなど、より実践的な内容についてたくさんのプレゼンテーションが行われました。「Inside of Blog; 15年熟成されたサービスの光と影、カオスとレガシーへの挑戦」に登壇したのはLINE 開発Bチームの大森貴博氏。後半パートとなる今回は、現役で稼

        未だ現役なPerl5.8 & MySQL4.0とどう戦うか? ライブドアブログが生んだカオスとレガシーからの脱却
      • 「『50%の時間を技術的負債返済に』はぜんぜん駄目だった」 カミナシ社・原トリ氏が語る、試行錯誤の過程

        「負債にも50パーセントの時間を使ってください」は機能しなかった 西村賢氏(以下、西村):最初にやったことに価値がありました。そして、次は第2段。 原トリ氏(以下、原):この説明会やった時に、6月は一回止めますと(話しました)。完全に機能開発を止めて、サポートから流れてくるチケットに関してはオンコール体制を組んできちんと対応するけれど、機能開発はしないというのを戦略として……。 西村:これ、カミナシの歴史で初めてですね。 原:たぶん、初めてだと思います。 西村:そこは「大丈夫なのかな?」とかなかったんですか? 原:「この1年大きい機能、出てないよね?」みたいな共通認識は、全社にあったから経営の中で意思決定が早かったんです。 西村:なるほど。なにか技術的にうまくいっていないというのがあった。 原:そうです。プロダクトがうまくいっていないという認識がまず全社にあって、かつ、これがカミナシの底力

          「『50%の時間を技術的負債返済に』はぜんぜん駄目だった」 カミナシ社・原トリ氏が語る、試行錯誤の過程
        • お前も技術的負債にしてやろうか! もしくは技術的負債と和田卓人さんをめぐるシンクロニシティ - YAMDAS現更新履歴

          みんな大好き、技術的負債の話題である。 t-wada.hatenablog.jp まずはエチケットペーパーというか議論の前提として、和田卓人さんのブログエントリをはっておく。 技術的負債という概念の生みの親であるウォード・カニンガムの説明を読み直すと、「技術的負債」という言葉の一般的にイメージとは結構違うという話だが、ワタシ自身、技術的負債といえば、和田さんが書くように「リリース優先で雑なコードを書いたものの、結局はきれいに書き直されていないコード」や「古くなってしまった技術基盤(言語やインフラやフレームワーク)」のことだと思い込んでいた。これには蒙を開かされた。 ieeexplore.ieee.org 偶然だろうが、和田さんの文章が公開されたのと同じ今年の6月、IEEE Software に技術的負債についての文章が掲載されている。これを書いたのは、『Just Enough Softwa

            お前も技術的負債にしてやろうか! もしくは技術的負債と和田卓人さんをめぐるシンクロニシティ - YAMDAS現更新履歴
          • GMOペパボ柴田博志が教える。経営者も理解しておくべき「技術的負債」 - FLEXY(フレキシー)

            GMOペパボ株式会社で執行役員 技術部長 兼 VPoE(VP of Engineering)を務める柴田博志(@hsbt)と申します。CTOの栗林健太郎さん(@kentaro)と共にGMOペパボのエンジニアをまとめています。 技術的負債、どこの組織にもありますよね。どうやって返済していますか? 会社として技術的負債にどう立ち向かうべきか、そのコツは人のマネジメントにあると考えています。今回はflexy読者の皆様と技術的負債を考えていこうと思います。 技術的負債とは: 技術的負債とは、開発の中で先送りにされる、ドキュメンテーション不足、保守コストのかかるテストコードや不必要に複雑なコードなどを指します。技術的負債が蓄積してしまうと、将来的に重大な問題を引き起こしたり、対応コストが雪だるま式に増えてしまいます。すべてのコードに技術的負債が発生する可能性があり、組織はどこかのタイミングで技術的負

              GMOペパボ柴田博志が教える。経営者も理解しておくべき「技術的負債」 - FLEXY(フレキシー)
            • ドメイン駆動設計のプラクティスでカバーできること、できないこと[DDD]

              BtoB SaaSの会社でDDDを活用して事業を成長させてきた中で、DDDのプラクティスの実践という面ではかなり大きな成果が得られました。 しかし、事業を成長させるという点において、DDDのプラクティスだけではうまくいかないこともあり、別のアプローチも同時に試行錯誤しています。 この発表では、うまく行ったプラクティスの内容と、カバーできなかった課題、そこに対する現在の取り組みについて紹介します。 ドメイン駆動設計 サンプルコード&FAQ https://little-hands.booth.pm/items/3363104 ドメイン駆動設計 モデリング/実装ガイド https://little-hands.booth.pm/items/1835632 ドキュメント内のブログ記事URL https://little-hands.hatenablog.com/entry/2020/12/22/

                ドメイン駆動設計のプラクティスでカバーできること、できないこと[DDD]
              • 規模感の違う脱レガシーで必要なこと - memo_md

                「レガシー」を保守したり、刷新したりするにあたり得られた知見・ノウハウ・苦労話 by Works Human Intelligence Advent Calendar 2022 の 15日目の記事です。 qiita.com 筆者は過去に、中〜小規模のWebアプリケーションでレガシーフロントエンドの改善作業を業務でやっていた。その経験を元に技術同人誌を作成し、それがきっかけで「レガシーフロントエンド安全改善ガイド」という書籍を出した。 初版から数年経ってしまい、詳細な利用技術などの説明は少し古くなってしまっているのだが、ベースとなる考え方の部分は今でも変わっていないと思う。 一方で自分自身は、その経験が他の環境でも通用するのかを試してみたくなり、転職して一年強ほど大規模なフロントエンド刷新に関わっていた。 あまりにも規模が大きいため完遂を見届けたわけでもないが、現段階でも学びや得られたものは

                  規模感の違う脱レガシーで必要なこと - memo_md
                • スタメンの技術的負債解消戦略 - stmn tech blog

                  1. これはなに こんにちは、リファクタリング大好きなミノ駆動です。2023年7月より株式会社スタメンにジョインしました。 この記事は、今後スタメンにおいてサービスの技術的負債を解消する設計戦略についてまとめたものです。 2. 背景、課題 株式会社スタメンは2016年創業。主要サービスであるTUNAG(ツナグ)は、企業のエンゲージメントの構築、つまりお互いを知って理解し、信頼し合う組織を作るための社内コミュニケーションを活性化させるプロダクトです。TUNAGのバックエンドはRuby on Railsで開発され、ローンチから7年をむかえつつあります。 これまでTUNAGは、プロダクトをいかに伸ばすかに注力してきた一方、内部品質や開発効率など「開発者体験」に関する課題が後手に回っていました。本来プロダクトチームはユーザーにとっての本質的な価値にのみフォーカスできる状況が理想ですし、開発者体験が

                    スタメンの技術的負債解消戦略 - stmn tech blog
                  • 【福島原発】 東電 「実は震災前から1号機の燃料棒70本が破損していた」 : 痛いニュース(ノ∀`)

                    【福島原発】 東電 「実は震災前から1号機の燃料棒70本が破損していた」 1 名前: フランケンシュタイナー(新疆ウイグル自治区):2013/11/16(土) 18:26:05.59 ID:DUu/N0zNP 福島第1原発1号機 燃料震災前破損70体 全体の4分の1 福島第1原発1号機の使用済み燃料プール内にある燃料棒70体が東日本大震災前から損傷していたことが15日、分かった。プール内に保管されている使用済み燃料292体の4分の1に相当する。損傷した燃料棒を取り出す技術は確立しておらず、2017年にも始まる1号機の燃料取り出し計画や廃炉作業への影響が懸念される。 東京電力は、15日まで事実関係を公表してこなかった。同社は「国への報告は随時してきた」と説明している。 東電によると70体の燃料棒は、小さな穴が空いて放射性物質が漏れ出すなどトラブルが 相次いだため、原子炉から取り出してプール内

                      【福島原発】 東電 「実は震災前から1号機の燃料棒70本が破損していた」 : 痛いニュース(ノ∀`)
                    • 例え話だけで解決に向かうのか? - 技術的負債論 - MassKaneko.Out

                      はじめに 以下のエントリがHOTになっています。公開4日後の現在で949はてブです。 技術的負債という(非エンジニアにとっての)隠しパラメータが生産性100倍を起こす - mizchi's blog 私は企業で Software Engineer in Test としてソフトウェアの保守性に責任を持つポジションに就いている身ですのでこのテーマに関心があるのはよいことだとは思います。技術的負債そのものについてのエントリは過去にも沢山あるようですが、mizchi さんのエントリは誤解を恐れないシンプルで断定的な書き方ですので多くの人に刺さったのでしょう。 ただ、技術的負債(technical debt)というメタファーが万人に誤解無く伝わるのかは疑問です。時間を借りているのかはピンと来ませんし、財務的負債と異なり返済の義務はありません。また、エンドユーザーに提供する価値よりも負債にフォーカスし

                        例え話だけで解決に向かうのか? - 技術的負債論 - MassKaneko.Out
                      • エンジニアtype 技術者のキャリアを考えるWebマガジン - 転職@type

                        エンジニアtypeは、各種エンジニアをはじめ「創る人たち」のキャリア形成に役立つ情報を発信する『@type』のコンテンツです。

                          エンジニアtype 技術者のキャリアを考えるWebマガジン - 転職@type
                        • DRY(don't repeat yourself)するかしないか、その判断基準について - kazuhoのメモ置き場

                          「過剰なDRYが技術的負債を生む」みたいな内容の記事を書きたいが、うまく言語化できない。「過剰な食事制限が健康を損なう」程度の内容に成り下がりそうだけど、そんなんじゃないんだよ… @methane 実装におけるDRYみたいなものを考えていて、そうすると前者のDRYというのがどこに位置づけられるかはわからないんですが、とにかく暗黙知みたいなものを過剰に増やすDRYは良くないよね、というような話なんです という@moriyoshitさんのツイート(1, 2)を見かけたので、僕の考え方をコメント。moriyoshitさんの考えたい問題とは、ずれてるかも。 DRY化の功罪とは何か? 僕の理解で言うと、共通するコード片をDRY化することには以下の変化をもたらす。 循環的複雑度は変化しない コールグラフは複雑化する モジュールをまたぐDRY化を行うと、モジュール間の依存関係も複雑化する*1 関数内の複

                            DRY(don't repeat yourself)するかしないか、その判断基準について - kazuhoのメモ置き場
                          • 開発スピードと技術的負債 - oinume journal

                            よくある「開発スピードを優先させるか技術的負債をなるべく発生させないようにするか」という議論、ケースバイケースだとは思うけど、ことプロダクトの立ち上げ段階では、悩んだら「開発スピード」を優先させるようにするべきだと自分は思ってる。 理由は 市場は待ってくれないから。どんなにいいプロダクトでもユーザーに使われなくては意味がないのと、プロダクトを取り巻く外部の環境(競合プロダクトや市場でのニーズ)は自分ではコントロールできないものなのに対して、技術的負債については適切に管理されていればコントロールしながら返済できるから。もちろんバランスも重要だとは思うので、どんな技術的負債も生み出していいかと言われるとそうではないけど。 というわけで自分は「ああこれクソコードだけど機能は満たしてるからそのままリリースしたいなぁ」というのはだいたいクソコードのままリリースしています。(こうやって免罪符を作ってい

                              開発スピードと技術的負債 - oinume journal
                            • 技術的負債を "なるべく" 作らないためのコツ / Organization Performance Tips

                              組織パフォーマンスを改善しよう! http://kakakakakku.hatenablog.com/entry/2017/06/24/004845

                                技術的負債を "なるべく" 作らないためのコツ / Organization Performance Tips
                              • 技術的負債の中身|wadap

                                これはエンジニアにとっては比較的当たり前の内容について書いている。そのためどちらかというと非エンジニア向けの内容として書こうと思う。 エンジニアが開発しづらいと感じたり開発速度を妨げる要因としてあげられるのが技術的負債だ。この単語自体はエンジニア意外にも知られる言葉となりつつあるため、わりと幅広い層の人たちが認識している単語だとは思う。実施に私自身が外部から関わっている会社でもよく聞かれる言葉ではあるが、単純に負債としてまとめていること自体が問題なケースも多く見かることが多い。その分類自体が問題の本質になっていることもあるため、自分の観測可能な範囲の情報をもとに書いてみようと思う。 技術的負債とは何か?wikipediaには以下のように書かれている。 技術的負債(英: Technical debt)とは、行き当たりばったりなソフトウェアアーキテクチャと、余裕のないソフトウェア開発が引き起こ

                                  技術的負債の中身|wadap
                                • クソコード、あるいは技術的負債 - 時計を壊せ

                                  クソコードについてここ数日で考えたことを書いてみる。 技術的負債まわりのえらいひとたちの議論を眺めてて、技術的負債って言うとなんかプロっぽいけど、クソコードって言ったほうが示したいモノを素直に表してるし分かりやすいきがしてきた。 クソコードを書くなとは思わないけど、クソコードをいつまでも放置するのはやめようって思う。 クソコードは次なるクソコードを生み出すし、バグを隠蔽するし、メンテナンスコスト増大の悪循環のキッカケになるし、新人の教育上良くないので無くて済むならもちろんないほうがいい。 ただ、ギークな人たちを除いて、さらっと60点*1のコードなんて書けない。僕を含め大多数のエンジニアは自分自身が書いたクソコードをリファクタリングして60点以上のコードを目指すための時間が必要になる。 そのうえ、そういうコードを書いてもだいたい時間経過に伴って事情が変わって、60点のコードの挙動を壊さないよ

                                    クソコード、あるいは技術的負債 - 時計を壊せ
                                  • 人のコードを引き継ぐときに一番困るのは「使われていないコード」 | mah365

                                    プログラミングを生業としていると、人のコードを引き継いで開発するなんてこともままある訳ですが、そういうときに一番困るのは「使われていないコード」だなー、としみじみ感じます。 使われていないコードがもたらす弊害 特に動的言語で書かれたコードというのは前触れ無く呼び出される可能性があるため、本当に利用されていないのかどうなのか、きっちりと調べあげるのは困難なケースがあります。例えばrubyであれば、method_missingでキャッチしてsendで動的に処理先を振り分けるなんてことをしていると、単純にgrepして利用状況を見るだけでは不十分な場合があります。 そういう意味では「使われていないコード」というよりは、「使われているのか使われていないのかはっきり分からないコード」という方が適切な表現かも知れません。 そういった「はっきりと判断のつかないコード」がある状態だと何が問題なのかと言うと、

                                      人のコードを引き継ぐときに一番困るのは「使われていないコード」 | mah365
                                    • ドワンゴ吉村総一郎氏「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」@デブサミ2014 2日目 - tchikuba's blog

                                      引き続きデブサミ2014。 ドワンゴ吉村総一郎氏によるセッション「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」を聞きました。 いろんなところで良く聞くPHPレガシーコードにどう立ち向かったのか聞いてみたかったです。 案の定というか、想像以上のPHPレガシーコードっぷりにちょっと感動すらしましたがw profile 株式会社ドワンゴ 吉村総一郎氏 ウォーターフォール開発とアジャイル開発の両方のマネージャー経験 スライド ニコニコ生放送を書き直す理由 コードの技術的負債がやばい PHPで書かれている: 300万行! facebookで1000万行と言われているそう 1万行のクラスや4000行のメソッド 循環的複雑度600超のメソッドががが あまりに複雑過ぎて龍の巣と言われている(笑) まさに壊れかけのジェンガのよう 企画やスケジュールを優

                                        ドワンゴ吉村総一郎氏「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」@デブサミ2014 2日目 - tchikuba's blog
                                      • 技術的負債が生まれる背景を理解して,アーリーからレイター向けの根本的なアプローチを考える

                                        ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design

                                          技術的負債が生まれる背景を理解して,アーリーからレイター向けの根本的なアプローチを考える
                                        • 組織の技術的負債の返済はなぜ進まないのか? “工数確保の合意”に関わる意思決定層と現場視点の違い

                                          クラウドネイティブ技術を日本にも浸透させることを目的に開催された「CLOUDNATIVE DAYS Spring 2021 ONLINE」。ここで原氏が「技術的負債とステークホルダーと説明責任と」をテーマに登壇。まずは、技術的負債とは何か、組織における技術的負債返済までの構図について紹介します。 組織と個人それぞれの技術的負債の解消方法 原トリ氏(以下、原):こんにちは! 今日はこんな話をします。(スライドを見て)なんだか面倒くさそうなキーワードばかり並んでいますね。どれも避けて通りたくなるものばかりです。 はじめまして。こんにちは。Tori、あるいは原トリと言います。ふだんはAWSという会社で、AWSのコンテナサービスをよりよいものにするために、いろいろな仕事をしています。 今日はタイトルのとおり、こんな話をしていきます。まずは「技術的負債って何でしたっけ?」という話を軽く整理していこう

                                            組織の技術的負債の返済はなぜ進まないのか? “工数確保の合意”に関わる意思決定層と現場視点の違い
                                          • 技術的負債を管理する

                                            日付2013-5-18(Sat) 書いた人おかざわ (id:yujiorama) 書いた理由技術的負債はいつ読んでも面白いんだけどそろそろ普通に向き合いたくなったので。 技術的負債を管理する 技術的負債は悪いものとみなされている。避けるべきものであり、できるだけ早く支払うべきものなのだ。 あなたもそう思うだろうか?私たちはそうは思わない。最初に技術的負債と財政的負債を比較して、戦略の設計とステークホルダーにおける類似点について驚くべき点があることを説明する。それからコード中の技術的負債を識別するための様々な可能性について一覧にする。それらはきっとあなたが対処しなければならないものだ。 最後にプロジェクトが技術的負債を返済するために取りうるいろんなやり方について述べる。あなたが返済したほうがよいのか、負債を変換するほうがよいのか、ただ注意を払うだけでよいのかを考える時にきっと役に立つだろう。

                                            • 20%ルールに頼らない: 技術的負債を解消する 組織的な取り組み / Developers Summit 2023 Summer

                                              2023.07.27に開催されたDevelopers Summit 2023夏の登壇資料です 登壇者:湯前 慶大(VP of Engineering)

                                                20%ルールに頼らない: 技術的負債を解消する 組織的な取り組み / Developers Summit 2023 Summer
                                              • 技術的負債 - Qiita

                                                この文章の目的 開発者とステークホルダーが「技術的負債」という言葉で正しくコミュニケーションをとれるようになることをゴールとする。技術的負債については色々な所で語られるが、実際の現場では技術的負債が管理されてない事が多いのでは無いだろうか。この場で技術的負債という言葉についての知見をまとめ、たたき台とする事で、ゴールに到達する第一歩としたい。 対象読者 開発者 責任者/見積もりに対して決定権を持つ人 技術的負債とは何か 技術的負債とは、コード・設計の状態を表す見積もりのための言葉である。継続的に開発を行う上で理想状態から離れたものを負債という比喩で表していている。 たとえば、省略可能なプロセスを飛ばす事で開発の高速化を行う事があり、初期開発を高速に行う開発者の中には意識的・無意識的問わずこれを行っている事例が多々存在する。このようにして抱えられた技術的負債は長期的に見た場合に問題を引き起こ

                                                  技術的負債 - Qiita
                                                • 「技術的負債」をコントロールする定量評価手法への期待

                                                  「「技術的負債」を問いなおす」というタイトルでJAWS DAYS 2014で話してきた #jawsdays - delirious thoughtsにて、追記でコメントいただけたので、外野として好き放題言わせてください。すばらしいスライドありがとうございます&いつもすみません。 僕が興味がもつとすると、それは「技術的負債」の定量評価手法についてです。 なぜ、そういう前提を置くかと言うと、それは、たとえばKrutchenによる「技術的負債」の定性評価は、とてもわかりやすいものの、技術を取捨選択するツールとしては使えないからです。 スライドでは、技術評価における将来の不確定性を象徴する問題としてSSDの普及前夜にシャーディングをがんばって実装してしまう例をご紹介いただきましたが、実際、そのような不確実性を織り込んだ正しい決定を我々が日々のエンジニアリングで下すことができているのか疑問に感じるこ

                                                  • 「0→1」フェーズにおける技術的負債との向き合い方 - jmblog.jp

                                                    以前から「スタートアップのなかで『技術的負債』というものをどう扱うべきなのか」というテーマに対して関心が高かったのだが、今年の6月から「0→1」の新規事業に関わるようになって、自分の中でなんとなく考えがまとまりそうなので、雑に吐き出してみる。最近、社内でも「技術的負債」が話題にあがることが多く、その中で同僚のエンジニアからあがった意見も参考にしている。 そもそも技術的負債とは @t_wada さんの次の記事に答えが書いてある。 【翻訳】技術的負債という概念の生みの親 Ward Cunningham 自身による説明 - t-wada のブログ 個人的には次のように解釈した。 「手を抜いた雑なコード」は技術的負債とは呼ばない。それはただの低品質なコードである 仮説検証や経験からさまざまな学びを得ることは正義 そこで得た「学び」と「現状のソフトウェア」とのギャップを「技術的負債」と呼ぶ このよう

                                                      「0→1」フェーズにおける技術的負債との向き合い方 - jmblog.jp
                                                    • リファクタリングを文化にする 〜組織が技術的負債と向き合うワークショップ〜 - MonotaRO Tech Blog

                                                      皆さんこんにちは。 CTO-Office の香川とEC開発-Bグループの竹原です。 11/28に 和田卓人氏(id:t-wada)を講師としてお招きしてテストとリファクタリングのためのワークショップを開催いたしました。 技術者正社員のうちプログラミングをすることの多いメンバー全体の約1/3にあたる総勢53名が参加しての開催となりました。 本記事ではまず第一弾としてワークショップの概要や目的、全体の流れについて簡単にご紹介いたします。 また第二弾(2024年1月公開予定)では、運営とワークショップの問題の作問に関わったメンバーにそこでの学びや実践について紹介いただきます。 開催に至った経緯とMonotaRO DOJO MonotaRO DOJO とは 社内の課題とワークショップの目的 開催経緯 ワークショップの全体像と開催までの段取り ワークショップの全体像 概要 タイムテーブル 開催までの

                                                        リファクタリングを文化にする 〜組織が技術的負債と向き合うワークショップ〜 - MonotaRO Tech Blog
                                                      • 脱レガシーフロントエンドのために知っておいたほうがいいこと

                                                        2020/1/19 Kanazawa.js meetup#01

                                                          脱レガシーフロントエンドのために知っておいたほうがいいこと
                                                        • クラウドワークス勉強会「レガシーコード改善の戦略と戦術」(後篇:戦術&懇親会) - CrowdWorks Engineer Blog

                                                          こんにちは!開発の所(@ctokoro_me)です。 クラウドワークス勉強会「レガシーコード改善の戦略と戦術」前篇(戦略)に続き、後篇(戦術&懇親会)をお送りします。 「レガシーコード改善の戦略と戦術」 講師:和田 卓人(@t_wada) タワーズ・クエスト株式会社 取締役社長、プログラマ、テスト駆動開発者。 学生時代にソフトウェア工学を学び、オブジェクト指向分析/設計に傾倒。 その後様々な縁に導かれソフトウェアパターンやXP(eXtremeProgramming)を実践する人たちと出会い、後のテスト駆動開発の誕生を知る。 テスト駆動開発によって「完璧主義の呪い(完璧な設計を得るまではコードを書けないし良いシステムも出来ないという強迫観念)」から解かれてからは、文章や講演、ハンズオンイベント等を通じてテスト駆動開発の啓蒙に努めている。 今日もグリーンバンド(テスト駆動開発者の証)を左手に着

                                                            クラウドワークス勉強会「レガシーコード改善の戦略と戦術」(後篇:戦術&懇親会) - CrowdWorks Engineer Blog
                                                          • 1000万行のコードと向き合う3つのステップ――富士ゼロックスはリファクタリングにどう取り組んでいるのか

                                                            1000万行のコードと向き合う3つのステップ――富士ゼロックスはリファクタリングにどう取り組んでいるのか(1/2 ページ) 大企業では実施が難しいと思われるソフトウエアのリファクタリング。富士ゼロックスでは、どのように取り組んでいるのか。リファクタリングの実施を決断した理由、課題とその対応方針、成果、今後の展望などについて聞いた。 バグの有無ではなく保守性を品質管理の指標にすべき 1962年設立の富士ゼロックスは、主に複合機やオフィスプリンターなどに内蔵されるコントローラーソフトウエアの開発を行っている。コントローラーソフトウエアは、スキャナーで撮り込んだ画像の加工や印刷、ネットワーク経由の通信、セキュリティなどの各種機能を、操作パネルのユーザーインターフェースを介して制御しており、昨今の多機能なオフィス機器の要といえる。 一方で、多機能になったことでコードは大規模かつ複雑化の一途をたどっ

                                                              1000万行のコードと向き合う3つのステップ――富士ゼロックスはリファクタリングにどう取り組んでいるのか
                                                            • サービスをつくりなおす決断をするとき

                                                              サーバーレスなPCI DSS対応クレジットカード決済基盤システムを運用しながら、みんなでわいわいDIYの精神で、新しいモバイル決済サービス6gramを作っ...Fumitoshi Taoka

                                                                サービスをつくりなおす決断をするとき
                                                              • 第2章 開発環境の改善~技術的負債の返済と、レガシーコードの仕様化テスト | gihyo.jp

                                                                技術的負債と開発環境の改善 本章では、サービスの成長とともに大きくなる「技術的負債」に着目し、筆者が勤務するpaperboy&co.(以下、ペパボ)で取り組んでいる開発環境の技術的負債を返済していく具体的な方法について紹介します。 技術的負債とは 技術的負債は、英語でTechnical Deptと呼ばれます。技術的負債の「概念」が最初に登場したのはWikiの開発者として知られるWard Cunninghamが1992年に発表した「The WyCash Portfolio Management System」という報文の中です。そこから年を経ること17年後の2009年に、アジャイルソフトウェア開発宣言などで知られるMartin Fowlerによって「技術的負債」という名前が付けられました。 Webサービス開発での技術的負債の例 技術的負債は、サービスを構成するソースコードそのものであるアプリ

                                                                  第2章 開発環境の改善~技術的負債の返済と、レガシーコードの仕様化テスト | gihyo.jp
                                                                • 技術的負債の把握と改善を促すために - mixi engineer blog

                                                                  こんにちは. 先日水道を止められて水のありがたみを再確認したgoccyこと五嶋@たんぽぽグループです. 今回は, 先日q_zouさんから紹介のあった技術的負債を減らす取り組みの一環で, 僕が開発したビジュアライザについてご紹介させて頂きます. はじめに 弊社では主な開発言語としてPerlを採用しており, そのソースコード量は数十万行単位に上ります. 自社で開発したライブラリ群はプロジェクトルート下のlib/Mixi/配下に設置されており, 更にその下でサービスや用途毎にNamespaceが分かれています(lib/Mixi/APIやlib/Mixi/Photo, lib/Mixi/Voiceなど). ※以降, 文章中のNamespaceという表現は, これら(lib/Mixi/APIなど)を指すものとします. 本来であればNamespace単位で疎結合化されているべきですが, なかなかうまく

                                                                    技術的負債の把握と改善を促すために - mixi engineer blog
                                                                  • Scala採用を決めて3年半たった、CTOの振り返り。アーキテクチャ刷新を成し遂げるために必要なこと - Chatwork Creator's Note

                                                                    メリークリスマス!ChatWork Advent Calendarもついにラストとなりました。 本日の記事はChatWork CTOの山本が担当です。 ChatWorkでは約3年半前に、PHPの独自フレームワークでつくられた大規模システムを、Scalaを使ってゼロベースでつくりなおすという決断をしました。 当時の記事:チャットワークの新しい開発言語とフレームワークを決める開発合宿を開催!その全貌を丸公開します。 その決断をした時に在籍していたScalaエンジニアは0人。まずブログで宣言してからスタートするという、なんとも無謀なプロジェクト進行ではあったのですが、当時の自分たちとしてはマジメも大マジメ、ここでなんとかしないとサービスが将来的に死ぬと背水の陣で挑んだプロジェクトでした。 あれから3年半。途中で大きく開発が頓挫しチームが絶望に包まれた時もありましたが、どうにかこうにか立て直しに成

                                                                      Scala採用を決めて3年半たった、CTOの振り返り。アーキテクチャ刷新を成し遂げるために必要なこと - Chatwork Creator's Note
                                                                    • ソフトウェアの負債を扱う

                                                                      Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

                                                                        ソフトウェアの負債を扱う
                                                                      • サイボウズWebフロントエンド脱レガシーの今までとこれから

                                                                        UIT meetup vol.12『リニューアル戦略発表会(一部から全部まで)』 - connpass https://uit.connpass.com/event/201312/

                                                                          サイボウズWebフロントエンド脱レガシーの今までとこれから
                                                                        • 技術的負債の上手な積み上げ方・返し方

                                                                          2019年6月20日、TECH PLAY SHIBUYAにて「CTOが考える、チームで向き合う技術的負債との付き合い方」が開催されました。メドピア・SansanのCTOが、自社における技術的負債といかにして向き合ってきたか、その経緯と取り組みを語りました。(※当初登壇予定だったアイスタイルCTO竹澤氏は体調不良により欠席)。公開Q&Aには、メドピア株式会社執行役員のCTO福村彰展氏と、Sansan株式会社CTOの藤倉成太氏が登場。会場からの質問に回答します。 技術的負債を返す重要性をどう説明するか 司会者:お待たせしました。Q&Aなんですけど、最初に、みなさん申し込みいただいたときに質問をいくつかいただいていたと思うので、そのなかで質問が多かったものを私のほうで5つぐらい取り上げさせていただいております。そのあと、会場のみなさんから質問を募集して、ディスカッションのようなかたちで進められれ

                                                                            技術的負債の上手な積み上げ方・返し方
                                                                          • NewsPicks を支える技術と怖い話

                                                                            えびスタ!#1 の発表資料です

                                                                              NewsPicks を支える技術と怖い話
                                                                            • 【後編】開発内製化の5年の軌跡。「消耗戦の悪魔のループ」をどう乗り越えたのか - エス・エム・エス エンジニア テックブログ

                                                                              エンジニア組織の内製化を進めるには、事業構造、事業戦略、企業文化、人材などの所与の条件を踏まえて、最適な方法を実践することが求められる非常に難易度の高い取り組みです。エス・エム・エスは2015年よりエンジニア組織の内製化に取り組んできました。そのプロセスとそこで得られた反省や学びを技術責任者の田辺に聞いたインタビューの後編です。 tech.bm-sms.co.jp 前編では、2015年の入社から1年半くらいの間にやったことを話しました。リサーチから始めて会社の特性を理解しにいくということと、小さく始めて検証をするというスタートをきり、小さな新規サービスの立ち上げに上流からかかわって、アジャイルな開発がうまくいったということでした。 エス・エム・エスは当時40近い数のサービスを展開していたのですが、最初の1年半で内製化を進める主要なサービスと注力をせず終了するサービスや CMS 化で開発能力

                                                                                【後編】開発内製化の5年の軌跡。「消耗戦の悪魔のループ」をどう乗り越えたのか - エス・エム・エス エンジニア テックブログ
                                                                              • アジャイル・フルーエンシーモデルでアジャイルに技術的負債対策を組み込む

                                                                                🐳この記事は「ログラスサマーアドベントカレンダー2023」の28日目の記事です。 次はデザイナーチームの高瀬さんです。 こんにちは、ログラスの松岡です。 ログラスのプロダクトチームでは、ドメイン駆動設計とアジャイルプラクティス(スクラム、エクストリームプログラミング等)を併用していました。 その中で、「アジャイル・フルーエンシーモデル」(以下、省略時には「フルーエンシーモデル」と表記)という概念が多くのプラクティスを取りまとめ、全体感を把握してチームの成長余地を考えるのに役立つものなので、この記事で紹介したいと思います。 アジャイル・フルーエンシーモデルの面白いポイント 面白いポイントはいくつもあるのですが、この記事で紹介するポイントは二つあります。 ポイント①: 技術的負債への対策が組み込まれている 一つは、「技術的卓越性によってアジャイルの持続可能性(サステナビリティ)を高めるという

                                                                                  アジャイル・フルーエンシーモデルでアジャイルに技術的負債対策を組み込む
                                                                                • オーバーエンジニアリングと技術的負債を見極める––SmartHRが明かす、成長の軌跡と技術選定 - Part2

                                                                                  SmartHRのインフラの変遷 内藤研介氏:開発言語とコミュニティへの貢献に続きまして、ここからはインフラとか開発環境について、お金と技術的選択を軸にお話ししたいと思っております。 一般的に、私たちのようなB to Bサービスは、B to Cサービスに比べるとユーザー数は少ない傾向にあります。その中でもSmartHRは、主に社内の管理者が使うサービスなので、サービス自体の特性としてインフラの投資がめちゃくちゃ必要なものでもないです。 こちらの数字は、2015年11月に本番リリースした際のサーバ費用です。ステージング環境も含めた費用ですね。非常に経済的なアーキテクチャだったわけです。料金のうちのほとんどはAWSの、RDSというデータベースのサービスです。あとはElastiCacheというキャッシュのサービスとか、そういった部分が占めていました。 詳しい方が聞かれるとちょっと驚かれるかと思うん

                                                                                    オーバーエンジニアリングと技術的負債を見極める––SmartHRが明かす、成長の軌跡と技術選定 - Part2