2018年12月26日のブックマーク (7件)

  • 個人開発のUI設計術 - Crieit

    あんど( @ampersand_xyz )と申します。 クイズメーカーなど、色々なサービスを個人でリリースしているフリーのエンジニアです。 個人開発を支える技術のアドベントカレンダーではサービスを構築するArchitectureに関する技術の話題が多いなか、周りの方やマシュマロからの匿名メッセージ質問でUIのことに関する質問などが多かったので、投稿ではUIやデザイン周りに関するTechnic…と言えるほど上等なものではないのですが、そのあたりの技術をお話したいと思います。 なお、自分は正直かなり我流で適当にやっているので、もっといい方法のツッコミなど歓迎しております。 1.画面サイズの最大・最小幅を最初に決めておく まずはじめにここを決めます。 いかにリキッドデザインやレスポンシブで画面を作成するといえども、極端に幅が小さい、または大きいデバイスを相手にする場合、どうしてもサイズ整合性を

    個人開発のUI設計術 - Crieit
  • 「GraphQL」徹底入門 ─ RESTとの比較、API・フロント双方の実装から学ぶ|ハイクラス転職・求人情報サイト AMBI(アンビ)

    scalar型を新しく定義するためにはscalarキーワードを使います。例えば、Date型を新しく定義するには次のようにします。 scalar Date スキーマではこれだけですが、実際に使う際はGraphQL処理系に対してさらにシリアライズとデシリアライズを定義することになります。 GraphQL組み込みのscalar型は先にあげたものだけなので、例えばバイナリ、日付と時刻、HTML/XML、BigIntなどを必要に応じて追加することになるでしょう。ただしその場合、サーバーサイドとクライアントサイドでシリアライズ・デシリアライズの実装を一致させる必要があります。 Enum enum(イナム)はscalar型の一種で、特定の値のみを持つ型です。例えば、組み込みscalar型であるBooleanをenumで宣言すると次のようになるでしょう。 enum Boolean { true false

    「GraphQL」徹底入門 ─ RESTとの比較、API・フロント双方の実装から学ぶ|ハイクラス転職・求人情報サイト AMBI(アンビ)
  • 「実践ドメイン駆動設計」を読んだので、実際にDDDで設計して作ってみた! - Qiita

    こんにちは、クラウドワークスの新規事業のエンジニアとして仕事をしている高梨です! 最近、「実践ドメイン駆動設計」というを読みました! 500ページ近くもある技術書で、なかなか量は多かったのですが、DDDがどんなものなのか一通り大枠を掴めた気がします。 ただ読み終わった後にこんな疑念や不安をいだきました。 「たしかにかなり面白そうだけど、実際にやるとどれだけ工数かかるんだろう...?」 「設計の話は全然出てこなかったけど、DDDで作るとなるといったい何から始めればいいんだ?」 「戦術についての知識はついたけど、実際に書こうとしたらできなそうだな...」 そこで、そういった疑念や不安を解決するために、実際にDDDでサンプルプロダクトを作ってみようと思ったわけです。 実際に作ってみるのが、結局一番理解が進みますしね。 今回は、そのプロダクトがリリースされるまでの過程や感想を、作成した設計書やソ

    「実践ドメイン駆動設計」を読んだので、実際にDDDで設計して作ってみた! - Qiita
  • Pythonユーザーなら知っておきたいのリストの仕組み – Yasufumi Taniguchi – Medium

    Pythonでプログラムを書くとき、ほぼ必須となるデータ構造であるリスト (list) の仕組みを紹介します。僕自身Pythonをよく使うのですが、これまで実装を意識してこなかったので、内部の仕組みについてまとめてみました。Pythonのリストは要素の追加 (list.append) /削除 (list.pop) により、サイズが動的に変更されますが、これらはO(1)で高速に行う (list.popは末尾要素のみ) ことができます。この記事ではその理由について解説していきます。 Pythonのリストのような特徴を持ったデータ構造は動的配列 (dynamic array) と呼ばれます。通常の配列は静的配列 (static array)として区別されます。 この記事では、動的配列の概要、要素の追加/削除について、MITの講義 (Table Doubling, Karp-Rabin) を元に以

    Pythonユーザーなら知っておきたいのリストの仕組み – Yasufumi Taniguchi – Medium
  • エンジニアは実装と戦う前に UI と戦った方が幸せになれる 〜 メンタルモデル駆動開発の TIPS 〜 - Qiita

    まえがき メリークリスマス。 LancersAdvent Calender 25日目の記事です。前日は @autumnlike(@intrudercl14) による 複雑な仕組みと向き合い、会計システムをリプレイスした話 でした。 世にあまり出ない会計に関する内容なので、是非シェアしていただいて皆さんの元に届けば幸いです。 記事は自分がやっていた pook というサービスが終了してしまい、知見がリポジトリの issue にだけ残るのはもったいないので、考えていたことなどの一部を公開しようと思った次第です。 はじめに みなさんは、プロダクトを作っていてこのような経験はありませんか? 作っていざ使ってみたら使いにくかった 顧客が当に必要なものはコレじゃなかった UI が複雑でシンプルでない結果、実装も複雑でシンプルでない そのたびに作り直したり、仕様変更して精神をすり減らすことは、大いなる

    エンジニアは実装と戦う前に UI と戦った方が幸せになれる 〜 メンタルモデル駆動開発の TIPS 〜 - Qiita
  • エンジニアという仕事を楽しみ続けるためには|shu223

    アプリ開発等で有名なフェンリル社にお招きいただき、「エンジニアという仕事を楽しみ続けるためのキャリア戦略」というテーマで講演させていただきました。フェンリルさんに許可をいただいたので、その講演内でつかった約60ページのスライド資料を全ページ公開します。 エンジニアを楽しみ「続ける」というところがポイントで、世の中の変化も激しいし自分も飽きたり慣れたり状況や心境が変わったりする中でどうやって楽しみ「続ける」よう工夫しているのか、というのを実体験を多く交えつつ話しています。 エンジニア、昔は楽しかったんだけど最近はどうも惰性でやってるかも、とか、若くて優秀な人にはもうかなわないなぁ、という感じの方々には共感していただける部分があるかもしれないのでぜひ見てみてください。

    エンジニアという仕事を楽しみ続けるためには|shu223
  • 新しい技術の導入時に大切にしていること - Gunosy Tech Blog

    こんにちは、koidです。こちらは Gunosy Advent Calendar 2018 、25日目の記事です。昨日の記事は @hoshitocat さんの Swaggerでインタフェースの共有をしつつ社内管理画面を作る でした。 早いもので、Advent Calendarもあっという間に最終回となりました。この記事を持って、今年も無事(?)完走となります。 さて、題です。 今年も弊社では、様々な技術*1や手法にトライし、プロダクションへの導入を行ってきました。 そんな中で、そういった新しい技術を導入していくにあたり、どんなことを大切に考えているのか、先日 IVS CTO Night というイベントでLTをする機会があったので、その際にお話ししたことを書きたいと思います。 技術は目的ではなく、課題解決のための手段である どんな課題を解決したいのかを明確にする 良くない例(課題が明確にな

    新しい技術の導入時に大切にしていること - Gunosy Tech Blog