タグ

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

  • GitHub - piglovesyou/graphql-let: A webpack loader / babel-plugin / babel-plugin-macros / CLI / generated file manager of GraphQL code generator.

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - piglovesyou/graphql-let: A webpack loader / babel-plugin / babel-plugin-macros / CLI / generated file manager of GraphQL code generator.
    yuzu441
    yuzu441 2020/04/03
  • Introducing 1.1.1.1 for Families

    This post is also available in 简体中文, 日語, Deutsch and Français. Two years ago today we announced 1.1.1.1, a secure, fast, privacy-first DNS resolver free for anyone to use. In those two years, 1.1.1.1 has grown beyond our wildest imagination. Today, we process more than 200 billion DNS requests per day making us the second largest public DNS resolver in the world behind only Google. Yesterday, we

    yuzu441
    yuzu441 2020/04/02
    小中高生の抜け穴というか、フィルターされていないサイトを探すかDNSを勉強する戦いの幕が
  • 2020/03のKyash不正利用まとめ (非公式情報)

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    2020/03のKyash不正利用まとめ (非公式情報)
  • TypeORMでエンティティを定義する際のガイドライン

    はじめに はじめまして。エンジニアのDannyです。 今回は TypeORM という O/Rマッパー で、エンティティを定義する際のガイドラインについて書かせていただきます。 TypeORMとは TypeScript製の O/Rマッパー です。 リポジトリ 公式ドキュメント 弊社ではTyepScriptで実装しているサーバアプリケーションがいくつかあるのですが、その一部で採用しています。 TypeScriptで開発する際の O/Rマッパー としてはデファクトになりつつあると思います。 Node.js/TypeScriptの O/Rマッパー 比較や、TypeORM の使用感に関しては弊社suzukiの資料をご参照ください。 記事では、最新バージョンである 0.2.7 を使用します。 コンストラクタの定義 さっそくですが、まずはコンストラクタについて考えてみます。 ここでは、MySQLで以下

    TypeORMでエンティティを定義する際のガイドライン
    yuzu441
    yuzu441 2020/03/28
  • TypeScriptプロジェクトに独自の型定義を配置する方法 - Qiita

    概要 TypeScriptの開発において、型定義ファイルが用意されてないnpmライブラリを使うのは厄介なものです。 無理やり require("...") でJSのまま読み込ませてもいいですが、ちゃんとした型定義を使用したくなるときもあります。 作成した型定義ファイルは元のnpmライブラリに取り込んでもらい package.json の types で指定してもらう方法 1 と、 DefinitelyTyped に取り込んでもらい @types/*** パッケージとしてnpm installする方法がありますが、どちらも取り込んでもらうためにはPull Requestを投げたり、ライブラリのメンテナに新しいバージョンとしてリリースしてもらったりで時間がかかってしまいます。 Pull Requestは投げつつ、それが取り込まれてリリースされるまでの間、自分のプロジェクトで作った型定義ファイル

    TypeScriptプロジェクトに独自の型定義を配置する方法 - Qiita
  • 効果的なリモート会議にするためのプラクティス - Effective Remote Meeting

    はじめに コロナウィルス(COVID-19)でリモートワークの頻度が増加している人も多いと思う。そうなると、必然的にリモート会議の数も増える。ここで課題として上がってくるのが、リモート会議に対する姿勢、また練度だ。 リモートワークを多用して、リモート会議に慣れているチームもあれば、もともとオフサイト出社がメインでリモート会議に慣れていないチームもある。前者の慣れているチームであれば、スムースに適応できると思うが、後者の不慣れなメンバが多い部署・チームは、もっと効果的なやり方に気づいていない可能性もあると思う。(この場合、前者のメンバはストレスを溜めることにもつながる…。たとえば、一方的に音質の悪いリモート会議を想像して欲しい) そこで、この記事では自身の5-6年のリモート会議経験や、見聞きした情報から良いと思っているプラクティスを紹介していく。それによって、少しでもより効果的なリモート会議

    効果的なリモート会議にするためのプラクティス - Effective Remote Meeting
    yuzu441
    yuzu441 2020/03/27
    わかりみが深い
  • エンジニア採用でやってはいけないこと/やっていること|rapmaster1218

    エンジニア採用自体は2012年頃からやっていて2013年は自チームの採用責任者をやったらスタートアップ2社でエンジニア採用の責任者をやってきました。 色々と面談をやってきて1つわかったことは面談もスキルでエンジニアとして優秀でも面談が得意とは限らないことです。 なので、面談も数をこなしてその分、振り返りをすればスキルとして身につくものだと考えています。 長年採用周りをやってきた中で見えてきたやってはいけないこととやっていることをまとめました。 やってはいけないこと人がいないからといって妥協して採用する 私も採用をやり始めた当初は結構、これをやってしまっていました。 目の前にプロジェクトがあって人がいない状況だと焦ってしまいこの人と働きたいなと思えてなくても妥協して採用してしまうことをやってしまいました。 結果、良いチームの中に1人だけ能力が追いついてない人材が入りチームが崩壊するという事が

    エンジニア採用でやってはいけないこと/やっていること|rapmaster1218
  • 高速処理化!MySQLのパーティショニング機能を使ってみよう | 株式会社LIG(リグ)|DX支援・システム開発・Web制作

    みなさん、最近人生のパーティショニングしてますか? こんにちは、勝利です。 今回はMySQLのパーティショニングについて紹介させていただきます。 MySQLのパーティショニングとは? MySQL5.1ぐらいから使えるようになった、1つのテーブルを分割する機能。 テーブルを分割するので、格納できる根的な容量の拡張や、やり方(Plunning)によっては高速処理を実現できます。 分割した際のデータ振り分け方法としては大体以下のような形があります。 RANGE ・・・ パーティションごとに範囲を指定して振り分ける LIST ・・・ パーティションごとに格納する値で振り分ける HASH ・・・ 1つのカラムの値を式の結果で振り分ける KEY ・・・ 1つ以上のカラムの値をMD5関数等で評価して分割する 使用するメリットとしては下記2点のようなことが考えられます。 メリット1 [高速化が見込める]

    高速処理化!MySQLのパーティショニング機能を使ってみよう | 株式会社LIG(リグ)|DX支援・システム開発・Web制作
    yuzu441
    yuzu441 2020/03/26
    わからんでもないw “オプティマイザっていう新たしい仮面ライダーみたいなものが”
  • MySQL パーティショニングまとめ - Qiita

    参考URL パーティショニングとは パーティショニングの種類 RANGE パーティショニング このタイプのパーティショニングは、指定された範囲に含まれるカラム値に基づいて、行をパーティションに割り当てます。 LIST パーティショニング RANGE によるパーティショニングに似ていますが、別個の値のセットのいずれかに一致するカラムに基づいて、パーティションが選択されます。 HASH パーティショニング このタイプのパーティショニングでは、テーブルに挿入される行内のカラム値を操作するユーザー定義式によって返される値に基づいて、パーティションが選択されます。関数は、負ではない整数値を返す MySQL の有効な式で構成できます。このタイプを拡張した LINEAR HASH も使用できます。 KEY パーティショニング このタイプのパーティショニングは、HASH によるパーティショニングに似ていま

    MySQL パーティショニングまとめ - Qiita
  • npmのprivate registryからGitHub Packages Registryに移行する

    PLAIDでは社内のNode.jsパッケージの管理にnpm private registry [https://docs.npmjs.com/creating-and-publishing-private-packages](npmのregistryにprivateでパッケージをpublishする形式)を利用していました。 また、npm private registryを導入する以前の古いパッケー

    yuzu441
    yuzu441 2020/03/26
  • React Nativeアプリのサイズを35%減らした話 Android編 - KitchHike Tech Blog

    CTOの Shoken です。キッチハイクアプリはReact Nativeで開発を始めて3年目に入りました。アプリのサイズは開発を続けるうちに大きくなっていってしまいます。この記事では React Native アプリが、どのファイルでサイズが大きくなっているかの分析と、Androidでアプリのダウンロードサイズを減らした方法を紹介します。 サマリ キッチハイクアプリでは JS Bundle は 3.4 MB 、フォントは 48 MB だった。 Androidはビルド時の最適化オプションとApp Bundleにすることでサイズが 35% 減った。80.6 MB -> 66.8 MB サマリ JS Bundle のサイズを調べる react-native-bundle-visualizer を使った JS Bundle の構成を確認する Android Studio APK Analyzer

    React Nativeアプリのサイズを35%減らした話 Android編 - KitchHike Tech Blog
  • typeormおよびclass-validatorを使用したNestJSエンティティのDRY原則 - 初心者向けチュートリアル

    同じデコレータのセットをプロパティで繰り返し使用している場合、それらを一緒に構成する新しいデコレータを作成できます。 const CombinedDecorator = (target, property, descriptor) => { IsOptional(target, property, descriptor); IsString(target, property, descriptor); Column('text')(target, property, descriptor); } class Person { @CombinedDecorator() name: string; } 一般的なユースケースをカバーするこれらのいくつかを考え出すか、設定オブジェクトを取り込み、オプションでパラメーターに基づいてデコレーターを適用するデコレーターファクトリーに変えることを検討できま

    yuzu441
    yuzu441 2020/03/18
  • GitHubの新機能「GitHub Actions」で試すCI/CD | さくらのナレッジ

    GitHubが2019年11月、新機能「GitHub Actions」を正式に公開した。GitHub上のリポジトリやイシューに対するさまざまな操作をトリガーとしてあらかじめ定義しておいた処理を実行できる機能で、今まで外部サービスとの連携が必要だった自動テストや自動ビルドなどがGitHubだけで実現できるようになる。今回はこのGitHub Actionsについて、機能の概要や基的な使い方などを紹介する。 GitHubだけでCI/CD的な機能を実現できる「GitHub Actions」 昨今では、ソフトウェア開発におけるさまざまな工程を自動化するような技術の開発や普及が進んでいる。その1つに、CI(Continuous Integration、継続的インテグレーション)やCD(Continuous Delivery、継続的デリバリー)と呼ばれるものがある。CIはソフトウェアのビルドやテストを

    GitHubの新機能「GitHub Actions」で試すCI/CD | さくらのナレッジ
  • さようなら、TypeScript enum - 株式会社カブク

    フロントエンドエンジニアの今村です。TypeScriptではenumを使わずunion型を使いましょう、という話を書きます。 モチベーション 何を今さら、と思う方もいるかもしれません。 TypeScriptのunion型はenum的なものを表現可能であり、基的にenumよりもunion型を使うべき、という意識を持っているTypeScriptプログラマーはすでに少なからずいるのではないかと思います。しかし、ではenumの使用はいかなる場合も避けるべきなのか、そうでないとしたらどのような基準でenumとunion型を使い分けるべきなのか、といった点について、広く合意の取れたガイドラインはなさそうです(少なくとも私は知りません)。この結果、コードレビューなどで少しやりづらさを感じることがあったので、白黒つけてしまいたいという気持ちからこのブログを書いています。 結論としては、enumは全面的に

    さようなら、TypeScript enum - 株式会社カブク
  • 個室トイレでサボっている社員をIoTで検知「トイレットマスター」

    センスウェイは、トイレにまつわるさまざまな課題をIoTによって解決する法人向けサービス「ToiletMaster」(トイレットマスター)の提供を開始した。 オフィス内のトイレ利用状況をIoTデバイスで管理可能にするユニークなサービス。個室トイレのドアに開閉センサーを取り付けることで、空き室状況の表示や長時間の利用検知、集計データによる分析にも対応した。検知センサーに低消費電力のLoRaWAN対応センサーを採用したことで、電気配線工事を行うことなく容易に設置できるのが特徴。

    個室トイレでサボっている社員をIoTで検知「トイレットマスター」
    yuzu441
    yuzu441 2020/03/15
    人を監視するためのIoTって好きじゃないんだよな…トイレでサボりたくなる会社なのをまずどうにかしたほうがいいんじゃないの
  • GitHub Actions を利用した NestJS アプリケーションの Google AppEngine への自動デプロイ - Qiita

    GitHub Actions を利用した NestJS アプリケーションの Google AppEngine への自動デプロイAppEngineNestJSGitHubActionsGoogleCloud この記事は NestJS Advent Calendar 2019 15 日目の記事です。 日は NestJS アプリケーションのデプロイ先として最も有力な PaaS 環境である Google AppEngine へと、新興の CI/CD サービスである GitHub Actions を利用して自動デプロイを実現してみます。 NestJS のデプロイ環境について NestJS のデプロイ先はたびたび話題にあがります。最終的にはケースバイケースなのでこれ!という形で断定はできませんが、少なくとも大抵の場合は適当な CI サービス + AppEngine で問題ないかと思います。 以下に参

    GitHub Actions を利用した NestJS アプリケーションの Google AppEngine への自動デプロイ - Qiita
  • prisma - 最速 GraphQL Server実装

    react-apollo の調査で GraphQL サーバーをさっくり実装する必要があり、 今 graphqool どうなってるんだっけ、と見に行ったら prisma が推奨されていました。 日語情報がまったくなかったので、調査した結果をまとめておきます。 prisma とはなにか GraphQL の形をした ORM MySQL/Postgre への マイグレーションヘルパー付き モデル定義からインデックス自動生成 CRUD自動生成 graphqoolの次期版? PaaS に依存せず、自分でデプロイ可能なマイクロサービス 自分も最初よくわからなかったのですが、 使ってみた感じでは、 GraphQL の形をとった ORM + Migration Helper です。 $ npm i -g prisma $ prisma init my-graphql-server # REPL で実装を選

    prisma - 最速 GraphQL Server実装
  • ソート可能なUUID互換のulidが便利そう - Qiita

    UUIDは重複しないIDを生成する手段として便利ですが、特にversion4(乱数によるUUID)を利用する場合は一意性を得るのと同時に乱雑さも得ることになりますので、UUIDに順序性を求めることができません。 UUID - Wikipedia https://ja.wikipedia.org/wiki/UUID UUID(Universally Unique Identifier)とは、ソフトウェア上でオブジェクトを一意に識別するための識別子である。UUIDは128ビットの数値だが、十六進法による550e8400-e29b-41d4-a716-446655440000というような文字列による表現が使われることが多い。元来は分散システム上で統制なしに作成できる識別子として設計されており、したがって将来にわたって重複や偶然の一致が起こらない前提で用いることができる。 UUIDだと実現できない

    ソート可能なUUID互換のulidが便利そう - Qiita
    yuzu441
    yuzu441 2020/03/08
  • 外部IPを持たないGCEインスタンスでweb開発

    先日、GCPからGCEインスタンスに付与した外部IPを有料化するという連絡がきました。 現在はGCEの料金表にも次の記載があります。 月額300円程度ですが、月々かかってくる費用なので少しでも安いほうが嬉しいです。 そこで、外部IPを持たないGCEインスタンスでWEBサービスの開発を行う方法を試してみました。 GCEインスタンスの作成 まずは、外部IPを持たないGCEインスタンス instance-1 を作成します。 ここでは80番ポートで開発用webサーバを起動するために、「Allow HTTP traffic」にチェックをつけました。 もし他のポートを利用する場合は、そのポートで通信できるようにFirewallルールを設定してください。 少し待つとインスタンスが作成され、外部IP(External IP)が付与されていないことが確認できます。 SSHによる接続とwebサーバの起動 作成

    外部IPを持たないGCEインスタンスでweb開発
    yuzu441
    yuzu441 2020/03/07
  • SlackとTeams、どちらが優れたツールか 米マーケットの評価は?

    ほんの2年前、チームコラボレーションアプリ分野ではSlackのシェアや評判が圧倒的に強く、「マイクロソフトのTeamsは使い勝手がSlackに比べて悪く、ユーザー数も見劣りがする」などと言われていた。ところが、Teamsがユーザー数でSlackを追い抜いたことで、近い将来Slackを引き離すとの分析まで現れている。優良企業顧客を狙ってGAFAの一角であるグーグルも参戦するチームコラボアプリ戦国時代において、Teamsは当にSlackを破れるか。在米ジャーナリストである筆者が、勝敗の鍵を握ると思われる3つの視点から探る。 米NBCニュースの東京総局、読売新聞の英字新聞部、日経国際ニュースセンターなどで金融・経済報道の基礎を学ぶ。現在、米国の経済を広く深く分析した記事を『週刊エコノミスト』などの紙媒体に発表する一方、『Japan In-Depth』や『ZUU Online』など多チャンネルで

    SlackとTeams、どちらが優れたツールか 米マーケットの評価は?
    yuzu441
    yuzu441 2020/03/06