タグ

ブックマーク / blog.sushi.money (9)

  • 1画面1APIと比べるとGraphQLのAPIはどこから作ったらいいか分かりにくい - hitode909の日記

    Backends for Frontends的に、1画面につき1つずつAPIを作っていると、画面のリストを作って、それぞれ1画面につき1個ずつAPIを作っていくことになるので、進捗の把握がやりやすかった。10画面あって3APIできてたら進捗30%ということになる。 グラフをたどって開発することになる GraphQLAPIを作っていると、「実はこの画面を組み立てるためのクエリは、あちらの画面の条件を変えたものである」みたいなことが起きるようになる。たとえば、トップページではサマリを表示していて、もっと見るを押すと全件表示するような場合とか。 このように、着手しようとするともう作るものがなかったりとか、逆に、作るときに、他の画面から使う想定でパラメータの設計をするなど、考えることが増えたりもする。 スキーマに沿ってグラフをたどるだけで画面を組み立てられるのは良いことだけど、開発内容の依存関係

    1画面1APIと比べるとGraphQLのAPIはどこから作ったらいいか分かりにくい - hitode909の日記
  • ImageMagickでSlackのカスタム絵文字のダークモード対応する - hitode909の日記

    こういうSlackのカスタム絵文字があるとして、背景が透過されているのでダークモードを使っていると黒背景に黒文字になってしまい見えない。 透過部分に白いシャドウを入れられるとよくて、ImageMagickを使うと1コマンドでシャドウを入れることができる。 convert original.png \ \( +clone -background white -shadow 100x8+0+0 \) \ -background none -compose DstOver -flatten -compose Over \ out.pngドキュメント的にはこのあたり。暇なときにImageMagickのUsageをひたすら見ておくと、これImageMagickのUsageで見たやつだと進研ゼミ的に思い出せて便利。 Bluring and Sharpening -- IM v6 Examples 白い

    ImageMagickでSlackのカスタム絵文字のダークモード対応する - hitode909の日記
    yosuke_furukawa
    yosuke_furukawa 2020/03/06
    なるほど、こうやってダークモード対応するといいのか
  • 開発中の機能を小分けにして本番環境にどんどん出すためには - hitode909の日記

    ふだんの開発では,稼働中のシステムに影響を与えないように開発中の新機能や新システムを共存させながらちょっとずつデプロイして進めている.どんな事を考えてやっているか記しておきます. フィーチャートグルを使う すべてのコードが番環境に入っているけど無効化されている状態で開発を進める ブランチをたくさん作るのに対する考え方で,フラグを有効にすると開発中の機能を使える スタッフなら有効にしたり,フィーチャーのオンオフを選べる画面を作ってたこともある フィーチャーブランチを利用した開発はチームを継続的インテグレーションから遠ざける – ゆびてく FeatureToggle 完成したらフィーチャートグルに関係なく全員に有効状態にして完成 フロントエンドの施策で,実際のデータやインフラ構成でどれくらいスピードが出るかわからないときに,ひとまずフラグをオンにすると動く形でデプロイしたりとか レイヤの下の

    開発中の機能を小分けにして本番環境にどんどん出すためには - hitode909の日記
  • ImageMagickでliquid rescaleする - hitode909の日記

    ImageMagickのリサイズまわりの挙動を調べてたら異常なアニメーションGIFが掲載されいているのを発見して,その瞬間に調べ物はどうでもよくなった. 領域が狭くなると,文字が帽子の上に周りこんでいる. http://www.imagemagick.org/Usage/resize/#liquid-rescale Seam carving(liquird rescale)は画像のなかで自然に切り取れるところを探してリサイズする技術.物がないところを探して切り詰めるので物だけが残る. Seam carving - Wikipedia ImageMagickをliblqrつきでインストールすると使えるようになる. brew install imagemagick --with-liblqrオライリーの書影とか見るからに縮めやすくてめちゃくちゃ楽しいのでは?と思ったので練習. Docker

    ImageMagickでliquid rescaleする - hitode909の日記
    yosuke_furukawa
    yosuke_furukawa 2018/05/10
    うおお、 Seam Carving が image magick に実装されてる
  • sitemap.xmlをクロールしてサイト内の全ページのAMPのバリデーションをしてくれるコマンドラインツールを作った - hitode909の日記

    ウェブサービスのAMP対応するときに役立つ,sitemap.xmlをクロールしてサイト内の全ページのAMPのバリデーションをしてくれるコマンドラインツールを作った. GitHubにも置いてあるのでご紹介します. はじめに:AMPのバリデーションについて AMP(Accelerated Mobile Pages)はHTMLのサブセットなのだけど,ふつうのHTMLとちがって,バリデーションに通らないとAMPのページとは認めてもらえず,エラーが出てると検索結果などに出してもらえないので,がんばって直す必要がある. バリデーションの主なやり方には, クロールされるのを待ってSearch Consoleで見る AMPバリデータを使う の2つがある.順番に説明します. クロールされるのを待ってSearch Consoleで見る Search ConsoleからAMPのクロール状況を見れて,エラーが出て

    sitemap.xmlをクロールしてサイト内の全ページのAMPのバリデーションをしてくれるコマンドラインツールを作った - hitode909の日記
  • テスト先に書きたい若者よ - hitode909の日記

    弊社では毎年インターンを受け入れているのだけど,いまもインターンが来てて,テスト先に書きたいけど油断すると先に実装を書いてしまう,とか話してた. 個人的には,テスト先に書くのが大事というよりかは,意識して仕様を先に考えるのが大事だと思っている.テストを先に書くと,先に仕様を考えざるを得ないので,良いスタイルが身につく. 僕がよくやるのは,関連しそうなクラスの絵をひと通りノートに書いてみて,その図だけで,うまく動くことを説明できるくらい考えてみる.その時点でおかしかったら,コード書いてもおかしくなる.ノートに方眼ついてるとクラス図書きやすい.UMLとかじゃなくても,自分で見て分かるくらいでもいいと思う. 紙でうまくいったら,外部仕様だけソースコードに書いてみる.クラス名と,メソッドの定義と,メソッドの上くらいに,ひと通りコメントでも書いてみて,この関数はこういうことをするんです,こういう引数

    テスト先に書きたい若者よ - hitode909の日記
    yosuke_furukawa
    yosuke_furukawa 2014/08/14
    良い話、こういうことができないから今地獄を見てるのかもしれないし、いつだって自分の足を撃つのは自分の開発力なのかもしれない。
  • プレゼンテーション - hitode909の日記

    プレゼン自分ではすべったことないから得意だと思ってるのでいつも気をつけてることをシェアします。これさえ守ればすべらないのだから楽。 目次 目次 最初にめちゃくちゃおもしろい話をする 箇条書きせず一行ずつページを分ける 絵をでかくする 新しいページ作ったらデフォルトのパーツを全部消す 先に言う 意見や疑問を述べる スターウォーズエピソード4を見る 最初にめちゃくちゃおもしろい話をする 聴衆は懇親会のことしか考えてないので、とりあえず最初におもしろい話をして、注意を引きつけるとよい。つかみはこれでオッケーだって言えればよいくらいの面白い話をしましょう。よくある技術ブログとか、技術雑誌だと、こんにちは、最近温泉に行って心身共にリフレッシュしました、ヒトデです、とか書いてあるけど、そんなの読んで喜ぶ人が人と家族と親類以外にこの世にいたらおかしいから、そういうのじゃないとよい。 箇条書きせず一行ず

    プレゼンテーション - hitode909の日記
  • 失敗する前提でデプロイする - hitode909の日記

    うちのチームでは,デプロイするたびに自動的にgitのtagを切るようにしてる.たとえば,いまデプロイしたら,deploy/2014-02-01-14-48とか. たまに,リリースした直後になんかミスってたことに気付いて,慌ててロールバックすることがある. tagを切ってるので,ひとつ前に戻せばいいのだけど,えっと,どれだっけとかいって探すので慌てるし,普段はタグ指定してデプロイしてないので,どうやって戻すか忘れる. デプロイ終わったときに,今回のデプロイを戻すには,これをしましょう,とか表示するようにした. デプロイ終わったらこんなのが出る.前回のデプロイが昨日だったら昨日くらいのタグが出る. ヒント:戻すときは以下のコマンドを実行しましょう cap -S revision=deploy/2014-01-31-15-17 deploy 実装方法としては,こんな感じに,デプロイ前に最新のタグ

    失敗する前提でデプロイする - hitode909の日記
  • 【はてなスタッフ非公式ブログバトン】CoffeeScriptについて - hitode909の日記

    12月なので,今日から,ブログバトンを始めることにしました. CoffeeScriptについて 最近ちょっとCoffeeScriptを書いたりしていて,チーム内にシェアしたところ,うーんみたいな感じで,あんまり使ったこない人もいそうだったので,まとめておきたいと思います. 経緯 僕はCoffeeScript2011年くらいから使ってて,遊びで書くのは全部CoffeeScriptで書いてる. 仕事では,アプリケーション体じゃなくて,業務上使う便利ツールなどは,CoffeeScriptで書いてる. CoffeeScript導入のメリットについて. 些細なミスが減る CoffeeScriptでは,JSの構文上の微妙に気をつけるべきところがだいたい解消されている. たとえば,Objectを適当に書いておくと,コンパイル後には最後のカンマだけ自動的に除かれるので,書くときに,ここにカンマがあるとI

    【はてなスタッフ非公式ブログバトン】CoffeeScriptについて - hitode909の日記
    yosuke_furukawa
    yosuke_furukawa 2013/12/11
    「node.jsとかみんなCoffeeScript使ってる」ってあるけど、そんなにみんなcoffee使ってるかな、、、pure jsが一番多い気がする。
  • 1