タグ

ブックマーク / qiita.com (266)

  • なぜ我々はいまだに文字列でコメントを書いているのか - Qiita

    あるいは、画像コメントのすすめ。 TL;DR 画像コメントのほうが意図が伝わりやすい 画像URLからツールチップで画像表示してくれるVSCode拡張機能があるよ その場で画像を作るSVGエディタもあったよ 問題提起 みなさんは、少し複雑なアルゴリズムを書くことになったときどうしていますか。 たいていの場合、いきなりコーティングに取り掛かるのでなく、 雰囲気をつかむためメモやホワイトボードに落書きすると思います。 特に幾何計算では簡単なものでも図を描いた方がいいです。こんな感じ。 図を書いたら後はコードに落とすだけです。 ね、簡単でしょう? // 指定した直線を対称軸としたときの指定した点の鏡映位置を返す function flipVectorByLine(p: Vector, line: Line): Vector { // TODO: よくわかるコメントを書く const ln = ne

    なぜ我々はいまだに文字列でコメントを書いているのか - Qiita
    mohno
    mohno 2018/09/22
    手描きで図を描くことはあるけど取り込むのは面倒だからなあ。リンクですむならURL書いておくけど。あと図だけだと検索しにくいというのはある。「VSCodeにはImage previewという拡張機能があり」
  • 【PHP7.4】ついにPHPにプロパティ型指定がやってくる - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    【PHP7.4】ついにPHPにプロパティ型指定がやってくる - Qiita
    mohno
    mohno 2018/09/15
    フリーになった直後にPHP試し始めて「ないわー」と思った頃が懐かしいな。だんだん別のモノに変貌している気がするが、PHPって“資産があるから使う”ものだったんじゃないかという気はする。
  • Chrome拡張の高速な英語辞書ツールをつくりました(Mouse Dictionary) - Qiita

    経緯 もともとMouseoverDictionaryという素晴らしいFirefox用辞書があったのですが、Quantumの登場とXULの廃止とともに使えなくなってしまったため、自分用にChrome拡張をつくった次第です。 ソースコード 実装に関わる技術寄りの用語: React, esbuild, chrome.storage.local, chrome.storage.sync, Cross-extension messaging, Hogan, debounce, resizable/draggable, intl.v8BreakIterator, deinja, クロスブラウザ, など。 ※詳細は「Mouse Dictionaryの技術的な話」をご参照ください https://qiita.com/wtetsu/items/2a5568cb0b5a38c003fb 使い方 インストール

    Chrome拡張の高速な英語辞書ツールをつくりました(Mouse Dictionary) - Qiita
    mohno
    mohno 2018/09/05
    英語辞書ってデータはどこから持ってくるんだろうと思ったら英辞郎だった。「この拡張は英辞郎を使うことを目的に作りました」今、450円(+税)なんだ。
  • プログラマが知っているとよい色(1)使い(JIS安全色) - Qiita

    色の指定値 http://safetycolor.jp/shiteichi/ JIS外16進数は次の2つの資料に基づき追記。(ただし白の文字色は、#FFFFFFだと読めない。また表の中で背景に色をつける方法を知らない。白の文字色値を #DDDDDD #BBBBBBにしている。) 新JIS安全色普及委員会(New safety colour JIS popularization committee) http://safetycolor.jp/shiteichi/ 視認性に配慮した色の識別!JIS安全色彩(iro-color) https://iro-color.com/episode/jis.html 資料によっては、青がPB(purple blue)で、赤紫がP(Purple)であるのは、日語表記で青の概念は幅広いことと、紫が以前は赤紫だったためと推測している。 実際に製品を作る場合だ

    プログラマが知っているとよい色(1)使い(JIS安全色) - Qiita
    mohno
    mohno 2018/08/16
    誰かと思ったら funa. さんでお茶吹き出しそうになったw
  • スピード感重視なのでテストは書かない。テストはなぜ開発を遅くするか - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? あまりにバズってしまったので、前書きを追加 ここまでバズってしまって正直すまんかった。 この記事はもともと愚痴記事をマイルドにして投稿しただけなので「テストを勧める」とか「テストを信奉する」とかそこまで強い意図は特にありません。(私がテスト好きなのは否定しません) 「テスト書こう」に対して「そんなコストはない」と言いながら、いろいろ問題が生じる現状を愚痴りたかっただけです。愚痴るだけだと生産性がないから、なんでこんなに認識が違うんだろうと原因を考えた結果、テストを書くことに対する技術で実際にコストが大きく異なるなと気づいて書いた次第です

    スピード感重視なのでテストは書かない。テストはなぜ開発を遅くするか - Qiita
    mohno
    mohno 2018/07/30
    「テストを書く前提で書かれないコードは書き直さないとテストを追加できない」←だね。だから機能拡張の仕事とかどうしようもなかったり。まあ、Excelに手順書くだけの“テスト”ってのもあるけど:-p
  • 音響処理の基礎 with CNN 〜機械学習で「太鼓の達人」の自動作譜をしてみた〜 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? #この記事の対象者 音響処理の基礎を概観したい ディープラーニングを用いた音響処理に興味がある 太鼓の達人が好きだ つまり初心者向けってことです。プロの方のツッコミもお待ちしています。 #結果 見て(聴いて?)もらうと早いと思います。これは今回作ったモデルで生成した譜面を太鼓さん次郎2で演奏したものです。 米津玄師さんの「ピースサイン」: 「音楽から全自動で太鼓の達人の譜面を作るAI」を作りました またいつか解説記事書きます pic.twitter.com/IW6qrd9knS — うっでぃ (@woodyOutOfABase) Jul

    音響処理の基礎 with CNN 〜機械学習で「太鼓の達人」の自動作譜をしてみた〜 - Qiita
    mohno
    mohno 2018/07/22
    そろそろ自動採譜が出てこないかな(定期)
  • 相対的なネーミングはよせ、やめるんだ! - Qiita

    たぶん1000回くらいは言われてきているがいまだに絶滅しないので、もう1回言う。ファイル名でもソースコード上の変数でもCSSのセレクタでもなんでもいいけど、相対的なネーミングはやめよう。 Safe Harbor Statement この投稿は個人の(中略)であり、所属する組織とは関係ありません。 なぜ相対的なネーミングをしてはいけないか 名前をつけた人の主観が入り込むため 時間が経つにつれ名前が実態と乖離し混乱を招くため 実装に無駄な制約をかけるため なぜ相対的なネーミングがなくならないか なにが相対的なネーミングなのか理解していないため じゃないかな多分。 避けるべき語 というわけで相対的なネーミングを回避するための禁止ワードのうち代表的なものをあげておきます。 new, 新, latest, 最新, old, 旧 など これらの時系列を表す語は、比較対象がないと新なのか旧なのかわかりま

    相対的なネーミングはよせ、やめるんだ! - Qiita
    mohno
    mohno 2018/05/06
    引越しの時に段ボール箱に「すぐ開ける」と書いたものとは別に、「割とすぐ開ける」と書いておいたら引越し屋さんが笑ってたのを思い出したw
  • 工数見積もりのコツ - Qiita

    はじめに 稿では、仕事をする上での作業工数の見積もり方法について説明します。 工数とは何か 工数(こうすう1)というのは、仕事において、あるひとつの作業を完了するまでにかかる総累計時間のことです。情報処理技術者試験に出てくるTAT(ターンアラウンドタイム)とは意味合いが異なります2。 例えば、ある作業に40時間(40H3)かかるとした場合、工数は40時間であるといえます。1日8時間勤務だとした場合、40時間は5人日(にんにち)と表現することができます。さらに、1ヶ月20日勤務だとした場合、0.25人月(にんげつ)と表現することもできます。 一般的に工数の単位は「人日」および「人月」で扱います。 学生時代は工数を気にすることはないですが、ITエンジニアとして会社で働くようになると、かならず工数を意識する必要があります。 なぜ工数を意識する必要があるのか なぜ工数を意識する必要があるのかとい

    工数見積もりのコツ - Qiita
    mohno
    mohno 2018/04/05
    一般的な製造物と違って「作るものが毎回既存のものと違う」から“正確な見積もり”って難しいんだよね。「作業を細分化して個々に数字を出す」←そうやって正確に見積もろうとする時間がもったいなかったりするし:-)
  • なぜfor文は禁止なのか?関数型記述のススメ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    なぜfor文は禁止なのか?関数型記述のススメ - Qiita
    mohno
    mohno 2018/04/02
    それ遅くないの?とか思ってしまうが。「0から100未満の偶数のみを累計する」←for文なくても「var result = 2450;」でよくね?(←ボカッ)
  • 新卒がSIerとして1年働いた結果見えた、深い深い闇の話 - Qiita

    4/1で社会人生活1年目なので、そのまとめとしてなんか書こうと思いました。 とあるそこそこ大手の常駐先でSEをしています。最初に配属された時はJavaの研修を受ける程のド素人でした。 大手あるあるですが、その常駐先では殆どの人がホストコンピュータを日々アセンブラやPL/I、COBOLでプログラミングして運用保守しています。 対して僕は分散と呼ばれる世界に居ます。業務用Webアプリやデスクトップアプリを作り客先に納品したり既存の資産をメンテナンスする事でお賃金を頂いておるわけですが、当然そこにあるのはむかーしむかしにVBや生のJavaで書かれた、錆びついたシステムです。酷い所は未だにWindows2000サーバーが動いてます。一番新しくてStrutsかな。 しかし人間関係に関しては神だったのでなんとか1年働けました。当にいい人しかいない、素晴らしい職場だと思います。なのでブラックとは思いま

    新卒がSIerとして1年働いた結果見えた、深い深い闇の話 - Qiita
    mohno
    mohno 2018/04/01
    こういう現場があるからロートルでも呼んでもらえるんだけど;-) という話はさておき、少人数で開発できないような規模のシステムって、技術の良し悪しだけじゃなく現場開発者のスキルも考えないといけないからね。
  • C++完全理解ガイド Rev1.4.01 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに C++を完全理解したので完全理解ガイドを書く。 最初に言っておくがタイトルは詐欺で、実際はポエムである。 僕は仕事C++を書いたことはないのでなんか変なことを言っているかも知れない。 ところで無職になったので、普通にC++で職がほしい。 2018年6月から受託で仕事をもらい、毎日C++17を書いています。 2018年9月から雇用され、毎日C++17を書いています。 かなり雑に書いているはずなので、コメント等でどんどんマサカリを投げてほしい。 僕は何者か 工学部を卒業して4年ほど高校の理科教師をやっていたが、現在無職になった人

    C++完全理解ガイド Rev1.4.01 - Qiita
    mohno
    mohno 2018/03/28
    「C++はその進化とともに玄人に優しくなりすぎた」(Bjarne Stroustrup) あと Visual C++ はちょっとずつ実装進んでるけど、破壊的変更があるからC++17オプションが必要なんだな。まだ見ぬ江添本の評価は読んでから:-)
  • 「暗号化」の反対は「復号化」じゃなくて「復号」なんだよ - Qiita

    言いたいことはタイトルで全部言ってしまってますが、以下細かい内容を。 scivolaさんのQiita などの技術系の記事で残念に思うポイントに触発されて、普段から思っていたことを書いてみました。 まず「暗号化」とは何か。これを説明する時には以下のような図が使われます。 暗号化 ----------------------------------> 平文 暗号 <---------------------------------- ??? 元になる「平文」があって、それを「暗号」「にする」から「暗号化」ですね。 じゃあ「暗号化」の逆の操作をする、上の図の「???」の部分はなんと言えばいいのでしょうか。 平文にするから「平文化」? 流石にこんな言い方をする人は見たことないですね。 元になる単語が「encrypt / decrypt」で"en"と"de"が対になるためか、「復号」という訳語が当て

    「暗号化」の反対は「復号化」じゃなくて「復号」なんだよ - Qiita
    mohno
    mohno 2018/03/03
    そうだな、と思ったが、意外に冷たい反応。辞書で「復号」を検索すると「復号化」って書いてあるものもあったから(大辞林、デジタル大辞泉)→ https://kotobank.jp/word/%E5%BE%A9%E5%8F%B7 「間違ってるんだ」とは言えなさそう。
  • GitHub に AWS キーペアを上げると抜かれるってほんと???試してみよー! - Qiita

    🤔 前書き 稀によくある 、AWS を不正利用されちゃう話、 AWSで不正利用され80000ドルの請求が来た話 - Qiita 初心者がAWSでミスって不正利用されて$6,000請求、泣きそうになったお話。 - Qiita AWSが不正利用され300万円の請求が届いてから免除までの一部始終 - Qiita ブコメ等で GitHub にはアクセスキーを検索するBOTが常に動いていて、公開するとすぐに抜かれて不正利用される 的なコメントがつくのを何度か目にしたのですが、 当にそんな BOT が動いているの? どのくらいの時間でキーを抜かれて、不正利用が始まるの? というのが気になったので、検証してみました。 GitHub にそれっぽいパブリックリポジトリを作成、権限が一つもついてない AWS のアクセスキー&シークレットアクセスキーをうっかり公開、外部から利用されるまでの時間を計測します。

    GitHub に AWS キーペアを上げると抜かれるってほんと???試してみよー! - Qiita
    mohno
    mohno 2018/02/25
    「git push から 13分 でご利用開始」「58分で AWS サポートより連絡」←(AWSじゃなくても)「後で消すから大丈夫」はまずかったよな。
  • Javaではif (isAdmin == true)というコードを書いてはいけない - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Javaではif (isAdmin == true)というコードを書いてはいけない - Qiita
    mohno
    mohno 2018/02/20
    取り消されているが、bool?(Nullable<bool>)のあるC#にもあてはまらないな。
  • ビット演算 (bit 演算) の使い方を総特集! 〜 マスクビットから bit DP まで 〜 - Qiita

    はじめに はじめまして。 NTTデータ数理システムでリサーチャーをしている大槻 (通称、けんちょん) です。 C や C++ を使用しているとしばしばビット演算を行う場面が出て来ます。 計算機リソースが限られている状況では、ビットを用いることでデータ量を少なく済ませたり、計算コストを小さく抑えたりすることができるメリットがあります。 記事では、ビット演算を用いて実現できる処理について、簡単なものから高度なものまで集大成します。極力わかりやすく頑張って執筆しました。特に前半 4 つはビットの説明の中でもかなりわかりやすい方だと思います。後半の 7 つのテーマは比較的高度なアルゴリズムの話題ですので、フラグ管理やマスクビットについて詳しく学びたい方は前半 4 つを中心に読んでいただいて、後半 6 つは必要に応じて読んでいただければと思います。反対にビットの知識はあってビットを用いたアルゴリズ

    ビット演算 (bit 演算) の使い方を総特集! 〜 マスクビットから bit DP まで 〜 - Qiita
    mohno
    mohno 2018/02/20
    ビット演算か、最近あまり使わないなと斜め読みしてたが、「部分集合を列挙」「next_combination」「Xorshift」が興味深い。巡回セールスマンはメモリ食いそうだけど「有効に利用できた場面」があるらしい。
  • 軽い気持ちでLinkedListを使ったら休出する羽目になった話 - Qiita

    ざっくり言うと リスト構造のデータに対してランダムアクセスはしちゃだめだぞ。お兄さんとの約束だ! 発端 数年前に他部署の支援で作ったJavaのシステムに、ちょっとデカめのデータを突っ込んだらありえないほど遅いので助けてくれ、と連絡が入った。 まぁクエリとかインデックスをちょっと見れば直るっしょ・・・と鼻をほじりながら支援に向かった。 処理内容 遅い部分の処理は以下のようなものであった。 処理対象のデータをListで受け取る。 それをforループで1件ずつ前処理する。 処理結果をオブジェクトに格納し、ORマッパーでDBにINSERTする。 これだけ? そう、これだけだ。並列処理なんて高級なことはもちろんやってない。 インフラ調査 処理中のサーバのようすを調査する。今回のインフラは典型的な3層3サーバ構成。 WEBサーバはなにもかもが余裕。 APサーバではCPUを1つ使い切っている。 14コア

    軽い気持ちでLinkedListを使ったら休出する羽目になった話 - Qiita
    mohno
    mohno 2018/02/20
    これ「ほぼINSERTしかやってないような処理」になんで LinkedList を使ったの?という話じゃないのかな←コメントで指摘されてた^_^;/LinkedList にインデックスアクセスあるのか。というか.NETと違うんだ。(そりゃ違うか)
  • タイムゾーン呪いの書 - Qiita

    技術的な標準・規格 (TODO: IATA, Microsoft) tz database タイムゾーンに関する、ソフトウェア・エンジニアにとって最も標準的なデータが tz database (Wikipedia) でしょう。 "Asia/Tokyo" や "Europe/London" のようなタイムゾーンの名前は、この tz database のものです。 tz database のタイムゾーンは "/" の前の最初の部分に大陸名・海洋名を用い、続いて、典型的にはそのタイムゾーン内の著名な都市名・島名をその代表として名付けられています。21 国名は基的に使われません。22 "America/Indiana/Indianapolis" のように3要素で構成されるタイムゾーンも少数ながら存在します。 tz database はボランティアによってメンテナンスされています。タイムゾーンの情

    タイムゾーン呪いの書 - Qiita
    mohno
    mohno 2018/02/06
    こういうのはlocaltimeかglobaltimeかだけ気にして後はプラットフォームに任せてしまえば、プラットフォームのせいにできるというか、元号とか自分で処理しないでね、というか。同じ時間が2回あるのはやっかいだけど。
  • NEM のコールドウォレットの自作は難しいのか検証してみた - Qiita

    const readlineSync = require('readline-sync'); const nem = require("nem-sdk").default; const QRCode = require('qrcode'); class NemOfflineTransaction { constructor(networkId) { this.networkId = networkId; } start() { // [1] 入力 this.keyIn(); // [2] 確認 this.confirm(); // [3] 署名付きのトランザクション生成 const tx = this.generateTransaction(); // [4] QRコードへ変換 this.generateQRCode(tx); } keyIn() { this.recipient = re

    NEM のコールドウォレットの自作は難しいのか検証してみた - Qiita
    mohno
    mohno 2018/01/29
    フーン、と思って検索したら https://www.facebook.com/yasunori.sugii/posts/1826225380785828 に「APIを使うと簡単だが、コールドウォレット(オフライン運用)のために自前で実装するのが大変」って情報が出てくるんだが、さて。
  • Randomクラスの仕様が.NET Core 2.0で変わっていた話 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Randomクラスの仕様が.NET Core 2.0で変わっていた話 - Qiita
    mohno
    mohno 2018/01/26
    「Randomクラスは引数なしのコンストラクタでインスタンス化すると、内部で使用する乱数を生成するためのシード値にEnvironment.TickCountを使用する」←ああ、変えようとしてるんだったか、くらい忘れてる……
  • Amberで検討されているJava構文の変更 - Qiita

    Amberとは Java言語を拡張するプロジェクトです http://openjdk.java.net/projects/amber/ Amberのブランチ records データ保持用のクラスです sealed-types シールドタイプ newesapes line blockのエスケープ対応 patterns パターンマッチの全体的な開発 patterns-deconstruction パターンマッチでのデコンストラクション patterns-stage-1 instanceofのみのパターンマッチ pattern-runtime パターンマッチのランタイム? local-methods ローカルメソッド lambda-leftovers ラムダで_使えるようにする concise-method-declarations メソッド定義の簡略化 enhanced-enums 拡張enu

    Amberで検討されているJava構文の変更 - Qiita
    mohno
    mohno 2018/01/25
    へぇ、Java も進化してるんだ。ってか、Amber って何?……って、そういうプロジェクトなのか。