nDiki : Go

プログラミング言語 Go (Golang)

ノート

スライス

  // 配列とスライスを作成
  slice = make([]int, 10)
  slice = make([]int, 10, 20) // capacity も指定

 // スライスへの追加
 slice = append(slice, elem)

 // スライスへ他のスライスを追加
 slice = append(slice, anotherSlice...)

文字列への変換

 // []byte から string へ
 b := []byte{97,98,99}
 s := string(b)

文字列からの変換

 // string (10進数)から int64 へ
 n, err := strconv.ParseInt(s, 10, 64)

スポンサード リンク

2015年5月20日 (水)

今日のさえずり: Go で書いてる CLI ツールのログ出力に golang/glog チョイスした

2015年05月20日

[ 5月20日全て ]

2015年5月21日 (木)

今日のさえずり: Go 自身のバイナリリリースは misc/makerelease というベタなのだった(Go で書かれている)

2015年05月21日

[ 5月21日全て ]

2015年5月25日 (月)

今日のさえずり: チャックおろしたら「地震です!」とかやめて欲しい

2015年05月25日

  • 13:07 TwitterFacebook Connect を切った。
  • 14:30 チャックおろしたら「地震です!」とかやめて欲しい。
  • 19:16 Go での Prolog 実装ありそうだなと思ったらやっぱりあった。
  • 20:08 セブン-イレブンにあった冷凍済みのドリンク、結局アクエリアスだった。
  • 23:06 4カ月ほぼ全てアンフォロー状態にしていた Facebook を元に戻した。なにこのざわつき。
  • 23:08 片っ端から Facebook でフォローし直すと「『購読するフィードは厳選しましょう』一度に多くのユーザーのフィードを購読すると、ニュースフィードに大量の情報が届くようになる可能性があります。フィード購読について詳しくはこちら。」というのが毎回出るようになることがわかった。
  • 23:15 なんか充実したのがいっぱい流れてきた。これで良かったのだろうか。
[ 5月25日全て ]

2015年5月27日 (水)

今日のさえずり: データの寿命を考えて自作日記システムは(記事データは)テキストファイルですって言ったら驚かれた

2015年05月27日

[ 5月27日全て ]

2015年8月22日 (土)

YAPC::Asia Tokyo 2015 2日目

naney:20794290452

今日も朝から YAPC::Asia Tokyo 2015 の2日目です。まずは一杯の無限オレンジジュースからスタート。最初はトラックCから。 C の部屋に入れたのはこれが初めてです。なるほど狭め。

「Mackerel開発におけるScalaとGo、そしてPerl」 songmu @songmu 氏 #yapcasiaC

言語の特性にあわせて様々なプログラミング言語を活用しているというトーク。サーバサイドで使われているということでちょっと Scala が気になりますが、やはりここでもコンパイルが遅いという話が出ていました。

Go は小さなシングルバイナリを作れるというところがやはり大きな利点。あとはやっぱり Perlビルドなどのためのツールを作るのに便利だよねという話でした。

Perl 5.22 and You」 Ricardo Signes @rjbs 氏 #yapcasiaA

Ricardo Signes 氏のトークを聞くのは YAPC::Asia Tokyo 2013 1日目の時(記事)以来です。

前回同様 Perl の機能追加・削除についての話が中心。直観に反するような挙動が修正されるというところは言語としての完成度があがって良いなと。一方、さらに experimental として追加される文法は、ますます変態的になっていくなという印象もありました。

ランチ

今日は一人でぶらりとTFTビルへ。

「Adventures in Refactoring」 Ben Lavender @bhuga 氏 #yapcasiaA

リファクタリングを行う理由の中で「Developer Education」という話があって、理解のためにリファクタリングをしてもらうのも良いと言っていて、ああそうだよなと思いました。リファクタリングの素養はあるけれども、チームのコードは知らないという状態の時にはいいなと思います。

あとは、基本的には Martin Fowler の「リファクタリング」を読んでいれば OK な感じです。

