タグ Big Sky
人気順 5 users 10 users 50 users 500 users 1000 usersBig Sky :: Go に go:embed が入った。
Go 言語はシングルバイナリをウリにしたプログラミング言語です。バイナリファイルを1つポンと scp で転送すれば動くのでとても便利です。シングルバイナリとなると当然、画像や HTML といったアセットをバイナリに埋め込みたくなります。 Go 言語ではこれまで go-assets や go-bindata、statik というツールを使う事で... 続きを読む
Big Sky :: Windows ユーザは cmd.exe で生きるべき 2020年版
はじめに 2016年にこんな記事を書きました。 Big Sky :: Windows ユーザは cmd.exe で生きるべき。 [D] Windowsはターミナルがダメだから使えないってのは過去の話? 基本的にはいい感じに見えますが、いくつか問題は発覚してます。 http://blog.drikin.com/2015/01/w... https://mattn.kaoriya.net/software/why-i-use-c... 続きを読む
Big Sky :: Vim をモダンな IDE に変える LSP の設定
この記事は Go の編集環境について書いていません。昨日書いた、ぼくがかんがえたさいきょうの Vim のこうせい 2019年 年末版は、僕個人の好みに依存するため一緒に書くべきではないですし、おすすめするつもりも無いです。IDE 機能の説明だけ欲しいと思う方もいるでしょうし、また純粋に Go の編集環境だけの説明が欲し... 続きを読む
Big Sky :: ぼくがかんがえたさいきょうの Vim のこうせい 2019年 年末版
はじめに 以下の記事では、僕の Vim の構成について記述しています。本来はこの記事で vim-lsp の導入方法と私的 Go 編集環境について書こうと思っていましたが、あまりにも長くなってしまったので別途書く事にしました。僕は Windows と Linux しか使わないので、皆さんの環境で使うとうまく動かない可能性があります。... 続きを読む
Big Sky :: sudo の特権昇格バグはなぜ起こったのか
Linux の sudo に root 権限を奪取できるバグが見つかった。 Linuxの「sudo」コマンドにroot権限奪取の脆弱性。ユーザーID処理のバグで制限無効化 - Engadget 日本版 この脆弱性は、sudoコマンドのユーザーIDに-1もしくは4294967295を指定すると、誤って0(ゼロ)と認識して処理してしまうというもの。0(ゼロ)はrootのユー... 続きを読む
Big Sky :: Microsoft Word を Markdown に変換するコマンド「docx2md」を作った。
8月に Google Developers Expert となり、新米の様にオロオロとしています。過去の GDE ミーティングの議事録を見せて頂いているのですが Google Document に保存されており、Go だけでなく他のカテゴリの GDE に関する物も含めると全てに目を通すのはなかなか骨が折れます。技術者なので問題は技術で解決すべく、これら... 続きを読む
Big Sky :: Google Developers Expert (Go) になりました。
Google の方からお誘いを頂き、Google Developers Expert (Go) になりました。 僕のこれまでの Go に対する活動を評価頂けました。僕が Go を触り始めたのが2009年、今から10年前でした。Go はまだメジャーリリースすらされておらず、誰も仕事で使っていない言わばホビー言語でした。 一部のアーリーアダプタが「この言... 続きを読む
Big Sky :: 1つの横着から隠しファイルが生まれた瞬間
この文章は Rob Pike 氏が Google+ に投稿した内容の意訳です。現在は web archive からしか閲覧できません。面白かったので訳してみました。 ショートカットからのレッスン ずっと昔の話。Unixファイルシステムで移動を簡単にする為に . や .. を追加する設計がほぼ完成していた頃。確かではないけれどバージョン2への... 続きを読む
Big Sky :: gocode やめます(そして Language Server へ)
はじめに まず始めに言っておかなければなりません。 gocode 今まで本当にありがとう この記事は、Go 言語歴10年になる僕がこれまで愛用してきた Go 言語のコード補完ソフトウェア gocode の歴史と功績、そして今、gocode 自らがその役割を終えようとしている姿をぜひ皆さんに知って頂きたいという思いから Go Advent Ca... 続きを読む
Big Sky :: VimConf 2018 に行ってきた。
僕のこれまで人生の中で、2日間まるまる Vim の事を考えるなんて事なんて無かったし、今思い返してもとても刺激的な日でした。 まず始めに、VimConf というイベントを産み出してくれた ujihisa さん、kaoriya さん、運営に関わった皆さん、そしてスポンサー頂いた企業の皆様、個人スポンサーをして頂いた皆さん、本当に... 続きを読む
Big Sky :: 書評「Go言語による並行処理」
O'Reilly Japan, Inc. 様に献本頂きました。ありがとうございます。 そして献本頂く際にお声を掛けて頂いた、本書の翻訳を担当された ymotongpoo さんにもお礼を申し上げます。ありがとうございます。 本書の訳は非常に素晴らしく、とても原文が英文であったとは思えないほど綺麗で、読んでいく中で「原文でどの様に表現... 続きを読む
Big Sky :: golang で tensorflow のススメ
tensorflow といえば Python と思っておられる方も多いのではないでしょうか。間違いではないのですが、これは初期に作られた Python 向けのバインディングに研究者達が多く食いついた結果に過ぎないと思っています。実際 tensorflow は現在 C言語、C++、Python、Java、Go から利用する事ができ、最近では JavaScript に... 続きを読む
Big Sky :: Go 言語の非同期パターン
Go は goroutine という非同期の仕組みを提供していますが、使い方次第では色々なパターンが実装できる為、初めて goroutine を見た人はどの様な物が正解なのか分からない事があります。以前、このブログでも紹介した事がありますが Go の非同期の仕組みは一見単純な様に見えて実はとても奥深いのです。 Big Sky :: golang の channel を使ったテクニックあれこれ go... 続きを読む
Big Sky :: Golang と Vue.js で簡単なアプリケーションを作ってみた。
Go と Vue.js を使ってどれくらいシームレスに作れるかを確認したかったのでタスク管理アプリを作ってみた。サーバは Go なので vue-cli や webpack 等は使わない。全て CDN から。Vue.js でアプリのベースを、UI コンポーネントとして Element 、Ajax ライブラリとして axios を使った。 以前、 Riot.js を使って Todo アプリを作った 時... 続きを読む
Big Sky :: 書評:[試して理解]Linuxのしくみ
Twitter で「読みたい」と呟いたら著者の武内覚さんから献本しましょうかとお声を掛けて頂いたので即答でお願いしました。 僕はいつも Linux でしか動作しないソフトウェアを Windows に対応させるパッチを書いたりしているので、普段 Windows しか触っていないと思われがちですが、実は僕が Linux を触り始めたのは 1996 年にトッパンから出版された「Linux 入門」くらい昔... 続きを読む
Big Sky :: net/http でレスポンスの内容を確認したいなら io.TeeReader を使おう
« Golang で物理ファイルの操作に path/filepath でなく path を使うと爆発します。 | Main printf デバッグは便利だ。技術の後退と言われようと printf でないと解決できない事はまだまだたくさんあります。 今日は net/http でクライアントが得たレスポンスの JSON を確認したいといった場合に、どうデバッグしたらいいかを書いてみたいと思う。 Go ... 続きを読む
Big Sky :: Vim と日本語入力の話。
8/31、patch 8.0.1026 で Linux 版 Vim のとある挙動が修正されました。 patch 8.0.1026: GTK on-the-spot input has problems - vim/vim@5c6dbcb - GitHub https://github.com/vim/vim/commit/5c6dbcb03fa552d7b0e61c8fcf425147eb6bf7... 続きを読む
Big Sky :: Vim で端末機能が動くようになった。
ひさびさ Vim のエントリを書く気がします。 今から4年ほど前、Vim にスレッドセーフなメッセージキューが欲しいというメールが vim-dev 届きます。 [PATCH] Proof of concept: thread-safe message queue https://groups.google.com/forum/#!searchin/vim_dev/tarruda%7Csort:re... 続きを読む
Big Sky :: 虫が入り込むその瞬間
今日とある場所で虫が入り込む瞬間を見た。虫といってもバグの方。それはプログラマ向けの Q&A サイトで始まった。質問の内容はこうだ。 文字列には 0 もしくは 4 が含まれるはず。文字列は 4 から始まり、例えば 440, 44, 40, 4400, 4440 など、これらは正しいとするが 404 は正しくない。今のところ、私は 0 の直後に 4 が現れる事でチェックしている。これは果たして効率的... 続きを読む
Big Sky :: sudo コマンド書いた。
Windows で hosts ファイル( C:\Windows\System32\drivers\etc\hosts ) を編集するには管理者権限が必要です。またコマンドラインから IP アドレスを変更するのにも管理者権限が必要です。管理者権限で hosts ファイルを編集するにはメモ帳を管理者権限で起動する必要があります。管理者権限でメモ帳を起動する為にはメニューから「メモ帳」を出し、右クリッ... 続きを読む
Big Sky :: Re: Go言語感想文
幾らか言いたい事があったので。 Go言語感想文 - なるせにっき 序 最近、敵情視察を兼ねた仕事ととしてGoでアプリケーションを書いていた。このアプリケーションがどんなものかはそのうち id:tagomoris さんがどこかで話すと思うけれど、この コンポーネント ... http://naruse.hateblo.jp/entry/2017/06/02/203441 GoroutineとChan... 続きを読む
Big Sky :: ログイン認証をマイクロサービス化する「loginsrv」
認証を持たないウェブアプリケーションをいざ認証に対応させようと思うと案外面倒でモチベーションを無くしてしまうなんて事もよく起きうる話です。特に社内向けのアプリケーションを作っていたら本番で使う事になってしまって、なんて話は良くある話です。開発で本番 DB を見るのはちょっと...。でも既存のコードをゴリゴリと触りたくない。そんな場合にログイン認証部分だけマイクロサービス化できると気持ちも幾分和らぎ... 続きを読む
Big Sky :: golang では変数の宣言位置が大事
今日こんなツイートをした。 @mattn_jp よろしければベターな理由をm(_ _)m 名前空間を短くする作法なのはわかるのですがメモリやGCやコンパイラなど、どの辺に優しい感じですか? — Ryuji IWATA (@qt_luigi) April 5, 2017 qt_luigi さんからどうしてかを聞かれたので説明したいと思います。 golang では宣言した位置で初めて自動変数としてメモ... 続きを読む
Big Sky :: golang と Generics と私
以下の記事は Java について触れていますが、Java を dis っている訳でもありませんし、冗長に見える例を意図的に使っています。 最近 Twitter で golang に Generics が無い事についてずいぶんと盛り上がったのですが、僕の意見をこのブログにも書いておこうと思います。 golang に多相が無いのはアレだとか開発者の怠慢だみたいな話はだいたい他の言語を覚えた人から出る感... 続きを読む
Big Sky :: レーベンシュタイン距離を使ったあいまい grep コマンド「lsdgrep」作ってみた
元ネタはずいぶんと昔の記事なのだけど。 編集距離 (Levenshtein Distance) - naoyaのはてなダイアリー ■ 編集距離 (Levenshtein Distance) 昨日 最長共通部分列問題 (LCS) について触れました。ついでなので編集距離のアルゴリズムについても整理してみます。 編集距離 (レーベン... http://d.hatena.ne.jp/naoya/200... 続きを読む