検索結果0件」

    ReactもVueも出来るが手放した理由【課題分離と可処分時間】

    ReactもVueも出来るが手放した理由【課題分離と可処分時間】

    こんにちは、シンヤです!
    今回はReactもVueも出来るが手放した理由【課題分離と可処分時間】を解説いたします。


    「React」と「Vue」とは

    プログラミングに詳しくない人のために、上記2つを解説いたします。
    「React」と「Vue」とは、どちらも「Webでアプリを作るためのライブラリ」です。

    React Vue
    Facebook製。
    「JSX」という特殊な記法でコードを書いていく。
    コードの書き方が生のJavaScriptに近いので、他の技術に転用がしやすい。
    個人開発。
    HTMLに近い書き方でコードを書いていく。
    学習コストが低いので、初学者の方でもすぐWebアプリ作りができる。

    「ライブラリ」と「フレームワーク」について

    先ほど「ライブラリ」という言葉を使いました。
    ここから先の話は「ライブラリ」「フレームワーク」の違いを理解する必要がありますので、両者の違いを解説いたします。

    • ライブラリ
      • Webの画面を作るための道具の一つ
    • フレームワーク
      • ライブラリを使い、すぐにWebアプリが作れるように整理された道具箱

    「React」と「Vue」はライブラリなので、フレームワークも存在します。


    React製の代表的なフレームワーク

    NextJS GatsbyJS
    リリース当初からSSRをサポートしており、ページ毎のmetaタグを簡単に変えられたり、カスタマイズをすればブログを作ることも可能。 SPAでブログが作れることが特徴で、WordPressのようにプラグインによるカスタマイズや、テーマ機能でデザインを変えることも可能。

    Vue製の代表的なフレームワーク

    NuxtJS VuePress
    Webアプリ作りに特化。
    Vueの簡単さはそのままに、SSRやmetaタグの変更もサポートしている。
    ブログ作りに特化。
    複雑な設定をしなくても、Markdownを書くだけでブログ記事を作ることができる。

    私は両方実装できるが、基本的に対応しない

    このブログ自体も「React」で作られております。
    条件によって見た目が流動的に変わらない「静的な実装」であれば、私はどちらも対応可能です。

    ですが基本的に、現在の私は実装案件は担当しておりません。
    これはReactやVueだけでなく、HTMLやCSS等の他の実装案件にも言えます。

    理由は主に以下の通りです。

    デザインを基軸とした課題解決の方が、より高い価値を発揮できる

    実装案件全てを対応する場合、私の可処分時間が圧倒的に足りない

    以下に詳しく解説いたします。


    デザインを基軸とした課題解決の方が、より高い価値を発揮できる

    これはつまり、私が「どれだけ多種多様なスキルを身につけようと、根っこはデザイナーである」ということです。

    デザイナーとしてのキャリアでいえば、今年で8年目ぐらいになります。
    エンジニアリングと比較して、圧倒的に自分の可処分時間を使っています。

    必然的に課題解決を試みるなら「デザイナーとして」切り込んだ方が、圧倒的にパフォーマンスを高く発揮できます。

    デザインは「設計の英語読み」です。
    我々デジタルのモノづくりに秀でたデザイナーは、いわば「画面設計士」と言えます。

    抱く課題感も、思いつく解決案も、必然的に「画面設計」の観点から考えます。
    本格的なプログラマーとは、抱く課題感が違うのです。

    抱く課題感が違うということは、思いつく解決案も違うということです。
    ならばデザイナーはエンジニアと組んで、お互い異なる観点から課題解決をする方が良いと、私は考えました。

    前述のように今の私は、実務ではプログラミングを全く行っておりません。
    「React」どころか「Git」すら、実務では使っておりません。

    ですが、それで良いと考えております。
    「デザインとエンジニアリングでの課題分離」が出来て、デザイナーとしての課題解決に集中できるからです。

    余談ですが、プログラミング自体は好きなので、休日などに趣味で勉強しています。
    最近「TypeScript」の勉強を始めました。


    実装案件全てを対応する場合、私の可処分時間が圧倒的に足りない

    私だけでなく、一人の「可処分時間」は限られています。
    時間は無限ではなく「有限」なのです。

    限られた時間の中で最大級の成果を出すには、時間配分の最適化を行わなくてはなりません。
    平たく言うと「自分に合った時間の使い方をする」ということです。

    前述のように、私は「デザイナーとしての切り口」の方が、良質な課題解決ができます。
    つまり「デザインに自分の可処分時間を使った方が良い」ということになります。

    最も重要なのは上記ですね。
    「自分の可処分時間の最適化」が、仕事を行う上で最も重要であり、最も難しいことです。

    現代のWebは、HTMLとCSSだけで完結しない

    ReactとVueについて、冒頭で少し触れました。
    つまり現代のWebで使われる技術は「HTMLとCSSだけで完結しない」ということです。

    ReactとVueは「Webアプリを作るためのライブラリ」です。
    この2つを用いて作られる制作物は「アプリケーション」なのです。

    みなさんスマホをお持ちで、アプリをインストールしていると思います。
    Webアプリも同じで、概念としては「Web上で動くアプリ」ということになります。

    アプリというのもは、条件によって見た目が流動的に変化します。
    例をあげると、以下のような感じです。

    • ログイン前の画面
    • ログイン後の画面
    • ログイン後あるボタンを押した場合の画面
    • 特定のパラメーターがある場合の画面
    • スマホアプリからログインした場合の画面
    • メール通知やPush通知の送信条件

    などなど、様々な要素が流動的に絡み合って、一つの「Webで動くプロダクト(製品)」として機能しています。
    これが「アプリケーション」と呼ばれるものなのです。

    条件が複雑に絡み合うWebアプリの要件に全て対応するのは、私の可処分時間が圧倒的に足りなくなります。
    習得しないといけない技術も多く、現実的ではありません。

    中途半端に技術を習得するなら、「デザインを切り口にした課題解決」に時間を割り振った方が良いです。
    実装要件をまとめてエンジニアに指示をすれば、調整力も養われます。


    デザインを突き詰めた方が単価も高くなる

    日本は民主主義であると同時に「資本主義」です。
    資本主義の世界の基本思想は「この世の全てのものは商品である」です。

    その中には「人間」も含まれます。
    個々人で給与が違うように、人も「一つの商品」として扱われます。

    資本主義では、個人にどれだけの単価がつくかも、個々人の能力を測る一つの指針になります。

    先日知り合いのエージェントに、私個人の単価がどれぐらいなのか聞いてみました。
    結論からいうと、フリーのフロントエンドエンジニアと同じ金額感でした。

    前述のようにWebやスマホアプリの場合、実装要件を全てデザイナーが担当する事は不可能です。
    デザイナーとしての純粋な能力が求められる分、単価も高くなる傾向があります。

    「要件定義」や「戦略立案」の経験があると、案件によっては更に金額は上がります。
    その場合はデザイナーというより「マネージャー」と呼ばれる役職になります。


    限られた時間の中で、最大級の成果を出さないといけない

    繰り返しになりますが、仕事をする上で大切なのは上記です。

    特にIT業界の場合、投下時間で成果が最大化されるわけではありません。
    要約すると「長く働けば働くほど、成果が出るわけではない」ということです。

    IT業界は他業種と比べ「レバレッジが効く仕事」だと言われています。
    1の労力で100の成果を得ることもあれば、100の労力で1の成果しか得られない場合もあります。

    他業種と比較して、圧倒的に「時間的な効率を求められる職種」であると、私は感じています。
    必然的に、自分自身の可処分時間にシビアになります。

    つまり「課題の分離」と「可処分時間の最適化」が、IT業界では最も重要であるということです。
    私は現状を分析して、デザイナーとしての能力に特化していくこととしました。


    まとめ

    • 私はReactもVueもできるが、対応しないことと決めている
    • デザイナーとして課題解決がしたい
    • 実装要件全てに対応するのは不可能
    • 主に上記の2点
    • デザインの技術を突き詰めた方が、単価も高くなる
    • レバレッジが効くIT業界では特に、自分自身の時間を最適化しないといけない

    今回は以上になります。

    • ReactもVueも出来るが手放した理由【課題分離と可処分時間】