ソフトウェア開発
バックエンド

フロントエンド開発の未来はデザインそのもの

次の記事

Facebook Messengerに簡単に遊べるインスタントゲーム17種が登場

【編集部注】著者のCarson MillerはイノベーションストラテジーとデザインファームFahrenheit 212(現在はCapgemini Consultingの一部)のデジタルヘッドである。

私たちの子供たちにコード作成を学ばせるべきか?この質問は、最近のディナーパーティーで私が受けたものだ。社会的サークルの中で、キャリア全体でソフトウェア開発に携わってきた唯一の人物の1人として、私はこの種の質問を頻繁に受けている。そのときの私の対応はとても肯定的で、その選択がきわめて明白であるすぐに思いつく理由をいくつか紹介した。

その時の会話はそれで終わったが、その質問は私の心に残ったままだった。おそらくその理由は、「コード作成」というフレーズにある。これはあまりにも多くの意味を内包しているのだ。自動運転、バーチャルリアリティ、その他の野心的な将来の技術を構築するために必要な、膨大な課題に注力するエンジニアの役割が常に存在していることを、私たちは否応なく思い浮かべるが、これらが私の友人たちがその子供たちのために心に描いていたものかどうかは自信がない。

もし彼らが、子供たちがウェブやモバイルアプリのコードを行う未来を想定していたのなら、私は正しい推奨をできたかどうかが疑問だ。デザインツールとソフトウェア開発インフラの大幅な技術革新を考えれば、このタイプのコーディングは、将来的には劇的に違って見えるものになるだろう。実際、設計と開発の境界線はもはや存在せず、製品を市場に出すために必要なスキルセットとチームには根本的な変化が起きることになる。

開発への障壁は急速に消滅しつつある

過去10年間、ソフトウェア製品をローンチするためのコストは指数関数的に減少してきた。たとえば、元々のドットコムブームの際には、資本の中の大きな部分をサーバー、インターネット帯域幅、ソフトウェアライセンス、オフィススペースなどが占めていたため、インターネットスタートアップのローンチにかかるコストは数十万ドルに及んだ。それ以降、Amazon Web Servicesのようなクラウドインフラストラクチャ、GitHubのような開発ツール、Ruby on Railsのようなオープンソースフレームワーク、検索のためのAlgoliaのような便利なバックエンドサービスが登場し、10年前に比べればほんの僅かなコストで、迅速なデジタル製品開発を可能にした。もし現在、あなたが時間とデザインと開発のスキルを持っていれば、数百ドルで製品を開発してローンチすることが可能だ。

デザインと開発は収束しつつある

新製品の構築はとても容易になった一方で、ユーザーが好む製品を生み出すことは大きな課題だ。あなたの狙っているユーザーたちに関する深い理解と、ユーザーのニーズに対応した楽しい体験をどのように届けるかへのビジョンが必要とされるのだ。また、製品チームが製品体験や、ビジネスモデル、そして提案価値を、迅速にテスト、学習、反復するためのワークフローが必要だ。

過去数年の間に、反復的な製品デザインが主流となってきた。Lean Startupの重要な指針、特に最小限の実行可能な製品(MVP)を迅速に市場に投入し、実際の顧客のフィードバックから学ぶべしというバイアスは、企業や製品を構築するためのより良い方法として広く受け入れられている。

コーディングの基礎技術とフロントエンドの開発との間には違いがあり、その違いは拡大しつつある。

そうした新しい作業方法をサポートする新しいツールのエコシステムが登場し、製品デザインチームは共同でより効率的に作業することができる。チームは、Photoshopの静的なデザインを作成する古典的なプロセスから、はるかに広大なツールセットを使うようになっている。そこにはSketchFigmaなどの共同デザインツール、InVisionMarvelなどの極めてシンプルなプロトタイププラットフォーム、UserTesting.comValidlyLookbackのようなユーザーテストサービス、そしてZeplinなどのデザイナーと開発者のコラボレーションツールなどが含まれる。

これらのツールはすべて、近代的な製品デザインワークフローの1つまたは多数のコア側面をサポートし、ほぼすべてがシームレスに連携することが可能だ。最終的な結果:製品をコーディングする前に、アイデアを体験、テスト、検証が可能な没入型プロトタイプにすることは、指数関数的に速くなった。

これは、フロントエンド開発に対して何を意味するのか?

今後数年の間に「製品デザイン」と「フロントエンド開発」に対する別々の機能としての意義は消滅する。多くの企業では、既にこのアプローチを採用していて、製品デザインとフロントエンドWebテクノロジ双方に精通した個人(クリエイティブ技術者(Creative Technologists)と呼ばれることも多い)を雇用することで、通常はデザインをコードの中に活かすために必要な引き継ぎをなくそうとしている。

この収束はまた、製品デザインチームが使用するツールの高度化においても起こっている。デザインとプロトタイピングを行うツールがフロントエンドの開発置き換え、選択したフレームワーク(React、Node、その他)のための高品質なフロントエンドコードをシームレスに生成するようになるのは時間の問題だ。Squarespaceは既に基本的なウェブサイトのためにこれを実現している。Webflowはインタラクティブなコンテンツ駆動型のWebサイトを作成するための、ドラッグアンドドロップ環境を提供している。AtomicOrigamiは再利用可能なコンポーネントとデータに対して幾つかの面白いことを実現している。

これらはすべてデザイン先行型のツールだが、多くはユーザーが作成されたコードに対して編集または追加を行って、製品を調整して洗練することを許す。これらのツールや他のツールが5年後にどうなっているのかを想像して欲しい。

このプロセス、スキルセット、そしてツールの収束は、製品デザインにおけるいくつかの重要な変更へとつながる:

  • チーム構成が変更される。チーム内にデザイナーとプロントエンド開発者の両者を抱える必要はなくなる、これによってチームはさらに身軽なものになる。
  • リアルタイム反復が標準となる。チームは継続的なデザイン改善の状態の中で運用することができるようになる。プロトタイピング、テスト、学習、そして新機能のロールアウトをこれまで以上に迅速に行えるようになる。
  • 業績が改善される。プロダクトチームはビジネス成果を駆動する最前線に立って、新しい機会を活用し、問題が悪化する前に対処することで、最終的な収益に対して意味のある行動を素早くとることができるようになる。

さて私たちの子供たちはコードすることを学ぶべきだろうか?私は、全ての子供たちがソフトウェア開発の実践的な知識を持つという価値に反論することはできない。しかし、コーディングの基礎技術とフロントエンドの開発との間には違いがあり、その違いは拡大しつつある。後者は、デザイナーたち優位性やデザインツールのおかげで絶滅の道を辿ろうとしている。よりよい体験を消費者とビジネスに対して作って届けることに興味のある子供たちは、深いソフトウェア開発専門知識を得ることよりも、デザインとビジネスに対して深い関心を寄せる必要があるだろう。

[ 原文へ ]
(翻訳:Sako)

FEATURED IMAGE: MACIEK905/GETTY IMAGES