並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 48件

新着順 人気順

デバッグ手法の検索結果1 - 40 件 / 48件

  • プログラミングスクールに通うくらいならこの本を読め10選 - ニート向けソフトウェアエンジニアリング塾

    概要 職業ソフトウェアエンジニアを目指す方々にオススメしたい書籍トップ10です 以下の観点から選定しました 10年後でも変わらない、流行にとらわれず長く役に立つ、ソフトウェアエンジニアリングにおいて普遍的な知識 特定のプログラミング言語やプラットフォームやツールに精通するのではなく、現代のソフトウェア開発の哲学・文化の全体像が把握できることを優先 200~300ページくらいで初心者でも読破できる 400~500ページくらいの本もあるが、それらは辞書的に使うのがいい あえて10冊に絞り込んだので、ここに含められなかった書籍も当然あります CI/CDやDevOpsに関する本も入れたかった… デザインパターンに関する本も入れたかった… DDDやClean Architectureなどシステム設計に関する本は意図的に入れていない 真・プログラミングスクールに通うくらいならこの本を読め10選を書きま

      プログラミングスクールに通うくらいならこの本を読め10選 - ニート向けソフトウェアエンジニアリング塾
    • アーケードゲームを支えるデバッグ術 - SEGA TECH Blog

      ブログ読者のみなさん、はじめまして。 株式会社セガのベテランプログラマー阿部です。 このエントリーではデバッグ手法のあれこれについての体験談と、デバッグをテーマに一昨年に実施されたプログラマー向け新人研修の概要をお伝えしたいと思います。 EXE ファイルのデバッグ イーサネット絡みのデバッグ 周辺機器絡みのデバッグ デバッグスキルブートキャンプ 黒子に徹する、裏方系エンジニア EXE ファイルのデバッグ 同僚が作った EXE ファイルが手元にあり、あなたはこれを Windows で起動しようとしています。 起動してみたところ何も反応がなく、しかもそれは想定外のことでした。 「何コレ、動かないんだけど」とあなたが同僚に文句を伝えると、同僚はあなたに返します。 「こっちでは動いてるよ」 困りましたね。 あなたの手元には EXE のソースコードも無ければ、Visual Studio もありません

        アーケードゲームを支えるデバッグ術 - SEGA TECH Blog
      • シニアフロントエンド開発者みたいにChromeデベロッパーツールを使おう - Qiita

        開発環境にChromeを選ぶなら知っておきたい12のテクニック Photo by Morning Brew on Unsplash さて、何らかの理由で、開発ブラウザとしてChromeを選んだとします。次は、デベロッパーツールを開き、コードのデバッグを開始します。 Consoleパネルを開いてプログラムの出力を確認したり、Elementsパネルを開いてDOM要素のCSSコードを確認したりします。 でも、Chromeデベロッパーツールを本当に理解していますか?実は、パワフルだけど知られていない機能がたくさん用意されていて、開発効率を大幅に改善できるのです。 ここでは、最も便利な機能を紹介します。お役に立てたら嬉しいです。 ChromeのCommandメニューから始めましょう。ChromeのCommandメニューは、LinuxのShellのようなものです。コマンドを入力してChromeを操作で

          シニアフロントエンド開発者みたいにChromeデベロッパーツールを使おう - Qiita
        • 開発体験を変える! Chrome DevTools Tips 7選 - Qiita

          最近Chrome DevToolsについて調べていて発見した便利機能を紹介します。 誰もが使える最高便利な開発マシンChrome DevToolsを使いこなして開発体験を変えましょう! 1. $0で選択中のDOM要素の取得 特定の要素に何かしたいという時には、要素のIDやclassを確認してConsoleでdocument.querySelector("#xxx")で取得するというのが一般的だと思います。実はそれはカーソル選択と$0で代替できます。 Classや、IDがついていない特定のDOMを取得したい時とかにも使えるので地味に便利です。 手順 カーソルで取得したい要素を選ぶ Consoleタブで$0を入力 最近知ったChrome DevToolsの便利機能① $0 での選択中のDOM要素取得 Elementsタブで選択状態のDOM要素は、Console上で $0 を入力することで取得で

            開発体験を変える! Chrome DevTools Tips 7選 - Qiita
          • console.log(); しか使えなかった自分へ。。。 - Qiita

            この記事について Webエンジニアになって早1年半。railsのデバッグをする時にはエディターのデバッガーでスマートにできていたが、javascriptになるといつもconsole.log();ばかりを使って原始的なデバッグをしていた。。。 そんな脳筋な過去の自分に教えてやるための記事です。 console.log({変数名}); 「いきなりconsole.log();の紹介かい!!!」って思われるかもしれませんが、この技を知ったときは「なんで知らんかったんや。。。」って思うくらい便利だったので最初に紹介します。 以下のようなHTMLがある場合 <form> <input type="text" value="名無しの権兵衛" id="name"> <input type="text" value="80歳" id="age"> <input type="text" value="バスケ"

              console.log(); しか使えなかった自分へ。。。 - Qiita
            • 「ディスプレイの脇のアヒルちゃんに説明することでバグに気づき、品質を高める」#ラバーダックデバッグ という手法があるけど、絵面だけでも草w

              なかめのくまちゃん@質問アプリQuerie.me開発者 @wgextra 「ディスプレイの脇に置いたアヒルちゃんに実装した処理を一行ずつ説明する中で実装者自らがバグに気づき、デバグして品質を高める」ラバーダックデバッグっていう手法があるんだけど、絵面だけでも草なのにどうやらマジで効果絶大らしく、もうこんなん大草原不可避だわ。アヒルちゃん買ってこよ。 pic.twitter.com/80zqajvdPV

                「ディスプレイの脇のアヒルちゃんに説明することでバグに気づき、品質を高める」#ラバーダックデバッグ という手法があるけど、絵面だけでも草w
              • はじめに - Writing an OS in 1,000 Lines

                本書では、小さなOSをゼロから少しずつ作っていきます。 OSと聞くと腰が引けるかもしれませんが、OS (特にカーネル) の基本機能は案外単純です。巨大なオープンソースソフトウェアとしてよく挙げられるLinuxでさえ、バージョン0.01はたった8413行でした。様々な要求に応えるために次第に肥大化していっただけで、当初は大変素朴な実装になっていました。 本書では素朴なコンテキストスイッチ、ページング、ユーザーモード、コマンドラインシェル、ディスクデバイスドライバ、ファイルの読み書きをC言語で実装します。これだけ様々な機能が詰め込まれているのに、コードは合計でたった1000行未満です。 「1000行なら1日でできそう」と思うかもしれませんが、初学者には少なくとも3日はかかるでしょう。OS自作のハマりポイントは「デバッグ」です。アプリケーション開発とは違うデバッグ手法・能力を習得する必要がありま

                  はじめに - Writing an OS in 1,000 Lines
                • 特定の端末のみで起こる WebView プチフリーズを Tracing を利用して追った話 - SmartNews Engineering Blog

                  こんにちは、スマートニュース株式会社の紀平です。 SmartNews のアプリ内では、最近 WebView を使った機能を多数公開しております。そのうちの一つにショッピングチャンネルという機能があるのですが、今日はそのショッピングチャンネルのタイムセール枠で以前発生した、謎のプチフリーズ問題の調査手法をご紹介します。 tl;dr 特定の Android 端末でプチフリーズが発生した 再描画領域を減らすことで現象は改善した Chrome の Tracing 機能を利用し、ブラウザのソースコードまで参照して、ついに根本原因まで突き止めた タイムセールで起こった問題 タイムセールは、SmartNews のショッピングチャンネル内において WebView で提供されている、期間限定のお得な商品をアグリゲーションした機能です。EC サイト各社のご協力の上にご提供しております。内部は HTML5 で開

                    特定の端末のみで起こる WebView プチフリーズを Tracing を利用して追った話 - SmartNews Engineering Blog
                  • mouseover 中に表示される DOM のデバッグ | blog.jxck.io

                    Update 2024-03-30: Chrome 123 から "Emulate a focused page" が追加された。 これを用いれば良いため、以降の全ての方式は古くなった。 Apply other effects: enable automatic dark theme, emulate focus, and more https://developer.chrome.com/docs/devtools/rendering/apply-effects#emulate_a_focused_page マウスが乗ってないと出ない UI も、そこに Tab などでフォーカスを移し、その状態で Dev Tools の "Emulate a focused page" を有効にすれば良い。 Intro 先日、後輩が「mouseover 中にしか表示されない DOM のデバッグ」に手こずっ

                      mouseover 中に表示される DOM のデバッグ | blog.jxck.io
                    • JavaScript で print デバッグ時に変数名を出力する - mizdra's blog

                      数列の和を求めるプログラムを作成することになり、意気揚々と以下のようなプログラムを書いたという状況を想像して下さい。 function sum(nums, acc = 0) { if (nums.length === 0) return 0; if (nums.length === 1) return nums[0]; return sum(nums.slice(1), acc + nums[0]); } const nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; console.log(sum(nums)); // expected: 55 一見すると何も問題なさそうに見えるプログラムですが、実はバグがあります (皆さん分かりますか?) *1。実際に上記プログラムを実行すると 55 ではなく 10 が出力されます。 こうした場面に遭遇すると、自然と sum

                        JavaScript で print デバッグ時に変数名を出力する - mizdra's blog
                      • ルールは現場で死にました - The Rules of Programming の読書感想文 - じゃあ、おうちで学べる

                        本日は人生の数ある選択肢のなかから、こちらのブログを読むという行動を選んでくださいまして、まことにありがとうございます。 はじめに プログラミングの世界には多くの指針や原則が存在します。Chris Zimmerman氏の「The Rules of Programming」(邦題:ルールズ・オブ・プログラミング ―より良いコードを書くための21のルール)は、不変の知恵を凝縮した一冊です。これらの原則は、多くの開発現場で活用できる有益な内容となっていると思いました。 The Rules of Programming: How to Write Better Code (English Edition) 作者:Zimmerman, ChrisO'Reilly MediaAmazon 本書は、大ヒットゲーム『Ghost of Tsushima』などで知られるゲーム制作スタジオ、Sucker Pun

                          ルールは現場で死にました - The Rules of Programming の読書感想文 - じゃあ、おうちで学べる
                        • 「禅とオートバイ修理技術」をプログラマが読んだ - Software Transactional Memo

                          「禅とオートバイ修理技術」これら2つの間にどのように関係があるのかまるで見当が付かず、タイトルだけ聞くとキワモノのようだがWikipediaによるとアメリカでは一番良く売れた哲学書とされている。 海外のエンジニアのブログを読み漁っていた時にオススメされていたのでKindleで買って読んだのだが想像以上に良かったのでメモを残したい。と言ってもwikipediaで説明されている内容を改めて説明しても面白くないのでソフトウェアエンジニアとして響いた部分を引用して僕の感じた事を書き連ねていく。 大都市の重工業地帯に一歩でも足を踏み入れてみれば、そこにはその全てが存在している。テクノロジーである。正面には有刺鉄線を施した高い塀が立ちはだかり、門は常に閉ざされ、「立入禁止」の札が掛かっている。そしてその向こうの薄汚れた大気の中には、金属や煉瓦で造られた醜い建物が立っている。その目的は不明であり、またそ

                            「禅とオートバイ修理技術」をプログラマが読んだ - Software Transactional Memo
                          • 【超入門】Laravelのデバッグ手法22選 - Qiita

                            はじめに Laravel Advent Calendar 2021 7日目の投稿です。 枠があまっていたので1日目に続いて7日目も投稿します。 他の記事のタイトルを見ると応用的な内容が多かったのでLaravel初心者の方向けにおすすめのLaravelデバッグ方法(tips)を22個ご紹介します。 思ったより数が多くなったので、1つ1つは掘り下げず概要と簡単な使い方をご紹介します。 公式ドキュメントや参考リンクも載せているので詳細はそちらを見てください。 どれか一つでもLaravel開発のヒントになれれば幸いです。 おすすめの手法 特におすすめの方法をご紹介します。 2.17. テストコードを書く 一番のおすすめはテストコードを書くことです。 予期する値と実際の値をテストしながらコードを書くことで一つ一つの処理を確認しながら進めることができます。 2.5. beyondcode/larave

                              【超入門】Laravelのデバッグ手法22選 - Qiita
                            • デベロッパーツールがさらに便利に!Flexboxの実装と検証が簡単になるFlexboxエディタとオーバーレイが搭載

                              先日リリースされたChrome 90のデベロッパーツールに、Flexboxの実装に役立つ新機能が2つ加わりました! 1つ目はFlexboxエディタでデバッキングツール、2つ目はFlexboxのオーバーレイ、どちらもWeb制作でFlexboxを使用する時に大活躍すること間違いなしです。

                                デベロッパーツールがさらに便利に!Flexboxの実装と検証が簡単になるFlexboxエディタとオーバーレイが搭載
                              • セルフホスト可能なCコンパイラを書く

                                最近、コンパイラを書くことが流行っているようだ。流行に乗ってやってみたらいろいろな知見が得られたので紹介したい。 コンパイラを書くと一口に言ってもいろいろなスコープがある。ここではC言語を用いてCコンパイラを書くことを選択した。C言語は言語仕様的にコンパクトで広く知られている。また、ツールとしてのCコンパイラも普及している。その場合、自分が書いたCコンパイラで、自分が書いたCコンパイラのソースコードをコンパイルすることが原理的には可能だ。これをセルフホストという。ひとつの到達目標として非常に興味深い。 当初は冬の間に終わらせる予定だったのだが春まで伸びてしまった。しかし、春になっても寒かったり雨で家に居る日が多く、アウトドアシーズンまでに目標のセルフホストを達成することができた。 昔、Cのインタプリタを書いたことがあったが、コンパイラを書くのは、はじめてである。時代も進んで開発手法が変わっ

                                • VS Codeを使ってPythonコードをデバッグするための基礎知識

                                  連載目次 前回は、mymath.pyファイルにフィボナッチ数を求める関数を3つ定義しました。今回は、Visual Studio Code(以下、VS Code)を使って、それらのコードを実行したり、デバッグしたりする手順を見ていきましょう。 コードの説明 まずは前回記述したコードを以下に示しておきます。これはmymath.pyファイルに記述しました。 def fib(n): if n == 0: return 0 if n == 1: return 1 return fib(n - 2) + fib(n - 1) def fib_l(n): a = 0 b = 1 if n == 0: return a elif n == 1: return b for _ in range(n - 1): a, b = b, a + b return b def fib_m(n, memo=None):

                                    VS Codeを使ってPythonコードをデバッグするための基礎知識
                                  • CSSを活用してHTMLのセマンティックエラーを指摘する方法 - ICS MEDIA

                                    CSSはWebページの見た目を整えるものですが、ちょっと違う使い方もできます。たとえば、予期せぬ横スクロールが発生した時、以下のようにすることで全ての要素のアウトラインが表示され、不用意にはみ出している部分が視覚的に分かりやすくなります。 * { outline: 2px solid red; } これを応用してタグの不適切な利用部分をハイライトできます。 このような不適切なタグ利用を検知して警告する「デバッグCSS」を作ってみました。このようなCSSをLintのようにする使い方は#lintHTMLwithCSSのハッシュタグで海外でも考案されています。仕様上許可されないものは赤色で点滅、ダメではないが、やらない方がベターなものは黄色で点滅するようになっています。 当記事では下記のデモを見ながらだと理解を深めやすいので、合わせて読むことをオススメします。 サンプルを別ウィンドウで開く コー

                                      CSSを活用してHTMLのセマンティックエラーを指摘する方法 - ICS MEDIA
                                    • もう一度読むObservability Engineering - じゃあ、おうちで学べる

                                      はじめに 本書『Observability Engineering』は、複雑化の一途をたどる現代のソフトウェアシステムに立ち向かうための、強力な武器となる一冊であり本稿はその読書感想文です。Observability Engineering を今から知りたい方はもちろん、Observability Engineering の基礎を改めて学びたい方もぜひお読みください。この記事もかなりの長さになるので普通に書籍を読んだほうがいいかもです learning.oreilly.com 「Observability:可観測性」という言葉は、近年ソフトウェアエンジニアリングの世界で大きな注目を集めています。しかし、その概念の本質を理解し、実践に移すことは容易ではありません。 本書は、そのオブザーバビリティについて、その基本的な考え方から、具体的な実装方法、そして組織への適用まで、幅広くかつ深く解説して

                                        もう一度読むObservability Engineering - じゃあ、おうちで学べる
                                      • CSS GridをChrome デベロッパーツールで検証、デバッグする方法を解説

                                        Chrome デベロッパーツールでWebページ上のCSS Gridを検証し、レイアウトの問題をデバッグする方法を紹介します。 Chromeの次のアップデートで予定されている機能で、現在はChrome Canaryで利用できます。 Inspect CSS Grid by Jecelyn Yeen 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様のライセンスの元、翻訳しています。 はじめに Webページ上のCSS Gridを見つける グリッドの表示オプション オーバーレイの表示設定 グリッドのオーバーレイ はじめに このガイドでは、Chrome デベロッパーツールでWebページ上のCSS Gridを検証し、レイアウトの問題をデバッグする方法を解説します。 使用しているCSS Gridのデモページは、下記の2つです。 Fruit box Snack box Webページ

                                          CSS GridをChrome デベロッパーツールで検証、デバッグする方法を解説
                                        • 実例で学ぶ MySQL/MariaDB デバッグ - nayuta-yanagisawa's blog

                                          この記事では、MySQL/MariaDB のバグを修正するための典型的な手順を、具体例を通して解説する。次の MariaDB のバグを例として取り上げるが、基本的なデバッグの手順は MySQL でもまったく同様である。 MDEV-24868: Server crashes in optimize_schema_tables_memory_usage after select from information_schema.innodb_sys_columns なお、MySQL/MariaDB のデバッグ方法についての包括的な解説を与えるのは、この記事のスコープ外である。デバッグ手法の詳細を知りたい場合は、以下の一連の記事を参照してほしい。 Debugging MySQL/MariaDB (1): Build and Test Debugging MySQL/MariaDB (2): DBU

                                            実例で学ぶ MySQL/MariaDB デバッグ - nayuta-yanagisawa's blog
                                          • Android 11で追加されたワイヤレスデバッグが便利だった

                                            Android11でワイヤレスデバッグという新しい機能が追加されました。 今までAndroid実機をADB経由で操作する際、USBケーブルで繋ぐ必要がありましたが、それをWi-Fi経由で接続できるようになった機能です。 参考 Google Developers Japan: Android 11: Developer Preview 3 機能と API の概要  |  Android デベロッパー  |  Android Developers ワイヤレスデバッグの有効化 ワイヤレスデバッグは開発者オプションから有効化できます。 開発者オプションが表示されない方は、デバイスの開発者向けオプションを設定する  |  Android デベロッパー  |  Android Developers を参考に開発者オプションの表示を有効化してください。 開発者オプションを開くと、デバッグメニューに表示さ

                                              Android 11で追加されたワイヤレスデバッグが便利だった
                                            • レスポンシブWebデザイン対応のWebサイト開発に特化したオープンソースのWebブラウザ・「Responsively」 - かちびと.net

                                              ResponsivelyはRWDの開発に特化したWebブラウザです。オープンソースとしてソースコードも公開されています 各スマホのデバイスやタブレット、PCなど異なるデバイスでどのように表示されるかを一括確認できる、というもの Electronベースとなっています。試しに使ってみました こんな感じで設定した各デバイスで指定したWebページが表示されます。スクロールやページの移動は全ウィンドウで連動しています。 ↑ インスペクタもついており、その場で編集、表示確認等を行う事が出来ます ↑ また、全デバイスのフルスクリーンショットもワンクリックで可能となっています。もちろん各デバイス単位でも撮影可能。撮影されたSSはドメイン、日付、撮影した時間を名前としたファイル名やフォルダ名で保存されますので上書きする心配もありません 尚、デバイスはかなりの量が用意されているのでお好みに合わせてウィンドウを

                                              • 2700人分のデバッグ作業を新卒1人で!CygamesのAIシステムがスゴい ニュースイッチ by 日刊工業新聞社

                                                Cygames(東京都渋谷区、渡辺耕一社長)は、人工知能(AI)技術でゲームデバッグシステムを確立した。AIがスタッフの代わりにカードゲームを行い、極まれに起こる不具合を探す。ゲームをするAIとゲーム環境と同一のミラー環境を構築した。2700人分の作業を新卒1年目のエンジニア1人で運用できるようになった。育成シミュレーションゲームなど適用範囲を広げていく。 研究部門のサイゲームスリサーチがシステムを構築した。まず人間のようにプレーするAIを開発した。完全に匿名化されたプレーデータをAIに学習させ、カードゲームにおける常識を身に付けさせる。このAIにランダムな要素を加えて、プレーヤーが選びそうな手よりも、広い打ち手の範囲を選ばせる。 デバッグAI用にカードゲーム「シャドウバース」のシステムと同じミラー環境を構築した。このミラー環境で900アカウント分のAIが24時間365日プレーする。 アカ

                                                  2700人分のデバッグ作業を新卒1人で!CygamesのAIシステムがスゴい ニュースイッチ by 日刊工業新聞社
                                                • ブラックボックスデバッグ

                                                  はじめに デバッグというとデバッガを使ったりprint文を挿入するのが一般的です。しかし、現実にはそういった手法を取れない環境でデバッグする必要があることもあります。 例えば私の仕事はLSIの設計ですが、製造されたLSIの動作中に内部を見ることは当然できません。もし何らかの不具合が発生した場合、内部を観測することなくデバッグする必要があります。 こういったデバッグ手法をここではブラックボックステストにならって「ブラックボックスデバッグ」と呼ぶことにします。ブラックボックスデバッグはLSI固有の技法ではありません。例えばソフトウェアでもデバッガのアタッチやprint文の挿入で状態が変わってバグが再現しなくなることはあります。また大規模なネットワークインフラのデバッグでは対象が大きすぎて、実質的に詳細を観測できないこともあるかもしれません。 このようなブラックボックスデバッグは(おそらくドメイ

                                                    ブラックボックスデバッグ
                                                  • 在宅勤務で手元にない端末でのアプリのデバッグをするために準備しておくこと - Infinito Nirone 7

                                                    コロナ禍で在宅勤務が一気に広まり、自宅でアプリの開発やリリースをすることが多くなりました。この状況のなかで、アプリの挙動に問題があるなどで動作確認をしようと思うとき、その問題に対処するためのデータを集めたり、問題が発生したときの状況を確認するための手立てを持っておく必要があります。この記事では、手元にない端末で起きる問題のトラブルシューティングをしやすくするために準備しておくとよいことを書き残しておこうと思います。 端末のログを収集する ある端末でアプリがクラッシュしたときに、そのスタックトレースを記録しておくことはとても重要ですが、そのクラッシュにいたるまでに何があったかをログとして収集しておくことで、クラッシュが起きた状況を把握しやすくなります。 Firebase Crashlytics や DeployGate など、端末からログを収集して Web コンソール上で閲覧できるようにして

                                                      在宅勤務で手元にない端末でのアプリのデバッグをするために準備しておくこと - Infinito Nirone 7
                                                    • 1から学ぶAndroidアプリデバッグ - アプリの動作を追いかけよう / Learn Android application debugging from the scratch - track apps' behaviors

                                                      2020/2/20-21で開催されるはずだったDroidKaigi 2020で登壇するはずだったAndroidのデバッグ手法について紹介するスライドです。3月中にセッション録画を行い、DroidKaigi公式YouTubeチャンネルにて公開していただく予定です。

                                                        1から学ぶAndroidアプリデバッグ - アプリの動作を追いかけよう / Learn Android application debugging from the scratch - track apps' behaviors
                                                      • JavaScriptでconsole.log()を使うのはやめよう - Qiita

                                                        もっと良い選択肢がある Photo by Hugo Rocha on Unsplash はじめに あなたは、console.log()をコードのデバッグによく使うJavaScript開発者ですか?それには何の問題もありません。でも、知らないかもしれませんが、consoleオブジェクトには他にも驚くべきメソッドが沢山あります。この記事では、その効果的な使用方法について説明したいと思います。 consoleオブジェクトを使用する理由 JavaScript の consoleオブジェクトは、ブラウザのデバッグコンソールにアクセスし、コードで使用した変数の値を出力できます。多くの場合、正しい値がコードに渡されているかデバッグするために使用します。 ほとんどの開発者は、console.log()を使用してブラウザコンソールに値を出力したことがあると思います。logは、consoleオブジェクトの1メ

                                                          JavaScriptでconsole.log()を使うのはやめよう - Qiita
                                                        • Istioのenvoyサイドカーをデバッグする - CADDi Tech Blog

                                                          SREチームの前多です。以前、Google Cloudが提供するサービスメッシュのAnthos Service Meshの入門記事を書きました。 caddi.tech この記事のまとめで私は、Istio (Anthos Service MeshのベースのOSS) を詳しく知るには、envoyのことをもっと知る必要があると書きました。 そしてサービスメッシュで何かエラーが起きているとき、それはサービスメッシュ自体ではなく インフラやアプリケーションのバグや設定ミスがサービスメッシュによってあぶり出されるということも述べました。 先日、サービスメッシュ上でPod間のgRPC通信が特定条件で失敗し、サイドカーがない場合のみ通信が成功するという事象が起きていました。 gRPCのライブラリのアップデートやIssueの調査しましたが、原因がわからずサイドカーを外すしかないかと思っていました。 最終手段

                                                            Istioのenvoyサイドカーをデバッグする - CADDi Tech Blog
                                                          • セキュアで信頼性のあるシステム構築

                                                            システムのセキュリティと信頼性は表裏一体です。セキュリティは、プロダクトの品質、パフォーマンス、可用性と密接にかかわるため、スケーラブルなシステムの設計と運用にとって極めて重要です。本書は、GoogleのセキュリティとSREのエキスパートが、根本からセキュアで、スケーラブルかつ信頼性の高いシステムを設計するためのベストプラクティスを紹介します。 既刊書『SRE サイトリライアビリティエンジニアリング』と『サイトリライアビリティワークブック』は、企業がソフトウェアシステムをスムーズに構築、デプロイ、監視、保守するうえで、サービスライフサイクル全体への取り組みが重要な理由とその方法を解説しました。本書では、システムの設計、実装、保守に関する考え方と実践法を解説します。また、ベストプラクティスに取り組むために必要となる組織の文化についても説明します。 本書への推薦の言葉 Royal Hansen

                                                              セキュアで信頼性のあるシステム構築
                                                            • 音声で脅迫するランサムウェア「Mazeランサムウェア」の内部構造を紐解く | 調査研究/ブログ | 三井物産セキュアディレクション株式会社

                                                              7月中旬、Mazeランサムウェアの被害を受けたと思われる日本国内の企業のデータが攻撃者のWebサイトで公開されたことが一部で話題になりました。 Mazeランサムウェアは過去にChaChaランサムウェア(暗号アルゴリズムのChaChaを使用することからの由来)と呼ばれていたランサムウェアの亜種であり、2019年5月に初めて存在が確認され、感染経路としてはこれまでにスパムメールへの添付や脆弱性の利用、ネットワーク侵入などの経路が確認されています。 Mazeランサムウェアを操る攻撃者の大きな特徴は、ランサムウェアによって暗号化を行う前にすでに被害者端末からデータを盗み出しており、身代金支払いの要求に応じない場合はそれらの窃取データを実際に公開するという点です。最近はMaze以外の他のランサムウェアを用いた攻撃においてもこの流れが見られており、ランサムウェア感染と情報流出の2点は切り離せないものと

                                                                音声で脅迫するランサムウェア「Mazeランサムウェア」の内部構造を紐解く | 調査研究/ブログ | 三井物産セキュアディレクション株式会社
                                                              • 【必見】プログラミングを学ぶ上で絶対に覚えておきたい原則10選

                                                                はじめに DRY, KISS, 車輪の再発明, などなど... プログラミング界隈には、一見「???🤔???」となるような、原理原則がたくさんあって困惑しますよね。。。 今回は備忘録的に、特に有名だと思った10個を独断でピックアップして記録していきます。 1. DRY Don't Repeat Yourself. ✅ 同じ内容のコードを複数箇所に書いてはいけない。(1箇所にまとめるべき) ✅ 同じ内容のコードは1箇所にまとまっていた方が、手直しが発生した場合に修正が容易になります。 複数箇所に散らばっている場合は、その数だけ修正が必要になるためミスが発生しやすくなります。 2. KISS Keep It Simple, Stupid. ✅ コードをシンプルに保つ。(無駄なコードを書かない) ✅ 自分の興味で新しく覚えた技術を使ってみたり、仕様書にないけど将来必要になりそうなコードを書いて

                                                                  【必見】プログラミングを学ぶ上で絶対に覚えておきたい原則10選
                                                                • iOSエンジニア向けOSS Forwardワークショップを開催しました - Money Forward Developers Blog

                                                                  はじめまして!iOSの技術顧問をしている@giginetです。Money Forwardでは、2021年3月よりiOS分野の技術顧問を務めており、2〜3ヶ月に1度のペースで社内勉強会を実施しています。 あんざいゆき、三木康暉の両氏が、AndroidおよびiOSの技術顧問に就任|株式会社マネーフォワード https://corp.moneyforward.com/news/release/corp/20210305-mf-press2/ 技術顧問giginetさんインタビュー コミュニティ活動やOSS活動の秘訣を聞いてみました | Money Forward Money Forward Engineers' Blog https://moneyforward.com/engineers_blog/2021/09/15/giginet-san-interview/ 普段は、WWDCの振り返りや

                                                                    iOSエンジニア向けOSS Forwardワークショップを開催しました - Money Forward Developers Blog
                                                                  • 継続的デプロイメントの継続的な学習 - Continuous Deployment の読書感想文 - じゃあ、おうちで学べる

                                                                    自動化は私の忍耐力の限界を補完してくれます。 はじめに 本書「Continuous Deployment」は、継続的デプロイメントの実践に焦点を当てた包括的なガイドです。継続的デプロイメントは、ソフトウェアパイプラインを完全に自動化し、手動介入を必要としない手法です。この方法により、クオリティーゲートを通過したすべてのコードコミットが自動的に本番環境にデプロイされます。 私は、ソフトウェア開発の現場で、オンプレミスの手動デプロイから始まり、Makefileによる自動化、JenkinsやCircleCI、GitHub Actions、GitLab CI/CD、AWS CodePipeline、Cloud Build 、ArgoCD、PipeCDなど、様々なツールや手法を経験してきました。この過程で、継続的デプロイメントが開発プロセスを改善し、ビジネス価値を創出する様子を目の当たりにしました。

                                                                      継続的デプロイメントの継続的な学習 - Continuous Deployment の読書感想文 - じゃあ、おうちで学べる
                                                                    • Apple Silicon MacBook のCPU使用状況をMackerelで可視化する - wtatsuruの技術方面のブログ

                                                                      これは Mackerel Advent Calendar 2021 の5日目の記事です。昨日は @sogaoh さんによる [Day.04] Mackerel で かんたん AWS SES の bounce rate 監視 でした。 はじめに 先日、仕事用マシンを Apple Silicon 搭載の MacBook Pro 14インチ (2021) に更新しました。2018年の13インチからの乗り換えだったんですが、快適さに驚いています。リモートワークでビデオ通話を含む多くのツールを同時に動かすことも多いんですが、引っ掛かりを感じることがほとんどなく過ごせています。 今日から M1 MacBook Pro に変えて仕事してるのだけど、ビデオ通話しながら Google Docs を複数開いて miro に絵を描きつつ裏で docker build する、みたいな荒い使い方しても普通に快適に過

                                                                        Apple Silicon MacBook のCPU使用状況をMackerelで可視化する - wtatsuruの技術方面のブログ
                                                                      • Ruby: 「オブジェクト指向トレース」とtapping_device gemで効率よくデバッグ(翻訳)|TechRacho by BPS株式会社

                                                                        概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Optimize Your Debugging Process With Object-Oriented Tracing and tapping_device - DEV Community 原文公開日: 2020/01/22 著者: Stan Lo I wrote a blog post to propose a new debugging strategy called object-oriented tracing. I've been experimenting with this concept for months and I'd love to hear any feedback about it or how you debug your Ruby program! Please retweet for reach

                                                                          Ruby: 「オブジェクト指向トレース」とtapping_device gemで効率よくデバッグ(翻訳)|TechRacho by BPS株式会社
                                                                        • じゃあ、おうちで学べる

                                                                          本日は人生の数ある選択肢のなかから、こちらのブログを読むという行動を選んでくださいまして、まことにありがとうございます。 はじめに プログラミングの世界には多くの指針や原則が存在します。Chris Zimmerman氏の「The Rules of Programming」(邦題:ルールズ・オブ・プログラミング ―より良いコードを書くための21のルール)は、不変の知恵を凝縮した一冊です。これらの原則は、多くの開発現場で活用できる有益な内容となっていると思いました。 The Rules of Programming: How to Write Better Code (English Edition) 作者:Zimmerman, ChrisO'Reilly MediaAmazon 本書は、大ヒットゲーム『Ghost of Tsushima』などで知られるゲーム制作スタジオ、Sucker Pun

                                                                            じゃあ、おうちで学べる
                                                                          • VSCodeを使ったPHPのデバッグ環境をWindows10に構築する方法(1/2)

                                                                            前のページ   1 2 次のページ VSCodeを使ったPHPのデバッグ環境はメチャクチャ便利です 当サイトは当初よりPHPをかなり駆使して作ってきたのですが、正直なところ、PHPのデバッグは、変数の内容を echo や var_dump などでブラウザに表示させてみる程度しかやっていませんでした。しかし、このところ、英語ページ対応など、いろいろとさらに複雑な仕組みを作り始めようとすると、さすがにデバッグの効率が悪くなってきました。一応、Visual Studio Code はファイルの編集に使っていたので、それを使ってPHPのデバッグができないかと思っていたら、やはりありました。というか、はるか昔からそのような仕組みはあったようですね。 変数の値を画面に表示させるデバッグ手法だけではなく、ブレークポイントを設定し、実行の途中で止めて変数の値やスタックトレースなどを確認できるようになります

                                                                            • Pythonの魔法の瞬間: `breakpoint()`の不思議な世界 - Python転職初心者向けエンジニアリングブログ

                                                                              最新のPythonバージョンで導入されたbreakpoint()関数は、デバッグの新しい次元を切り開く魔法の言葉のようだ。システムエンジニアとして日々開発に携わりながら、この小さな関数がどれほどの可能性を秘めているのかに驚かされることがある。本記事では、breakpoint()関数に焦点を当て、その驚くべき力をコード例とともに解き明かしていく。 デバッグの新たなる旅へ breakpoint()はPython 3.7以降で利用可能な組み込み関数であり、これをコードに挿入すると、実行がその位置で中断され、対話的なデバッガが起動する。これは従来のpdbモジュールを使ったデバッグよりもシンプルで、かつ強力なツールとなっている。 def complex_calculation(x, y): result = x * y breakpoint() # ここでデバッグを開始 result += x /

                                                                                Pythonの魔法の瞬間: `breakpoint()`の不思議な世界 - Python転職初心者向けエンジニアリングブログ
                                                                              • ディープラーニングには品質保証が必要、どうやって実現するか

                                                                                ソフトウェアエンジニアのトビアス・クペック氏は2021年11月15日(米国時間)、開発者向けQ&Aサイト「Stack Overflow」のブログに記事を寄稿し、ディープラーニングパイプラインのQA(品質保証)プロセス構築について解説した。 ディープラーニングモデルには、一般的なテスト手法の多くは適用できないが、適切な手法でテストを行うことで、ディープラーニングパイプラインが良い結果を出せるようになるとしている。 ディープラーニングではなぜ品質保証が異なるのか 通常のソフトウェア開発では、クラッシュしたときに障害を発見できる。最初の障害点はほとんどの場合、明確だ。 だが、ディープラーニングモデルでは、障害点の候補がたくさんあり、特定が難しいこともある。このため、開発者が慣れ親しんだステップバイステップのデバッグ手法を使って障害点から徐々にバグを追い詰めることは困難だ。 ディープラーニングモデ

                                                                                  ディープラーニングには品質保証が必要、どうやって実現するか
                                                                                • 水平スクロール発生時の原因特定に使える便利スニペット - NxWorld

                                                                                  ページ内で意図しない水平スクロールが発生してしまった際、パッと見で該当箇所が見つからないとか他からの引き継ぎで修正する必要がある場面で、原因となる要素を見つけるのに使える便利スニペットです。 JavaScriptで要素特定 デベロッパーツールを開いてConsoleで下記を実行すると、ドキュメントサイズよりも大きい、つまり横スクロールが発生しているであろう要素を出力してくれます。 該当するものがなければundefinedのみが出力されます。 let docWidth = document.documentElement.offsetWidth; [].forEach.call(document.querySelectorAll('*'), (el) => { if ( el.offsetWidth > docWidth ) console.log(el); }); CSSで視覚的に特定 CS

                                                                                    水平スクロール発生時の原因特定に使える便利スニペット - NxWorld