Sony Eマウント フルサイズ対応のカメラレンズを集めてみた。
サンプル:https://sample.simplesimplesdesign.com/sonyalpha/lens.php
最近、立て続けに新しいカメラレンズが発売された。そもそも現在発売されているレンズがどのくらいあるのか気になったので調査することにした。各主要レンズメーカーでレンズごとの詳細を見ていたが、気になるスペック情報だけ集めた一覧ページがあればいいなと思って、そんなページを作ることにした。
というわけで、仕様策定からデータ収集、デザイン、コーディング、API制作、プログラミングまで、フルスクラッチで作ってみた。制作期間は3日間(実質20時間ほど)。
(ちなみに、より実用性あるものにブラッシュアップするとしたら、デバック、検証、修正、最適化を何回か回す必要あるので、あと3, 4日は必要になると思う。ただし、このページは、企業案件ではなく、自分のためのページなので、バグ以外は深追いしない)
レンズのスペックだけではなく、常に最安値を表示するようにしたり、気になる条件で絞り込みができたら、利用価値が高くなるのではと考えた。
実装する際の思想としては、フレームワークを使わずに、利用者にとって使いやすい、コーダー・開発者にとって使いやすい、運用者にとって使いやすい、それぞれの視点になってUI/UXに配慮している。
まず、調べたいメーカーをピックアップ。メーカーごとにレンズページから知りたいスペック情報をWebスクレイピングで抽出してGoogleスプレッドシートに記載する(これらの情報は、公式サイトより価格コムのスペック情報から収集すればラクだった...)。
続いて、レンズごとにそのレンズの価格が掲載されている詳細ページのURLを取得してリスト化。その後、Webスクレイピングで最安値を抽出してGoogleスプレッドシートに記載する。タイマーを設置して、定時間ごとに最新情報に更新するようにした。
参考:商品ごとの最安値を価格コムから参照して、スプレッドシートに記入。毎日、自動更新で。
非常にシンプルなJSONファイルを作成。
GoogleスプレッドシートのCSVファイルをWeb公開して、そのデータをJSON形式で保存する。さらに、このシンプルな構成にすることで、Googleスプレッドシート自体が仕様書の変わりも果たすことになる。
ページを表示するたびに、Googleスプレッドシートを参照してしまうと、ページ表示速度に影響を及ぼすので、Cronを設定してもよかったが、今回はファイル保存日時と現在時刻を比較して、ファイルが古いと判断したときのみ、Googleスプレッドシートを参照してファイル更新し、通常はローカル保存したファイルを参照するようにした。
データ件数は100件、どんなに増えても1000件も満たないことを踏まえ、アクセス時には一括して全データを取得する。
また、検索だけでもいろいろケアしている。
と長々と書き連ねましたが、あらためてページを見ていただけるとめっちゃ嬉しいです。ご意見やご感想などありましたら、ぜひコメントください。お待ちしております。
サンプル:https://sample.simplesimplesdesign.com/sonyalpha/lens.php
この書籍の中で、ライティングのユーザビリティについて触れている項目があり、激しく共感する部分だったので、ここで備忘録としてピックアップする。 ・・・
この書籍は、I部 リサーチ、II部 デザイン、III部 インプリメンテーションと三部構成になっている。この記事では、その中から、I部 リサーチ、・・・
これを知ったときはマジか!と飛び跳ねた。あらためて思い返してみると、確かに公式チュートリアルでも触れていたことをうっすら思い出す。そしてそのときとやり方がなん・・・
試したことはまだないけど、Macで編集時と書き出し後で色味が変わって困ったときのために備忘録。 プロジェクト設定 > 「カラーマネジメント・・・
プロジェクト設定と環境設定について詳しく解説されている情報がなかなか見つからないので、要所要所で知り得た情報を更新していきます。 プロジェクト設定 ・・・
Clipyが超絶便利そうだったので、macOS Big Sur にインストール&再起動して使ってみた。ところが、command + c を複数の箇所で行い、c・・・
requestAnimationFrame をはじめて見たので調べていたら、setTimeout や setInterval は requestAnimati・・・
6年ぶりに読み返したが、今なおハッとさせられることが多く見つかる。 この本で忘れないようにしたい項目をピックアップするだけでも役に立ちそ・・・
この記事では、以前に読んだ際に付箋を付けていたが、その部分だけを備忘録としてピックアップするため、本の要約ではない。実際は、何倍も濃い内容で、練・・・
もう一回、全部読み返したいところだが、書籍がありすぎるので、当時付箋紙をつけていたところだけをピックアップ。書籍内ではより具体的な説明があるので・・・
これまでに扱ったことのないようなものを取り扱うときには、次のような問いを参考にすると何をしたらよいかが分かってくる。 どの部分が可動部で、どの部分が固定部か。・・・
以前に書いた「このサイトのリニューアル」で、リニューアル意思を示しつつも結局保留にして、先送りしてしまっていたけど、このあいだの週末(2013.3.29-30)・・・
エラーが起こっても大丈夫なシステムを作ると、みんなそれに頼るようになるので、信頼性を高くしておいたほうがよいだろう。 エラーの原因を理解し、その原因が最も少な・・・
こんな製品は使いたくない例1 教示がよくない。 システムの操作が可視的でない。 操作した結果が目に見えない。 こんな製品は使いたくない例2 デザイナーは良か・・・
「CGI」という言葉だけで、まだ拒否反応が起きる。 でもどうしても「mt-config.cgi」を修正したくなった。 ただ、config.cgiを修正する際の注・・・
お天気アプリを作ってみました。「アプリ」といってもWebアプリなんですけども。正確にはブラウザ版、アプリ風、といったところでしょうか。 とりあえず、さくっと作・・・
表示させるにはキーワードを変更するか単価を上げてください。」ってメッセージがよく出てしまう。 これを改善するにはどうしたらいいか? アナウンス通りに単価を吊り上・・・
地図サービス「ジョルノ地図」、リニューアルしました。 ジョルノ地図(公開終了) ゼロベースで企画からやり直しました。 まず、「どんなときに地図を使うのか」、改・・・
新規コンテンツ「たびのと言ノ葉」公開 Webマガジン「たびのと」を夏に公開しましたが、たびのとのコンテンツの一つとして「たびのと言ノ葉(ことのば)」を新規で作・・・
いつもは直接アップロードしているので気にしていなかったが、WordPress管理画面のメニュー「メディア」からfavicon.icoをアップロードしようとした・・・
「test」
「>ころころさん コメントありがとうございます! 確かに、APIドキュメント見ましたが、ライブに関する情報は今のところ取得できないようですね。 インスタライ・・・」
「SIGMAから超軽量で明るい単焦点レンズが2本発売になりましたので、リストにレンズ情報追加しました!」
「>名無しさん ご指摘、ありがとうございます! 記事冒頭の「まずはサンプル」のサンプルが動いていませんでしたので修正しました。」
「>前田さん コメントありがとうございます。 環境は分かりかねますが、修正したいファイルのパーミッションを604や644に変更すると書き込みできるようになります(・・・」
「アバターを取得する「get_avatar」についても追記しました!」
「「値をクリアする」を追加しました。チェックボックスやラジオボタンの値を何も選択していない状態に戻すときについて触れています。」
「>匿名さん コメントありがとうございます。 サンプルでは、beforeは何も処理していないので期待する表示にならない、で正解です。 クリックした後が、対応・・・」
「(匿名)さん コメントありがとうございます。何も設定変更していないのに、それまで使用できていたサーバーが突然使えなくなるのは辛いですよね、、。 ここで紹介したや・・・」
「コメントありがとうございます! そもそもできるかはわかりませんが、ソースを書き換える必要はあります。 下記記事などが参考になるかもしれません。 illustra・・・」