タグ

リファクタリングに関するhiroomiのブックマーク (54)

  • MISRA-C の思ひ出(または「守られないルールはルール自体に問題がある」)

    オンライン開催お疲れさまでした 2021-04-21 に開催された Go Conference 2021 Spring は初のオンラインだったそうで,週末の土曜日ということもあって,出不精で人見知りな私でも気軽に参加できたのがありがたかった。 (リアルタイム視聴も含めて)動画や音声のコンテンツはまとまった時間で拘束されてしまうのであまり好きではないのだが,たまにはこういうものに参加するのもよろしかろう。 そのなかのひとつである Go をセキュアに書き進めるための「ガードレール」を整備しよう / Let’s Build Security Guardrails For Your Go Programs! - Speaker Deck は興味深く視聴させてもらった。 特に go-ruleguard は面白そうだ。 個人でも使う機会があるかもしれない。 ちなみに,スライドにも書かれているが, go

    MISRA-C の思ひ出(または「守られないルールはルール自体に問題がある」)
  • 巨大な(あるいは、汚くて邪悪な)コードの泳ぎ方 - mizchi's blog

    ロンドンへの飛行機(11時間)で暇だったから書いた文章。 自分でゼロからすべてのコードを書けるときはテストファーストでいいけど、アンドキュメントな実験的なライブラリを利用する際や、巨大なプロジェクトの一部としてコードを書く際は、テストファーストよりもとにかくコードを書きまくって挙動の変化を確かめるほうが有用な時がある。 まあ多分どっかでこういうのはハウツー化してあるんだろうけど、自分ルールが固まってきたので、メモっておく。 目的を設定する トップダウンに読むには、コスパが悪いことが多い。とにかく「アレする」「コレする」という目的を定義して、そのためにその周辺領域からボトムアップに読むことにしよう。 エンドポイントを追う 巨大なプロジェクトに放り込まれた最初の段階では、エンジニア当に無力だ。 最初にやることは、自分が処理を挟むべき位置を見つけることだろう。 まずはファイル名や関数名を読ん

    巨大な(あるいは、汚くて邪悪な)コードの泳ぎ方 - mizchi's blog
    hiroomi
    hiroomi 2013/11/05
    “関数単位でテストで保護する。 他人に壊されては困る、という意図を押し込む。それはきっと自分のためにもなる。”
  • 「技術的負債」とは何か。原典とその対応策を探る

    負債とは要するに借金のことですが、システム開発においても技術的な借金、つまり「技術的負債」(Technical debt)がある、という表現がしばしば使われます。お金の借金をすると利子を払い続けなければならないのと同じように、技術的負債を抱えると、そのツケを払い続けなければならなくなる、という比喩です。 「技術的負債」という表現は、WikiWikiの発明者で著名なプログラマとして知られるウォード・カニンガム氏が1992年に使ったのが原典とされています。しばしば目にするこの「技術的負債」というのはどういうものなのでしょうか? 調べてみました。 カニンガム氏とファウラー氏による「技術的負債」 カニンガム氏が「技術的負債」という表現をはじめて使ったのは、1992年に行われたACM主催のイベント「OOPSLA '92 」(Object-Oriented Programming, Systems,

    「技術的負債」とは何か。原典とその対応策を探る
    hiroomi
    hiroomi 2013/07/29
    「やっつけ作業を選択した結果として、追加作業のような形でいずれ表れることになる。」/「リファクタリングするか、置き換える。」リファクタリングでも置き換えるにしても切り離せないか。
  • IAEA調査団にハッキリ駄目出しされた東京電力の危機管理能力〜「東電には不具合を迅速に突き止める能力とそれに対応する能力がない」 - 木走日記

    東京電力福島第一原子力発電所の廃炉に向けた取り組みを調べていた国際原子力機関(IAEA)の調査団(団長はファン・カルロス・レンティッホ核燃料サイクル・廃棄物技術部長)は22日、増え続ける汚染水の管理が「最大の難題」として、より信頼性の高いシステムを採用するよう求めた報告書の概要版を日政府に提出いたしました。 さっそく各メディアが一斉にこれを報道しております。 福島第一「最大の難題」は汚染水管理…IAEA http://www.yomiuri.co.jp/science/news/20130422-OYT1T01165.htm 福島第1原発汚染水問題 IAEA調査団、報告書案を政府に提出 http://headlines.yahoo.co.jp/videonews/fnn?a=20130423-00000630-fnn-bus_all 汚染水問題「戦略見直すべきだ」 IAEA調査団長指摘

    IAEA調査団にハッキリ駄目出しされた東京電力の危機管理能力〜「東電には不具合を迅速に突き止める能力とそれに対応する能力がない」 - 木走日記
    hiroomi
    hiroomi 2013/07/09
    「バスクリンではなく、土木現場で漏水チェックに用いている、漏水調査用生分解性蛍光トレーサー染料を適切に」判断する人に届いてないのと、後手後手で優先順位がそれどころじゃなさそ。
  • Mikadoメソッド - レガシーソフトウェアのリファクタリング手法

    Lily Maraと信頼性の高いKafkaデータ処理パイプラインを構築する 今日の回では、Thomas Betts氏がカリフォルニア州サンマテオにあるOneSignalのエンジニアリングマネージャー、Lily Mara氏に話を聞いた。 彼女は、OneSignalの他のエンジニアリングチームが使用する社内サービスを担当するインフラサービスチームを管理している。信頼性の高いKafkaデータ処理パイプラインの構築方法について議論する。OneSignalは、RustのKafka...

    Mikadoメソッド - レガシーソフトウェアのリファクタリング手法
  • 「壊れてねぇなら直すな」という発想はRailsにはないのかも - QA@IT公式ブログ

    QA@ITRuby on Railsで構築・運用しています。で、そろそろRailsの新メジャーバージョン、Rails4のリリースが近づいているようです(と、聞くようになってずいぶん経ちますが)。いろいろと新機能がありますが、GitHubを見ていて1つ驚いたことがあります。Ruby on Railsの生みの親のDHH(David Heinemeier Hanssonさん)が、メジャーバージョンアップとなるRails4に向けて行ったこのコミットに唐突感があったのです。よく使われるAPIの名前を、こんなに簡単に変えちゃうんだという軽い驚きです。 「壊れてねぇなら直すな」(If it ain’t broken, don’t fix it.)という有名な言葉があります。米国のジミー・カーター大統領時代の行政管理予算庁長官だったトーマス・バートラム・ランス氏の1977年の発言が人口に膾炙したもののよ

  • nabokov7; rehash : ライブドアという会社の話をしよう - Q12. 次世代ブログサービス(になるはずだった) nowaの撤退をどうみた?(下)

    March 10, 201213:50 カテゴリライブドアという会社の話をしよう ライブドアという会社の話をしよう - Q12. 次世代ブログサービス(になるはずだった) nowaの撤退をどうみた?(下) さて、前回からの続き。 社運をかけて招集された nowa の開発チームは、プログラマ、ディレクター、デザイナー、マークアッパ、どれをとっても精鋭チームというべき豪華な面子が勢揃いしていた。 一方の「旧ブログ」チームは、それまで一人でブログを支えて続けていたベテランのエンジニアが辞め、あとを僕ともう一人とで継いだものの、その片方の人も別会社に移って行ってしまって、エンジニアは僕一人だけになっていた。マネタイズのプランもなくただの金い虫だった「旧ブログ」には大した長期戦略も与えられず、広告営業案件の狩り場と化して、宣伝用のブログパーツばかり作らされていた。 基的に旧ブログチームの役割はデ

    nabokov7; rehash : ライブドアという会社の話をしよう - Q12. 次世代ブログサービス(になるはずだった) nowaの撤退をどうみた?(下)
    hiroomi
    hiroomi 2013/04/08
    「作り直すうちに、結局過去と同じような道を辿り、過去と似たような問題が発生し、時間とコストだけかかってだいたい元と同じ程度にしがらみを抱えたコードが完成する。」
  • はてなは「絶対すべきでないこと」をやらかしたのか?:後記 - YAMDAS現更新履歴

    はてなは「絶対すべきでないこと」をやらかしたのか?は、サイトに5年近くぶりに公開する技術コラムだったのでそれなりに気合いを入れて書いた文章だったが、まさか自分が過去書いたり訳したどの文章も超えるはてなブックマークを1日足らずで集めたのには驚いた。「最近のはてなの体たらくへの失望感に名前を付けたい」というだけの文章という誉め言葉をいただいたのはともかく(皮肉でなく、当にそれだけだったら素晴らしいと思うので)、サッカーのフロントにあてはめた文章まで出るとは思わなかった。情報を加える後記を少し書かせてもらう次第である。 まずその前に、はてなブログについてチーフエンジニア兼ディレクターの大西康裕さん(id:onishi)が行ったプレゼン資料「新はてなダイアリーの裏側」が公開されていることを id:laiso さんにブックマークコメントで教えていただいた。はてなブログについて論じる上で、こうした

    はてなは「絶対すべきでないこと」をやらかしたのか?:後記 - YAMDAS現更新履歴
    hiroomi
    hiroomi 2013/04/08
    作り直しよりモジュール化かな。それで組合せで複数サービス展開でもよかったのになはモチ。
  • [はてブ][メモ]問題点

    [はてブ]2006年12/31までに指摘されたはてブに関する問題まとめ システムに関する問題 はてブの機能が複雑化すると情報鮮度が低下する可能性がある問題はてブは全てを公開する・非公開するしか選べない問題 個別の公開と非公開 - naoyaの日記 - naoyaグループ とトラックバック SBMサービスの意外な伏兵?gooブックマークを試す : WebとPCのメモ帳はてブマニュアル不親切問題 はてなの最大の矛盾 - みやきち日記はてブは他サービスへ乗り換えできない問題はてブ柳生問題(プライベートブックマークのタグが一覧に現れる問題) はてなブックマークの「プライベートタグ」問題 - はてなダイアリーダイアリー - [?dd]http://hatena.g.hatena.ne.jp/hatenabookmark/20060727#c1154067498ささやきが漏れ聞こえるとき〜はてブのプラ

    [はてブ][メモ]問題点
    hiroomi
    hiroomi 2013/02/14
    今読んでも解消してるかな?と思えるところが何点かあるなと。
  • デザインパターンよりも、まずリファクタリングを学んだほうがいい - モジログ

    ウィキペディア - デザインパターン (ソフトウェア) http://ja.wikipedia.org/wiki/%E3%83%87 <ソフトウェア開発におけるデザインパターン(型紙(かたがみ)または設計パターン、英: design pattern)とは、過去のソフトウェア設計者が発見し編み出した設計ノウハウを蓄積し、名前をつけ、再利用しやすいように特定の規約に従ってカタログ化したものである>。 ウィキペディア - リファクタリング http://ja.wikipedia.org/wiki/%E3%83%AA.. <リファクタリング (refactoring) とはコンピュータプログラミングにおいて、プログラムの外部から見た動作を変えずにソースコードの内部構造を整理すること。いくつかのリファクタリング手法の総称としても使われる。十分に確立された技術とはいえず、「リファクタリング」の語にも厳

    hiroomi
    hiroomi 2013/02/11
    複雑な環境からパターン化。視野が問われる(いろいろな見方があるしね)と。※時間があればの話だった。
  • 過剰チェックの悪循環からいい加減脱出しませんか、あるいは思考停止の罠:プロジェクトマジック:オルタナティブ・ブログ

    ★1つミスが起こると1つチェックリストが作られる SEとしてシステム開発にいそしんでいた頃、何かミスが起こると対策会議が必ず開かれていた。マジメな会社だったので。ミスの種類は色々で、番システムを止めてしまったとか、計算が間違ってしまったので数字の修正が大変だったとか。 対策会議なので、毎回なんらかの対策を講じなければならない。課題への対策を考えだすのは来、とてもクリエイティブな仕事である。だって、誰もが思いつくような対策があるならば、とっくに実行されているはずだから。 でもキラキラしたひらめきが毎回あるわけはなく、大抵何らかのチェックリストを作ろう、ということが決まって対策会議がお開きになった。 不幸な誰かにそれを作る仕事が押し付けられる。 ★過剰チェック施策の悪循環 僕が言うまでもなく、チェックリストは非常に有効なツールである。僕らの会社ではプロジェクトの方法論を大事にしているが、方

    過剰チェックの悪循環からいい加減脱出しませんか、あるいは思考停止の罠:プロジェクトマジック:オルタナティブ・ブログ
    hiroomi
    hiroomi 2012/06/01
    「廃止していく」目先に重点おいてると廃止すらちゅうちょ、もしくはできない。
  • アプリはWebサイトを殺すのか?

    A-Listers的にはかなりプッシュしているCoding Horrorに”Will Apps Kill Websites?”と題されたスマートフォン・タブレットのアプリとWebサイトの今後について考察した記事が投稿されていました。記事はeBayが多くに人に使われていて、筆者にとっても有用でさまざまな出来事が起きている事を前置きした上で、「eBayのWebサイトが常に使いづらく閲覧しづらいままだった」事は不変であると述べています。その上でアプリ版eBayとWebサイト版のeBayの比較を行なっています。 筆者によると「eBayのアプリには良くない点もたくさんあるが、Webサイトはさらに最悪」と補足した上でeBayの超熟練ユーザでない限りはWebサイト版を避けるべきであると評しています。教訓として「制約を受け入れる事(embrace constraints)」を挙げています。限定されたUI

    アプリはWebサイトを殺すのか?
    hiroomi
    hiroomi 2012/05/18
    「eBayはWebによくある風土病(endemic on the web)として1999年から機能が増大しつづけ、Webブラウザ上でほとんどなんでもできるようになった結果、ユーザにとっては使いづらいものになってしまっています。」
  • BLOGOS サービス終了のお知らせ

    平素は株式会社ライブドアのサービスを ご利用いただきありがとうございます。 提言型ニュースサイト「BLOGOS」は、 2022年5月31日をもちまして、 サービスの提供を終了いたしました。 一部のオリジナル記事につきましては、 livedoorニュース内の 「BLOGOSの記事一覧」からご覧いただけます。 長らくご利用いただき、ありがとうございました。 サービス終了に関するお問い合わせは、 下記までお願いいたします。 お問い合わせ ※カテゴリは、「その他のお問い合わせ」を選択して下さい。

    BLOGOS サービス終了のお知らせ
    hiroomi
    hiroomi 2012/04/21
    「デザインが正しいかどうかは、プロトタイプを作ってテストをしてユーザーの操作がどのように行われるのかを調べるしかない。」何をするかが時間と共にずれてるのに補正しない。いや、確認しない。
  • 【ガラパゴスリモコン】テレビのリモコンにボタンが92個・・・日本の家電メーカーはどうしてこうなった? : はちま起稿

    1 名前: ハービッグ・ハロー天体(埼玉県) 投稿日:2012/04/21(土) 14:33:52.81 ID:mWX9GEPYP ?PLT(12001) 67個のボタン、継ぎ足されて、さらに25個のボタン。合計92個のボタン。 別に、飛行機を飛ばしたいわけではない。 単に、テレビ番組を録画したいだけである……。 しかし、録画の方法が何とか理解できるようになるには、1時間近くかかり、副音声や字幕も録画したいのだが、いまだに方法が良くわからない。別に暗号解読をするためにハードを買ったわけではないのだが。 (※飛行機のボタンやレバー数は中大型機で100~200と言われる) 地デジが始まるまではパソコンで録画していた。家電メーカーのハードディスクレコーダーには恐怖感を感じていたからだ。残念ながら、悪い方に当たった。 この異常なまでのボタン数に、テレビと共通性のない使いにくいインター

    hiroomi
    hiroomi 2012/04/21
    機能別実装の壁が現れた。利用者からスタートすることがなく仕様です。出来合いの機能からスタートすると、作り手視点のご都合主義。
  • はてなは「絶対すべきでないこと」をやらかしたのか?

    おっと、タイトルだけ見て、先週から話題になっているはてなブックマークボタンのトラッキング問題の話かと思われたかもしれないが、文でははてなブックマークの問題はほとんど扱わない。また、この問題について未だご存じない方は、ARTIFACT@ハテナ系のエントリの後半にあるこれまでの流れを辿ると分かりやすいだろう(ワタシ自身の認知にも近い)。 はてなが新サービスとしてはてなブログをリリースして4ヶ月以上経つ。当初は招待制だったが、昨年末にオープンベータに移行して現在にいたっている。 ワタシもリリース時に招待されたので少し触ってみたが、機能が何から何まで足らないことにびっくりしたものである。そして、はてなは「アレ」をやらかしたのではないかという疑念が頭をよぎったが、まさかと思う気持ちと、短時間触っただけの印象で間違った批判をしてはいけないという自制、何よりそのあたりはじきに解決するのだろうという楽観

    hiroomi
    hiroomi 2012/03/12
    「はてながその社史の前半、具体的には2001年から2006年まで素晴らしい仕事をした」機能に関して言えば、競合との比較発生と。
  • 創造性をどう伸ばすか? - Willyの脳内日記

    実社会で「創造性」が語られる文脈は大きく分けて二つあり、 一つは会社のような組織で社員のアイデアをいかに潰さずに 活かすかというマネジメントに関するテーマで、 もう一つは子供の創造性をどう育てるかという能力開発に関するテーマだ。 ここでは後者について考えたい。 子供の創造性を伸ばす上でも、 社員のアイデアを潰さないことと同様、 子供の表現したことを如何に否定せずに伸ばしていくかが 重要であることは想像できる。 しかし、さらに話を推し進めて、 子供の創造性を伸ばすためにどんな教育をすべきかとかいうことになると、 どうも議論に飛躍が増えてくる。 まず見られるのが、既存の教育方法を否定しつつもその根拠がおかしいものだ。 例えば、東洋経済7月2日号でネットイヤーグループ社長の 石黒不二代氏は次のように述べている。 数学でも公式や解き方を教えてもらい、それを記憶している。 だから、記憶力のいい人、教

    hiroomi
    hiroomi 2011/07/25
    「厳しい競争社会で詰め込み式の教育を受けた発展途上国の人は研究する段になって想像力が乏しいと言われることが多い」言葉かえると視点がなさすぎって話も。どうでしょうかね。
  • Amazon.co.jp: アナタはなぜチェックリストを使わないのか?【ミスを最大限に減らしベストの決断力を持つ!】: アトゥールガワンデ (著), 吉田竜 (翻訳): 本

    Amazon.co.jp: アナタはなぜチェックリストを使わないのか?【ミスを最大限に減らしベストの決断力を持つ!】: アトゥールガワンデ (著), 吉田竜 (翻訳): 本
    hiroomi
    hiroomi 2011/06/22
    「★3つの理由は、実際にチェックリストを作成するテクニックや手順についてをもう少し手厚くしてほしかった。」手順書作るなら正解。チェックリストならいらない。
  • ConQATを利用してソースコードの品質をチェックする - 達人プログラマーを目指して

    ある程度プログラマーとして経験を積めば、ソースコードを読んだときに、そのソースコードの良し悪しというものは、嗅覚を使って直感的に嗅ぎ分けることができるものです。実際、そのように体の感覚を使ってこのコードは不吉だと感じるところは実際大いにあり、コードの臭い(code smell)として知られています。 コードの臭い - リファクタリングの必要性を示す兆候 これはファウラーの名著 リファクタリング―プログラムの体質改善テクニック (Object Technology Series) 作者: マーチンファウラー,Martin Fowler,児玉公信,平澤章,友野晶夫,梅沢真史出版社/メーカー: ピアソンエデュケーション発売日: 2000/05メディア: 単行購入: 94人 クリック: 3,091回この商品を含むブログ (312件) を見るでも紹介されており、こういった不吉な部分を適切に嗅ぎ分け

    ConQATを利用してソースコードの品質をチェックする - 達人プログラマーを目指して
    hiroomi
    hiroomi 2011/06/13
    「あまりにもひどい状態の場合、以上のメトリクスを計測してもあまり面白いデータが取れないということもありますね。」
  • コードは負債、少ない方がいい

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    コードは負債、少ない方がいい
    hiroomi
    hiroomi 2011/05/25
    「戦略的に削除する方法を学んだ組織には未来があると思います。」
  • トヨタ社長「国内生産にこだわり」 副社長は「限界」 - 日本経済新聞

    トヨタ自動車は11日、都内で2011年3月期の決算発表の記者会見を開いた。豊田章男社長は冒頭、東日大震災による2011年3月期の営業利益への影響額について「1000億円強に上った」ことを明らかにした。その上で「国内、国外ともに6月ごろから生産を増加させるメドがたった。通常の7割程度に回復する」と述べた。会見には小沢哲副社長兼最高財務責任者(CFO)が同席した。会見での主なやり取りは以下の通り。

    トヨタ社長「国内生産にこだわり」 副社長は「限界」 - 日本経済新聞
    hiroomi
    hiroomi 2011/05/12
    「クリティカル部品」トヨタらしい言動だ。確かに原価、それを取り巻くコスト(手間)は高いが、地域から見たチェーンやらソフトウェアの制約(ルネサスへの集約)を見てると、生産より継承してる事を見直すんだろうか。