サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
WWDC25
qiita.com/KEINOS
Go 言語(以下 Golang)で、1 バイトのデータを左シフトさせたのち、右側末尾にビット・ローテーションさせたい。いわゆる、ひとつの循環シフト。 普通にビットシフトすると溢れたビットは消えてしまうのです。 func main() { v := uint8(0b11110000) w := v << 1 // 1 ビットの左シフト fmt.Printf("%08b\n", v) fmt.Printf("%08b\n", w) } // Output: // 11110000 // 11100000
/app $ npm ls minimist mastogetter@0.0.1 /app +-- ava@3.5.0 | `-- update-notifier@4.1.0 | `-- latest-version@5.1.0 | `-- package-json@6.5.0 | `-- registry-auth-token@4.1.1 | `-- rc@1.2.8 | `-- minimist@1.2.5 deduped # ← これ `-- eslint@6.8.0 +-- file-entry-cache@5.0.1 | `-- flat-cache@2.0.1 | `-- write@1.0.3 | `-- mkdirp@0.5.3 | `-- minimist@1.2.5 deduped # ← これ `-- mkdirp@0.5.3 `-- minimist@1.2.5 #
【Golang】Docker + scratch で "net" モジュールを使った静的リンクバイナリを使う際のビルドの注意【"net/http" "net/url" など】GoDockerNetmultistage-builddocker-scratch Go 言語(以下 Golang)v1.16 以降で、"net" モジュールを使ったバイナリを Docker のマルチステージ・ビルドでコンパイルし、どーしても scratch イメージで使いたい。 例えば "net/http" や "net/url" パッケージなどを使って HTTP GET リクエストするものなど。 しかし、静的リンクしないと standard_init_linux.go:228: exec user process caused: no such file or directory エラーが発生するし、静的リンクさせ
SHA-3 のコンペで最終選考まで残って Keccak に負けた BLAKE2。その後継である BLAKE3 が「爆速らしい。しかも FNV1a より数倍」と聞いたので試してみたい。 でも公式は Rust と C 言語での実装なのです。どちらも話せません ... 最近勉強している Go 言語(以下 Golang)で試してみたかったのです。 BLAKE3 | BLAKE3-team @ GitHub BLAKE3 の仕様書: BLAKE3 Specs @ GitHub 関連記事: hashアルゴリズムとハッシュ値の長さ一覧(+ハッシュ関数の基本と応用) @ Qiita TL; DR (今北産業) 16・・ バイト長ハッシュで速い FNV1 より、64・・ バイト長ハッシュの BLAKE3 の方が 8 倍以上速かった。😱 試したライブラリ(どちらも BLAKE 非公式): BLAKE3 f
CI/CD の一環として GitHub Actions の Workflow で Docker を使っています。この時、ビルドしたイメージをキャッシュしたいのです。 と言うのも、デバッグなどでトライ & エラーをするたびにベース・イメージを pull したりイメージをビルドするので無料枠のコスト(時間あたりの API リクエスト数制限)が気になります。 しかし actions/cache@v2 でイメージをキャッシュしようにも、/var/lib/docker/ のディレクトリが権限の問題でキャッシュできません。できれば root 権限は使いたくないのです。 この記事は、以下の 1 つでもマッチした人向けの記事です: GitHub 公式の actions/cache@v2 アクションだけでキャッシュ処理を完結させたい Docker Hub や GitHub などのコンテナ・レジストリにキャッ
2022/10/11 この記事で紹介している set-output は廃止(deprecated)されることが決定し、近々使えなくなることがアナウンスされました。 本来、set-output は「アクション毎の環境変数」を保持し、どのアクションが設定したのか明確にするためのものでした。しかし、ユーザーが知らない間にアクション間で意図しない値をやりとりされる可能性もあったことから、GITHUB_OUTPUT に変数定義を追記する形に統一するそうです。 GitHub Actions: Deprecating save-state and set-output commands @ Github.blog - name: Save state run: echo "::save-state name={name}::{value}" - name: Set output run: echo ":
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
[シェル] 複数行の出力を同じ1行に出力させる。出力をキャッチしながら改行を削除して同一行出力の処理 [ash/bash/bourne/zsh シェル互換] ShellScriptシェル芸プログレスバー シェル・スクリプト内で実行したコマンドの出力を1行ごとに表示させたい macOS や Linux のシェル・スクリプトで、解凍やダウンロードなどのコマンドを使う際、 verbose(詳細な出力)時に複数行で出力されます。 進捗確認/プログレスバー的に動いていることが確認できればいいので、出力を改行させずに1行内にカウンターのように収めて表示させたいのです。「linux シェル 複数行 改行 削除 同一行」でググっても期待する結果が出なかったので、自分のググラビリティとして。(Ash/Bash/bourne/zsh シェル互換です) こんなイメージ 👇(従来の進捗表示と、1行で進捗表示)
golang:alpine の Docker イメージで go run や go test を実行すると stdlib.h: No such file or directory の fatal エラーで叱られる。 たまに C がインポートできないと cgo からも叱られる。はたまた、musl や gcc がうんたらと叱られる。 「"golang" "alpine" fatal error: stdlib.h: No such file or directory」とググっても日本語で情報が出てこなかったので自分のググラビリティとして。 $ go test ./... Testing main package go: downloading ... ... # runtime/cgo exec: "gcc": executable file not found in $PATH FAIL gi
foreach ループを使い Server-Sent Events を監視している俺様アプリの入った Docker コンテナがあります。 コンテナを起動して、しばらくするとマシンが「フォーーっ」と唸り始めたので、 docker stats コマンドで確認すると CPU 使用率が 100% を超えていました。 どうしよう Qiita 記事に絞って「Docker CPU 使用率 100% コンテナ 軽減」でググってもヒットしなかったので、自分のググラビリティとして。 TL; DR (今北産業) コンテナ内のプログラムが、条件により空ループ(何も処理をしないでループ)する箇所が発生していないか確認する。 (for/foreach/while ループなど) 該当ループ処理の最後に支障をきたさない範囲で sleep を入れる。 (1 〜 0.5 秒入れるだけでも劇的に変わる) 上記を確認した上で D
$ # ホームディレクトリで du の実行 $ sudo du -d 1 -h ~ Password: 3.8M /Users/admin/Music 8.0K /Users/admin/.docker 8.0K /Users/admin/.local 0B /Users/admin/Pictures 6.0M /Users/admin/.phpls 54M /Users/admin/Desktop du: /Users/admin/Library/Application Support/CallHistoryTransactions: Operation not permitted du: /Users/admin/Library/Application Support/com.apple.TCC: Operation not permitted du: /Users/admin/Lib
簡単に Git サーバーを Mac で建てたい GitHub のような Git サーバーを自宅/オフィス用に Mac・・・ で簡単に・・・建てたい。 しかし、MySQL や Postgres などの DB サーバーや面倒な設定のいらない俺様専用レベルの Git サーバーはないものか 検証済: HighSierra (OSX 10.13.6)〜Monterey (macOS 12.7.2) TL; DR (今北産業) バイナリ1つで動作する「Gitea」はいかがでしょう。 brew でインストール可能(要 tap と各種設定) コマンド 1 行で SQLie3 + 日本語化 + 空きポートで安定版 Gitea がインストールできるスクリプトを用意しました。 でも docker が入っているなら docker compose の方が便利。 いんふぉ Gitea は Golang で作られており
英語の文献(PEP-263)には「magic comment」という記載がありました。 To define a source code encoding, a magic comment must be placed into the source files either as first or second line in the file (「PEP 263 Defining Python Source Code Encodings」 @ PEP より、赤字は筆者) 【筆者訳】 ソースコードのエンコーディングを定義するには、ソースファイルの 1 行目もしくは 2 行目にマジックコメントを設置する必要があります Ruby などの「マジックコメント1」と同様なようです。しかし、Python の公式文献(日本語版)には、具体的な和名は見つかりませんでした。 ソースコードの文字コード指定の特
Docker のコンテナ(ゲスト OS)内のアプリやスクリプトなど、ホスト OS 側からシステム環境変数をゲスト OS に渡したい。 つまり macOS や Linux で言うと export したシェル変数や env コマンドで表示される値を外部から渡したい。LC_ALL とか LANG とかタイムゾーンとかアクセストークンとか SSH の鍵とか色々。 しかし「docker compose 環境変数 ホストOS ゲストOS 渡す 方法 各種」で Qiita 記事に絞ってググっても、まとまったものがなかったので、自分のググラビリティとして。 ... ど ... Docker? 恐れずに Docker を一言で説明すると「Linux 環境の閉鎖空間で、Linux のプログラムを実行するもの」です。 ... ん? つまり、Mac や Windows でも Docker は使えるものの、実際には
Go言語で文字列中に変数を展開して使いたい Go言語で以下と同じことをしたい。 bash でいう hoge="fuga ${piyo:-piyopiyo} mogera" php でいう $hoge = "fuga ${piyo} mogera"; ruby でいう hoge = "fuga #{piyo} mogera" python でいう hoge = f'fuga {piyo} mogera' (python >= 3.6 に限る) 「golang 文字列 変数 展開」とググっても「連結演算子(+)でしかできない」という情報が多かったので、自分のググラビリティとして。 関連記事: 改行などをエスケープして表示したい。【代入済み変数の文字列をエスケープ出力】 @ Qiita TL; DR 確かに Go 言語(以下 Golang)には interpolation(補間、内挿)機能は
QNAP® の NAS に git や PHP7 や Golang をインストールしたい と、思うも「App Center」にないので困った。Python3 はあるのに。筆者の QNAP マシンがショボい(TS-110P+, ARMv5, メモリ 512MB)ため QNAP 用のコンテナ環境「Container Station」も入れられない仕様で、どうしよう。(棒読み) Docker は諦めるにしても、gcc make も入ってないし。git くらいは簡単にインストールできる apt yum brew のような CLI 版のパッケージマネージャーはないものか。 検証機器:OS: QTS 4.3.3, TS119P+, 1ベイ, Marvell ARMv5(ARMADA 300/Feroceon 88F6282, 2010年11月発売モデル) QNAP Clubの www.qnapclub
-ListNetworkServiceOrder -ListAllNetworkServices -ListAllHardwarePorts -DetectNewHardware -GetMACAddress <HardwarePort or Device Name> -GetComputerName -SetComputerName <Name> -GetInfo <NetworkService> -SetManual <NetworkService> <ip> <subnet> <Router> -SetDHCP <NetworkService> [clientid] -SetBootp <NetworkService> -SetManualWithDHCPRouter <NetworkService> <ip> -GetAdditionalRoutes <NetworkService
Python3 + tensorflow で tf.Session() を実行するとワーニングが表示される。 2018-06-18 13:51:51.762563: I tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA TL; DR (今北産業) ノープロブレム。無視しても大丈夫です。 pip でインストールした tensorflow のバイナリが、現在の CPU に最適化されたものではなく汎用(安定版)のバイナリを使っているというワーニングです。 気になる人はワーニングを非表示にするか、ソースからコンパイルし直します。 このメッセージは、次のように pi
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? TL; DR (今北産業) pwgen なんかないのよ。 「パスワードアシスタント」を使う。 標準インストールされたコマンドやプログラム言語のワンライナーで生成する。 TS; DR 「pwgen ねぇ。sw-pwgen ねぇ。 Homebrew なんか見たこたねぇ」な時のサバイバル術 お客様先で急遽きょランダムなパスワードを目の前で作成する必要に迫られました。 オンラインのパスワード・ジェネレーターなどもってのほか、思いついた適当な文字列や数字でも自他共にパターン(自分のクセ)が現れる懸念があります。 brew(Homebrew)が使え
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 「ハッシュ値の衝突」(コリジョン)や「データの改ざん」などの対策で、ベストなハッシュ・アルゴリムを判断するために、ハッシュ値の「長さ」や「速度の目安」一覧が欲しい。 ハ ... ... ハッシュ? ... ってか、ハッシュって、そんなにおいしいの?圧縮された暗号とちゃうん? TL; DR (今北産業) この記事はハッシュ関数の出力結果を桁数ごとに、まとめたものです。 ハッシュ関数の各々の「アルゴリズムが最大何文字・・の 16 進数で返してくるか」の事前確認に利用ください。 マスター、一番強いヤツをくれ。 バランス優先 👉 sha3-5
2018/07/22 現在のインストールされる Pandoc のバージョンは「v1.12.3.1」(それでも古い) 最新の Pandoc をインストールしたい場合はソースからコンパイルする必要があります。 pandocをCentOS7にインストール @ Qiita Pandocとは オープンソースのドキュメント・ファイルのフォーマット・コンバーター。Markdown などのマークアップ・データを HTML, Word, InDesign ICML, etc. といった様々なフォーマットに変換でき、Lua で独自の変換機能も使える。 [Wikipedia] Pandoc 情報 Pandoc 公式サイト 最新リリース 入力(変換元データ)と出力(変換可能なデータ)の対応フォーマット一覧 有志による日本語翻訳 (v1.12.4.2, 2014/06/27) 変換方法を Qiita で見る Mar
🐒 2018/01/28 追記:元々は、去年(2017 年に)訳していた "LINE Developers - Web API - Integrating Web Login" の v2 の日本語訳の記事なのですが、今年(2018 年)に入って LINE ログイン V2.1 のリリースとともに本家で翻訳が出てました (´・ω・`) 下書きの空きを作るために公開します。削除に忍びない また、わかりづらい用語には筆者の独断で補足および関連リンクを貼っています。「LGTM」(旧いいね)が付くたびに何かしら手を付けてますが、変更通知は送りませんのでストックされた方はお手すきに覗きに来てください。 🐒 2022/01/18 追記: この記事の LINE API v2.0 は廃止(deprecated)になりました。現在は v2.1 ですが、仕組みの基本は同じなので理解を深めるための参考にして
"Security is a journey, not a destination." ────── by Bruce Schneier セキュリテイ・チェックリスト OS(CentOS7)をインストールした直後に設定するセキュリティ対策の ToDo リストです。 盲目的に設定するのではなく、理由を知った上で対策することが重要です。可能な限りインラインコードや括弧内は、各々にそのキーワードで検索の関連リンクを張っています。 「さくらの VPS」ユーザーは、主に Apache の設定がメインであるものの『VPS 設定マニュアル』は必読だと思います。 バックアップ体制(3-2-1 ルール) アップデート(yum update, WordPress, plug-inなど) yum --enablerepo=remi,remi-php56 update -y && reboot (KUSANAGI
次のページ
このページを最初にブックマークしてみませんか?
『@KEINOSのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く