ちょっとうつらうつらしてました。あと「カレのヒゲ」はマイクにこすれるので通訳的に要注意のようでした。

「Parallelism, Concurrency, and Asynchrony in Perl 6」 Jonathan Worthington @jnthnwrthngtn 氏 #yapcasiaA

Perl 6 における 並列・並行・非同期処理の話。 Perl 6 では言語レベルでこのあたりのサポートがしっかり入ってくるという印象でした。昨日聞いたトークといい、やはり Perl 6 が気になってきました。

Go Debugging, Profiling, and Optimization」 Brad Fitzpatrick @bradfitz 氏 #yapcasiaA

Go の各種ツールを使って時間やメモリを消費している部分を見つけてどんどん削っていく様子をライブで実演してくれました。なるほど、ちょっとしたコードでも工夫すると劇的に最適化できるみたいです。

実演中アセンブラコードをチェックしているところや、データが 1 word から 3 words で管理されているという説明などをみて、ああやっぱり Go は C/C++ 的なマシンへの近さやコンパクトさがあるよなとあらためて感じました。

「Lightning Talks Day 2」 #yapcasiaA

YAPC::Asia Tokyo 最後のトーク(になるかもしれない)となった LT は Kuniwak (@orga_chem) 氏の「Vim script性的解析の光と闇」でした。

CONBU さんが LT の時間内で設営・撤収デモまで実演していて、その素早さに驚嘆でした。まさに神業のレベルです。会期中お世話になりました。

「Wrap Up!」 Daisuke Maki @lestrrat 氏 #yapcasiaA

今年はキーノートが無いので LT が終わるとクロージングです。

今年の参加者はなんと約2,130人。今の形での開催は最後と言われている YAPC::Asia は今後どうなっていくのでしょうか。 YAPC::Asia Tokyo 2015 は「The End.」のスライドで幕を閉じました。皆さんお疲れさまでした。

YAPC::Asia Tokyo 2015 を終えて

去年の YAPC::Asia Tokyo 2014 では Go 言語の勢いを感じ、その後ちょっとした規模ですが業務ツール開発に使ってみたりしました。

YAPC::Asia Tokyo 2015 では近年になく Perl のトークを見た気がします。しかも今回は Perl 6 のコードををよく見た気がするのは気のせいでしょうか。今回はこれを機に Perl 6 にチャレンジしていきたいと思います。

今日のさえずり: 鉄道模型かハムかパールのようなものか

2015年08月22日

[ 8月22日全て ]

2016年10月26日 (水)

ようやく日記システム DiKicker のメンテナンス開始

この日記(nDiki)で使っている自作日記システム DiKicker開発し始めたのが2003年12月末なのでもう13年物だったりします。ここ最近大きなメンテナンスはしていなかったのですが、まだこの先10年以上使えるように手を入れることにしました。一昨日から着手。

やりたいこと

  • もともと WiKicker (WikiEngine) からの派生で作ったのでが WiKiEngine の方は使わなくなったので、不要なコードを削除したい。共通部分をスーパークラス化してあるけれどもここもまとめたい。
  • WikiName の特別扱いをやめたい。
  • Perl 5.005_03 でも動くように Perl 5.8.0 未満かどうかで処理を変えているけれども、もう 5.005_03 用のコードは消したい。
  • データを Berkeley DB にトリッキーな形で入れているので SQLite あたりに変えて簡単にしたい。
  • 最終的には Go で書き換えたりして。
[ 10月26日全て ]

2017年8月20日 (日)

ちゃおサマーフェスティバル2017 (ちゃおフェス)

image-half:/nDiki/2017/08/20/2017-08-20-114940-nDiki-1200x800.jpg image-half:/nDiki/2017/08/20/2017-08-20-114956-nDiki-1200x800.jpg

パシフィコ横浜 展示ホール 1F ホールDで昨日・今日の2日間開催のちゃおサマーフェスティバル2017(ちゃおフェス)に行ってきました。

