コーディングの「汎用性の高さ」は誰のためのものなのか?

他人のコードはあくまで他人のもの 入社時からHTMLとCSSをコーディングする際は「汎用性高く作るべき」と教わり、認識と命名ルールの統一・再利用しやすい構造・細分化など汎用性を意識してコーディングしてきた。こうすることで別のエンジニアが作ったパーツも自分のもののように扱え、コーディングが楽になると考えていた。しかし、意識しようが […]

続きを読む →

SaaS Designers Meetup vol.1に参加しました

先日、SaaS Designers Meetupというイベントに参加した。今後ベイジでも業務アプリケーションやSaaSに力を入れていく方針であるのと、純粋にBtoBのデザイナーのお話を聞いてみたいと思い参加した。採用、教育、医療、物流分野のBtoB領域のお話を聞くことができ、とても有意義な時間だった。どの会社も事業会社だったので […]

続きを読む →

「PV数が少ないからそのページは削除」でも良いのか?

「閲覧数が少なかったので、そのページは削除した」や「そのページあまり閲覧されていないのでいらないのでは?」という話を耳にすることがある。閲覧されていないからページを削除するのは、そのコンテンツの情報のニーズが少ないという考えからだろう。しかし、その判断は早計なことが多いようにも感じる。ページに掲載してある情報にニーズがないのでは […]

続きを読む →

エンジニアとして既存のプラグインに頼るべきか

私はエンジニアとして、既存のライブラリやプラグインの使用は最低限に留めたいという考えがある。ここでいう最低限に含まれるものは、jQueryやReact.jsなど、実装の基盤となるようなライブラリや、細かなモーション調整に使うTweenMaxのようなアニメーションライブラリだ。 私は個人でも受託制作の仕事をすることがあるが、実務経 […]

続きを読む →

プロジェクトの進行をスムーズにするキックオフミーティングの重要性

ベイジでは、プロジェクトが正式に始まるタイミングで、顧客とキックオフミーティングを実施している。ここでは、プロジェクトにおける前提条件などの共有を目的としているが、このミーティングの精度により、以降のプロジェクトにおける進めやすさに影響が出る重要なミーティングだと位置づけている。 過去のプロジェクトを振り返ると、キックオフミーテ […]

続きを読む →

作業ミスを減らすための取り組みと工夫の大切さ

定期的に開催されているエンジニアミーティングで「ミスを発生させないため、各エンジニアが普段からやっている手法やツールを紹介する」というテーマで話し合いが行われた。”ミス”が前提の話なので、本能的に割と避けたくなるようなセンシティブな内容だが、こうしたテーマで話し合うことはとても重要だと感じる。 メンバー各 […]

続きを読む →

「いいコード」を書くためにできること

GitHub の Explore におもしろそうなリポジトリが出ていた。コードが短く、ざっと読んで全体を把握できたので JavaScript で書かれていたものを勉強がてら TypeScript で書き直してみた。最初は単純に型をつけていただけだったが、ひとつの変数に数値と真偽値を代入している箇所の処理に悩んだ。 その変数は A […]

続きを読む →

よりよいものを作るためにも人に相談するべき

業務で分からないことがあり、人に質問するのは当然だが、もっとよいアイデアがありそう、と考えアドバイスを乞うことも大切だ。なぜなら自分がその分野のすべてを知っているわけではなく、他の人しか知らない知識もあり、その知識を借りることでさらによいアイデアが見つかるかもしれないからだ。 今日、プログラミングでつまずくところがあり、解決策を […]

続きを読む →

一年間コードレビューを続けて得られたこと

ベースコーディングが完了したタイミングで、開発者とは別の第三者によるコードレビューを実施している。ベースコーディング完了後という開発序盤でレビューを実施しているのは「リスクを早い段階で検知し、影響を最小限にする」という理由からである。 コーディング内容の正否以外に、どのようなポイントでチェックしているかというと、 社内のコーディ […]

続きを読む →

実践で学んだモーションコーディング5つの要点

仕事でいくつかの種類のモーション(動き/アニメーション)が必要なサイトのコーディングを担当した。デザイナーからも指示とフィードバックをもらいつつ、実装を進めながら自分なりに学んだ原則がいくつかあった。 モーションを作るときに心がけたいコツ、押さえておきたい考え方のポイントのようなものだ。以下の5つにまとめてみた。 1. 動きや演 […]

続きを読む →