本番環境でやらかしちゃった人のアドベントカレンダーです。 例) 本番DB吹き飛ばした 本番サーバをデストロイした ネットワーク設定をミスって本番サーバにアクセス出来なくなり、サーバが世界から孤立した などなど... 以下の2点については必須項目なので、記述お願いします。 惨劇はなぜおこってしまったのか 二度と惨劇を起こさないためにどうしたのか もう二度とあの惨劇を繰り返さないために、みなで知見を共有しましょう。

はじめに コンピュータを使用した多くの操作は自動化することができます。 この技術は運用や試験工程で大きな力を発揮します。 自動化の技術は一般的なソフトウェア技術者が、ちょっと努力すれば普通に身につく能力であって、特別なものではありません。 ただ残念なことにこれらの技術はあまり知られておらず、活用されているとは言い難い現場も多いです。 ユーザー企業さんができないのはしょうがないですが、ITで飯を食べているはずの自称IT企業においても、自動化を拒否して手動で心をこめて作業をしてリソースを無駄にするケースを稀によく見かけます。 自動化の拒否が「余剰人員のための経済対策だよ!」という身もふたもない理由でないと信じて今回は、Windowsでの作業の自動化についてお話しようと思います。 自動化のテクニックの話をする前に Windowsの自動化のテクニックの話をする前にちょっと重要なことを先に述べておき
ペアワイズ法を使うことで、効率的にテストケースを絞り込めることがわかったかと思います。 --- 2019/10/31 追記 --- どうしてテストケースを絞り込んでも大丈夫なのか?という意見がSNSやはてブのコメントで見受けられたので、フォローアップエントリを書きました。こちらも合わせてご覧ください。 ペアワイズ法は本当に有効なのか?組み合わせテスト技法と上手に付き合う方法 | DevelopersIO ペアワイズ法を支えるツール「PICT」 ペアワイズ法が有効なことはわかりましたが、この組み合わせをどうやって作れば良いでしょうか?条件の数が少なければ前述のように手作業でもやれないことはありませんが、現実の問題はもっと複雑ですので、到底無理でしょう。 そこで役に立つのが、ペアワイズ法のテストケースを生成してくれるツール「PICT」です。 microsoft/pict: Pairwise I
概要 Visual Studio Code(以下VS Code)の拡張機能であるREST Clientが便利だったのでその紹介です。 使い方を文字とgifで説明していきます。 説明はマーケットプレース以上の情報を足していないので、英語に抵抗がなければ公式ページを照会してください。 REST Clientとは VS Code上でHTTPリクエストを送信し、VS Code上でレスポンスを確認できるVS Codeの拡張機能です。 マーケットプレースのREST Clientのページでインストールボタンをクリックするか、VS Codeの拡張機能アイコンをクリックして「REST Client」を検索してインストールボタンをクリックするかで使用できます。 文字だけではイメージし辛いかもしれないので、gifで見てみましょう。 左側のタブがリクエスト、右側のタブがレスポンスです。 ブラウザの拡張機能を使うで
前書き サイゼリヤ1000円ガチャをつくってみた(Heroku + Flask + LINEbot) 「サイゼリヤで1000円あれば最大何kcal摂れるのか」を量子アニーリング計算(Wildqat)で解いてみた。 完全に二番煎じですが、古典コンピューターが好きなので、個人的に古典コンピューター最強のなんだかよく分からないけどよく分からないものをよく分からないうちに解いてくれるソフト、z3を使ってサイゼリア問題を解いてみました。 問題 サイゼリヤのメニューを重複無しで合計1000円以下になるように選んだときに、最大の総カロリーになるようなメニューの組み合わせを求めよ。 サイゼリヤのメニューは https://github.com/marushosummers/Saizeriya_1000yen こちらを使わせて使わせて頂きました。メニューは100種類ぐらいみたいで、カロリーは整数値で、プロコ
概要 Slack には GitHub 連携用のアプリケーションがあって、リポジトリについて通知する仕組みがありますが、 issue 作成だけではなく、編集・削除など余計な情報も流れてきます。 今回、情報が埋もれないように バグレポート など特定のラベルがついている issue の登録時に Slack に通知する仕組みを作りました。 使用技術 GitHub Webhooks GitHub で issue を追加した時に通知が飛ぶように GitHub の Webhooks を利用しました。 Slack Incoming Webhooks 最後に Slack に通知するために、Incoming Webhooks を利用しました。 Google Cloud Functions 今回のメインの部分です。 GitHub の通知を受け取って、特定のラベルが付いた issue 登録のみフィルタして Sla
はじめに --- DP は役に立つ はじめまして。NTTデータ数理システムでアルゴリズムを探求している大槻 (通称、けんちょん) です。 好きなアルゴリズムは最小カットやマッチングですが、会社ではなぜか「DP が好きな人」と呼ばれています。 巷ではよく「DP なんて実務では使わない」といった言説が定期的に流れますが、そんなことはないです。僕自身この 2 年間で DP が使える実務案件に 3 件くらい関わりました! それはともかくとして、DP を学び立ての方がよく抱く悩みとして「バリエーションが多すぎて混乱するし、統一的なフレームワークがほしい」というのがあります。確かに DP のバリエーションは非常に多岐にわたるのですが、そのほとんどが以下の 3 つのフレームワークで説明できると思います: ナップサック DP 区間 DP bit DP 今回はこのうちのナップサック DP について、とにかく
こんにちは!初投稿です! この記事が誰かに何かでためになれば幸いです! 背景 僕は先日、この記事↓↓を読んでふと思いました。 サイゼリヤ1000円ガチャをつくってみた(Heroku + Flask + LINEbot) 「サイゼリヤで1000円あったら最大で何kcal取ることができるんだろう?」と。 最近、最適化計算を得意とする量子アニーリングの勉強を始めたこともあって、ナップザック問題をそのまま使えば、計算できるんじゃないか?と思い、早速実験してみました。 ナップザック問題とは ナップザック問題とは重量制限のあるリュックに、値段と重さが定義されたアイテムを詰め込むとき、**値段を最大化させるアイテムの組み合わせは何か?**というものです。 今回は、重量ではなく値段に制限があり、アイテムの価値でなくkcalを最大化させるので ・アイテムの重さ → メニューの値段 ・アイテムの価値 → メニ
Progateを一度やった程度のプログラミング初心者ですが、 何かWebアプリケーションを作りたいなぁと思い、Flaskを学ぶついでに サイゼリヤのメニューから1000円以内で組合せを出してくれるガチャを作りました。 2022.10.31 追記 Heroku有料化に伴い、以下をお知らせ致します。 LINE Bot版 サービス終了 Web版 旧アドレス(herokuapp.com)からのリダイレクト停止 2019.5.10 追記 Twitterで紹介頂いたようで、たくさんの方から反応を頂いていてびっくりしております! メニューが古いままだと、何かと店舗側にもご迷惑をおかけしそうだったので、 本日時点でのグランドメニューに更新させていただきました。 非公式であることをご了承の上、店舗ではマナーを守って楽しんで頂ければ本望です! (たくさん注文して食べ残す・・・などが起こらないことを祈ってます)
※タイトルで煽るのは良くないと思ったのでタイトルを変えました。 まだExcelで消耗してるの?Pythonによる自動集計ガイド 基礎編 - Qiitaを読んでいて(Rのが絶対便利…!)というお気持ちが強まってきたので勢い余って書きました。 はじめに PythonはColaboratoryで手軽に試せて非常に良いです。実は、RもColaboratoryから使うことができます。ColaboratoryにはRのカーネルが既に入っているのですが、表から見えないようになっているだけなのです。 そこで、見えるようにしたものを用意しました。 R Example - Colaboratory このノートブックを使えば、Rだってすぐ試せます(もうちょっと詳しい説明はColaboratoryでRやSwiftを使う - Qiitaをどうぞ)。 試して下さい。今すぐ。 使用するパッケージ 主にdplyrを使います
先日、同僚と「世の中のエンジニアはターミナルにどんなalias設定をしているんだろう?」という談義になったので、GitHub上の1000リポジトリのコードから調査してみました。 2019/04/10 コメントを元に微修正しました。コメントくださった方々、ありがとうございます。 2019/04/11 こんなのも書いてみました。 よく使われているvimrcの設定ランキング 2019/04/15 プラグイン版も書きました。よく使われているvimのプラグイン top20 aliasとは wikipediaより UNIXなどにおいてコマンドを別名で登録したもの。別名を登録するコマンド名。 長いコマンドやいつも利用するオプションを毎回入力するのは手間ですよね? ターミナルの設定ファイルにaliasを記述することで、別名として定義することが可能というわけです。 調査方法 GitHub APIを利用 do
本エントリは、xUnit Test Patterns: Refactoring Test Codeという書籍の「Chapter5 Principles of Test Automation」の内容をベースに、12個のユニットテスト原則についてまとめていきます。この書籍は、2007年に販売されたものですが、今でも十分役に立つユニットテストに関する原則を伝えています。 ウェブでは、次のURLでも内容を見ることができます。 自動ユニットテストの原則 ここで紹介されるものは、ユニットテストで確認したい quality のリストです。ですので、直接適用する「パターン」ではありません。 「何をやるか」よりも「なぜやるのか」という観点においてまとめられています。 本エントリでは、xUnit Test Patterns: Refactoring Test Codeで紹介されている12個の原則をベースに、ほ
はじめに 『レンダリングの仕組みなんて知らなくても、ブラウザが勝手にやってくれるじゃん!』 当時駆け出しのエンジニアだった私はそう思っていました。 実際、当時の私はレンダリングの『レ』の字も知りませんでしたが、特に業務上で問題はありませんでした。 しかし、その時は突然訪れました。 クライアントの要望でアニメーションを多彩に取り入れた案件を実装した際に、テスト段階で一部ブラウザ(S○f○ri、E○ge)でアニメーションがひどい状況になっていることが発覚しました。 (開発中はChromeで確認を行っており、Chromeでは特に問題はなかったので発覚が遅れました。) それからは、狂ったようにパフォーマンスの改善方法をググり、修正する日々が続きました。(最終的には、なんとかマルチブラウザでの動作も担保し、納品まで完了しました。) その案件が落ち着いた後、改めて自分の調べたことを振り返ると、局所的な
ちょっとしたデータの加工や集計に、ExcelやGoogle Spreadsheetは便利ですが、それが日常的な作業になってしまったら自動化したいですよね? そこでお勧めなのがpandasです。 Pandasは Python 用のデータ処理パッケージであり、ExcelファイルやCSVなどの表形式データを読みこみ、加工や集計した上で、出力するといったことがプログラムで記述できます。また開発環境を用意しなくとも、Googleが提供する無料の開発環境であるColaboratory上で、すぐに試すことができます。 そしてPythonは、Office 98以降20年以降更新されていないVBAに代わる新たなスクリプト言語として、Microsoftが採用を検討しているという話もあります。 ExcelにPython搭載、マイクロソフトが検討。アンケートを実施中 まずPandasの全体像を掴んでみる Pand
はじめに 最近,職場の若手が自分も愛用しているVSCodeを使って開発をがんばっています.それに触発されてVSCodeでの開発環境についてまとめたものを書いていきたいと思います.まわりにはターミナル上でEmacsやVimを使ってコードを書いているプログラマも多い環境なので,なるべくマウスを使わずにキーボード操作だけで開発できるようにまとめます. https://code.visualstudio.com やりたいこと 次にあげる内容をキーボード操作で行えるようにするのが目標です. 指定したファイルを素早く開く 関数やクラスなどのシンボルで検索する 定義にジャンプしたり戻ったりする 手軽にC/C++をビルドして,素早くコンパイルエラーの場所を表示する 前提としてがっつり設定などをカスタマイズするというのではなく,初心者向けになるべく簡単に環境を立ち上げられる内容でまとめていきます.またビルド
「記事を書いてみたものの文字ばかりで味気無い」、という時にちょっとだけ変化を付けられる(...かもしれない)ビジネスマンの画像をつくってみました。 GitHubに上げたので、よかったら使ってみて下さい(記事以外でも使えるかもしれません)。 吹き出しに一言付け加えて記事の合間に配置すると、アクセントになると思います。実際にこれを使って書いた記事がこちらです。このようなストーリー性のある記事には使えるのではないかと思います。 絵の下に何をしているところかを表す作者(私)の意図を書きましたが、これに必ずしも従う必要はありません(見え方が曖昧なものも多いので)。 効果的に使用するには、以下のようなことに気をつけてください。 使い過ぎない 吹き出しを付ける場合は、言葉は短くする 拡大・縮小しすぎない ちなみに全てPower Pointで一からつくっています(これをつくりたいので、Power Poin
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? TL;DR HTTP でトークンを利用した認証・認可をする手法として RFC 6750 がある OAuth に限らず、トークンを利用して認証・認可する機構の一部として Authorization: Bearer ヘッダを使うことができる 使い方について詳しくはこの記事の下のほうに書いた 要求 トークンを利用した認証・認可機構を持つ API を作りたい クライアントがトークンを HTTP リクエストに含めて送信し、サーバはトークンを検証してリソースへのアクセスを許可したい Authorization: Bearer トークン ヘッダでトー
Sound Walker という Web アプリを作りました。 ↓ここで遊べます↓(スマートフォンで開いてください) https://www.sound-walker.app リポジトリはこちら https://github.com/Leonardo-mbc/sound-walker ホーム画面に追加することで、インストールしたアプリのように遊べます。 Webでどこまでできるかをやってみようと思って作り始めて、 ほっといて数年たったら技術がみるみる変わっていて、いろいろ味が出てきました。 Service Worker, Add To HomeScreen などなど Webでできるゲームってだけだったのが、普通にスマホで動くゲームになる時代になっております。 Sound Walker で使ってる技術は WebGL(Three.js), WebAudioAPI, ServiceWorker,
「他にこんなのがある」というのがあったら是非いっぱい教えてください! 歴史的に最も古くからある用途は「測量」でしょう。三角関数誕生のキッカケはまさに測量の必要性にありました。比較的日常生活でも見る機会がありそうな用途でしょうか。 ログハウス ケーキカット 震災時の家の傾き推定 現代では「波」としての用途が多いでしょうか。Twitter での様々な人のコメントを見ていても、 おっぱい関数 jpeg 画像 音声処理 といった具合に、波に関する話がかなり多いイメージです。これらの三角関数の使われ方を特集してみます。様々な分野に共通する三角関数の使い方のエッセンスを抽出したつもりですが、これでもかなり分量が多くなりました。摘み食いするような感覚で読んでいただけたら幸いです。 2. 三角関数の 3 つの顔 最初に三角関数には大きく 3 つの定義があったことを振り返っておきます。以下の記事にとてもよく
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く