IT系バンドマンの日常

備忘録やライフログなど

Netlify + Nuxt.jsでNetlify Formsを使うときの備忘録

はじめに

Netlify、自分でサーバーをたてなくていいのでめちゃくちゃお手軽で便利なのですが、Nuxt.jsとNetlifyを組み合わせて使う際Netlify Formsが正常に動作しないことがあったので備忘録として記事にしておきます。

www.netlify.com

解決方法

次の2つの条件が揃っていると動作しました

  1. nuxt.config.jsmodeuniversal にする

  2. netlify formsを利用するformタグの中にhiddenタグで form-name の値を仕込む。次のような感じ。

<form name="contact" method="POST" data-netlify="true" action="/thanks">
    <input type="hidden" name="form-name" value="contact" />
</form>

参考サイト

tutorialmore.com

効果的な振り返りの仕方を共有する記事(ついでに2019年を振り返ってみる)

はじめに

この記事はCODEBASE okinawa Advent Calendar 2019 の25日目の記事です。

qiita.com

こんにちは!絶賛風邪でダウン中の中西です。今日は大分体調も良くなってきたので予定通りAdventカレンダー用の記事を書いていこうと思います。

この記事の目的

みなさま振り返り、してますでしょうか!?

1年の振り返り、プロジェクトの振り返り、イベントの振り返りなど、利用シーンは様々ですが今回は僕が日々振り返りをしていく中で得たコツを読者のみなさまに共有していきたいと思います。

ついでに自分の今年1年を振り返って来年の目標をたてようかと思っています。

振り返りをするときのコツ

なるべくネガティブな言葉を使わない

  • Bad...「悪かったこととしては、空き時間があったにも関わらず勉強をサボってしまったことです」
  • Good!「改善できそうなこととしては、空き時間にサボることが多かったので、もう少したくさん勉強することができたのではないかということです」

せっかくの振り返りも自分で自分のことを悪く言ってしまっては振り返るのがだんだん億劫になってしまいます。
自分に改善できそうなことがあった場合は、ポジティブな言葉を使うようにしましょう。
実際にトライした自分をまず褒めてあげましょう!あなたが実際に取り組んだからこそ改善の余地があることももわかったはずです。取り組みさえしなかった人はそれさえもわからなかったはず。
取り組んだあなたは偉いです!Great!

目標が達成できなかった場合はなぜできなかったのかを具体的に明記する

  • Bad...「目標にしていた勉強時間100時間に全然到達できなった」
  • Good!「目標にしていた勉強時間100時間に到達できなった。理由として、卒論やバイトが思ったよりも忙しくなってしまったからだと思う。ただ、それにしてもあと10時間くらいは多く勉強できそうだった」

上記の例でいうと、目標値100時間という値をまず最初にたてたのですが、自分の生活スタイルだと実現できなさそうだということがわかったわけです。そこから実際に勉強した時間が20時間だった場合、次の目標値は30時間にしようかなという感じで次の目標がたてやすくなりますね。

振り返りの内容をふまえて、次の目標をたてるときは定量的な目標をたてる

  • Bad...「今よりもプログラミングができるようになる」
  • Good!「Nuxt.jsを使って自分の自己紹介サイトを5月末までに公開する」

せっかく改善していきたい内容が見えたのに、来年も同じことを繰り返していてはもったいないですよね。
目標をたてるときのコツとしては定量的な目標をたてることです。
大事なポイントとして、ここでたてた目標というのは修正が入る前提でたてるということです。上記の例だと、来年の3月くらいで、自分の就職先がNuxt.jsではなくReactをメインに使っている会社だと判明した場合、上記の目標は「Reactを使って自分の自己紹介サイトを5月末までに公開する」に修正してもよい。という感じです。

それでは自分の今年1年を振り返ってみる

良かったこと

  • 自社サービスの開発、ユーザーインタビュー、新規案件の営業など、プログラミング以外の仕事もたくさんやらせていただいた1年だった。今年の経験は絶対来年以降も役にたつものになりそう!
  • Web開発を仕事のメインにして3年が経過したが、今年の後半は実装スピードがかなりはやくなった気がするので実装のスキルアップは継続して頑張っていきたい。

