エンジニアのひよこ_level10

毎日更新してた人。たまに記事書きます。

【一週間振り返り】大学の頃の素を取り戻してきた一週間【695日目】

1.今週一週間の感想(ざっくり)

昔の自分がやりがちだったことが、ちょっとずつ出てきました。きっといいこと?

2.良かったこと(新規・特徴的なこと)

  1. Laravel6で新規プロジェクト作成
  2. VueとLaravelの連携について教わる

3.良かったこと(平時・生活的なところ)

  1. Switch買ってしまいました。カービィ楽しい。
  2. ついでにスマブラはじめました、CPUにめちゃ負ける。
  3. 私の天然ボケが増えた。あるいは、周りから突っ込んでもらえる環境ができつつある

4.もっとこうしたかったこと

仕事の方、いろいろ進んでるけど、いろいろ集中できてなさげ

5.新しく気づいたこと

仕事から帰って疲れたーってなってるとき、
あまりにも居候の人にめっちゃひどいことを言ってしまったので、
ちょっと気を抜き過ぎでは?あるいはタイミング良くないのでは?ってなってる。

6.来週したいこと

お仕事を頑張りたい!

7.その他

Switch、買ったはいいんだけど、お友達が付属していないのですがそれは・・・

え、お友達ってどこにありますか?どこに売ってますか???

8.体重

98.7kg

今日ちょっと炭水化物取りすぎたから、明日以降がちょっと不安。

でもじゃがいも美味しかった。

【思考メモ】『特別』を生み出すときに、複数要素の組み合わせ方【694日目】

強みや特別感出したい

なにかアイディアを考えた。

でもどこにでもあるアイディアじゃないかな・・・ってなった。

ってことで、他にないアイディアを考える時どうしよう。
単品だとどこにでもあるけど、複数要素を組み合わせれば、
すべてを満たすものは他にない!って考えよう

組み合わせるとは?

お金がかからなくて、景色が綺麗で、移動時間が少ない旅行

こんな風に、複数の要素を全て兼ね揃えた旅行とかは、なかなかできない。

では、どうやって複数要素を探すのがいいか

困りごと

旅行は、

  1. お金がかかる
  2. 移動時間がかかる

これを同時に回避する旅行とか。

利点

  1. 景色が綺麗
  2. ご飯が美味しい

これをさっきの困りごとと組み合わせて、同時に満たす旅行とか良さそうですね。

提供されている人の属性

  1. お金があまりないひと
  2. お金がたくさんあるひと
  3. 日本国内にいる、海外生まれの人

このターゲットを絞ると、ターゲットに対してしか起こりにくい、利点や困りごとが見つかるかもしれないです

提供する側の属性

  1. 大企業
  2. コンサル
  3. 受け入れ側の地方のお店

提供する側が扱いやすいものを提供すると、売り手側が優先的に扱ってくれて、同等のもののどちらを扱おうとしたときに、どちらを選ぶでしょうか

複数の属性・複数の視点

ってことで、いろんな視点・事情を考えて、複数要素を扱うことで、より自分のアイディアが魅力的になるかもしれないです。

