タグ

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

  • ctag, gtagsで超捗るコードリーディング - Qiita

    vimmerのみなさん初めまして。 vimアドベントカレンダー20日目です。 今回はvimでコードリーディングするのに必須であろうツール、ctagsとgtagsについて設定例も交えながら紹介しようと思います。 色々と導入に手こずった結果、今の自分の環境に沿う形になります。 補足(2019/09/26) 今であればLSPを導入して、そちらで定義と参照へのジャンプをするのをお勧めします。 https://qiita.com/coil_msp123/items/29de76b035dd28af77a9 お詫び maclinuxの両方でインストールできるようにしたかったのですが、メインマシンのlinux(debian)の方で再現しようとして再インストールしたらgtagsが動かなくなりました...orz助けて(調査します) 仮想環境でのdebianでの再インストール、および新規のubuntuでのイ

    ctag, gtagsで超捗るコードリーディング - Qiita
    cignoir
    cignoir 2017/12/22
  • 非エンジニアのマネージャがエンジニアチームと上手くやる方法 - Qiita

    近頃の世の中の流れは恐ろしい。全業種ソフトウェア企業にならないと競争力が維持できない。 “寝たときは製造業、朝起きたらソフトウェア企業” by Werner Vogels(CTO, Amazon.com)at AWS re:Invent 2017 Key Note という恐ろしい話は管理職に落ちてくるので、「寝たときは製造業のマネージャ、朝起きたらソフトウェア企業のマネージャ」になれるのか?を考え始めるべきです。 元銀行員で非エンジニアで、いつのまにか開発ツールベンダーにどっぷりの私の経験からのTips を共有します。 エンジニアの方は、非エンジニアのマネージャにしれっとリンクを送ってあげてください(笑) 結論: 目標もバスの走らせ方もバスに乗せた優秀な人たちに任せて、バスの整備をする人になる。 マネージャが「何をつくるか?」の決定権を持てるのは彼/彼女が優秀なエンジニアの場合だけです。非

    非エンジニアのマネージャがエンジニアチームと上手くやる方法 - Qiita
    cignoir
    cignoir 2017/12/21
  • dev.toがなぜinsanely fastを実現出来ているか - Qiita

    INSANELY FAST Qiitaを読んでる人なら https://dev.to をほとんどの人が見たはず。見てない人は見てきてください、速すぎて驚くはず。またmizchiさんがdev.toに書いた なぜ dev.to がこんなにも速く、こんなにも自分にとって感動的なのか - dev.to を見た人も多いと思う。個人的にHeroku, Railsを採用してここまで爆速なサイトを構築出来ていることは今までの常識を覆す衝撃な出来事だった。こんな新しい発見をもたらしてくれたdev.toには当に感謝してる。自分もこんなサイト作ってみたいなと思ってdev.toのことを色々調べてて少し知見がたまったので共有してみます。 この記事はOkinawa.rb Advent Calendar 2017 7日目の記事です。 Twitterやってるのでよかったらフォローしてください🙋‍♀️ @saboyut

    dev.toがなぜinsanely fastを実現出来ているか - Qiita
    cignoir
    cignoir 2017/12/20
  • Slack上で動作するチャットシステムの構築 - Qiita

    はじめに 皆様、Slack、活用されているでしょうか。 表題の通り、Slackを用いて、Slack上でメッセージをやりとりできるシステムを作ります。 もともと、Slack上で動作するゲームを作ろうと思っていて、その習作を兼ねたものになります。 SlackAPIを用いて状態を受け取り各種メソッドにPostすることで状態を更新していきます。 リポジトリ 作る機能 チャットに入室する ニックネームを指定してチャットに入室する機能です。これが無いと始まりませんね。 BotのいるSlackチャンネルにて、joinコマンドを発行してチャットに入室します。 ユーザーに対して画面を表示する Slackは優れたプラットフォームですが、Canvas描画をサポートしていないため、基的にテキストと絵文字でユーザーに対して情報を伝える必要があります。定期的な再描画もサポートする必要があるでしょう。 一度に大量の

    Slack上で動作するチャットシステムの構築 - Qiita
    cignoir
    cignoir 2017/12/19
    "Slack上でメッセージのやりとりができるようになったのは非常に便利だと感じました。"
  • Macに別れを告げて、クラウド中心の開発生活を始めるまで - Qiita

    昨年あたりから、Macやめたい病を患っていたのですが、2度の故障を経て、重たい腰を上げました。別にWindows使いたいわけもなく「ローカルが煩わしい」だけなので、Windowsアプリは一切インストールしていません。で、どうやって暮らしてるの? というお話です。 TL;DR このあたり↓を組み合わせていけば、クラウド生活可能: GCP (or AWS) Codeanywhere (or Koding or Cloud9) VPCネットワーク + VPN (IPsec+L2TP) + DNS Figmaほか、Webサービス各種 追記・この記事を書いていたら、AWS Cloud9が発表されました。選択肢が増えて何よりです。 はじめに 稿は、筆者が「Mac断ち」あるいは「ローカルマシンから解脱(げだつ)」する過程で見えてきた、ベスト(かも)プラクティス集に近いものです。 よく使うテキストエディ

    Macに別れを告げて、クラウド中心の開発生活を始めるまで - Qiita
    cignoir
    cignoir 2017/12/17
  • VRで「結月ゆかり」になって生放送する - Qiita

    はじめに どうも@toRisouPと申します。ドワンゴにてニコニコ生放送(新配信)の開発を行っています。 皆さんはニコニコ生放送、利用されてますでしょうか? 自分はたまに生放送を行っています! 自分が配信する放送のうち8割はゲーム配信なのですが、残り2割は思いついた技術ネタを作ってみて生放送で実演するという内容になっています。 今回は自分の過去のネタの中から1つピックアップして紹介したいと思います。 ゆかりごっこ 「ゆかりごっこ」は過去に自分が行った生放送の中で一番好きなネタです。 成人男性の9割は美少女になりたいという願望があるはずです。 その願いを叶えるために、VRで結月ゆかりさんになれるアプリを作り、それを実際に使って行った生放送が「ゆかりごっこ」です。 具体的にどのような生放送を行ったかは以下のアーカイブをご覧頂けるとよいかと思います。 ゆかりごっこ1 ゆかりごっこ2 ゆかりごっこ

    VRで「結月ゆかり」になって生放送する - Qiita
    cignoir
    cignoir 2017/12/11
  • マルチスレッド環境下での「RuntimeError: Circular dependency detected while autoloading constant xxxx」を解消した話 - Qiita

    検証環境 Rails 4.1.5 sidekiq 3.3.2 事象 sidekiqでマルチスレッド処理を実行中に、autoload_pathにアクセスしたところ、下記のエラーが発生 原因 これかな。。。? constant autoloading works fine if constants are loaded in a sequential way. I have never seen a problem with constant autoloading that didn't uncover something wrong in the application code. 定数のautoloadingは定数がシーケンシャルにロードされる時は正常に動作する。 ここによると、 If code is not eager loaded constants are loaded on de

    マルチスレッド環境下での「RuntimeError: Circular dependency detected while autoloading constant xxxx」を解消した話 - Qiita
    cignoir
    cignoir 2017/12/11
  • 3D CAD の内側をちょっと覗いてみませんか - Qiita

    3Dの数学技術というと、パッと思い浮かぶのはゲーム映画CGといったグラフィックス系ではないでしょうか。 私は3D CADや製造業の周辺でソフトウェア開発の仕事をしています(3D CADそのものの開発はやっていなくて、その周辺の開発という感じです)。製造業でも3Dの技術は大いに活用されているのですが、その技術情報がオモテで(ネットで)語られる機会は少ないという印象です。ゲームVRといった分野はUnityなどと絡めた技術記事をよく目にしますが、CADの技術記事はなかなか目にしないですね。 そんなわけで、ここではグラフィックスとはやや違う視点で、コンピュータでモノの形を表現する方法についてざっと紹介してみたいと思います。(といっても一部しか紹介できませんでした。なかなか軽く広く全体を紹介するというのは難しい…) ガチな数学記事ではなく(そもそも私にはそんな記事を書く実力はない)、読み物と

    3D CAD の内側をちょっと覗いてみませんか - Qiita
    cignoir
    cignoir 2017/12/04
  • テストがなかった無法地帯にテストを導入して開発速度を1.7倍にした話 - Qiita

    テストがなかった無法地帯のプロジェクトに自動テストを導入して、開発速度を1.7倍にした話をします。 自動テストがなぜないのか 自動テストのないプロジェクトには、そうなる理由が必ず存在します。よくみる理由は、「時間がないから1」「テストの書き方がわからないから」「無理やりテストを書いたつらい経験があったから2」といったものです。今回のプロジェクトの場合は、以下の2点でした: 自動テストの書き方がわからないから レビューがテスト代わりだったから まず、チーム編成が変わって私ともう一人がチームに加わるまで、実装者の中に自動テストの経験者はいませんでした。このような状況では、自動テストは困難になります。なぜなら、何をどうやってどこまでテストするかを決めるには、多少の慣れが必要だからです。この慣れがないと、何をしたらいいかわからないという状態に陥りがちで、結果として自動テストが後回しにされてしまいま

    テストがなかった無法地帯にテストを導入して開発速度を1.7倍にした話 - Qiita
    cignoir
    cignoir 2017/12/01
  • 阿部寛のサイトを高速化する - Qiita

    ちまたで阿部寛のサイトが早いと話題になってます。 dev.toと阿部寛のホームページどっちが速いですか? dev.toと阿部寛のホームページについてちゃんと計測させてくれ 阿部寛のサイトはベストを尽くしてるのか? それを調べるために、阿部寛のサイトを高速化させてみたいと思います。 目指すべきスピード 最速はローカルのファイルへのアクセスだと思うのでこれを目指したいと思います。 file:///C:/abe_hiroshi/index.html ChromeのDeveloper Toolでレンダリング完了が「173ms」でした。 まぁここまでは無理だな… 阿部寛のサイトはどんなもん? 速度はwebpagetest.orgで測ってみます。 レンダリング完了時間は「359ms」です。はえーな S3でホスティングしてみる サーバーを立てるほどでもないので、S3でWebホスティングしてそこにhtml

    阿部寛のサイトを高速化する - Qiita
    cignoir
    cignoir 2017/11/24
  • dev.toと阿部寛のホームページについてちゃんと計測させてくれ - Qiita

    Twitter見てたら、以下のツイートを見た。 数時間後、dev.toと阿部寛のホームページどっちが速いですか?というブログがTLに現れた。 GoogleのPageSpeed Insightsで測って阿部寛のホームページの方が早かったという結論付けてよいのかという疑問が浮かび、webpagetest.orgで計測することにした。 設定 阿部寛のホームページに関しては、Tokyoリージョンにあるものとする。 そして、dev.toはNY発らしいので、サーバーの設定をNYにして測定する。 The platform was created in 2016. The twitter account, @ThePraticalWeb 評価結果 Webpagetest - 阿部寛のホームページ Webpagetest - dev.to

    dev.toと阿部寛のホームページについてちゃんと計測させてくれ - Qiita
    cignoir
    cignoir 2017/11/20
  • 絵文字を支える技術の紹介 - Qiita

    絵文字を扱う上で知っておくと良いかもしれないことをまとめてみました。 Ruiさんの記事を見て、「EmojiはSurrogate Pair以外にも、色々とおもしろい技術があるんですよ〜」思って書いてみました。 なお、書いた人はAndroidの人間なので、特に表記していない場合は主にAndroid上での動作のことを書いてます。 またQiita初めてなので読みにくい部分等がありましてもご容赦ください。 サロゲートペア(Surrogate Pairs) このエントリーを書くきっかけにもなったサロゲートペア。なぜこれが導入されたかの経緯は、Ruiさんのブログエントリーに譲るとして、技術的な解説をします。 サロゲートペアは、U+0000..U+FFFFに収まりきらなかった範囲のUnicodeコードポイント(U+10000..U+10FFFF)を、なんとか16bitでエンコードしようとして導入されました

    絵文字を支える技術の紹介 - Qiita
    cignoir
    cignoir 2017/11/16
  • ウェブアプリをソースごとパクる業者に対する対策 - Qiita

    こんにちは。みなさんもウェブアプリをリリースしたあとに同業者にソースごとパクられたことってありますよね。難読化しても難読化されたまま同業者のサーバで動くので困ったものです。そこで、私がとった解析しずらい対策をまとめてみたいと思います。 前提 多機能な画面をJavaScriptでゴリゴリ作ったのにもかかわらず、HTMLCSSJavaScriptファイル一式を自社サーバにまるごとコピーして、ライセンス表記だけ書き換えて使うような業者を罠にはめるということを想定しています。 当然通信をリバースエンジニアリングする人もいるので、自社サーバでは防げないという前提です。 HTMLにはauthorメタタグ よくあるMETAタグで権利者を明記します。これは権利の主張もそうですが、JavaScript自体に権利者が認定した権利者でなければ無限ループを起こすという処理のためにも使用します。逆に、権利者が我

    ウェブアプリをソースごとパクる業者に対する対策 - Qiita
    cignoir
    cignoir 2017/11/14
  • Linus Torvalds氏によるGitの内部構造の解説 - Qiita

    初めに LinusによるGitのinitial commitのREADMEの訳です。 社内のSVNからの移行を促すために資料を整備していたのですが、SVNでやっていたことを移し替えたりコマンドを覚えたりするより内部構造を知ったほうが早いことに気づきました。 それで、gitの内部構造についての解説資料を色々見ていたのですが、データ構造については原作者のこのREADMEに言い尽くされている気がします。のみならず、gitを使うものが抱くべき精神性のようなものが示されており、深い感銘を覚えました(ヒャッハー)。 README: ”GIT - 馬鹿コンテンツトラッカー” コミットメッセージ:git, 地獄からきたインフォメーションマネージャ gitの意味 "git" は何を意味することも出来る、お前の気分次第だ。 3文字で、発音可能で、実際のUNIXシステムで共通コマンドとして使われていないものであ

    Linus Torvalds氏によるGitの内部構造の解説 - Qiita
    cignoir
    cignoir 2017/11/05
  • Excelファイルを比較するツールを作ってみた - Qiita

    はじめに Excelファイルの比較にはWinMergeにxdocdiffのプラグインを入れて使っていたのですが、 列が揃ってなかったり、ヘッダを固定できなかったりと少し不便に感じていました。 そんなわけでExcelファイルを比較するツールを自作してみたので、紹介と使い方を書いていこうと思います。 注意 このツールは筆者の仕事環境において必要最低限の要件で作成しています インストール ここ から最新の.msiをダウンロードする ダウンロードしてインストーラーを実行する ※電子署名をしていないので、以下のウィンドウが表示されると思います。「詳細」→「実行」で実行できます。 Nextを選択 インストールするディレクトリと、ユーザーを選択 (特に指定がなければそのままNext) Nextを選択 起動方法 ショートカットアイコン インストールが完了すると、デスクトップにショートカットアイコンが作成さ

    Excelファイルを比較するツールを作ってみた - Qiita
    cignoir
    cignoir 2017/10/30
  • 大規模ネイティブアプリへのプッシュ通知機能導入にあたって考えたこと - Qiita

    世の中にたくさんのアプリが存在しますが、実はどんなアプリも通知のパターンとしては、だいたいこのようなものに落ち着くのではないでしょうか。 通知パターンの分類から検討事項を洗い出す 送りたいプッシュ通知の内容を分類した結果をみると、いくつか検討が必要な項目が見当たります。それぞれについて見ていきましょう。 検討1:個別通知の発火タイミング ユーザーが作品を投稿できるようなサービスの場合、そのイベントの発生時刻をサービス運営者が制御することは不可能といって良いでしょう。これは、真夜中にユーザーのデバイスに通知が行ってしまう可能性があるということを意味します。 こうした場合、ユーザーのデバイスにプッシュ通知が到達したあと、すぐにメッセージを表示せずに溜めておき(サイレントプッシュ通知)、定時にユーザーに知らせるという手法を検討すると良いでしょう。 一般的な方はアプリを 通勤・通学中(7:00〜9

    大規模ネイティブアプリへのプッシュ通知機能導入にあたって考えたこと - Qiita
    cignoir
    cignoir 2017/10/25
  • 【Unity】3次元でのFunnelアルゴリズム - Qiita

    Funnelアルゴリズムとは Funnel(ファンネル)アルゴリズムとは1辺を共有する三角形リストの始点から終点までの最短経路を求めるアルゴリズムです。 ダイクストラ法やA*から得られた経路を平滑化する方法として使用されています。 Funnelは日語で漏斗の意味です。 言葉通り漏斗をイメージしながら解いていくアルゴリズムです。 実装、記事にした理由 ここ を参考にして実装したが動作しないパターンがあった Unityで使いたい 3次元に適用したい 日語で詳説しているサイトが見つからなかった 大まかな流れ 与えられた三角形リストから3次元における左右の頂点配列を作成する 1で作成した配列をコピーしたものをXY平面の2次元に変換する 先端、左側の頂点リスト、右側の頂点リスト から形成されるFunnelを更新しながら経路を求める 求めた経路と三角形リストの連結部分(共有辺)の交点を挿入する 経

    【Unity】3次元でのFunnelアルゴリズム - Qiita
    cignoir
    cignoir 2017/10/23
  • 【翻訳】RSpecのリードメンテナだけど何か質問ある? - Qiita

    はじめに 先日、Redditでこんな記事が載っていました。 AMA: The authors of "Effective Testing with RSpec 3", Myron Marston and Ian Dees : ruby この記事は書籍「Effective Testing with RSpec 3」の筆者であるMyron Marston氏とIan Dees氏が、書籍に関する質問に何でも答えます、という企画です。 この2人のうち、Myron Marston氏はRSpecの開発者(リードメンテナ)です。 Q&Aを読んでいると、RSpecの開発者ならではの意見だなと思うところがたくさんあり、なかなか興味深い議論になっていました。 というわけで、この記事では先ほどのQ&Aから「これは日Rubyプログラマにも役立ちそう」と思ったやりとりをピックアップして翻訳してみます。 ピックアッ

    【翻訳】RSpecのリードメンテナだけど何か質問ある? - Qiita
    cignoir
    cignoir 2017/10/16
  • Amazon AI pollyを使ってみた - Qiita

    この記事について この記事は ACCESS Advent Calendar 2016 18日目の記事です。 ACCESS の @shotasakamoto です。 この記事の主題は? 最近、機械学習とか勉強するモチベーションが上がってきて、CRFやword2vecとかについて記載しようと思いましたが、12月に発表されたAmazon AIについてちょっと興味があったので、前述した内容について少し触れていきたいと思います。 Amazon AIの種類 以下の3つになります。 * Amazon Recognition * Amazon Polly * Amazon Lex 画像認識よりも言語解析・処理とかに興味がある方なので、 LexかPollyを見ようかと思ってましたが、Lexはまだプレビュー版的な位置づけだったので、 Pollyで遊んでみました。 Amazon Pollyとは? 簡単に言うと、

    Amazon AI pollyを使ってみた - Qiita
    cignoir
    cignoir 2017/10/12
  • Rails 5.1のencrypted secretsの運用について考える - Qiita

    環境 Ruby - 2.4.1 Rails - 5.1.0 背景 Rails 5.1からencrypted secrets機能が追加され、Rails wayに乗った状態で、環境変数を暗号化した状態でgit管理できるようになった gibberish などのgemを使って.envファイルを暗号化して、git管理していた人は運用を乗り換えると良さそう セットアップ $ bin/rails secrets:setup Adding config/secrets.yml.key to store the encryption key: 0123456789abcdef0123456789abcdef Save this in a password manager your team can access. If you lose the key, no one, including you, can

    Rails 5.1のencrypted secretsの運用について考える - Qiita
    cignoir
    cignoir 2017/10/11