世田谷区たまがわ花火大会に昨日行っていたら今日はお疲れで行かないかなと思っていたのですが、花火大会が雨で中止となったため今日は体力ばっちりで出掛けられることになりました。ちゃおフェスを知ったのは4年前の2013年8月の開催当日ちゃおを買ってみたのが2015年6月、そしてとうとう今年ちゃおフェスに参加です。

Twitter検索してみると始発で会場を目指している方もいていったいどれぐらい混雑しているのだろうと心配しつつ会場に向かったのですが、10:30 到着で入場自体は待つこともなくすんなりホールに入ることができました。

プリパラやアイカツスターズ!など大きいお友達が気になるメーカーブースもあるものの、少女漫画雑誌イベントだけあって、やはり小学生から中学生ぐらいの女の子連れの家族が来場者の中心でした。男の子が少ないこともあり、混んでいる場所でも落ち着いた雰囲気でまわりやすかったですね。アイカツスターズ! の S4 の服を着ている女の子とかがいたのにはビックリしました。

入口近くの原画展・色紙絵展示を楽しんだ後に会場をぶらぶら、各ブースは10〜60分待ち、あるいは時間指定の整理券制なので遠目からこんなのがあるのということで眺める感じで済ませました。中学生以下は入場の際にいろいろなノベルティの入ったビニール袋と Let's Go! スタンプラリーの用紙がもらえるので、スタンプラリーをしながら会場を回るのが楽しそうです。

ちゃおは「12歳。」以上に「プリプリちぃちゃん!!」推しっぽいですね。それから「ねこ、はじめました」もグッズがあったりしてだんだん力を入れてきてるようです。

最後にキャラ☆コレクショングッズコーナー(物販コーナー)で買い物をして会場を出ました。1時間強ぐらいいたかな。ちゃおフェス、満足です。

[ 8月20日全て ]

2017年12月6日 (水)

今日のさえずり: thanks っていったらモニカ

2017年12月06日

  • 11:14 thanks っていったらモニカ(吉川晃司)。
  • 11:14 モニカってなんだ?
  • 21:33 Files Go 入れてみた。このアプリで Xperia Z5 上の不要なファイルを削除。
[ 12月6日全て ]

2017年12月11日 (月)

ターミナルや Alfred から Slack に投稿するのに slackcat を入れた

ぼっち Slack ワークスペースに思い浮かんだことをつぶやいておくことにしたのでターミナルや Alfred for Mac からもさくっと投稿できるように、slackcat を入れてみました。

slack は Go で書かれているのでさくっとビルドできますが Homebrew でもインストールできます。

 brew install slackcat

あとは最初に

 slackcat --configure

と --configure オプション付きで slaccat を1回実行し認証を済ませます。認証が済めば以下のように標準入力から slackcat にテキストを渡すことで Slack に投稿できます。

 echo 'hello' | slackcat --channel timeline --stream

便利。

[ 12月11日全て ]

2019年11月5日 (火)

Pixel 4 に Gallery Go

Xperia Z5 でデバイス上の写真をちょっと見るのに標準で入っていた Sony Mobile Communications の「アルバム」アプリケーションを使っていたのだけれど Pixel 4 にそういうのが見当たらない。

どうしたものかなと思って「Gallery Go by Google フォト」をインストールしてみた。シンプルだけれどこれで十分かな。

(ちなみに後日「Google フォト」アプリでも「デバイスのフォルダ」で「バックアップと同期」の対象にしていないものも見られることに気がついて、そっとアンインストールした。)

[ 11月5日全て ]

About Me

Naney Naney (なにい)です。株式会社ミクシィで SNS 事業の部長をしています。

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。ちょっとしたノートは nNote にあります。

※内容は個人的見解であり所属組織とは関係ありません。

月別インデックス
Process Time: 0.056734s / load averages: 0.64, 0.36, 0.31
nDiki by WATANABE Yoshimasa (Naney)
Powered by DiKicker