プログラミング

【Go】Go言語でgzファイルをまとめる

たまたまgzファイルを一つにまとめる(=コンカチする)必要があったのでやってみました。 読み込んだ時にバイナリーで扱ってるんで、そのまま書いてしまえばいいから簡単ですね。 準備 ファイル フォルダ構成 実行スクリプト goのコード os.OpenFile ReadFile…

【Go】multiple-value in single-value context

たまにこんなエラーが出て戸惑いました。 あんまり調べなかったせいか、ググってもよくわからなくて引数かな?とか考えてたら全然違ってました。結論から言うと、返り値が2つなのに1変数しか受取ろうとしてないぞ! っていうエラーでした。アホ過ぎて、よく…

続「Goプログラミング実践入門」の写経がとてもいい勉強になった

サンプルソースを写経していて、どーしても気になるところがあったのでメモしておきます。 blog.suganoo.net(※2018/12/06更新 全然ちがうところ修正していたので更新) 開始ユーザーが表示されない User.Nameって無いよね ここの部分の .User.Name が無いせい…

「Goプログラミング実践入門」の写経がとてもいい勉強になった

先日読んだこの本について内容がよかったので写経に挑戦してます。 blog.suganoo.netやっと9割がた終わったのですが、とてもよかったです。 写経するの実は今回初めてだったのですが、かなり学びになりますね。ところどころ端折ってしまったところも多々ある…

GoのWebフレームワークginの日本語ドキュメントがでたらしい

golang の web フレームワーク gin の日本語ドキュメントを書いたのでよろしくね。 https://t.co/4bwWS7Usja— Sai (@sairoutine) November 28, 2018Go言語にはRuby on RailsのようにデファクトのWebフレームワークがありません。GoでWebプログラミングをして…

文字化けファイルをinodeで消す

探してみたらけっこうやり方あるみたいですね。 でも備忘のため書いておきます。そもそもなんでinode番号指定で消す必要があるのか?ですが、こんなことがありました。 一行一行ファイル名を書いたリストを作る そのリストを読み込む 1行づつ書いてあるファ…

「確かな力が身につくPHP「超」入門」を読んでみた

確かな力が身につくPHP「超」入門 (Informatics & IDEA)作者: 松浦健一郎,司ゆき出版社/メーカー: SBクリエイティブ発売日: 2016/09/27メディア: 単行本この商品を含むブログを見るGoでWebプログラミングを学んでいるんですが、webプログラミングで有名どこ…

【Go】goでhttp.Requestを使ってみる

Goでwebプログラミングを勉強してます。 この本をもとにして写経してます。 suganoo.hatenablog.comhttp.Requestの値は何が取ってこられるかやってみました。URIパスは RequestURIでとってこられるんですね。 httpのrequesthttp - The Go Programming Langua…

【Go】exec.Commandで外部コマンドを実行する

たまたま気になったので調べてみました。ざっくりいうと exec.Command("hoge")で実行コマンドを指定します。 .Run() : 返却値を無視 .Output() : 返却値を取得 .Start() : 完了を待たない .Wait() : 完了を待つ ソースコードは後述の参考Qiitaを参考にしてい…

インフラエンジニアならpythonだよね

「インフラエンジニアならプログラミング知識とかいらないよね?」 「プログラミング苦手だからインフラやろうかな。」たまにこんなことを耳にします。 そんなこと言う人がいるんだな~とちょっと驚きました。たしかにインスタンスはawsとかでボタンポチポチ…

JenkinsのMaster-Slave間のオンライン/オフラインの関係

ちょっとこりゃ知らなかったなあというネタを書いておきます。 前回こんな記事を書きました。 suganoo.hatenablog.com 関連してジョブの切り替えをもう少し知らべてみたところ、1つわかったことがありました。短い言葉で説明がむずかしいのですが、 Slaveノ…

【Golang】Go言語でjsonを扱う

「Goプログラミング実践入門 標準ライブラリでゼロからWebアプリを作る」を読んでいたら、jsonを扱う項目があったので練習がてら自分でも書いてみました。ほかにもやり方はあるようですが、まずはオーソドックスなやり方のencoding/json使ってやってみます。…

centos 7にmysql clientを入れる

mysqlのクライアントがほしかったのでインストールtipsを書いておく。centos 7 からmariadbなんですね。なんだかややこしいなあ。インストールするサーバーにはHadoop関連のコマンドもいれてある。 単純にyum install mariadbをするとこんなエラーが出てしま…

JenkinsのSlaveノードの冗長化を考えてみた

Jenkinsを構築しているんですが、障害対策を検討してみたお話です。自分ところで使ってるJenkinsはそれほどクリティカルではないにせよ、Jenkinsのノードが落ちてしまったりするとリカバリがなかなか大変なので障害対策をしておきたかったわけです。Masterに…

【プログラミング】codewarsがすんごくいい教材だった

今日久々にcodewarsでJSの問題にチャレンジしたら、やっぱり腕が鈍ってたよね しばらくは毎日一問でもやらないとダメだわ。— Yuki Sato (@yuki_sat) October 1, 2018 codewarsはプログラミングの腕を鍛えるのにめちゃくちゃオススメです! ブートキャンプで…

【beeline】Required field 'client_protocol' is unset!

