ブックマーク / qiita.com/kotauchisunsun (18)

  • 大規模な移行バグを修正するための戦術 - Qiita

    こう見たとき、"FileNotFound"のバグが一番多い。と分かりました。そうすると、"FileNotFound"のバグを修正すると、多くの移行エラーが解消され、効率よく移行が進むと考えられます。しかし、現実問題として、それほど直りませんでした。 "簡単なバグ"とは何か? 前節では、バグの発生頻度が高いものから修正していくとアプローチをしていきましたが、実際問題それほどうまくいきませんでした。端的に、なぜ失敗したか。というと、"バグが直らなかった"からです。仮に"FileNotFound"のバグを直そうとしたとき、2,520個あるログファイルから、ランダムに1つとりだし、どの部分でエラーになっているのかを細かく見ていきます。それで、バグの原因を特定し、直す。という極シンプルなアプローチをするわけですが、「このバグの原因を特定する」ということが、そもそも難しかった。ということです。先にも書

    大規模な移行バグを修正するための戦術 - Qiita
  • 自動テストはなぜうまくいかないか?乗り越えるためには何が必要か? - Qiita

    リファクタリングの鶏卵問題 ソースコードがクソなので綺麗にしたい。 リファクタリングしたい。 しかし、リファクタリングが出来ない。 リファクタリングが出来ないのは、テストが無いからだ。 よし。じゃあテストを書こう。あれ、テストが書けない? そのようなテストが無く、書き換えられないことによる矛盾や憤りは皆さん何百回と感じてきたと思います。 しかし、この「テストが出来ない」ということを言語化するのは、非常に難しいと思います。それは、「テストが出来ない」には実は2つの視点があります。 質的にテストが困難なモジュールで、誰がやってもテストが書けない。 質的にモジュールはテスト可能だが、自分の実力が足りず、自分ではテストが書けない。 1.のようなテスト困難なモジュールは誰がやってもテストは書けないです。しかし、問題は、「テストを書きたい」と思ったとき、「自分がそれほどテストに詳しくない」という場

    自動テストはなぜうまくいかないか?乗り越えるためには何が必要か? - Qiita
  • あなたはフロントエンドの何をテストしたいのか。 - Qiita

    フロントエンドのテストをしよう Webのフロントエンドの自動化を進めようか。という話をしていて、 「そもそもテストってなんだ?」 「フロントエンドに特有のテストってなんだ?」 「〇〇ってツール流行ってるらしいってどうよ?」 みたいなことを話をしていました。そうしたときに、やっぱり知識足らねぇなぁ。と思ったので、2,3日でゴリゴリと内容をまとめてみる作業をしてみました。 あんまりこういう書き方はしないんですが、私自身散発的な思考で、フロントエンドのテストを調べることをしたので、そのような語り口で書いてみようと思います。 以下の内容は、あくまで例なので、別にこういう仕事があったわけではないです。 とりあえず投げられた要求・仕様 とりあえずなんか仕事が振ってきた。パラパラと要求を聞いてみると、こんな感じだった。 承認のダイアログが欲しい メッセージのフォントはOswald メッセージは変更できる

    あなたはフロントエンドの何をテストしたいのか。 - Qiita
  • 流行っている・流行っていないプログラミング言語に関する1つの考察 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? なぜ〇〇というプログラミング言語は流行らなかったのか? 最近、私は古くからあるプログラミング言語に興味があり、LispやSmalltalkなどの言語に興味があります。触っていくうちに、結構面白いな。と思うことがあるのですが、それほど人気があるとは言えません。 例えば、プログラミングの人気を表すTIOBE Indexでも、ランクが高いとは言えませんし、それらの言語はプログラミング言語の歴史。という中で、ちょっと学ぶぐらいで、それほど詳しくは知らない。という人が多いでしょう。 Quoraを探してみると、「Lispはなぜ覇権を握らなかったので

    流行っている・流行っていないプログラミング言語に関する1つの考察 - Qiita
  • WSL2で困ったときに使う魔法の呪文 - Qiita

    絶対だいじょうぶだよ 引用:Windows 7、Linuxのリーナス・トーバルズも太鼓判 みなさん。WSL2使ってますでしょうか。 WSL2とは2019年5月に「Build 2019」で発表された、Windows Subsystem for Linuxのアップデート版です。 ざっくりというとMS公式が作ったWindows上で動くLinuxです。 正直、こういうものは昔からあり、眉唾ものだったのですが、WSL2あたりから、dockerが正常に動作するようになり、開発環境として常用するようになりました。 そこで、私が半年使ってきた中で、WSL2関連でどういう問題が発生したのか、どういう解決をしたのか。そのあたりを紹介したいと思います。 それらの問題は、大体1つの魔法の呪文でなんとかなります。 apt-getが失敗する ピーリカピリララ ポポリナペーペルト! なんかapt-getが失敗する とい

    WSL2で困ったときに使う魔法の呪文 - Qiita
  • WSL2が突然動かなくなって公式Issueが荒れてる話 - Qiita

    概要 WSL2で困ったときに使う魔法の呪文の次の日ぐらいから、突然、会社のPCWSL2が動かなくなりました。 自分はかなり致命的で、WSL2が動かないと仕事にならないレベルだったのでだいぶ焦りました。 そんな人用への解決方法を書いておきます。 事象 wslを起動しようとすると、bashが起動せず、以下のようなメッセージが出ます。 A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. 日語だと、「接続に失敗しました」みたいな文面が表示されます。(スクショを取り忘れた) 解決方法

    WSL2が突然動かなくなって公式Issueが荒れてる話 - Qiita
  • 宇崎ちゃんは本当に"過度に性的"なのか? - Qiita

    "性的である"とは? ことの発端はとあるツイートでした. I admire the work the Red Cross does, which is why I’m disappointed that @JRCS_PR in Japan would run a campaign using the over-sexualized Uzaki-chan. There’s a time & a place for this stuff. This isn’t it. #women #metoo #kutoo pic.twitter.com/bhds7IPPTq — Unseen Japan @ 超スプーキー (@UnseenJapanSite) October 14, 2019 日赤十字のポスターに「宇崎ちゃんは遊びたい!」というマンガのキャラクターが採用されました.そのポスターの絵柄が*

    宇崎ちゃんは本当に"過度に性的"なのか? - Qiita
  • コナンがC++のシングルバイナリの問題解決!? - Qiita

    バイナリはいつも1つ!! たった1つのバイナリ作る!見た目はコマンド!なかみはPython!その名は、パッケージマネージャー!コナン! 作業用BGM https://t.co/nj0p6lpm8o — こたうち@VTuberエンジニア (@kotauchisunsun) August 22, 2019 大体,言いたいことの9割ぐらいは言えたので満足です. 俺は高校生探偵のsudo sync which.幼なじみで同級生のrunと遊園地に遊びに行って・・・ 先日,Photogrammetry on Docker ~ サーバ屋さんもXRしたい ~という記事を書きました. これは,「フォトグラメトリができるDockerコンテナを作る」というのが主目的ではあったのですが,サブの課題として,「マルチステージビルドをする」「コンテナサイズの削減をする」といった目標がありました.何のため?ということを少

    コナンがC++のシングルバイナリの問題解決!? - Qiita
  • たぶん知らないPythonマイナー文法の世界 - Qiita

    概要 私はPythonが好きで10年ぐらい使っています.QiitaでもPythonの記事を結構読みますが,その中で,あまり見かけないPythonのマイナーな文法.マイナーな記法について紹介したいと思います. 実用性は・・・あるかどうかは知りません.マイナーな文法なんて趣味の世界でしかないですし.それはマイナーじゃねぇ!と言われるかもしれませんが,あくまで筆者が他の人のコードで見たことないものです. リスト以外の内包表現 軽いジャブということで,リスト型以外の内包表現を取り扱いたいと思います. 辞書型

    たぶん知らないPythonマイナー文法の世界 - Qiita
  • リファクタリングして学ぶTypeScriptでクリーンアーキテクチャ - Qiita

    概要 最近,ASCII Dwangoさんから「クリーンアーキテクチャ」というが出版されました. そこに書いてある内容は素晴らしいものでした.しかし,実際に組んでみた場合,どういう風に作るのが良いのか?どういう問題があるのか?そういった疑問が湧いてきました.そこで, 実際に非クリーンアーキテクチャのコードをリファクタリングしていくことで,クリーンアーキテクチャの要点を感じる. という試みです. クリーンアーキテクチャとは ここでは簡単にしか説明しませんが,実際にを読んで勉強することをお勧めします. 「クリーンアーキテクチャ 達人に学ぶソフトウェアの構造と設計」のp200によると フレームワーク非依存:アーキテクチャは,機能満載のソフトウェアのライブラリに依存していない.これにより,システムをフレームワークの制約で縛るのではなく,フレームワークをツールとして使用できる. テスト可能:ビジネ

    リファクタリングして学ぶTypeScriptでクリーンアーキテクチャ - Qiita
  • 誰でも簡単にバーチャルユーチューバー!FaceVTuberとdynamic import - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? FaceVTuberをリリースしました!! 追記:続編を書きました!! バーチャルYoutuberになれる!FaceVTuberの定性的で定量的なUX改善 3/12にGoogleChromeとWebカメラさえあれば,バーチャルユーチューバーになれるFaceVTuberをリリースいたしました. 「最近流行のバーチャルユーチューバーになりたい!!」 でも,特別なハードウェアが必要だったり,ソフトウェアの設定が大変だったり,難しい!! そんな悩みを解決するのがFaceVTuber!! ブラウザで動く,簡単バーチャルユーチューバー体験をみんなで

    誰でも簡単にバーチャルユーチューバー!FaceVTuberとdynamic import - Qiita
  • プログラム高速化の禁術 - Qiita

    はじめに これは昔(2010年頃)自分が使っていた高速化技法について書いたものです. 今となってはレガシーだったり,通用しないものもあるかもしれませんが,こういう知識も無くなってしまったり,自分も忘れてしまう気がしたので,メモ代わりに書いておきます. ただ言えることは,「最適化はするな」ということです.最適化すると,保守性が大幅に失われる危険性があります.そして,これから書く項目を1つ1つ行って,高速化できたとしても,せいぜい2倍程度です.ただその2倍程度の速度も欲しい!そのためには悪魔に魂と保守性を売る!という方はご覧ください.これらの高速化は割といろいろな言語に当てはまることも多いですが,大体C++で書くことを念頭に置いていただければ,幸いです.あと,個人的には競技プログラミングだったり,計算科学をやっていた時期に見つけた経験則なので間違ってる場合もあります. コンパイルオプションをこ

    プログラム高速化の禁術 - Qiita
  • Serverless環境は600倍以上遅い? ~GoとNode.jsとPythonでベンチマークとってみた!~ - Qiita

    Serverlessは遅い? 以前の記事を書いたときに,自前で建てたサーバーレス環境のレスポンスが遅いなぁ.という肌感覚がありました.内部的にDockerを利用して,コンテナを起動している分,一般的なサーバーより遅いだろうという想像はしていました.しかし,どれくらいレスポンス速度が劣化するのか?あまり比較記事というものはないので,実際に計測してみることにしました. AWS Lambdaはどれくらいの速度? サーバーレスアーキテクチャという技術分野についての簡単な調査 という記事によると, 利用できるデータがほかに見当たらなかったので、ここではtaka4sato氏5の短いコメントを参照しておく。それによればAPI Gateway経由のLambdaファンクションの応答時間は「早いと250 msec、遅いと8000 msecぐらい」だそうだ。 と書かれています.ということは,類似したServer

    Serverless環境は600倍以上遅い? ~GoとNode.jsとPythonでベンチマークとってみた!~ - Qiita
  • GoとPythonとGrumpyの速度ベンチマーク ~Googleのトランスパイラはどれくらい速い?~ - Qiita

    概要 GrumpyというPythonからGoへのトランスパイラを使ってみた GoPythonとGrumpyでベンチマークを取ってみた 処理速度は Go >> Python >> Grumpyで非常にGrumpyが遅かった Grumpyとは Googleは1月4日(米国時間)、「Google Open Source Blog: Grumpy: Go running Python!」において、Goで開発されたPython実行環境「Grumpy」を発表した。GrumpyはGoで実装されたPython実行環境。Pythonのコードを一旦Goのコードに変換することで動作するコンパイラ方式を採用。並列処理性能が優れているほか、PythonコードからGoのパッケージをPythonモジュールのように呼び出して利用することもできるという特徴がある。 引用:Google、すごくスケールするPython実行環

    GoとPythonとGrumpyの速度ベンチマーク ~Googleのトランスパイラはどれくらい速い?~ - Qiita
  • https://qiita.com/kotauchisunsun/items/191f2c818813b7ea543e

  • メタバースの技術限界の解説 - Qiita

    これらの試算から、1人あたりのトラッキングによる通信量はおおよそ16.88kbpsから112.50kbpsと考えられます。 スター型ネットワークの場合 ここでメタバースでスター型のネットワークを採用することを考えます。 どのような構成かというと、クライアントがトラッキングデータをサーバーへ送信します。各クライアントへのトラッキングデータの送信はサーバーが行います。 こうした構成を行う場合、全てのクライアントのデータがサーバーを介し、各クライアントへ流れ込みます。そのため、通信速度は下り速度がボトルネックとなります。ここでは人口75%ラインの88Mbpsを上限として考えます。 先ほどの1人当たりのトラッキングに関わる通信量から算出すると、スター型の場合、801~5,340人が通信の限界になります。 フルメッシュ型ネットワークの場合 一方で、サーバーを介しないクライアント同士が直接つながるフル

    メタバースの技術限界の解説 - Qiita
  • Python標準実装より速い!?Oracleが作ったGraalPythonをJython・CPythonとベンチマークしてみた!! - Qiita

    GraalVM・GraalPythonとは GraalVMは2018年4月27日にOracleから公開された仮想マシンです. GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Clojure, Kotlin, and LLVM-based languages such as C and C++. GraalVMJavaScript,Python,Ruby,R,JavaScala,Clojure,KotlinのようなJVMベースの言語,CやC++のようなLLVMベースの言語で書かれたアプリケーションを動かすための仮想マシンです. ちょっと何を言ってるかわから

    Python標準実装より速い!?Oracleが作ったGraalPythonをJython・CPythonとベンチマークしてみた!! - Qiita
  • 糞コードは直すな。 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? とりあえず落ち着け。 みなさん、毎日なにかしらのコードを読み、開発する日々を送っていると思います。そんな中で、 糞コードは死ぬべきである!!絶対に直すべき!! という感情に取りつかれてしまうことがあると思います。自分の技術力に自信のある人ほど、無理やりにでも直そうと試みると思います。それがどんな修羅の道か。そして、糞コード修正がどんな道を歩むのか。この記事では糞コード修正の罠とありがちなストーリーについて書きたいと思います。 ビジネスとしてのプログラムは質的に糞である 例えば、「携帯電話の利用料金」のプログラムがあります。 「携帯電話

    糞コードは直すな。 - Qiita
  • 1