タグ

yuzu441のブックマーク (2,442)

  • API越しでタイムスタンプをやりとりする時のフォーマットをどうするべきか - その手の平は尻もつかめるさ

    APIのリクエストにせよレスポンスにせよ、タイムスタンプを利用するというのはよくある話です。 この時、そのタイムスタンプのフォーマットをどうするのが良いのかという話題です。IDLを使って縛るというというのは良い考えだと思いますが、IDLを使うにせよフォーマットについては決めなくてはならないので。 1. 文字列を使う これあんま良くないと思うんですよね……というのも、とあるAPIを触っている時に「タイムスタンプはRFC3339です」というフィールドがあったんですけれどRFC3339ではないフォーマットで返却されたり受け入れられたりしたのであまり信用ができない…… まあフォーマットが不正というのは極端な例かもしれないですが、仮にフォーマットが不正だと多くの場合 strptime() や time.Parse() なんかの時刻文字列のparserが正しく動かず (良いケースだとエラーが上がる、悪

    API越しでタイムスタンプをやりとりする時のフォーマットをどうするべきか - その手の平は尻もつかめるさ
    yuzu441
    yuzu441 2022/01/12
  • colorsなどのnpmパッケージに悪意あるコードが含まれている問題について

    追記: 2022年1月11日 2:29 JSTにDoS脆弱性としてセキュリティアドバイザーが出されて、悪意あるバージョン(1.4.1や1.4.2)はnpmからunpublishされ、npmの最新は安全なバージョンである1.4.0へと変更されました。 Infinite loop causing Denial of Service in colors · GHSA-5rqg-jm4f-cqx7 · GitHub Advisory Database 2022-01-08 に colors というnpmパッケージにDoS攻撃のコードが含まれたバージョンが1.4.44-liberty-2として公開されました。 GitHub: https://github.com/Marak/colors.js npm: https://www.npmjs.com/package/colors 問題についてのIssu

    colorsなどのnpmパッケージに悪意あるコードが含まれている問題について
    yuzu441
    yuzu441 2022/01/10
  • Webフロントエンドの開発効率を高く保つための考え方

    これまでいろんな現場でWebフロントエンド開発をしてきて、メンテナンスしやすく効率の高いWebフロントエンド開発をする上で重要になる考えが自分なりにまとまってきたので記事にしてみます。 Worse is Betterという考え方 自分が見てきた中でWebフロントエンドの開発効率が落ちてしまう一番の要因は、きれいで理論的には優れているアーキテクチャを構築しようとしてそれ自体がもたらす複雑性を支えきれないというパターンです。 少し前にフロントエンドにClean Architecture(以下CA、あの同心円の図を指すのは誤用に近いですがここではそれに乗ります)を導入する記事が流行ったと思いますがあんな感じです。ああいったクラスベースでDIが重要となる設計手法はサーバーサイドのJavaでSpringを使うのとは違ってReactがサポートしているものではないため、CAの実現自体に高い設計スキルが必

    Webフロントエンドの開発効率を高く保つための考え方
    yuzu441
    yuzu441 2022/01/10
  • API gateway + lambda + S3でDDoS攻撃を受けて1日あたりで$3000溶かした話 - Qiita

    qiita夏祭りに乗り遅れてしまったので一人後夜祭 ~2019年某日~ パイセン「それじゃあ、ワイ君は明日からフロントのログデータを飛ばすのにAPI gatewaylambdaでS3に保存するようにしてな。木曜までな。その間に自分はサービンのドメイン取ったりRoute53周りの構築するから」 ワイ「これもcloud formationに書くんです?」 パイセン「serverless frameworkっていう基的な設定はデフォルトで構築してくれる便利なものがあるんやで。これ使い」 ワイ「めっちゃ素敵やん。わかったやで」 パイセン「週初めのMTGは終わりや飯いに行こう。上野に新しい醤油ラーメン屋ができたんや」 ワイ「いいですね〜」 パイセン「それじゃ自分は新しいロードバイク持ってきたからワイ君も付いてきてな!」 ワイ「ワイ無手なんやが?え、気で漕初めやがった!こなくそおおおぉぉぉ!」

    API gateway + lambda + S3でDDoS攻撃を受けて1日あたりで$3000溶かした話 - Qiita
    yuzu441
    yuzu441 2022/01/08
    こわ
  • 判断と決断の違いと決断のコツ - そーだいなるらくがき帳

    判断と決断の話の違いはこのツイートの通り。 判断の話で言うとぼくはそーだいさんがしてくれた「判断と決断は違う」という話がだいぶ実になっていて、「情報を集めれば理屈で答えが出せるのが判断、今は情報を集めることができない中で答えを出さないといけないのが決断、リーダーがやらなければならないのは決断」という話をかなり大事にしている— しんぺいくんさん (@shinpei0213) 2021年12月10日 決断のコツ 結論から言えば、決断のコツは失敗できるようにすることだ。 失敗できる状態なら決断することができる。 そして素早くアクションして、失敗のフィードバックを受け取ることで新しい決断をすることができる。 そーだいさんがぼくに教えてくれた二大大事なこと「判断と決断は違う」と「ロールバック可能なことはどんどん試せばいい、ロールバックが難しいことは慎重に」です— しんぺいくんさん (@shinpei

    判断と決断の違いと決断のコツ - そーだいなるらくがき帳
    yuzu441
    yuzu441 2022/01/05
  • AWS CDKv2にマイグレーションしてみた #reinvent | DevelopersIO

    これはCDK Advent Calendar 2021の3日目の記事です。 IoT事業部のやまたつです。 もともとは別の記事をアドカレ用に用意していたのですがAWS CDK v2.0.0のRCが取れたので急遽CDKv2の話をします。 AWS CDKv2リリース!! ??? わーい!!! re:Inventでも発表があったようですね! [速報] AWS CDK V2 がリリースされました! alphaが出てから1年がかり。。。長かったなぁ。。。 簡単に主な差分に説明すると以下のとおりです。このv2によってCDKの各リソースに大幅な変更が入ったということはありません。 パッケージがaws-cdk-libに統一された(いくつもインストールする必要がなくなった) 明示的にインストールしないと非安定版のクラスが使えないようになった deprecatedなプロパティやメソッドが削除された 早速マイグレ

    AWS CDKv2にマイグレーションしてみた #reinvent | DevelopersIO
    yuzu441
    yuzu441 2021/12/24
  • GitHub Actions の Workflow を高速化する - Qiita

    はじめに Github Actions の Workflow を高速化する方法を解説します。 解説はフロントエンドのデプロイワークフローを例にしますが、他にも転用できると思います。 前提 実行環境として Node.js、パッケージマネージャに Yarn を使ったプロジェクトを想定をします。 フロントエンドでは、デプロイするまでに行うこととして、主に以下の事項があります。 モジュールのインストール リンターによる静的チェック 各種テスト(Unit, E2E) ビルド デプロイ 基的には、これらを事項について、ワークフローで上から行っていけばいいわけですが、プロジェクトが大きくなると、パッケージのインストールは遅くなり、静的チェックも時間がかかるようになります。よってこれらを高速化することを目指しましょう。 モジュールのインストールを高速化する モジュールのインストールを高速化することは、手

    GitHub Actions の Workflow を高速化する - Qiita
  • Cloudflareの画像最適化料金をWorker KVで97%削減した話 - SMARTCAMP Engineer Blog

    BOXILでエンジニアをやっている永井です。前回は入社エントリを書きましたが今回は技術的な記事を書こうと思います。 今回はCloudflareにおける画像の最適化処理のコストカットをした話をします。ざっくりいうとCloudflare内のKVという機能を使い、最適化をした画像をキャッシュしました。似たような問題で悩んでいる方は参考にしてもらえると嬉しいです。 TL;DR Cloudflareで画像のリサイズ(形式変更)を行っていた リサイズ後の画像はデフォルトではキャッシュされず、都度リサイズの処理が実行されていた Cloudflare内のWorker KV機能を使いキャッシュの実装をしたところ、コストがおよそ97%削減できた TL;DR 前提 問題 対策 Workers KVとは 注意事項とか サンプル 事前準備 KVのnamespace作成 KVをworkerに登録 流れ Keyについて

    Cloudflareの画像最適化料金をWorker KVで97%削減した話 - SMARTCAMP Engineer Blog
  • サイボウズの情シスが(独断と偏見で)選ぶオススメのIT機材、備品 10選 2021年版|あおてつ

    何がすごいってM1チップとも呼ばれているApple SiliconのCPU。今までのIntel CPUモデルに比べて圧倒的なハイパフォーマンス。そしてバッテリーの持ち。キッティングはもちろんゼロタッチデプロイ。サイボウズの社長も大絶賛しています。 高速M1搭載 Macbook Pro が早くもサイボウズ情シス公認の標準端末に。これでZoomつないでパワポでプレゼンしながらChromeのタブを開きまくってもサクサク動作。サイボウズに勤めててよかったよ! しかも情シスの手を煩わすことなく完全リモートセットアップが可能に。採用が増えても出社不要で安心! https://t.co/Dlg1qQ4kLS — 青野慶久/aono@cybozu (@aono) March 5, 2021 今年の秋にハイスペックの新モデル M1 Pro / M1 Max MacBook Proも発売されましたが、一般的な

    サイボウズの情シスが(独断と偏見で)選ぶオススメのIT機材、備品 10選 2021年版|あおてつ
    yuzu441
    yuzu441 2021/12/24
    使ってるものは違うけどこれ必要だよねーわかるが詰まってた
  • 書き捨てるためのRust - Qiita

    はじめに Rustは「きちんとしたプログラムを書く時にはいいけど、書き捨てのプログラムを書くには向いていない」と言われることがあるようです。「一般論としては全くその通り」と思う一方で、自分自身を振り返ってみると、これまでPythonで書いていたような書き捨てに近いプログラムも全部Rustで書くようになっています。 なぜ書き捨てのプログラムもRustで書くのかを考えてみると 最初は書き捨てだと思っていても、手直ししながら使い続けることは意外と多い コンパイラが割と多くのエラーを捕捉してくれるのでデバッグの時間が短くて済む 記述量の多さはエディタの補完があってあまり気にならない といったあたりが理由になっています。 そうはいってもRustがいろいろと面倒な言語であることには違いないので、書き捨てるときは普段のRustプログラミングとは少し違った書き方をした方がより早く書けるのではないかと思いま

    書き捨てるためのRust - Qiita
    yuzu441
    yuzu441 2021/12/23
  • 料理研究家リュウジ不満爆発 代用品ありますか?質問に「本当にすいません、買え」(J-CASTニュース) - Yahoo!ニュース

    「バズレシピ」で知られる料理研究家のリュウジさんが、レシピに記載した材の代用案を求められることに苦言を呈している。 【写真】実際の投稿 今後は対応をやめるとして「当にすいません、買え」と訴えた。ネット上では、リュウジさんの発言に賛同するような反応が広がっている。 ■「頼むから俺のわがままきいてくれ」 リュウジさんは2021年12月15日、材に関する問い合わせに関してツイッターで次のように持論を展開した。 「リュウジさんのハンバーグ作りたいんですが我が家にはゼラチンを買う習慣がないので片栗粉で代用可能ですか?とかいう質問くるんだけど俺のハンバーグいたかったら普通にゼラチン買ってくれ、挽き肉は普通に買いにいくやろ」 レシピ通りに作った料理には「責任もつ」としながらも、「勝手に代用したレシピは責任もてないし持つ気はない」。 対応について「今まで代用案をめちゃくちゃ探してきたけど全部対応し

    料理研究家リュウジ不満爆発 代用品ありますか?質問に「本当にすいません、買え」(J-CASTニュース) - Yahoo!ニュース
    yuzu441
    yuzu441 2021/12/16
    バナナマンの設楽さんもラジオで言ってたけど、レシピ変えた時点でそれは俺のカレーじゃない問題だな。リュウジさんのレシピ再現以外の使いみち思いついてないけどとりあえず買ったりする
  • Node.js や deno に Web Standard な API をなんでも取り入れるのが良いことなのかについて - from scratch

    この記事は Node.js Advent Calendar の 11 日目の記事です。 qiita.com Web API と Node.js ES2015 以前の Node.js は Web Standard な API の中で足りないものを自分で補う形で進化を続けてきた。 Callback や Event 主体での非同期処理や Common JS な形でロードできる独自のモジュールの仕組みがその筆頭だと思う。ただ逆に Web Standard な API が流行ると今度はそれに追従していかないといけなくなってきた。 ES2015 以後に流行ったものといえば、 Promise 主体での非同期処理であり、 async-await での処理だと思う。また、 ES Modules の台頭もあり、今日では Node.js でも普通に呼び出すことが可能になった。 今ではどちらも Node.js で

    Node.js や deno に Web Standard な API をなんでも取り入れるのが良いことなのかについて - from scratch
  • Go Command Line Tool Packagesをざっと試す

    Go言語でコマンドラインツールを作ろうと思いましたが、サブコマンドが必要になりそうだったので調べました。 書きやすいものを探したいので次のコマンドを作るという前提で比較していきます。 ./cmd foo -name=foo args ./cmd bar -name=bar args 対象は標準パッケージと、みんなのGo言語にピックアップされている3rd packageも試してみます。 flag (標準) 大変わかりやすかったので、Go by Example: Command-Line Subcommandsをベースに簡略化して考えたいと思います。 package main import ( "flag" "fmt" "os" ) func main() { fooCmd := flag.NewFlagSet("foo", flag.ExitOnError) fooName := fooCm

  • DynamoDB の基礎と設計 / DynamoDB Design Practice

    Qiitaにも記事があります https://qiita.com/_kensh/items/2351096e6c3bf431ff6f サーバーレスでよく利用される Amazon DynamoDBですが、設計方針はRDBMSと違うとよく言われます。 アクセスパターンに従った、DynamoDBならではの設計の仕方を一緒に学んでみませんか?

    DynamoDB の基礎と設計 / DynamoDB Design Practice
    yuzu441
    yuzu441 2021/12/11
    データ縦に持つってこういうのかなるほど
  • Edgeに「Chromeのダウンロードを中止するように必死で促す新機能」が追加、実際の画面はこんな感じ

    Windows 11ではMicrosoft Edge以外のブラウザを既定のブラウザに設定する操作が非常に面倒になっています。新たに、Microsoft Edgeに「Google Chromeのインストールを中止するように促すポップアップ」を表示する機能が追加されたと報じられました。Microsoft EdgeがGoogle Chromeのダウンロードを阻止するようなポップアップを表示するのかを実際に確かめてみました。 Microsoft says its own Edge browser is more trustworthy than "so 2008" Google Chrome - Neowin https://www.neowin.net/news/microsoft-says-its-own-edge-browser-is-more-trustworthy-than-so-200

    Edgeに「Chromeのダウンロードを中止するように必死で促す新機能」が追加、実際の画面はこんな感じ
    yuzu441
    yuzu441 2021/12/03
    どうせならVivaldiでも出して欲しい
  • 同じ組織で働く人は常に転職活動をしていてほしい

    早いものでLINE株式会社に入社して3年が経ちました。今日から勤務4年目となり、業界としてはそれなりに長く働いている側に足を突っ込んできた自覚があります。仕事エンジニアからマネージャーになり、役割も変わってきたところ。 現職でまだやりたいこともあるだけでなく、明確にバリューを出せていて組織からも評価されている現状、しばらく転職する予定はないのですが、一方で、私は常に他の選択肢がないかを探し続けています。 そして一緒に働く同僚やチームメンバーには語弊を恐れずに言えば「常に転職活動をしながら仕事をしてほしい」と思っています。 現職についてのエントリに興味がある人はそう多くないと思うので、3年目が終わった節目として、今日は市場を見て仕事をすることの重要性について書き記すことにしました。 自社に満足しているときほど、外部の働き方を知る必要がある 「あなたは今の仕事に満足していますか?」と聞かれた

    同じ組織で働く人は常に転職活動をしていてほしい
    yuzu441
    yuzu441 2021/12/01
  • ブラックフライデー&サイバーセール開催! Udemyでは何を買う? 編集部の2021年イチ押しトピック10選 - はてなニュース

    新型コロナウイルスの影響で、リモートワーク(テレワーク)やオンラインでの学習といった働き方・学び方の大きな変化は2021年も続いています。そんな2021年もあとわずか。やり残したことや学び残したことはありませんか? オンライン学習プラットフォーム「Udemy」では、2021年11月19日(金)~2021年12月1日(水) の間、年間最大のセール「ブラックフライデー&サイバーセール」 を開催します! 対象の講座がなんと1,200円から購入可能になります。 ブラックフライデーセールは11月19日(金)~11月26日(金)、サイバーセールは11月29日(月)〜12月1日(水)の開催です。11月27日(土)〜11月28日(日)はセール対象外なので、ご注意ください。 講座は買い切りなので、おトクなこの期間に気になる講座を購入しておいて、時間ができたときに自分のペースで学んでみるのもいいかもしれません

    ブラックフライデー&サイバーセール開催! Udemyでは何を買う? 編集部の2021年イチ押しトピック10選 - はてなニュース
    yuzu441
    yuzu441 2021/11/19
  • Tracing TypeScript Compiler

    はじめにTypeScript 4.1 で新しく増えた --generateTrace という TypeScript Compiler の profile を取得するオプションについて。 TypeScript 4.1 beta でもすっ飛ばされていたネタなので、多分あまり注目されていないだろうし、 僕もたまたま PRs を眺めていたら見つけた程度だし、他の feature と比べるとかなりニッチなのだけど、個人的に面白かったのでエントリに残しておく。 なぜ僕が今回のオプションに惹かれたかとういうと、 3 ヶ月くらい前に、仕事でやっている TypeScriptプロジェクトについて「ローカルでの tsc が遅い!なんでだ!」って感じで憤ってた時期があって、 どこにボトルネックがあるか調べようと思ったことがあったのだけど、このときは深く調べることができずに挫折したという経緯があるため。 ちなみ

    Tracing TypeScript Compiler
  • プログラミングにおける設計力を高めるには 〜 良いコードを書くために | Social Change!

    プログラミングとはコードを書くことだけではありません。どういった構造にするのか、データはどう扱うのか、どのライブラリを使うのか、いくつもの設計を踏まえてコードを書くのです。設計を表現したものがソースコードです。 設計の良し悪しは品質に影響します。では、良い設計を作るスキルは一体どうやって身につけることができるのでしょうか。プログラミング言語の文法は知識なので、独学でも学ぶことができますが、設計に関してはそうはいきません。 稿では、プログラミングにおける設計力を高めるためにはどうすれば良いのかを考察します。ここで言う設計は、画面や仕様ではなく、ソフトウェア内部の設計ですが、抽象化するとクリエイティブな仕事全般に通じるかもしれません。 稿の内容は「良い設計」について論じたものではなく、どうすれば身につくのかを考えたものになります。また、私たちソニックガーデンで行っている、良いコードを書ける

    プログラミングにおける設計力を高めるには 〜 良いコードを書くために | Social Change!
    yuzu441
    yuzu441 2021/11/13
  • 「新卒エンジニアが成長できる環境」を定量評価したらZOZOに入社していました / 20211111

    ▼ この発表の続きはこちら ▼ https://speakerdeck.com/tkhskt/who-i-work-with # 新卒採用ページ https://corp.zozo.com/recruit/newgraduate/ # 中途採用ページ https://hrmos.co/pages/zozotech/jobs/0000010 ※ 画質が悪いのはSpeaker Deckの仕様です。申し訳ございません。

    「新卒エンジニアが成長できる環境」を定量評価したらZOZOに入社していました / 20211111
    yuzu441
    yuzu441 2021/11/13