行き詰まったら、一度自分が見ている世界とは別の世界を思い浮かべてみましょうφ(・

【Laravel+Vue】MPAでLaravelとVueで値を共有するには?【693日目】

DBの値をVueで扱いたい

<ul v-for=items>
  <li></li>
</ul>

こんな風にfor文とかでVueを使って値を回したい。

でも、Vueからデータベースの値を取ることはできない。
ということで、Laravelなどバックエンドから値をとってきて、Vueに渡してやる必要がある。

ではどうやるのがいいか。

今の所、2つを組み合わせれば良さそうφ(・

1. APIで呼び出す

SPAやドキュメントでよくある、APIでデータを取得する形式。

Laravel側はAPIを提供し、Vue側で呼び出す。そうすれば、レスポンスで得られた情報をそのまま扱えばいい。

Vueのチュートリアルとかでもよくあるやり方ですねφ(・

2. テンプレートエンジン(blade)で値を文字列で渡す

Bladeに値を埋め込む形式。

例えば、Vueのdataのところに、値を埋め込む。

data:
    items: {{ json_encode($items) }}

これで、itemsにjson形式で値が渡せます。

普通はAPI形式で良いのですが、ログインが影響するものや、コンフィグなど、
APIを使えない・使うほどではない時には、こちらの力技をやるのが良さそう

組み合わせて使い分けよう

MPAだと、2番目の案が使えます。

向き不向きがあるので、使い分けましょうφ(・

他にも値を渡すだけならやり方がありますので、自分の今やっていることに一番適していると思われるのを選びましょうφ(・

【思考メモ】やりたい手段を固定すると、最善手になりにくいって話【692日目】

やりたいことに価値をつけたい

VRでなにか作って、それがなにかの役に立つとか、

手段を先に固定して、解決するものを探すとか強みを探したい。

最善手にはなりにくい

例えば、VRで何かを解決したい。なら、旅行をVRでやろうと考えてみる。

でもさ、実際に旅行すれば良くない?

でも旅行は移動時間がかかる・・・
いや、飛行機とか、速い移動手段使えばいいし、
その1時間を短縮して、実際より質の低いもの見たくないよ。

ってことになりかねない。

代案が出てくる以上、それが『Best』『ナンバーワン』にはなるのは、もはや運。

唯一になる

じゃあどうするか。
代案が出てこなければいいじゃん。

つまり、『ナンバーワン』ではなく、『オンリーワン』になるといい。
『Best』ではなく『Unique』になる。

VR使うといい』ではなく『VRでしかできない』にする。

VR旅行であれば?パスポートも要らない、ビザも要らない、余計な手続きを無視出来る。
これらを無視するには法律と戦うことになる。

それを回避出来るのはVRだけでは?とか。

オンリーワンが思いつかなければ?

考え方としてオンリーワンは出来るが、オンリーワンって結構難しいです。

じゃあどうするか。

複数の要素の掛け算をしましょう。

パスポートが要らない旅行は、密入国すればいいが、
法律に引っかからず、かつパスポートが要らないのはVR旅行だけ。

パスポートとかの手続きは、他の人に任せることは出来るが、
頼れる人が居なくても、お金を余分にかけなくても出来るのはVR旅行だけ。

というように、複数の要素を同時に満たすのはこれしかない、という考え方でオンリーワンにしていきましょう。

いい案が他にあれば

このように、強みを探していますが、他にいい方法があれば、是非教えてくれると助かりますφ(・

これと似た考え方がすでに定義されていたり、名言などありましたら、是非教えてください!

この記事が誰かの役に立てば幸いです。お疲れさまでした。

【思考メモ】事業案とか考える時に、強みを考えるフレームワーク【691日目】

思考メモ

思考メモです。私が我流でやってるので、正しいかはわかりませんφ(・

もし、これはすでにあるフレームワークと似てるとか、これのことじゃね?みたいなのがあれば教えてくれると助かります!

困ってること・解決方法・なぜ解決しないのか

基本的に、 困ってること・解決方法・なぜ解決しないのかを並べます。

例えばダイエットに関する製品を売りたい時。このダイエットの製品の強みがわからない時とか。

困ってること

太ってる。体重ヤバい。健康よくない。

痩せねば!!!ダイエットせねば!

解決方法

運動する

食事を制限する

なぜ解決しないのか

疲れる

時間がない

欲望に勝てない

このフレームワークの使い方。

基本的に、困ってることに対して、解決策がゼロというのはなかなかないと思います。

解決策があるなら、その解決策をすればいいじゃない。

でも、みんながその解決策を使わないから、困っているんだと思います。

その解決策をしない理由を解決してあげれば?それが、今あなたが考えているソリューションの強みといえるのではないでしょうか。

ダイエットの例

運動や食事制限をすればいいけど、疲れるし、時間がない。

でも、私の提供するダイエットサプリなら、疲れないし、時間もいらない!

ほら、運動ではなくダイエットサプリで痩せよう!

これなら、みんなも買いたいしやりたいって思う人もいるでしょうφ(・

思考フレームワーク

こんなふうに、なにかを考える時に、取っ掛かりがなくてなかなか考えられない時は、
なにかに当てはめて考えると、分析しやすかったりします。

今回は、登場人物など、視点を含めない思考でしたが、
他にも良い思考のフレームワークとかはあるので、いろいろ知っておくと良いと思います!

【正規表現】()内で `?:`使って、preg_matchなどの検索結果に含めない【690日目】

グルーピングに使う()で不便なこと

正規表現を書くときに、

/(aaa)([0-9])(aaa)/

このように、ひとつのまとまりを表現するために、 ()を使うときがあります。

しかしこのとき、結果を \1などで選択するときには、 ()の数を数えて、何番目かを確かめないといけないです。

今回だと、2番目・・・みたいに考えるのは面倒。(aaa)とか数える順番から除外したい。

php > $text = "aaa2aaa3aaa";
php > preg_match("/(aaa)([0-9])(aaa)/", $text, $matches);
php > var_dump($matches);
array(4) {
  [0]=>
  string(7) "aaa2aaa"
  [1]=>
  string(3) "aaa"
  [2]=>
  string(1) "2"
  [3]=>
  string(3) "aaa"
}

これ嫌ですよね。

()内で?:を使う

php > preg_match("/(?:aaa)([0-9])(?:aaa)/", $text, $matches);
php > var_dump($matches);
array(2) {
  [0]=>
  string(7) "aaa2aaa"
  [1]=>
  string(1) "2"
}

?:を使ったときには順番から除外されていますね!

結構便利φ(・

【本レビュー】中級者から上級者になるために。達人プログラマー【689日目】

読んだ本

初心者向けではないが、いつか必ず読むべき本

初心者に読んでほしい本と言われている本。

結論を言うと、
実務経験ゼロの人がいきなり読んで、学びがあるかというと、結構きついかも?

逆に、少しでも実務をしたことある人には、めちゃくちゃ刺さるいい本だが、
実務イメージがない人には、ピンとこないことは多いと思います。

(少なくとも私はそうだった)

良い本?

めっっっっちゃいいこと書いてます。

抽象度が高い事、逆に実務レベルで具体的なことが書かれていたりして、
慣れてきた頃に読むと、すっごく知るべきことがたくさん詰まっています。

エンジニアとしての心構えやあり方、
業務における困難に対する対応方法といった、
実務をやっている人には、必ず刺さることが、かなりのボリュームで書かれています。

初心者は読むべき?

ちょっとでも実務やったことがあれば、読むべき!!!

そして、自分がわからないのはどこ?なんでわからない?
を知ることが出来ます。天狗の鼻折るのに丁度いいです。(自分のこと

仕事で学ぶことなくなったなーって思ったあたりに読むのはほんっっっっっとうにおすすめします!今すぐ買いましょ!

中級者は読むべき?

実務で困ったこととか、きっと身に覚えがあることとかが見つかります。

デザインパターンや原則について、知識があるが適用にイメージがついてないとかあったら、
刺さることがあるかもしれないです。

ちなみに私は?

たぶん、初心者と中級者の間。

10%も理解出来なかった。逆に10%くらいはわかったと思う。

読んでわかったのが、表題にあるように、
職人から達人、中級者から上級者へのようなレベル感な気がしました。

ある程度の事前知識が必要でした。

DRY原則や単一責任の原則とか、いくつかの原則を知ってるとしっくりくるものは多いです。
これらの知識を自身の思想、実務に落とし込むにはかなり良さそうな本でした!

さあ、初心者で調子に乗ってきたなと自分で思う方、中級者と思って、その先に行くのをどうしたらいいかと思った方、
とりあえず読んでみましょう。おすすめです(๑•̀ㅂ•́)و✧

【一週間振り返り】新しい試みの第一歩を踏み出せた【688日目】

1.今週一週間の感想(ざっくり)

新しい試みの第一歩を踏み出せた一週間

2.良かったこと(新規・特徴的なこと)

  1. CircleCI新規登録
  2. nginxをVPSに導入
  3. sshアタックを防ぐためにいろいろ
  4. 達人プログラマーの本読み切れた
  5. 仕事で新しい挑戦出来た

3.良かったこと(平時・生活的なところ)

  1. ゆっくり休みが取れました
  2. ボードゲームバー満喫出来た
  3. Skyrim VR楽しい(‘ω‘ )
  4. 後輩にVR布教もできた

4.もっとこうしたかったこと

もう少し、nginxについては進めたかった。

5.新しく気づいたこと

仕事や勉強の時間が生活のメインになっていて、
ゆっくり過ごすことも、人生の一部であることに気がつけました。

良かったことに、平時のことを書くようにするのもありなのですが、
意識しない日が増えそうなので、あえて振り返りのテンプレートを変えて、
平時の自分を意識するようにしてみましたφ(・

6.来週したいこと

心落ち着かせつつあるので、改めて自分の仕事や生活を俯瞰した目で見てみたいφ(・

7.その他

何気ない気付きって、本当に大切ですよね。

それを毎週ちょっとずつ取り入れていけば、少しずつ毎日がよくなる気がします。

8.体重

99.5kg

食後でも、100kgは一度も見ない状態になりました(`・ω・´)ゞ