タグ

ブックマーク / qiita.com (1,222)

  • フレッツ光回線でscpが遅かった話 - Qiita

    この記事は、Supershipグループ Advent Calendar 2021の7日目の記事になります。 先日、sshを使用したファイル転送が回線速度と比べて異常に遅いという現象に遭遇したので、その際に行った調査を再現しつつ原因や対策について書いてみたいと思います。 要約 OpenSSHはデフォルトでinteractiveなセッションに af21 、non-interactiveなセッションに cs1 をDSCP値としてIPヘッダに設定する フレッツ網はIPヘッダのDSCP値を帯域優先サービスで使用しており、契約に応じて指定された優先度以外が設定されたパケットの転送は保証されない そのため、OpenSSHをデフォルト設定のままフレッツ網で使うと通信ができなかったり、速度低下などの悪影響を受ける可能性がある OpenSSHがDSCP値を設定しないようにするためには、IPQoS noneを設

    フレッツ光回線でscpが遅かった話 - Qiita
  • pythonが好きなjavascript使いが喜びそうなat()メソッド - Qiita

    最近、気づいたんですが.at()というメソッドが追加されたみたいです。 できることは、整数値をパラメーターとして受け取って、インデックスにある要素を返すというメソッドです。タイトルのpython好きなの部分に響きそうなのは、整数値なので、負の値が使えるということです。 何が嬉しいかというと、配列の最後の要素からカウントバックができるという事です。 多分、下記を見ていただくのが分かりやすいと思います。 例

    pythonが好きなjavascript使いが喜びそうなat()メソッド - Qiita
  • シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の本当の理由を知ると優れた文法が見えてくる - Qiita

    シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の当の理由を知ると優れた文法が見えてくるShellScriptBashUNIXshellPOSIX はじめに シェルスクリプトの変数代入で = の前後にスペースを置くことができない理由は、検索すれば「プログラマーの君! 勘違いするな! シェルスクリプトでは読みやすさのためにスペースを置くな!! という話」のような記事がすぐに見つかります。記事に書いてあるとおり変数代入とコマンド呼び出しと区別がつかないからです。それは間違いではないんですが、私はもう少し説明が足りないと感じています。そこで今回は = の前後にスペースを置けない当の理由を解説したいと思います。 の前に皆さんにはこの話を読みながら、自分がシェルスクリプトの言語設計者だったとしたら、どういう言語仕様にするかを考えて欲しいです。なぜかと言うとシェルスクリプトの文

    シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の本当の理由を知ると優れた文法が見えてくる - Qiita
  • ハイフンに似ている横棒を全て統一するᅳㅡ˗𐆑–᭸‒-─−▬𐄐—━‐‑ー﹣―ー﹘-⁃➖⁻! - Qiita

    はじめに これらの横棒、コンピュータにとっては全て違うのですが 見分けがつくでしょうか? -˗ᅳ᭸‐‑‒–—―⁃⁻−▬─━➖ーㅡ﹘﹣-ー𐄐𐆑 郵便番号、住所、電話番号など、横棒が使われているデータを扱うとき、 人が入力したデータや購入したデータであると、同じ記号が使われていないことはよくあることです。 090-1234-5678 090᭸1234᭸5678 090‑1234‑5678 090−1234−5678 これらの電話番号の文字列も phone_no_list = ['090-1234-5678', '090᭸1234᭸5678', '090‑1234‑5678', '090−1234−5678'] # 文字をUnicodeコードポイントに変換 for n in phone_no_list: # 文字列の4番目の横棒の文字コードを見てみる print(n[3], ord(n[3]

    ハイフンに似ている横棒を全て統一するᅳㅡ˗𐆑–᭸‒-─−▬𐄐—━‐‑ー﹣―ー﹘-⁃➖⁻! - Qiita
  • 【Python】専門書や論文を読みたいけど数学が苦手・わからない人向けのコードを読んで学ぶ数学教本 - Qiita

    はじめに プログラミング自体は文系、理系、年齢関わらず勉強すればある程度ものになります。プログラミングがある程度できるようになるとTensorflow,PyTorchやscikit-learn等のライブラリで簡単にできる機械学習やデータサイエンスに興味を持つの必然! これからさらになぜ上手くいくのか・いかないのかの議論をしたい、社内・外に発表したい、理論的な所を理解したい、先端研究を取り入れたい、応用したい等々と次々に実現したい事が増えるのもまた必然でしょう。このときに初めて数学的なバックグラウンドの有無という大きな壁が立ちはだかります。しかし、数学は手段であって目的ではないので自習に使える時間をあまり割きたくないですよね。また、そもそも何から手を付けたら良いかわからないって人もいるかと思います。そんな人に向けた記事です。記事の目標は式の意図する事はわからんが、仕組みはわかるという状態に

    【Python】専門書や論文を読みたいけど数学が苦手・わからない人向けのコードを読んで学ぶ数学教本 - Qiita
  • いますぐ使える単語埋め込みベクトルのリスト - Qiita

    はじめに 単語埋め込みとは、単語を低次元(と言っても200次元程度はある)の実数ベクトルで表現する技術のことです。近い意味の単語を近いベクトルに対応させることができるとともに、ベクトルの足し引きで意味のある結果(例えば king - man + women = queen)が得られるのが特徴です。 単語埋め込みベクトルは品詞タグ付け、情報検索、質問応答などの様々な自然言語処理アプリケーションに使われる重要な技術です。とはいえ、実際に用意するのはなかなか骨の折れる作業です。大規模なデータをダウンロードし、前処理をかけ、長い時間をかけて学習させ、結果を見てパラメータチューニングを行う・・・。 そのため、単に使いたいだけなら学習済みのベクトルを使うのが楽です。というわけで、そんな単語埋め込みベクトルの中から今すぐ使えるものをピックアップしてみました。 埋め込みベクトルの情報は以下のリポジトリにま

    いますぐ使える単語埋め込みベクトルのリスト - Qiita
  • やっと React Server Components が腑に落ちた - Qiita

    2020 年末に発表された React Server Components は、一言でいうと React コンポーネントをサーバ側でレンダーする仕組みです。……が、初見ではちょっと魔法すぎて訳が分からない技術でもあります。トーク動画だけ見てても「具体的にどんな仕組みで動いてるの?」みたいな疑問が山ほど浮かんでくると思います。 一体裏で何がどうなっているのか、この技術はどう使うのか、デモコードを触りながらやっと具体的に理解しはじめたので、なるべく動作が想像しやすいようにまとめました。なお、この記事単体よりは、他の記事や上記動画を見てある程度概要や公式の売り文句を掴んでからの方が理解しやすいと思います。 これまでの、普通にブラウザで動作するコンポーネントのことを、区別のためにクライアントコンポーネントと呼びます(単に区別のために既存のコンポーネントに別名がついただけです)。以下ではサーバコンポ

    やっと React Server Components が腑に落ちた - Qiita
  • Googleが大量の機械学習用データベースを無料公開してた - Qiita

    個人用メモです。 機械学習は素材集めがとても大変です。 でもこの素材集め、実は無理してやらなくても、元から良質な無料データベースがあったようなのです。 URLはこちら YouTube8-M https://research.google.com/youtube8m/explore.html 提供されているサービスは以下の通り 800万個の動画 19億個のフレーム 4800個の分類 使い方はExploreから画像セットを探し、ダウンロードするだけ。 他の方法も見つけた open images dataset 「すごい神だな」と思ったのは これもう完成されてますよね もちろんこの認識前の画像もセットでダウンロードできます。 Youtube-8Mとは、画像数を取るか、精度で取るか、という違いでしょうか。 他にも良い素材集を教えていただきました (はてなブックマーク情報 @sek_165 さん )

    Googleが大量の機械学習用データベースを無料公開してた - Qiita
  • WebAssembly で画像のリサイズ処理をやってみたら JavaScript + Canvas API より遅かった話 - Qiita

    WebAssembly で画像のリサイズ処理をやってみたら JavaScript + Canvas API より遅かった話JavaScriptRustOpenCVTypeScriptWebAssembly WebAssembly(WASM) は JavaScript より計算処理が速いという話題がしばしば聞かれます。 では、単純な数値計算ではないけれど、JavaScript を利用した通常のフロントエンド開発だと時間がかかる処理を移植するとどうなるのでしょうか1。記事ではその一例として、巨大画像(4K~)を指定したピクセル数までリサイズする処理を書いてみました。 リポジトリ: https://github.com/yokra9/wasm-image-resizer JavaScript + Canvas API でリサイズしてみる まず、比較のため JavaScript でリサイズ処理を

    WebAssembly で画像のリサイズ処理をやってみたら JavaScript + Canvas API より遅かった話 - Qiita
  • Androidアプリのインストール数をGCPに自動収集させる - Qiita

    はじめに Androidアプリのインストール数をGCPのBigQueryに自動収集するようにしました。 これまで、Androidアプリのインストール数を確認するときは、Google Play Consoleを開き、アプリを選択し、レポートをcsv形式でダウンロードし、、、といった作業が必要でそれが面倒でした。 この面倒な作業をなくすために、Google Play から取得できるアプリのインストール数をGCPのBigQueryに毎日自動転送するよう設定した流れが以下の通りです。 GCPのBigQueryにデータを格納する Google Cloud PlatformのメニューからBigQueryを開く 転送を選択して、+転送を作成ボタンを選択する ソースタイプを選ぶところがあるので、「Google Play」 を選択します。 設定画面が表示されるので、項目を埋めていく 「転送項目名」と「スケジ

    Androidアプリのインストール数をGCPに自動収集させる - Qiita
  • コマンドラインでAndroidアプリをビルドして起動し直す - Qiita

    export APPLICATION_ID=com.example.myapplication ./gradlew assembleDebug; adb install -r app/build/outputs/apk/debug/app-debug.apk; adb shell am force-stop $APPLICATION_ID; adb shell monkey -p $APPLICATION_ID -c android.intent.category.LAUNCHER 1 たまにAndroid Studioのことが信じられなくなることがあって、そういう時はコマンドラインで一通りやりたくなる。アプリを起動する時に、Acitivityを指定する必要があるのかなと思ってたけど、monkeyというコマンドがあるのを知らなかった。

    コマンドラインでAndroidアプリをビルドして起動し直す - Qiita
  • ApacheとNginxについて比較 - Qiita

    ミドルウェアとは コンピュータを制御するオペレーティングシステム(OS)と、特定の処理を行うアプリケーションソフトウェアとの仲立ちをするソフトウェアのこと OSの基的な機能だけでは、アプリケーションソフトが必要とする機能(サーバやデータベースとのやり取りなど)をカバーできない場合があり、必要な機能を集約してパッケージとしてまとめたものがミドルウェア WEBサーバーソフトウェアとは ミドルウェアの一つ HTTPリクエストを送った時に、何かしらのレスポンスを返すプログラム Apacheとは 「あぱっち」と読む 正式名称は「Apache HTTP Server」 オープンソースソフトウェア(OSS)で、無償で誰でも利用可能 マルチプロセスモデル(接続ごとにプロセスをフォーク≒コピーする)なのでメモリがいっぱいになりやすい つまり、リクエストを処理するごとにリソースが枯渇していってしまう モジュ

    ApacheとNginxについて比較 - Qiita
  • 技術ようつべチャンネル集 - Qiita

    役立つYouTubeのチャンネルまとめ 数学、物理、アルゴリズム、プログラミング、などなど自分が使う技術に役立ちそうだな、困ったときによく見たなと思うチャンネルを紹介する。 取っ掛かり、ハマりがち、コツみたいな物が拾える。数学がメイン。随時更新していくつもり。 当たり前だけどちゃんとも読んで勉強するんだぞ。 背景 YouTubeは視聴する登録チャンネルの数が増えると、チャンネルが埋もれて発掘困難になりがち (chrome拡張でできるチャンネルのフォルダ分け機能は、ぽちぽち登録するのも面倒で、そのフォルダの中から掘り出すのも難しい) モチベが上がる(おべんつよしたい)チャンネルを探してるうちに湧いてくる、わんにゃんコンテンツ(だいちゅき)に流され一日が終わるため、 モチベが上がる有用なチャンネルにすぐにたどり着くために、よく使うQiitaに列挙しておくことにした Streamや大学専用サイ

    技術ようつべチャンネル集 - Qiita
  • DevTools Protocolを使ってChromeを操作&CSSカバレッジを取得する - Qiita

    記事は Classi Advent Calendar 2020 の3日目の記事です こんにちは。Classi プロダクト開発部 エンジニアの中村です。 直近の業務で社内ツール(Webアプリケーション)のE2Eテスト&CI整備を行いました。そこでDevTools Protocolを使ったブラウザオートメーションについて調べたところ、今後のCIに活用できそうなネタが見つかったのでその紹介をしたいと思います。 ご存知ですか? DevTools Protocol ブラウザオートメーションと言えば Selenium の名前を思い浮かべる方は多いと思います。 Selenium 2 からの実装である WebDriver は W3C で標準化が進められおり、ブラウザオートメーションの標準規格として存在しているものだと(少なくとも私は)捉えていました。 しかし近年リリースされた Puppeteer や

    DevTools Protocolを使ってChromeを操作&CSSカバレッジを取得する - Qiita
  • ネットワークグラフ描画ライブラリ7個まとめ - Qiita

    参考ページ D3.js D3.js v4/v5 force simulation 最小構成 – サンプル d3.jsでスゴイっぽい図(force layout)を作ってみたら思ったより簡単だった件 sigma.js How to use Sigmajs to display your graph ? vis.js Network Examples vis.jsを使ってネットワークを書く vis.jsでグラフ描写 VivaGraphJS VivaGraphJS Amazon Visualization Cola.js Cola.js cola.jsによるデータビジュアライゼーション Cytoscape.js Cytoscape.jsを試してみた Cytoscape.js でインタラクティブなグラフ構造描画 - WordNet の可視化例 自律分散監視システムとそれを利用したネットワークグラフ

    ネットワークグラフ描画ライブラリ7個まとめ - Qiita
  • Google Apps Script でよく使うスニペット集 30 選 - Qiita

    この記事は DevFest 2020 の Google Apps Script 入門 2020 で紹介しました。 はじめに Google Apps Script では非常に簡単に Google Apps (スプレッドシート、 Google カレンダー、 Gmail、 Google Drive など) 間の連携ができます。例えば Google カレンダーのイベント一覧をスプレッドシートにエクスポートする際には以下のような処理の流れになります。 Google カレンダーからイベント一覧を取得 スプレッドシートに入力する形式にデータ変換 Google スプレッドシートに値を挿入 1, 3 のような Google Apps から取得、挿入する部分はよく使い回す部分となるので、スニペットとして使い回すと便利です。今回は私がよく使うスニペット集を紹介しようと思います。 スプレッドシート スプレッドシー

    Google Apps Script でよく使うスニペット集 30 選 - Qiita
  • Node.jsでコンソールの表示を上書きする - Qiita

    ダメな方法 まずはダメな方法です。こういうスクリプトを実行すると、表示が追いつかずガタガタになります。 const main = function (f) { f() } const printAbcde = function () { process.stdout.write("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n"); process.stdout.write("bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb\n"); process.stdout.write("ccc

    Node.jsでコンソールの表示を上書きする - Qiita
  • ブラウジングを高速化する、最強のChrome flags 15選 - Qiita

    はじめに ほとんどの人はChromeの動作を重く感じるでしょう。これは、RAM、プロセッサ、ストレージオプションなどのPCの仕様が低いことが原因です。しかし、その解決のためにできることは何もありません。代わりにChromeで今できることを最大限に利用したらどうでしょう。Chromeには実験的なオプションがいくつかあり、Chromeの動作を変更できます。一般的には「Chrome flags」と呼ばれています。Chrome flagsのオプションは、オン/オフを切り替えられます。 これはAndroid端末の開発者向けオプションに似ています。多くの人がAndroidの開発者向けオプションを使って、Android携帯のユーザーエクスペリエンスを向上させています。 Chrome flagsとは? Google Chrome flagsは、さまざまな実験的オプションです。実験的とは、試せるオプションの

    ブラウジングを高速化する、最強のChrome flags 15選 - Qiita
  • 2021年に知っておきたいJavaScript最適化技術34選 - Qiita

    最新の省略テクニック、コツ、秘訣で、JavaScriptコードを最適化する。 開発者の生活というのは常に新しいことを学ぶことで、その変化についていくことは決して難しいことではありません。私は、フロントエンド開発者として知っておく必要のある省略形や機能など、JavaScriptのすべてのベストプラクティスを紹介して、2021年の生活をより快適にしたいと考えています。 JavaScript開発に長く携わっている人でも、コードを追加しなくても問題解決できるような最新機能を知らないこともあるかもしれません。ここで紹介するものは、クリーンで最適化されたJavaScriptのコード記述にも、2021年のJavaScriptの面接準備にも役立ちます。 これは新しいシリーズで、2021年版のJavaScriptコーディングチートシートです。 1. 複数の条件を持つif 配列に複数の値を格納し、includ

    2021年に知っておきたいJavaScript最適化技術34選 - Qiita
  • フロントエンドの刺激的なコーディング課題6選 - Qiita

    素晴らしい課題でコーディング意欲を高めよう。 Photo by Ferenc Almasi on Unsplash. はじめに コーディングを上達させる最も効率的な方法の1つは、できるだけたくさん作ることです。 コーディング課題は、ものを作ることで自分のスキルアップする楽しい方法です。この記事のリストを参考に、何か選んで作り始めましょう! 急いでいる時や、コーディングのアイディアを枯渇させたくない時は、100以上の課題をここにまとめてあります。 課題には好きなツールを使えるので、練習したいものがあれば、気軽に挑戦してみてください。 1. タスクマネージャUI なんて美しいアプリケーションでしょう!クリーンでモダン、インテリジェントなUIです。 Aysenur Turkによる「CSSグリッドを使ったタスクマネージャーUI」 学べること HTMLCSSを使用する方法。新しいCSSグリッドを試

    フロントエンドの刺激的なコーディング課題6選 - Qiita