改善できそうなところ

  • 1年のほとんどの時間を仕事やコミュニティ活動に使っていた感じがあり、自分が本当に取り組みたかった英語学習や音楽のスキルを伸ばす時間を思うようにとれなかった。来年はプライベートで受ける仕事は自分のキャパシティーをその都度確認して、楽しそうな仕事でも無理に受けないようにする。もしくはリソースの空いている知り合いに仕事を流すようにする
  • 仕事が忙しいのを理由に食生活がぐだぐだになってしまっていた。来年は自分をケアする時間はしっかりとって体調管理をしていきたい。具体的には、外食をやめて最低でも週3は晩御飯をスーパーで調達するようにする。

2020年の目標

Laravel Conf Taiwan2020で英語で発表する

登壇予定なので、やっぱり僕の来年の目標はこれですよね。ガチで頑張ります。

最後に

みなさんもぜひ自分の今年1年を振り返ってみて、来年の目標をたててみましょう!

公開鍵のフィンガープリントを確認したい

昨日こんなツイートが流れてきました

調べてみると中西の公開鍵も完全に公開されていました!!!

https://github.com/nakanishitetsuhiro.keys

こんな便利なURLがあったなんて知らなかった。ショック!

ところで、このURL、登録してある公開鍵が全部表示されるので一見どれがどの公開鍵だかわからないんですよね。そんなときは下記のコマンドでフィンガープリントが取得できます

ssh-keygen -lf ~/.ssh/id_rsa.pub

SHA256形式で出力されちゃう場合は -E md5 オプションを付加することでうまくいくらしい

ssh-keygen -E md5 -lf ~/.ssh/id_rsa.pub

参考サイト

stackoverflow.com

GCPUG Okinawa!#7 午前の部「GKEハンズオン」に参加してきた!

みなさんこんにちは!4月はインフラ強化月間として勉強してきた中西ですが、その一環で下記のイベントに参加してきました!

okipug.connpass.com

業務ではAWSばかり使っていたので、GCPを触ってみたいという気持ちもあり参加させていただきました。

早速ハンズオン!

誰か一人講師の坂田さまと会場の前でライブコーディングができるということで会場のみなさまに見られながらハンズオンをすることに。みんなに見られながらのハンズオンは初めての経験でしたがとても楽しかったです!途中GCP上のVMがうまく動作せず再起動した後Chromeでうまくオンラインエディタが起動しないトラブルに見舞われましたが、これまで培ってきたLinux力を活かしてLinuxコマンドとVimで乗り切りました!笑

用意していただいたハンズオンのワークスペースの画面キャプチャ

GitHubリポジトリのマークダウンとかを駆使して簡単にチュートリアルが作成できるあたりもGood!

f:id:kaoru6strings:20190422100115p:plain

俺的GCPのすごいところ

  • ブラウザで使えるオンラインエディタがVS Codeそのまんま
  • AWSは案件とアカウントが1対1のイメージで運用することが多いが、GCPには「プロジェクト」という概念が存在するため、アカウントの管理が煩雑にならずにすむ
  • GCPに登録すれば12ヶ月間300ドル分の無料クレジットがついてくる!なお、無料トライアルが終了したあと自動で課金がはじまってしまうことはない模様
  • Chrome上でLinuxのコンソールいじれるCloud Shell便利すぎ
  • CloudShellを活用してGCP上でDockerイメージのビルドなどが可能!GCPの高スペックなマシンを借りれるので高速でビルド&プッシュが可能

現状の疑問点

  • やはり小さなサービスはk8sはオーバースペックな感じがするが、AWSで言うECSのようなサービスはあるのかどうか

さいごに

これを機会にGCPをゴリゴリ触ってみて、次回案件のインフラ構築はGCPでやってみる目標をたてました!

講師の坂田さま、イベントスタッフのみなさま、会場のみなさま本当にありがとうございました!

PhpStormで開いてるタブを全部表示したい

すぐ忘れるので自分用にメモしときます。

バージョン

2020.1.1

手順

  1. メニューバーのPhpStorm > Preferencesをクリック
  2. サイドバーから、Editor > General > Editor Tabs をクリック
  3. Appearance の 「Show tabs in one row」のチェックを外す。

