プログラミング

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

golang の web フレームワーク gin の日本語ドキュメントを書いたのでよろしくね。 https://t.co/4bwWS7Usja— Sai (@sairoutine) 2018年11月28日Go言語には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

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

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

【Golang】tmpファイルを扱う

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

【Golang】文字列数字をソートする

string型数字のスライスを小さい順にソートする方法です。例えば、"2", "1", "11" があった場合にそのままソートしようとすると文字列ソートになってしまいますから、下記のような順序になりますね。 "1" "11" "2""11"が最後に来るべきですよね。 サンプルコ…

【Python】TypeError: f() takes exactly 1 arguments (2 given)

エラーを調査してましたら、うっかり紛らわしいケースが見つかりました。関数を実行するときに引数の数が正しくないと、タイトルのようなエラーがでます。 例1 ためしに、引数が正しい処理と正しくない処理を実行してみます。 test.py def printNum(a, b): p…

【Python】IndentationError: expected an indented block

うっかりしてるとこんなエラーがでることがあります。期待したインデントがないよ!ってことです。 例1 test.py def printStr(text): print(text) # <--インデントなし printStr("hogehoge") 実行結果 File "test.py", line 3 print(text) ^ IndentationErro…

(俺は)まだシェルスクリプトでこんな初歩的なミスしてんの!?

シェルスクリプトで初歩的なミスをしてました。それに気づくまでに半日くらいかかってしまい すげー自己嫌悪でガッカリです。同じ轍を踏まないようにブログに書いておきます。 クイズ 下記のシェルスクリプトはエラーになりますが なんでだかわかりますか? …

Goで基礎的なwebアプリの学習

Goと言えば処理速度が速いことにメリットがあります。最近のWebサイトもGoで作られる話もよく聞きますし、 Goのwebフレームワークもいろいろ出てきています。Gin、goji、matini、beego....いろいろありますね。 フレームワークを使う前に単純にwebプログラミ…

【Go】配列の途中までのポインタは取れない(cannot take the address of ...)

文字列を[]byteにして、途中までの配列について ポインタと取りたいと思ってました。実際やってみたところエラーになった。 test_str := "aaabbbccc" t_b := []byte(test_str) fmt.Println(&t_b[0:5]) こんなエラーがでる cannot take the address of t_b[0:…