タグ

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

  • ES2019で追加されたflatMap()の使いどころ - Qiita

    はじめに ES2019のアップデートで配列のメソッドflatMap()が追加されました。 はじめてflatMap()を見たときは「これはどんなときに使うのだろう」と思いました。 私のようにflatMap()をいつ使うのかピンと来ていない方も多いと思います。 しかし調べていくうちに色々使える事がわかったので、flatMap()の使いどころをご紹介します。 flat()とは まず事前知識として同じくES2019で追加されたflat()について説明します。 flat()は配列のメソッドで、自身の配列の次元を1つ下げたものを返します。 const example1 = [ [1, 2, 3], [4, 5, 6], [7, 8, 9], ]; example1.flat(); // 実行結果:[1, 2, 3, 4, 5, 6, 7, 8, 9] const example2 = [ 1, 2,

    ES2019で追加されたflatMap()の使いどころ - Qiita
  • ほんとうに怖い。さくらのレンタルサーバー - Qiita

    Help us understand the problem. What is going on with this article? さくらで専用サーバーを10年ほど利用しています。 単体のハードを利用するもので、外部からの操作はsshでログインすることしかできないものです。 作業時間を必死に捻出して、こつこつと長期間システムを開発して何とか動作するものを作り上げていました。 さくらのレンタルサーバーを利用することは、ほんとうに危険で怖いことだとおもいます。 自分が体験したトラブルをレンタルサーバーの利用を検討している方々に共有させていただきたく初めて記事を書いてみました。 二年ほど前、さくらさんが専有サーバーの場所を移動したいという申し出があり快く許可しました。その時のご説明では、場所を移動するだけでハードの変更は一切行いませんというもので、今まで通りの動作が保証される作業内容というこ

    ほんとうに怖い。さくらのレンタルサーバー - Qiita
  • ダーツが命中するかどうか、刺さる直前に教えてくれる装置を作った - Qiita

    ダーツが狙ったところに刺さるかどうか、投げた直後、つまり刺さる直前にお知らせすることで、0.2秒待てば分かることを0.2秒前に知って一喜一憂するためのアプリを作りました。 何を作ったか まず、的に向かってダーツを投げましょう。その様子をカメラで撮影し、その映像をもとにPC姿勢推定を行います。推定された姿勢をもとに、ルールベースでダーツを投げたことをPCで検知します。 投てきを検知したら、1秒分のデータをさかのぼって機械学習モデルに入力し、ダーツがブル(中心)に刺さるのかどうか予測します。その際、Edge TPUという高速で機械学習の予測を行うデバイスを利用します。 機械学習の判定の結果、ブルに刺さると思ったら「ピンポーン」外れると予測されたら「ブブー」と音がなって知らせてくれます。この時点でまだダーツは刺さっていません。 もし、外れると予測されたら悲しいですよね。まだダーツは刺さっていま

    ダーツが命中するかどうか、刺さる直前に教えてくれる装置を作った - Qiita
  • さよなら本番サーバー - Qiita

    とあるSESの現場では番リリースの時期が近づいてきており、僕を含めた数人のエンジニアは間に合いそうもない残作業の開発を進めたり、番で使うためのデータの整備を番サーバー内で行ったりしていた。ほとんどがその案件のために集められたメンバーだったため特に和気あいあいとするでもなく、エアコンの風の音が響く小さなオフィスの片隅で静かに作業をしていた。 業務上のやりとりもRedmineで行われており、声を発するのもたまにメンバー同士で話をしたり、クライアントから電話がかかってきた時だけ。その日もメールで通知が届いてきており、確認してみるとRedmineで僕が関係しているチケットにコメントが届いているという通知だった。 通知のURLをクリックしてRedmineのチケットを確認してみる。 それによると一旦番サーバー上に存在するデータの中の一部の主要データをCSV形式で送ってほしいという依頼だった。無

    さよなら本番サーバー - Qiita
  • 社内slackにVIPチャンネルを作った話 - Qiita

    ABEJA Advent Calendarの1日目です。 はじめに 昨年はABEJA Platformに関するAdvent Calendarでしたが、今年はプラットフォームに限らず幅広い技術を扱おう、ということで縛りを作らずに様々な技術を紹介していきます。 さて、皆さん、社内でのコミュニケーションツールは何をお使いでしょうか。色々なツールがあると思いますが、Slackを使っている所が多いのではないかと思います。Slackはとても良いツールなのですが、使いこなす会社側にその運用ルールが委ねられています。中でも、DMやプライベートチャンネルでの秘密の会話による情報格差などが発生することが問題になり、オープンチャンネルに限定している会社も多いのではないでしょうか。しかしながら、オープンに会話をすれば、皆が平等かつ平和に会話ができるか?というと、全くそんなことはありません。オープンにすると下記のよ

    社内slackにVIPチャンネルを作った話 - Qiita
  • AviUtlはいかにして4GBのメモリの壁を超えたのか - Qiita

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    AviUtlはいかにして4GBのメモリの壁を超えたのか - Qiita
  • 【シェル芸人への道】Bashの変数展開と真摯に向き合う - Qiita

    はじめに 個人的なシェル(スクリプト)あるあるなんですが、変数操作に悩んでいるとBashの 変数展開 って思った以上に色んなことができてしまうことに気がつきます。 「なんかいい感じの書き方ないかなー」 「cut, tr, sed, awk, ...、まぁできるのは間違いないんだけど」 「うーん」ググリ― (10分後) 「えっ、変数展開...?(怪訝)」ポチポチ 「...」カタカタ 「いけるやん!!!」 ってことが結構あります。皆さんもこういった経験少なからずあるのではないでしょうか。 (そして今もまさにそういう記憶・期待があるから、変数展開について少し調べている...そんなところかと推察します) 毎回調べるのも感動があっていいと思うんですが、もはや衝動を押さえきれないので 全部調べたい と思います。 Bashのバージョンは 4.3.48(1) でしたが、そうそう変わるような内容でも

    【シェル芸人への道】Bashの変数展開と真摯に向き合う - Qiita
  • nfs環境の覚書 - Qiita

    上の2行は同じ意味。つまり、192.168.3.0/24のネットワークに対してデフォルト設定で公開し、全世界"<world>"に向けて"rw"その他デフォルト設定で公開するということになる。 公開先とオプションの"()"の間にスペースを入れてはいけない。まったく別の意味になる(と、マニュアルにも注意書きがある)。 主なオプション<サーバ側>(man exportsから抜粋) secure: 1024より小さいポート番号からのリクエストしか受け付けない。これがデフォルト。無効にするにはinsecureを明示。 rw: Read/Writeを可能にする。デフォルトはro(read only)。 async: NFSプロトコルでは同期が標準だがこれをあえて非同期にする(パフォーマンス向上、信頼性・一貫性犠牲にしたいとき)。デフォルトはsync。 root_squash: uid/gidが0、つま

    nfs環境の覚書 - Qiita
  • GNOME 3 のタイトルバーを細くする - Qiita

    はじめに 私はUbuntuを使っている。どうもUnity(ウィンドウマネージャ)が好きになれなくて、長らくUbuntu GNOMEを使っているのだが、現在のGNOMEもウィンドウのタイトルバーが太すぎて気に入らない。画面の高さは有限なので、これを節約してもう少し広く画面を利用しようと思う。 (この記事は末尾の参考文献にある記事の内容とほぼ同一である。正直そちらを読んでも構わないと思う) 対象バージョン 記事の内容は少なくとも以下のバージョンで動作を確認している(おそらくメジャーバージョンが同じなら差異は無いと思う)。 Ubuntu GNOME 16.04 LTS GNOME Shell 3.18.5 libgtk 3.18.9-1ubuntu3 作業 ホームディレクトリ以下にある、~/.config/gtk-3.0/gtk.css に以下の記述を追加する。ファイルが存在しない場合は作成す

    GNOME 3 のタイトルバーを細くする - Qiita
  • Rails 5.1 以降で attribute_was, attribute_change, attribute_changed?, changed?, changed 等が DEPRECATION WARNING - Qiita

    Rails 5.1 以降で attribute_was, attribute_change, attribute_changed?, changed?, changed 等が DEPRECATION WARNINGRails 何が起きたか? Rails 5.1 へアップデートして大量に DEPRECATION WARNING や spec エラーが起きたので、調べてみると Rails 5.1 で ActiveRecord::AttributeMethods::Dirty の attribute_was attribute_change attribute_changed? changed? changed 辺りが非推奨になった。 参考: https://github.com/rails/rails/blob/ce93740a5e4437dfc1cf9b0b13da1bad06a2a598/

    Rails 5.1 以降で attribute_was, attribute_change, attribute_changed?, changed?, changed 等が DEPRECATION WARNING - Qiita
  • Vim or NeoVimを使っている人は、すぐにアップデートしましょう [CVE-2019-12735] - Qiita

    Product: Vim < 8.1.1365, Neovim < 0.3.6 Type: Arbitrary Code Execution CVE: CVE-2019-12735 Date: 2019-06-04 Author: Arminius (@rawsec) Option: :set modeline(false)

    Vim or NeoVimを使っている人は、すぐにアップデートしましょう [CVE-2019-12735] - Qiita
  • 自宅サーバーでTwitter連携サービスを運営してたら家宅捜索された件 - Qiita

    概要 ある朝自宅に神奈川県警が乗り込んできた。 (なお自宅は神奈川県ではない) どうやら俺はTwitterにモロ画像を投稿していたらしい。 「間違いなくこの家から投稿されていた。プロバイダにも確認済みだ。」 「(ハンドルネーム)というアカウント使ってるでしょ」 「心当たりあるでしょ?」 「(ブランド名)のTシャツ持ってるでしょ?」 おやっ、何かがおかしいです。 想定される経緯 自宅サーバーではTwiGaTen( https://twigaten.204504byse.info/ )というWebサイトが稼動している。 そしてこいつはTwitterアカウントでログインしたアカウントのタイムラインを24時間365日収集し続けている。Twitterの仕様上、これは時々ログイン履歴として記録される。 そして警察はモロ画像をうpしたアカウントのログイン履歴を見て… 「固定回線からうpか。バカめ。」 「

    自宅サーバーでTwitter連携サービスを運営してたら家宅捜索された件 - Qiita
  • Ricty を神フォントだと崇める僕が、フリーライセンスのプログラミングフォント「白源」を作った話 - Qiita

    誰もが知る(?)プログラミングフォントこと Ricty にインスパイアされ、Ricty のように英文フォントと和文フォントを合成したプログラミングフォントを作りました。 その名も、プログラミングフォント「白源 (はくげん/HackGen)」です! 白源 (はくげん/HackGen) 通常版 生成元にはプログラミング向け英文フォント Hack と、Adobe 製作の源ノ角ゴシックに丸みを付けた派生フォント 源柔ゴシック を使用させていただきました。 白源の生成元である Hack、及び源柔ゴシックには、いずれも SIL Open Font License Version 1.1 という大らかなライセンスが適用されているため、改変及び配布が自由となっています。したがって、白源の生成済みフォントファイル (ttf ファイル) は GitHub からダウンロードして、すぐにご利用いただけます。 「白

    Ricty を神フォントだと崇める僕が、フリーライセンスのプログラミングフォント「白源」を作った話 - Qiita
  • 【警鐘】[改元][Windows][.NET] 「令和」対応パッチで画面が横に伸びる、文字が見切れる ― Windows Update 手動更新はちょっと待った方がいい - Qiita

    【警鐘】[改元][Windows][.NET] 「令和」対応パッチで画面が横に伸びる、文字が見切れる ― Windows Update 手動更新はちょっと待った方がいい ※2019年5月15日(日時間)に自動配信が開始された修正版パッチで、フォント起因の横伸び、見切れ問題は解消されました。(2019/05/15 続報 をご参照ください) 2019年4月26日、「令和」対応パッチが Windows Update で配信開始されました。 日の元号の変更について - KB4469068 現状は手動更新(「更新プログラムのチェック」)または Microsoft Update カタログからのインストールのみで、自動更新への反映は来月半ば頃と見られています。 また、Windows 10 Version 1809 / Server 2019 向けのパッチは "Coming soon" となっており、

    【警鐘】[改元][Windows][.NET] 「令和」対応パッチで画面が横に伸びる、文字が見切れる ― Windows Update 手動更新はちょっと待った方がいい - Qiita
  • Lets Encryptで証明書更新時にcryptographyのエラーが出た時の対処法 - Qiita

    ImportError: No module named cryptography.hazmat.bindings.openssl.binding cryptographyが見つからないそうです。 ./certbot-auto --debug -v Error: couldn't get currently installed version for /opt/eff.org/certbot/venv/bin/letsencrypt: Traceback (most recent call last): File "/opt/eff.org/certbot/venv/bin/letsencrypt", line 7, in <module> from certbot.main import main File "/opt/eff.org/certbot/venv/local/lib/pyt

    Lets Encryptで証明書更新時にcryptographyのエラーが出た時の対処法 - Qiita
  • Git submoduleの押さえておきたい理解ポイントのまとめ - Qiita

    みなさんgitのsubmoduleって理解して使ってますか? 親プロジェクトをpullしたら、submoduleがmodifiedになって混乱してgit addして...あばばばば。みたいな事ないですか? 私はsubmoduleがなかなか理解できずに結構苦労しました。^^; ブランチ単位で管理する通常のリポジトリと違い、submoduleはCommitID単位で管理するというのが一番理解しにくい部分だと思います。 今回は、プロジェクトにsubmoduleを追加、更新、削除の動きを更新を掛ける側のプロジェクトと更新を受け入れる側のプロジェクトの2つの視点から追いながら、CommitIDで管理するとはどういう事なのかを解説していきます。 (結論だけ見たい人は末尾のまとめへ) 準備 「submoduleを開発する役割のプロジェクト test_app_A」と「submoduleを取り入れる役割のプ

    Git submoduleの押さえておきたい理解ポイントのまとめ - Qiita
  • HTMLのinputタグ[type=file]のブラウザごとの挙動について調べてみた - Qiita

    はじめに みなさんHTMLタグの一つであるinputタグはご存知だと思います。 その中でもtype="file"についてぼくはこんな疑問を持ちました。 選択したファイルはどこのファイル?コピーとかされているの? これみなさん知っていますか? ちょこっと調べたんですがなかなか情報がなかったので いろいろ自分で調査してみました。 (音は調査が面白そうだったのでそんなに気で調べてないだけです 仮説を立てる まずは仮説をいくつか立ててそれぞれを検証していきます A. ブラウザはファイル参照だけ持っている B. ファイル選択時にTemp領域へコピーしている C. メモリ上に抱えている たぶんこれらのどれかじゃないかなと思っており、 個人的にはBが濃厚だと勝手に考えています。 調査開始 ファイルアップロード機能が必要なので 簡単にファイルをアップロードするだけのアプリを自前で作りました。 http

    HTMLのinputタグ[type=file]のブラウザごとの挙動について調べてみた - Qiita
  • OK Google、FitBitに体重を記録して - Qiita

    記事の目的 Google Home Miniを数か月前に購入したのですが、スマートホーム化をしているわけでもなくただの置物になっていました。また健康が気になるお年頃なのでFitBit Charge2は毎日はめて歩数計や、睡眠時間、心拍などの情報は常にとっているものの家にある体重計はBluetooth対応ではなくめんどくさくて今まで記録はしていませんでした。 最初は体重計の数値をカメラで撮って画像認識で数値読み取ろうかなとも思ったのですが、そんなことよりしゃべったほうが早いのではとスマートスピーカーを使用した仕組み作ってみたら思いのほか簡単に実現できましたよという記録です。 概要 体重をFitBitに記録 大体の流れは上記の絵の通りです。 Googleが出しているIFTTTのApplet Connect Google Assistant to Fitbit があるのでこれ使えば一発で実現で

    OK Google、FitBitに体重を記録して - Qiita
  • du -h などの結果を簡単にソートする - Qiita

    du -h とするとサイズが 10M のように表示されて見やすいです。しかし、結果をソートをしたい時に sort -n でうまくソートできません。 $ du --max-depth=1 -h | sort -nr 640K ./.git 128K ./config 116K ./app 81M . 73M ./vendor 32K ./bin 16K ./public 4.8M ./tmp 4.0K ./test 4.0K ./db 4.0K ./.bundle 2.7M ./log 0B ./lib

    du -h などの結果を簡単にソートする - Qiita
  • jQuery から Vue.js へのステップアップ - Qiita

    はじめに 最近耳にする Vue.js(ビュージェイエス) ってどんなもの? jQuery とどう書き方違うの?とか、jQuery でやってたこういう事って Vue.js だとどうやるの?jQuery しか使ってないけど Vue.js も使ってみたいなぁ~と思っている人向けの小難しいことは省いた記事です。私もそちら側から来たものです。 Vue.js 日公式ページ(日語翻訳率が半端ないと評判) もともと「jQuery から Vue.js への移行」というタイトルでしたが、それだと jQuery を完全にやめる、的なニュアンスになってしまうので、少し変更しました🐹 jQuery と Vue.js の違い jQuery は、セレクタ操作に特化したライブラリで HTML の一部をちょっとだけ弄るには手軽に扱えます。更新のたびにセレクタから要素を探して操作をするため、複数の UI を連携させるよ

    jQuery から Vue.js へのステップアップ - Qiita