野良データにやられた話

PHPでちょっとしたスクレイピングのプログラムを作ったとき、 json_encode() で下記のエラーがでてハマった

// json_encode()のエラーは json_last_error_msg();  で出力できる

Malformed UTF-8 characters, possibly incorrectly encoded

blog.supersonico.info

こちらのサイトを参考にしたところ、どうもゴミ文字が混ざっているとencodeのエラーでバグるらしいので、下記のコードでUTF-8からUTF-8への変換をかけてやると回避できるとのこと。

$convert =  mb_convert_encoding ($string, 'UTF-8', 'UTF-8');

データを連想配列で持たせていたのでそのままmb_convert_encodingしたかったけど文字列しか渡せないみたいだったのでスクレイピングしたデータを代入する箇所を1箇所ずつmb_convert_encodingして対応しました

まとめ

野良データの取扱には時間がかかるので気をつけましょう、、、

2018年の振り返りと2019年の目標

こんにちは!2019年も残すところ361日となりましたがみなさんいかがお過ごしでしょうか?

弊社リビルドは7日が仕事はじめですので中西はまだお休みです。このお休みの期間を使って2018年の振り返りと2019年の目標を書き認めたいと思います。

また、この記事は中西哲大の個人としての意見です。社員の立場としての意見ではございませんので、その点ご留意くださいませ。

実際にリモートワーク(notフルリモートワーク)をしてみてどうだったか

色々な方の助けもあり2018年4月から株式会社リビルドでの憧れのリモートワーク生活が始まりました。実際に8ヶ月仕事をしてみてのメリットとデメリットをまとめてみたいと思います。

メリット

  • 必ずオフィスに出社しなければいけないというストレスから開放された
  • はとむぎくん(ねこ)と過ごせる時間が増えた
  • 自宅作業の場合はお昼休みにギター弾ける
  • 自宅やコワーキングスペースなど、その日の気分で好きな環境で働ける

デメリット

  • 一人暮らしでリモートワークするとガチで誰にも合わない日が発生します。体感で3日以上誰にも合わないと精神が病んでくる感覚がありました
  • ものづくりをする際、社内でのチーム連携をしっかり考えながら動く必要が出てきます。その点ではオフィスに出社する方がチーム連携がとりやすいため優位です

ベンチャーで働くか、既存の会社で働くか

実際にベンチャー企業で働いてみると、いわゆる大企業との違いがしっかり見えてきました。
技術面、お客さんとの交渉や、簡単な画面レイアウトなど、1から10まで仕事をこなさなければいけない場面も多々でてきます。
また、会社としての制度も整ってない場合が多いので制度が足りないと感じた場合は自分で声を上げる必要がありますし、それこそ自分のタスク量も自分で調整する必要がでてきます。
僕が大学生のとき就活をしていて、「大企業がいいのか、ベンチャーがいいのか」という話はよくあがっていましたが、僕のいまのところの答えは「怖がらずにどちらも体験してみよう」です。
人間失敗から学習し、気がつき、改善する生き物だと思っています。たくさん色々な人に相談して、あとは自分のやりたいことにマッチする会社に入るのがいいのかなと思っています。

見えてきた自分の行動理念

仕事やプライベートでの2018年の活動を通して、自分の行動理念というものが見えてきた気がします。
昔から、世界をかえてやるぞ!みたいなモチベーションはなかなか持てない自分なのですが、少なくとも僕の知る限りの人たちは幸せであってほしいという気持ちは昔から変わらずあります。
それは会社の仲間であり、飲み屋の飲み仲間であり、お客さんでもあります。2019年も引き続き周りの人たちが幸せになるようにはどうしたらいいか悩みに悩み抜こうと思っています。

2019年の目標

  1. 自分のタスク量が常に80%くらいになるよう調整して稼働する
  2. まわりの人を幸せにする
  3. 自分らしく生きる
    • 好きな人にはたくさん会う
    • 寂しかったら寂しいって言う
    • 自分の好きな技術をたくさん伸ばす
    • ギターたくさん弾く

おわりに

最後まで読んでくれてありがとうございました!

共によき世界になるよう2019年も頑張っていきましょう!