タグ

パターンに関するsyuu256のブックマーク (15)

  • 4月新刊情報『システム運用アンチパターン』

    『システム運用アンチパターン ―エンジニアがDevOpsで解決する組織・自動化・コミュニケーション』 Jeffery D. Smith 著、田中 裕一 訳 2022年4月12日発売予定 352ページ ISBN978-4-87311-984-7 定価3,520円(税込) 上層部がDevOpsに理解のない組織で働き、組織構造を変える権限を持っていない開発者であっても、チームにDevOpsを導入するための現実的な方法を紹介します。 重厚な承認プロセス、可視化されていない運用、プロセスの最後でのみ行われるソフトウェアテスト、ノイズだらけのアラート、インシデントから学習しない習慣、時間外のデプロイ、情報のため込みなどを取り上げ、ソフトウェアシステムの開発運用が滞るチームや組織に共通してみられる陥りがちな状況や犯しがちな間違いをアンチパターンとして紹介します。そして管理職やマネージャでなく、エンジニア

    4月新刊情報『システム運用アンチパターン』
  • レジでの支払いのはなし - はこべにっき ♨

    レジとかでお金を払うときに、支払う紙幣/硬貨の枚数が少なくて、かつ、お釣りの紙幣/硬貨の枚数が少ない、かっこいい支払いというのがある(適当)。あわよくば、かっこいい支払いをしようと思っていつもねらってる。なんか適当に言ってるけど、451円払う時に、適当に500円玉を渡すと10円x4枚+5円x1枚+1円x4円がお釣りになるのはイヤなので、501円を渡してお釣りを50円x1枚にしたりする、よくあるやつです。 451円請求されているときには、だいたい501円はらったら良さそうなのはわかる。では、例えば771円請求されている場合は、どうすれば最適な支払いになるかと考えると、801円か1001円か1021円かそのあたりかなーという感じですこし丁寧にしらべる必要がある。 小銭が関係する1000円以下の最適な支払いパターンくらいだと、機械的に全パターン調べられそうだったのでプログラムを書いてみた。以下の

    レジでの支払いのはなし - はこべにっき ♨
  • ApacheのRewriteRuleで検索条件に^/がマッチしない場合がある理由 - このブログはURLが変更になりました

    ApacheのRewriteRuleで「/hoge/配下にアクセスがあったら http://example.jp/fuga/ に301リダイレクトを行う」ってな処理を書く場合、先頭に/が必要な場合と必要ない場合がある。 RewriteEngine on # これでいける場合もある RewriteRule ^/hoge/(.*) http://example.jp/fuga/$1 [R=301,L] # こう書かないとダメな場合もある RewriteRule ^hoge/(.*) http://example.jp/fuga/$1 [R=301,L] この先頭に/が必要不要の違いはなんだろうなーと思っていたが、先日理由がわかった。 Apacheのドキュメントにしっかり書いてあった。 RewriteRule Directive What is matched? In VirtualHost c

    ApacheのRewriteRuleで検索条件に^/がマッチしない場合がある理由 - このブログはURLが変更になりました
  • プログラマーは皆、常に秘密や嘘を抱えている - totopon114689の日記

    プログラマーは皆、常に秘密や嘘を抱えている。 これは間違いない。 基的には誰にも話さないが、 (家族や友人などプログラムを知っていない人間に話しても分からない、という事もある) プログラマー同士の飲みの席などで、過去の笑い話として酒の肴になる事はある。 秘密や嘘の傾向には幾つかのパターンがある。 1) 仕様があいまいな場合の適当なコーディング 仕様があいまいな機能を実装する場合、想定していたものよりもプログラム量が膨大になる事はよくある。 また、細かいパターンや想定外のケースに対し、どのようにプログラム的対処を行うべきか? 洗い出しているとキリがない場合もある。 仮に事前に洗い出していたとしても、 「ケース自体は洗い出せているが、具体的にどのようなエラーメッセージを表示すべきか?」 などといった、その先がまたあいまいになっている場合もある。 このような場合、来であれば決裁権のある人間に

    プログラマーは皆、常に秘密や嘘を抱えている - totopon114689の日記
    syuu256
    syuu256 2013/05/23
    普通だろ。自覚あるし
  • 文字コード変換ミスによる文字化けパターンと想定される原因 - drk7jp

    とあるシステムでデータベースから引いてきたデータの表示が文字化けするという不具合がありました。 データベース内のデータとしては文字化けしていない状態で格納されていることはわかっていたので、どこかしらの文字変換で化けていることはわかっています。まずはどの誤変換により文字化けするのか原因切り分けのために、decode/encode の組み合わせによる文字化けパターン一覧を作りました。おかげさまでどのパターンに類するものか判別することができ、無事に改修することができました。 その話はまた別にするとして、今も昔も変わらず文字化けに悩む人は意外と多いと思います。誤変換結果一覧は原因解析の参考になると思い、記事としてまとめることにしました。 文字コード変換ミスによる文字化けパターンを可視化するプログラムと一覧表 まずは誤変換を生成する perl スクリプトです。プログラムはとっても簡単で、「文字化けで

  • 協調フィルタリング - Wikipedia

    協調フィルタリングを使用してユーザーの評価を予測する例。最初は、さまざまな項目 (動画、画像、ゲームなど) を評価する。その後、システムは、ユーザーがまだ評価していないアイテムに対するユーザーの評価について予測する。これらの予測は、アクティブなユーザーと同様の評価を持つ他のユーザーの既存の評価に基づいて作成される。例えば上記の場合、システムは、アクティブなユーザーがビデオを気に入らないだろうと予測している。 協調フィルタリング(きょうちょうフィルタリング、Collaborative Filtering、CF)は、多くのユーザの嗜好情報を蓄積し、あるユーザと嗜好の類似した他のユーザの情報を用いて自動的に推論を行う方法論である。趣味の似た人からの意見を参考にするという口コミの原理に例えられることが多い。 例えば、ユーザAがアイテムXを好むとすると、アイテムXを好む別のユーザBが好むアイテムYを

    協調フィルタリング - Wikipedia
  • Amazon.co.jp: エレメンタルデザインパターン―パターンの基礎を学び、より有効に活用する: ジェイソン・マクスミス (著), Smith,Jason McC. (原名), SDL Plc (翻訳): 本

    Amazon.co.jp: エレメンタルデザインパターン―パターンの基礎を学び、より有効に活用する: ジェイソン・マクスミス (著), Smith,Jason McC. (原名), SDL Plc (翻訳): 本
    syuu256
    syuu256 2013/02/03
    さっぱり理解できない メタのメタな感じ
  • 構造化『並列』プログラミング - どらの日記

    構造化プログラミング。 といえば、順次、分岐、ループのパターンからなる、シリアルプログラミングにおける基スタイルですね。(これらだけしか使わなくてもシリアルプログラムは書けますっていうね) C++にはあらかじめこれらのパターンを簡単に使えるようにシンタックスが用意されています。 分岐はifやswitch、ループはwhile、for、doといったかんじで。 もちろんこれらのパターンは並列プログラミングでも使えます。 しかし並列プログラミングにおいては、これらのパターンだけで実装を行うことはほぼ不可能です。 そこで、並列プログラミングにおけるパターンとなる構造が考えられてきました。 これらを使うことで、よりパワフルかつ簡潔に並列プログラムのコードを書けるようになります。 1.マップ もっとも基的な並列パターンです。 まず、コードを見てください。 template <class T> voi

    構造化『並列』プログラミング - どらの日記
  • リソースモデリングパターン

    Webアプリケーションについて、RESTfulなURL・リソース設計のパターンを見出すことで、 どのパターンかを判断するだけで、既存の Good Practice が適用できる 名前をつけて呼べるようにしたい Railsなどのフレームワークで簡単に適用できるようにしたい ということを目指しています。 ほんとうに役立つか これはパターンと言えるのか もっと他にもある だいぶ粒度がバラバラ 名前の付け方(パターンは名前重要) など、ぜひご意見をください。 パターン Collection & Member Resource パターン Singular (Singleton) Resource パターン Filtered Collection パターン Filtered Subresource パターン Multi-member Resource パターン Partial Resource パター

    リソースモデリングパターン
  • おねえさんを組み合わせ爆発から救う:完結編おねえさんは星になった - きしだのHatena

    おねえさんを組み合わせ爆発から救うために、経路をZDDとして表したら、すっきりと経路情報が扱えました。 http://d.hatena.ne.jp/nowokay/20121018#1350528607 あとは、このZDDを効率よく構築できれば、おねえさんを救えそうです。このZDDの構築には、クヌース先生の開発したSimpathアルゴリズムを使うと非常に効率よく構築できます。 前回生成したZDDを見ると、同じノードにまとまっているものがいくつかあることがわかります。特に後半になるとどんどん同じパターンになるものがまとめられていきます。 つまり、この経路問題のZDDを構築するときには、いかに同じパターンになるものをまとめるかが鍵になるということです。 Simpathでは、辺の端だけに注目して、同じパターンになっていればそれ以降のノードを使いまわすという考え方で、ノードをまとめていきます。 つ

    おねえさんを組み合わせ爆発から救う:完結編おねえさんは星になった - きしだのHatena
  • 首都圏の自動改札機の運賃計算ソフトウェアのテスト戦略:森崎修司の「どうやってはかるの?」:オルタナティブ・ブログ

    非常に高い信頼性が求められ、入力、出力ともに組合せが多く、機械的に結果を照合できる。そして、コストもなんとか確保できる。鉄道の自動改札機の運賃計算で同じ仕様から別チームで2つのプログラムを開発して、それぞれの結果を照合しているそうです。Tech-onの記事(10の40乗通りの運賃パターンにどう対応する?---オムロンの自動改札機用組み込みソフト)として掲載されています。 2つのチームで、異なる方針で実装すれば、両方のプログラムで誤った結果を出力する可能性は減りますし、記事のような極めて大量の入力、出力の組合せがある場合には、確認が自動化できることによるメリットが大きそうです。 ただし、改札機の実機ではCPU、メモリ等のリソースが限定的であるため、極めて大量の入力データを限られた時間で検証することが難しくなります。そこで、エミュレータの上でも動く実機プログラムと実装方針が異なるプログラムをP

    首都圏の自動改札機の運賃計算ソフトウェアのテスト戦略:森崎修司の「どうやってはかるの?」:オルタナティブ・ブログ
  • PHP で Reactor パターンを使った非同期 MySQL 問い合わせ | Born Too Late

    最近は非同期処理に興味があります。 Reactor パターンというのは、非同期処理の実装パターンのひとつで、例えば HTTP 問い合わせなんかで「読み込みが完了するのを監視しつつその他のタスクを進め、読み込みが完了したタイミングでその結果を処理する」みたいなヤツです。 例えば Node.js では Reactor パターンを使ったプログラミングが比較的簡単に行えます。 PHP でも同じことをやりたい、というときには React というフレームワークがあって、少し前に話題になりました。 PHPでもリアルタイムWeb。node.phpReact」 現状 React ではファイル I/O やソケット通信を非同期に行えるようになっております。 が、MySQL で非同期処理を行う方法は今の所提供されていません。 PHP でも mysqli_poll を使えば非同期に MySQL にクエリを投げられ

    PHP で Reactor パターンを使った非同期 MySQL 問い合わせ | Born Too Late
  • IBM Developer

    IBM Developer
  • ヒューマンエラー 理論と対策

  • パターンに機能と型を取り戻す(アジャイルにおいてアーキテクチャを表現するDCI)

    パターンに機能と型を取り戻す アジャイルにおいてアーキテクチャを表現する DCI James O. Coplien (著) 和智 右桂 Growth xPartners Inc. (翻訳) Copyright c 2010 Gertrud & Cope. All rights reserved. はじめに 稿は James O. Coplien 氏の論文「Restoring Function and Form to Patterns」(http: //www.software-architect.co.uk/slides/sa10-JimCoplien Patterns.pdf)の全文を、氏 の許可を得て翻訳したものです。 要約 15 年以上前、我々はソフトウェア・パターンの規範のための基盤を築いた。—この規範は後に長 いこと、ソフトウェア・アーキテクチャにとっての中心になったものであ

  • 1