beelineでHadoopにつなごうとしたらこんなエラーがでて困った。 18/10/10 15:59:41 [main]: ERROR jdbc.HiveConnection: Error opening session org.apache.thrift.TApplicationException: Required field 'client_protocol' is unset! Struct:TOpenSessionR…

「HTMLとCSSで基礎から学ぶJavaScript」を読んでみた

HTMLとCSSで基礎から学ぶJavaScript作者: 園田誠出版社/メーカー: 秀和システム発売日: 2011/09/20メディア: 単行本購入: 3人 クリック: 9回この商品を含むブログ (5件) を見るしばらく前に読んだので更新しておく。Javascriptを学びたくて買ってみました。…

「いちばんよくわかるHTML5&CSS3デザインきちんと入門」を読んでみた

いちばんよくわかるHTML5&CSS3デザインきちんと入門 (Design&IDEA)作者: 狩野祐東出版社/メーカー: SBクリエイティブ発売日: 2016/10/27メディア: 単行本この商品を含むブログ (1件) を見るこんな本を読んでみました。仕事では使わないのですが、やっぱりWeb…

【Solidity】CryptoZombiesはブロックチェーンの勉強にむちゃくちゃいい教材だ!【Blockchain】

cryptozombies.io#CryptoZombies のレッスン6が完了!レベル3.0のクリプトゾンビ'The Phantom of Web3'をゲットしたよ!ゾンビ軍団が大きくなってきた! https://t.co/C2ZHxq6Hs6— suganoo@SESで満足してるインフラエンジニア (@suganoo) 2018年9月20日ここ…

【メモ】sshd_configの修正は気をつけろ!最悪ログインできなくなる。

またアホなことやっちまった。。。sshd_configをいじってたら、ログインできなくなっちまいました。誰かが同じ轍をふまないように、自分のアホ操作をさらしておきます。はぁー、EC2インスタンスだったし、デプロイもすぐできるようにしてたのがせめてもの救…

【Solidity】msg.senderってなに?

solidityを勉強してると、実行を自分のオーナー(?)に限定にするためにこんな書き方をすることがあります。 require(msg.sender == owner) このmsg.senderは自分で定義してるわけではないので、最初のうちはどっからこれは来てるんだ???と戸惑います。 調…

【Blockchain】【Ethereum】【メモ】Ethereumの情報メモ

※随時更新予定(たぶん。。。) Ethereumホワイトペーパー ここのリポジトリを漁ればだいたいのものは入手できそう。 github.com Tutorial 日本語の説明 FinTechコラム | NTTデータ先端技術株式会社 CryptoZombie わかりやすい。けっこう楽しい。 cryptozombie…

【Golang】userパッケージを使ってみる

userパッケージを使ってみました。user - The Go Programming Language package main import ( "fmt" "os/user" ) func main() { user, err := user.Current() if err != nil { panic(err) } fmt.Println("User.Name : " + user.Name) fmt.Println("User.Uid…

【シェルスクリプト】visudoでスクリプトから/etc/sudoersを編集する。

あるユーザー(foobar)ユーザーを作ったからsudo権限をつけたい。 それをスクリプトから実行したい。としたとき、どうすればいいか?ちょっと悩みました。/etc/sudoersは直接編集できないし。。。 visudo でなにかしらのインプットはできない感じだし。そした…

【Golang】runtimeを調べてみた

Go言語のruntimeはOSやプロセスの情報を得ることができます。 runtime - The Go Programming Language CPU情報はDeprecatedになってしまったようですね。下記のサンプルコードをもとにちょっと自分でも書いてみました。 golangcode.com package main import …

ブロックチェーンプログラミングで調べておきたいサイトまとめ

ざっとピックアップ。 mediumが多く見つけられたのが意外だった。あとでしっかり読んでみようっと。medium.commedium.commedium.comdavenash.comjeiwan.ccmedium.commedium.comblockgeeks.com

機械学習とかトレンドピークなのかもね

@tenche1204さんのツイートはほんと参考になります。機械学習エンジニアの需要は今がピークだと感じています。現在の需要はではなくAIへの過剰な期待によって支えられているからです。一部大企業を除いて今後市場の求人は減少することになると思われますので…

【Ansible】ansible-playbookのオプション調べてみた

ちょっと自分のメモがてらansbileのオプションを書き留めておきます。それぞれのファイルの正式な書き方や説明は省略します。 よく使う実行コマンド ansibleコマンド 設定ファイルなど playbookファイル hostsファイル オプション -i INVENTORY -k, --ask-pa…

【Golang】tmpファイルを扱う

Golangにはtempとしてのファイル操作関数があるんですね。便利ですね。 あまり使う用途ないかもしれませんが、パッと見関数で何やってるかわかって可読性がちょっとよくなるかもしれません。 サンプルコード ポイント ioutil.TempFile ioutil.TempDir os.Tem…

オブジェクト指向設計を学ぶためにオススメの本

プログラミングを覚えてきたら、オブジェクト指向設計を学ぶのがおすすめです。なぜなら、これまで汚いコードを書いてきて痛い目にあってきたからです!上司やリーダーは気軽に言うんですよ、「ちっちゃい修正だからさ!すぐ直せるでしょ!」う、、、あ、、…