情報技術(IT)を使って新型コロナの感染拡大を防ぐ「切り札」として導入された接触確認アプリ「COCOA」。利用者の約3割を占めるアンドロイド版が昨年9月末から4カ月以上、機能していないことが分かった…
この文章の背景 この文章はプライベートメソッドのテストを書くべきか否かに関する knsmr さんのご質問に対して 2013/03/13 に QA@IT で回答したものです。残念ながらQA@IT のサービス終了(2020/02/28)と共にアクセスできなくなってしまったため、運営を行っていたアイティメディア株式会社様、開発を行っていた永和システムマネジメント様、そして質問をされた knsmr さんに許可とご協力をいただき、当時の回答をサルベージしてブログに転載する運びとなりました。 プライベートメソッドのテストはよく議論になるテーマですので、当時の回答を再編集し、knsmr さんのご質問も含め、ご利用いただきやすいライセンス CC BY(クリエイティブ・コモンズ — 表示 4.0 国際 — CC BY 4.0) で公開いたします。 目次 この文章の背景 目次 knsmr さんのご質問 私の回
Amazon Web Services(AWS)は、開催中のオンラインイベント「AWS re:Invent 2020」で、アプリケーションに対してクラウド障害のシミュレーションを行える新サービス「AWS Fault Injection Simulator」を発表しました。 クラウド上で稼働するアプリケーションの耐障害性などを高めるために実際にクラウド障害をわざと発生させて問題点をあぶりだす手法は、「Chaos Enginieering(カオスエンジニアリング)」と呼ばれています。 Netflixが2012年にカオスエンジニアリングのためのツール「Chaos Monkey」を公開したことで広く知られるようになりました。 参考:サービス障害を起こさないために、障害を起こし続ける。逆転の発想のツールChaos Monkeyを、Netflixがオープンソースで公開 今回発表された「AWS Faul
家庭科の授業ではいつも先生に驚かされる。 その日も私たちは週に一度の楽しみとして家庭科室へやってきた。体験的な授業を多くされる先生だったため、座学は久々だった。今日は何をするんだろうと期待に胸を膨らませながら筆記用具を手に席に着くと、先生は言った。 「今から小テストを始めます。」 先生のその一言は、これから始まる楽しい時間の終わりを宣言したも同然だった。 テストという単語は我々学生にとって、条件反射で嫌悪感を抱いてしまう存在である。筆記用具だけを持って来させたのはこの為か、と授業を楽しみにしていた私は深いため息をついた。 裏返しで回ってきたプリントをお通夜のような気分で後ろに回し、机に伏せる。 「今からするのは指示遂行テストです。しっかり問題をよく読んで、その通りに行動してくださいね。しっかりと、よく読むんですよ。制限時間は3分です、はじめてください。」 あまりに短すぎる制限時間を宣告され
物流大手の日本通運が「新・国際航空貨物基幹システム」の開発失敗を巡り、ベンダーのアクセンチュアを訴えた裁判。名門企業同士の訴訟、さらには約124億9100万円という賠償請求額の大きさは衝撃的だった。 裁判資料を読んでいると胃がキリキリした。筆者は2年ほど前までシステムエンジニアとして働いていた。その分、記されていた当事者の発言やチャットが、あまりにも生々しく映った。 訴状によると、開発プロジェクトはテスト工程から遅延し始めた。当初2020年12月の予定だった結合テストの後半過程「ITb」の終了は2021年11月にずれ込んだ。アクセンチュアがITbの「成果物」を共有サーバーにアップロードしたのは2021年11月30日。しかし、日本通運は先立って実施していた「打鍵テスト」で大量の指摘事項が挙がっていたことなどから、この品質を問題視した。以降、これら成果物の検収を巡り、両者の主張は至るところで対
ユーザーローカルが、ダミーの氏名・住所などの個人情報を自動生成するWebサービス「個人情報テストデータジェネレーター」の無償提供を始めた。最大1万行を生成し、CSV形式のファイルなどでダウンロードできる。システム開発時の動作テストやセキュリティチェックなどに使えるという。 生成できるのは、氏名や年齢、生年月日、性別、血液型、メールアドレス、電話番号、郵便番号、住所、会社名、クレジットカード番号と期限、マイナンバーの情報。氏名は漢字・平仮名・片仮名・ローマ字などを選択でき、年齢は「20~80歳」など指定した範囲を基に日本の人口比に合わせて出力できる。 データはCSV・TSV形式かExcelファイルでダウンロードできる。生成するデータ数は1件単位で設定できるが、1万行以上はユーザーローカルへの問い合わせが必要だ。 同社はシステム開発時のセキュリティチェックなどに使うダミーデータの作成に手間がか
2022/4/2 追記 本サービスは提供を終了しました。 ご利用いただいた皆様、ありがとうございました。 「ランディ・バース」をはじめ、「メタバース」「マルチバース」「マーベル・シネマティック・ユニバース」「オートリバース」「コンバース」と、これまで様々な「バース」が登場してきました。 2022年春、ここに新たな「バース」が誕生しました。その名も「はてなバース」。 世界中どこでも好きな場所に移動して、近くにいる人と言葉を交わす。 すべての出逢いは一期一会、儚く、それが故にひとつひとつの瞬間に貴重な体験が待っています。 はてなバースにはすべてがあり、そして何もありません。 そこにあるのは、あなたのナラティブ。 オンリーワンでワンダフルなワールドをどうぞお楽しみください。 https://verse.hatelabo.jp/#shibuya ハッシュタグ:#hatenaverse <テスト利用
People Experienceチーム*1の酒井(@sakay_y)です。 2022年もエンジニア新人研修を行いましたので、軽い紹介と、講義資料および一部講義動画を公開いたします。 2022年のエンジニア研修について 講義資料公開(2022年版) モバイルアプリ開発 サイボウズのアジャイル・クオリティ MySQL - テストデータが偏るということ モブに早く慣れたい人のためのガイド テクニカルライティングの基本 ソフトウェアテスト セキュリティ ソフトウェアライセンス 社内限定の講義や昨年と同じ講義について 最後に 2022年のエンジニア研修について 研修のコンセプトは例年とほぼ同じです。 誰に 新入社員メンバーに 何と言ってもらう 基礎的な知識/技術/ツールを学べた! 開発/運用本部のチーム/人を知ることができた! スケジュールは以下のとおりです。(一部は、予定になります。) 講義期間
新型コロナに関連して「検査陽性率」という数値がニュースなどでもよく使われています。 この数値は、どのように解釈すればよいのか、またどれくらいの数値が理想的なのでしょうか? 検査陽性率とは?検査陽性率は以下のように定義されます。 筆者作成例えば、東京都は1日当たり(5日平均で)3493人検査をしており、1日当たり(5日平均で)287.3人が新型コロナと診断されていますので、287.3/3493×100=8.2%ということになります。 東京都の検査陽性率(東京都新型コロナウイルス対策サイトより)東京都新型コロナウイルス対策サイトでは、この陽性率の推移が公開されています。 最新の数値が反映されていませんので、6.5%となっていますが、この数日の患者数の増加で陽性率も上昇してきています。 他の地域ではどうかといいますと、大阪府が公開している資料によると7/27の検査陽性率が9.4%、一日当たりの検
開発室の雑談。営業側のマネージャが言うには 「今のプロジェクトで自動テストの導入を試みている話をしたら、XXXさんのところでも過去にいくつか導入を試みたけどもみんな上手くいかなかったって話になって」 なるほど? まあ確かに自動テストはシステム開発にとって魅惑の技法ではあるものの、では導入がうまくいっているか? というと普及率は低いと言わざるを得ない。私がお手伝いしたプロジェクトでは、元請け側から自動テストをやるお達しが来たわけだが、紆余曲折あって掛け声倒れのような状態になってしまった。 ビジネス書の煽りタイトルのような本件だが、古式ゆかしき受注生産の業務システム開発プロジェクトに自動テストを導入しようとして失敗する事例を聞いたので、僕なりに分析して見出した要素を挙げておこうと思う。 V字モデル ソフトウェア開発の手法としてV字モデルというものがある。 オーダーメイドでシステムを作るにあたっ
はじめに こんにちは、皆さん。今日は、シェルスクリプトを使った高度な自動化のベストプラクティスとパターンについて解説します。これらは、ちょっとした知識で実行でき、作業を大幅に効率化できるTipsです。シェルスクリプトは、特にUNIX系システムでの自動化タスクに欠かせないツールです。適切に使用すれば、複雑なタスクを効率的に、そして信頼性高く実行できます。 トイルとは、反復的でマニュアルな作業のことを指します。これには、例えば、手動でのシステムのスケーリングや、エラーのトラブルシューティング、ルーティンなメンテナンス作業などが含まれます。トイルを特定し、それを自動化することで、エンジニアはより創造的なタスクやプロジェクトに焦点を合わせることができます。 トイルを判別する方法としては、以下のような基準が挙げられます: 手作業であること 完全な手作業だけでなく、「あるタスクを自動化するためのスクリ
2021年時点、Amazonで購入できるLANケーブルのカテゴリ別スペックをまとめました。 使用できるケーブルの長さや、伝送周波数帯域など。上記以外に細かいスペックがカテゴリ別に決められていますが、話を分かりやすくするため要点のみをスペック表に入れています。 基本的にLANケーブルのカテゴリが高いほど、高性能です。インターネットが速くなる、テレワークにおすすめなどとアピールされる傾向が強い「CAT7」だと最大10 Gbpsの通信速度に対応します。 注意点:蛇口が高性能でも元栓がダメなら意味なしカテゴリが高いほど、対応している最大通信速度が高いため、「CAT7以上のLANケーブルならインターネットが速い」と思われがちです。 残念ながら、どれだけLANケーブル(= 蛇口)を高性能にしても、肝心のインターネット回線(= 元栓)の性能が遅いならまったく意味がありません。 日本のインターネット回線は
パフォーマンス・チューニングに関するブログの第1回目です PayPayは、日本でもっともよく知られているQR決済サービスとなりました。2018年10月5日のローンチ後、2018年12月より実施した100億円あげちゃうキャンペーンは、その後のプロダクトの急成長に合わせたシステムのスケール拡張という長い道のりのスタート地点でもありました。 ここ数ヶ月の新規ユーザーの増え方[1]を見るにつけても、PayPayが驚異的な成長を続けていることは間違いありません。スタートアップ企業はまるで竹のように成長するとはこのことではないでしょうか。(竹は24時間で最大約90cmも伸びるそうです) PayPayの成長速度は? ユーザー数の伸び 2018年10月に初めてユーザーが増え、キャンペーンや日々メディアで報道されることによるユーザー数の増加もあり、1年後には1500万人を突破しました。2020年5月現在、サ
祖母の就寝と、システムの不具合が同期して起こる事件。IT業界にはこういった事件がまま見られる……。ITサスペンス物としてこういうネタ楽しいのができるかもしれない。いや、間口狭すぎるか? 祖母が就寝するとDBインサートができなくなる https://t.co/q2PBRL3JzS — 寺島壽久/ゲームキャストの中の人 (@gamecast_blog) January 8, 2024 この手の話、自分も大好物なんで早速リンク先に飛んで読ませていただいたのですが、自分の経験でもちょうどこんな話に当てはまる出来事があったことを思い出したので、noteにまとめました。それが、タイトルにもある「カナダ大使館でだけ名刺交換やしりとりが失敗する話」です。 まず、前提としてこの話は「どこでもいっしょ」(以降、どこいつ)というゲーム開発中の話でになりまして、25年ほど昔の話になります。タイトル中の「名刺交換」
Chrome 97のDevToolsに新機能、Webブラウザ上の操作を記録、再実行、編集、保存。Puppeteerスクリプトへのエクスポートも Googleは、来年1月に登場予定のChrome 97で、DevToolsにWebブラウザ上での操作内容を記録し、再実行や編集、保存などを可能にする新機能を搭載することを明らかにしました。 Introducing the new Recorder panel You can now record, replay and measure user interactions with @ChromeDevTools. See it in action - ordering coffee. Learn more about this preview feature (available in Chrome Canary now): https://t.c
多分今回のポストは多くの人には参考にならないだろう。相当ニッチなので。でもこれは自分にとってはとても大きなことだったので、忘れないように記録しておきます。 生産性の悩み あまりこの世界では生産性とはあいまいな言葉で、何をもって生産性が高いとは言いにくい。速いのが良いのではない。ただ、自分の実感として自分は生産性が良くないといつも感じていた。だからいろいろ努力したり、考え方をできる人を観察して真似してみたり、直接本人に聞いたりして工夫をしてきた。 実は自分はめっちゃコーディングが早い人になりたいわけではない。そうではなくて、「平均的」になりたいだけだ。それぐらいいければ「Strategy」でカバーできるどころかもっと上に行けると確信があったから。でもそうではなくて明らかに遅いのでそれが自分の足を引っ張っていた 努力の方向性 様々な努力をして、特に有効だったことを自分の本に書いたつもりではある
2023年の流行語大賞にも選ばれた「生成AI」。 ChatGPTだけでなく、Google BardやClaude2など似たようなAIチャットボットも登場し、性能も日に日に上がっている感覚がありますね。 しかし、結局どれが一番賢いんだろう?と思いつつひとまずChatGPTを使っている方も多いはず。 そこで、今どのチャットAIが一番頭良いのか白黒つけてしまおう!ということで、ちょうど週末に行われた大学入試共通テスト2024を使って学力テストを行いました! 参加する学生は、 ①GPT-4くん ②Google Bardちゃん ③Claude2さん の三名です 果たして誰が学力王の座に輝くのか・・・? 選手入場①GPT-4くん一人目は、皆さんご存じChatGPTです。Open AI予備校に月額$20の課金して学力武装しています。 特徴としては、プロンプトの研究が進んでおり、画像やPDFファイルの読み
営業、受注、制作、納品、運用と、ウェブ制作の活動は長期に渡り、そのタスクの種類と量は膨大です。だからこそ、基本的なプロセスや使用するドキュメントなどを明確に定義しておかないと、サービスの品質が担当者により大きく変わることになります。 ベイジは社員がまだ5名の頃、各人に委ねた進め方によって以下のようなトラブルが頻発していました。 ミスが発生しても「次から気をつける」と精神論で終わらせてしまう 担当するディレクターやクリエイターによってタスクの抜け漏れが起きる 担当者それぞれが属人的な進め方をしてて品質が安定しない 役割が不明瞭なグレーゾーンのタスクが放置されてしまう 創造的な仕事の時間が、ルーチンや計画にないタスクに奪われてしまう 新しい社員が入る度に同じことを教えないといけない これら問題を解決するため、2014年頃からワークフローを整備するようになりました。ちなみに私が入社したのはこれ以
2023年5月11日(木)追記: 5月9日(火)11:50に以下告知の追記でお知らせしておりました、Twitterアカウントとの連携設定を行っていなかった場合に「外部サービス連携」設定内のオプションが変更できない不具合を修正いたしました。 いつもはてなブックマークをご利用いただき誠にありがとうございます。はてなブックマーク開発チーム、ディレクターのid:yone-yamaです。 2023年4月8日〜10日に以下告知でお知らせした通り、Twitter社提供のAPIが利用できなくなったことに起因し、はてなブックマークでTwitterに関連する機能がご利用いただけない状態が継続しています。 bookmark.hatenastaff.com 現在ご利用いただけない機能は以下となっています。 ブックマーク時のTwitterへのシェア(連携ツイート) コメント一覧ページ内におけるブックマーク右側のTw
2021年も数多くのプログラミングやPythonを扱った素晴らしい書籍とたくさん出会いました. 私はリアルの本屋さんに行くのがとても好きで(ECの本屋さんも好きですが), 技術書のコーナーには必ずと言っていいほど足を運ぶのですが, 年々「Python」というラベルが付いた棚の領域が広がっている気がします. プログラミング初心者でPythonからやりたいけど何から読めばいいのか🤔 実務に役立つような参考書籍ってどうやってみつければいいかわからない😇 よりビジネスに役立つ, 実践的な事例をしりたい💪🏻 という, 割とありそうなニーズにお応えすべく, 2022年いや, 今この瞬間に読んでおきたい・抑えておきたいPython関連書籍をまとめました! 2011年頃からPythonを使って仕事をし始め, 今もエンジニアリングからコンサルティング, マネジメントをやっている私独自の視点で, オス
この記事は2020年10月28日に行われたさくらの夕べ Tech Night #3 Onlineにおける発表を文章化したものです。 ダーシノと申します。さくらインターネットでフロントエンドエンジニアをやっています。この記事では、発生したバグをプログラマーに的確に伝えるためのバグ報告の書き方について説明しようと思います。 バグ報告にはコツがある! プログラマをされている方で、過去にこんなバグ報告をもらった経験はないでしょうか。例えば「動きません」とだけ送られてきたりとか、イラッとした感情も含めた「使えねぇな!」みたいな報告、「アレもコレもソレもおかしいよ」みたいな、いろんなものが書かれた報告もあると思います。バグを残してリリースしてしまったプログラマーとしては非常に申し訳なくて今すぐ対応をしたいのですが、さすがに先ほどのようなバグ報告を受けても、我々プログラマは対応のしようがありません。「申
STEP2. アウトプットを実現するために必要なデータソースを書き出す アウトプットの整理ができたら、今度はインプットとなるデータソースの整理を行いましょう。 必要なデータソースは要件から読み解くことができます。 今回は「10代のユーザーの月間視聴数(性別 / 動画カテゴリごと)の推移をグラフで見たい」という要件です。 ここから、この分析に必要なエンティティ(実体)とその属性、集計値を抽出しましょう。 エンティティと属性 ユーザー 性別 年代 動画 カテゴリ 集計値 視聴数 これらのデータを管理するテーブルを、調査やヒアリングを実施して探します。 今回は以下のテーブルを使用することとします。 user:ユーザー登録に必須な入力項目を管理するテーブル user_profile:ユーザーが登録後に設定できる任意の入力項目を管理するテーブル video:ユーザーが投稿した動画を管理するテーブル
前回のブログから90日以上経ってしまったので広告が載ってしまったから短文でもアウトプットしておく。 プログラマとして仕事をしているとコードと向き合っている時間の9割以上は既存のコードを読んでいる、だから読みやすさは重要である、という言説は耳にタコができるほど誰もが言っている。 仕事で書かれるコードが誰のレビューも通ること無くマージされている現場は凄惨だが、自分より明らかに経験を積んだ人たちが何度もレビューを重ねたコードが読みやすいかというとそうとは限らない。良いコードが守るべきルールをすべて守っていても不可解なコードはあるし、どんなに読みやすいコードでも数千行の規模になってくるとやはり脳内からこぼれて一度に覚えておける範囲からはみ出る。 変数名や関数名をわかりやすくするとか不必要な技巧を凝らさないとかわかりやすい設計にするとか主観的な事を偉そうに語る本は山ほどあり、それらの本を崇める事は悪
追記 2022/11/12 追記 この記事読んで、DI 便利だなって思ったらこちらも併せて読んでみてください。クリーンアーキテクチャーの開設の中で依存性逆転の説明が出てきます。難しいかもしれませんが、一度理解すればつぶしが効く考え方なので腰を据えて読んでみてください。 本文 ここでは、最近のそこそこの規模のアプリだと大体使われてる(と私は思ってる)Dependency Injection(DI)について、何故使ってるのか?というのを私の理解で書いていきたいと思います。 今回の対象言語は C# ですが、DI 使ってる言語であれば大体同じ事情なのかなと思います。 単体テストしたいよね アプリケーションを作るとうまく動いているかテストをすると思います。 たとえ、そのアプリがハローワールドだとしても動かして目視で確認してると思います。 もうちょっとアプリの規模が大きくなってくるとクラス単位やクラス
エンジニアとして今の自分を形成した本5冊 エンジニアとして働くにあたって自分が大きく影響を受けた本を考えてみた。もちろん他にもあるが、今回は以下の5冊に絞って紹介する。 Clean Coder(クリーンコーダー) Team Geek Clean Architecture(クリーンアーキテクチャ) テスト駆動開発 LeanとDevOpsの科学 この記事の対象者としては、独学でプログラムを書き始めた人やエンジニアスクールを卒業したばかりの方というよりは、実務経験を1~3年くらい積んでいるけど次に何を学べば良いかわからず、自分でイマイチ伸び悩んでいると感じている人を主に想定している(かつての自分がそうだった)。 特にチーム開発、オブジェクト指向言語でのコーディング、テストコードを書いた経験がある人が読んで、本に書いてあることを実践すると自分の成長を実感するだろう。 「Clean Coder」、「
Webページのレスポンシブの確認が簡単にできる、新しい無料アプリがリリースされました! iPhone, Android, Pixelのスマホをはじめ、タブレット、ラップトップ、ワイドスクリーンなどのサイズでWebページを表示して確認ができます。 Windows, macOS, Linux対応のアプリで、しかもオープンソースです! Responsivize Responsivize -GitHub Responsivizeの特徴 Responsivizeのダウンロード Responsivizeの使い方 Responsivizeの特徴 Responsivizeは、レスポンシブ対応のWebページをさまざまなデバイスのサイズで確認できる便利ツールです! 当方の日本語環境(M1 Mac, Windows10)で問題なく動作しました。 Responsivize レスポンシブWebサイトの確認が簡単にで
いただきましたー!わーい。脳に収めるぞー! @haradakiro @ryuzee pic.twitter.com/3Qd6EvPioU— SHIIBA Mitsuyuki (@bufferings) June 13, 2024 明日(2024年6月18日)発売! www.oreilly.co.jp どう書くのがいいんだろうなぁ? 複雑なコードと向き合うときは「あー、これはメモを取りながら読まないと迷子になるやつだ」ってなる。最初はわりとキレイに作られていたとしても、機能追加を重ねていくとだんだん読めなくなっていく。 だから「時間が経っても読みやすいコードってどう書くのがいいんだろうなぁ?何かヒントがあるかなぁ?」って思いながらこの本を開いた。先に書いておくと、ヒントはあった。 アウトサイドインのTDD 全然予想してなかったから、おー!と思ったのが、説明をTDDで進めていくってところ。好き
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く