タグ

2020年12月5日のブックマーク (29件)

  • 本番環境で動作している(はずの)selectを叩いてサービスを落とした話 - Qiita

    この記事は番環境でやらかしちゃった人アドベントカレンダー20205日目の記事です。 去年の投稿を見て自分も過去色々やらかしてしまったなあという反省と懺悔の元今回参加させていただきました。 TL;DR 当時新卒1~2年目だった自分にあるミッションが課せられました。 当時関わっていたサービスに いわゆる一覧画面 + ページングで表示機能を実装している箇所がありまして、表示速度改善に取り組みました。 特に特定のカテゴリページの2ページ目以降の表示速度がかなり遅く、タイムアウトが頻発していたという状況でした。 Qiitaでいうところのタグフィードのようなものと思っていただけるとありがたいです。 何をしたか どの程度遅いかをまず調べようと、APIからDBに流れているはずのタイムアウトしているselect文をAPIと同様にRead Replicaにたたきました。 ちなみにデータベースはMySQLでし

    本番環境で動作している(はずの)selectを叩いてサービスを落とした話 - Qiita
  • エンジニアの評価制度を考える - Qiita

    ブルベースの堀内です。 エンジニアチームのマネージャーを担当しております。 ブルベース株式会社は2020年3月に人材事業、受託開発事業、自社サービスの新規開発・運用保守を担う会社として発足しました。発足に伴いエンジニアの評価制度を考える機会をいただいたものの、非常に頭を悩ませました。通常業務をこなしつつ、評価制度を検討したため、半年もの時間がかかりました。 皆様の参考になればと思い、どのような思いで検討したかを述べさせていただきます。 エンジニア評価制度の必要性と方向性 エンジニアの評価制度を策定するにあたり、なぜ必要なのかを改めて考えてみることにしました。評価制度に従って、役職や給与が決定することは当然のことです。ただ、それだけではありません。この評価制度は「会社がどのようなエンジニアになって欲しいか」というメッセージと考えるようにしました。 現在、所属するエンジニアのみで誰がどのランク

    エンジニアの評価制度を考える - Qiita
  • 今時のPythonはこう書く2020 - Qiita

    はじめに システム作ってるとかライブラリ作ってるみたいなある程度Pythonを綺麗に1書くことが求められる方々に向けた記事です。 (機械学習系のライブラリを使うためにPython書いてる方とか、初学者の方にはちょっとあわないかも知れません) 綺麗に書くための作法の難しさって共有が面倒なところだと思うんですよね。その書き方は間違いじゃない、間違いじゃないけどもっといい書き方があるぞみたいなやつってなかなか指摘し辛いですし、じゃあ1人に対してレビューしたら他のメンバーにはどう伝える?そもそも伝える必要?俺の工数は?みたいになりがちです。 一番いいのはこういう時はこう書く!みたいなドキュメントを作って「ドキュメント違反です」ってレビューをしてあげることなんですが、まーそれもそれで超面倒じゃないですか。なのでこの記事がそのドキュメントの代わり、とまではいかなくとも礎くらいになればいいなと思って書き

    今時のPythonはこう書く2020 - Qiita
  • npm Blog Archive: Release v7.1.0

    The npm blog has been discontinued. Updates from the npm team are now published on the GitHub Blog and the GitHub Changelog. Happy Friday! 🎉 This week’s release brings two new features, starting with a brand new command: npm set-script that helps you manage your package.json scripts - thanks to the community contribution from @Yash-Singh1 🏆 Also npm exec (no args) now triggers an interactive sub

  • Googleの無料サービス「Dialogflow」を使ってノーコードでチャットボットを作ってみた | Ledge.ai

    サインインした状態で「いいね」を押すと、マイページの 「いいね履歴」に一覧として保存されていくので、 再度読みたくなった時や、あとでじっくり読みたいときに便利です。

    Googleの無料サービス「Dialogflow」を使ってノーコードでチャットボットを作ってみた | Ledge.ai
  • 9 Things to Do Before Using a New Computer

    Got a new Windows computer? There are some tasks that you must take care of before you start using your new machine. The first thing you want to do with a new computer is jump right into using it. But we don’t recommend doing that. There are some tasks that you must take care of before you start using the new PC. The steps you take now can save you time and effort. In the long run, it'll make your

    9 Things to Do Before Using a New Computer
  • CTO不在の企業で開発組織を作っていくために大事なこと|BTO

    おはこんばんちは!!尾藤 a.k.a. BTO です。 これは CTOA Advent Calendar 2020 の5日目の記事です。 今までウノウとUUUMの2社のスタートアップでCTOを足掛け10年近くやってきました。経歴柄、CTOのいない企業から開発組織の作り方の相談を受けることが多いですが、やはりCTOが不在で開発組織を作っていくのは非常に困難です。とはいえ、転職市場に都合よく即戦力になりうるCTO人材が簡単に見つかるのも稀です。そこでCTOが不在の中で開発組織を作っていくために大事なことをまとめてみました。 開発組織作りで大事なのは採用ではなく環境作り開発組織作りで大事なことはいろいろありますが、最も大事なのは採用と環境の2つではないかと思います。環境が良くなければ優秀なエンジニアは採用できないし、優秀なエンジニアに来てもらえなければ良い開発環境を作ることができません。いわゆる

    CTO不在の企業で開発組織を作っていくために大事なこと|BTO
  • Twilioを利用した障害時の自動連絡網システムについて - BASEプロダクトチームブログ

    この記事はBASE Advent Calendar 2020の5日目の記事です。 SRE Groupのngswです。 Eコマースプラットフォーム「BASE」における障害発生時に、社内関係者に連絡網に基づいて電話発信するシステムを構築しました。 このエントリでは、その導入までの経緯と具体的な当該システムの説明をします。 TL;DR 「BASE」で問題が発生した際に意思決定者に電話発信する周知システムを構築した 「導入前に考えたこと」をまず主題として書いた 参考URL記事のまま手順であるが、それでも導入時に詰まった事柄など落ち穂拾い的に追記した 謝辞 Twilio FunctionsとStudioを使って連続架電を行う - Qiita 大変わかりやすい記事であり、ほぼすべてを参考にさせていただいた。このQiita記事がなければ短期間で実現することは不可能であったと考える 導入に至る経緯 07月

    Twilioを利用した障害時の自動連絡網システムについて - BASEプロダクトチームブログ
  • さくらインターネットの技術スタックをまとめてみた(2020年版) - Qiita

    この記事は さくらインターネット Advent Calendar 2020 4日目の記事です。 記事をご覧のみなさまお久しぶりです。さくらインターネットの大久保です。 ふと気づいたら、去年のアドベントカレンダーでゆるふわな趣味の記事 を書いてから、あっという間に1年が過ぎてました。 自分自身振り返ると、新型コロナの影響で働き方が大きく変わったのに加え、仕事上の役割も変化し、激動の1年間だったように思います。 下っぱエンジニアが突然マネジメントもやることになった話 さくらインターネットでは2020年7月に大きな組織変更がありました。自分は、2009年7月からちょうど11年間所属していた「研究所」を離れ、新たに発足した「クラウド事業部」の副部長を務めることとなりました。 当方の部は、サービス企画・開発から、データセンター運用、お客さまサポート、マーケティングなどを含めた7つの部門、45

    さくらインターネットの技術スタックをまとめてみた(2020年版) - Qiita
  • なぜ、AppleのM1チップはそんなに速いのか?

    Medium(Debugger)より。 新しいM1 Macの実際の体験が動き始めました。速いです。当に速い。しかし、なぜ? 魔法は何ですか? エリック・エンハイム Youtubeで、昨年iMacを購入したMacユーザーを見ました。それは40GBのRAMを搭載、約4000ドルの費用がかかて最大になりました。その時には、超高価なiMacが、わずか700ドルを支払った新しいM1 Mac Miniによって破壊されていく様子を信じられないような気持ちで見ていました。 実際のテストでは、M1 MacはIntel Macの最上位を超えて追い越しているだけでなく、それらを破壊しているのです。信じられない人たちは、一体どうやってこんなことが可能なのかと尋ね始めました。 あなたがその人たちの一人なら、あなたはうってつけの場所に来ました。ここでは、AppleがM1で行ったことを正確に消化可能な部分に分解する予

    なぜ、AppleのM1チップはそんなに速いのか?
  • 1年半のソフトウェアエンジニア長期インターンで出会ったオススメ本をたくさん紹介します - Qiita

    イントロ ABEJAアドベントカレンダーの4日目に一昨日飛び込みました、長期インターン生の佐藤(Twitter: @TodayInsane)です。 去年は機械学習を通して、TWICEというK-POPグループへの愛を語りました。 ABEJAには昨年4月、「当に何も出来ないけど、休学してプログラミングとかエンジニアの経験を積みたいんです」という何とも不安な主張をするぼくを受け入れていただきました。 この1年半のエンジニア / リサーチ両インターンの過程で出会った良いをどしどし紹介します。 ちなみにインターン開始時は プログラミング、Pythonだけならちょびっと書けます!(ABCのB問題とか機械学習ライブラリの写経) HTMLってどんな風になってるんですか?(?) サーバ...??リクエスト...?? JavaScript、名前は聞いたことあります 英語の論文しんどい、2時間ぐらいかけてI

    1年半のソフトウェアエンジニア長期インターンで出会ったオススメ本をたくさん紹介します - Qiita
  • 老兵のようなRDBMSからの解放を AWSが手がけるデータストアの再発明

    オンラインで開催されているAWS最大のグローバルカンファレンス「AWS re:Invent 2020」。12月2日に行なわれたAWS CEOのアンディ・ジャシー氏の基調講演では、データストア分野にもフォーカス。ストレージとデータベースの新サービスは、コスト削減と高い性能を求める顧客の声に応えた正常進化と言えそうだ。 もはや古いデータストアでは対応できない 3時間におよぶアンディ・ジャシー氏の基調講演において、コンピュート分野に続いて解説されたのがデータストアの分野だ。ここではデータを利活用するストレージの技術革新に加え、データベースへの取り組みも披露された。 まずゲストとして登壇したのは、2006年のAmazon S3ラウンチ当時にいち早くデータを格納したSmugMugの創業者であるドン・マクスキル氏。S3にデータをホストしたことで、最新の分析やデータ管理ツールを利用でき、1日数十億枚とい

    老兵のようなRDBMSからの解放を AWSが手がけるデータストアの再発明
  • 中高生向け:アプリゲームでおわびのアイテムを配った話

    NowDo様にて中高生向けのイベントで話した 番環境でやらかしちゃった話です https://nowdo.net/events/bualoba23akg00b6nd00

    中高生向け:アプリゲームでおわびのアイテムを配った話
  • さまざまなサイバー攻撃に繋がる脆弱性 HTTP リクエストスマグリング | yamory Blog

    HTTP リクエストスマグリングは、フロントエンドとバックエンドのサーバーで HTTP リクエストに対し異なる解釈をしてしまうことで発生する脆弱性です。記事では脆弱性の概要から対策方法について解説します。

    さまざまなサイバー攻撃に繋がる脆弱性 HTTP リクエストスマグリング | yamory Blog
  • もうEDRしか勝たん、という話 - Qiita

    もうEDRしか勝たんという話 株式会社LITALICOでCSIRTはじめセキュリティ万事担当しております@taro-hiroiです。 アドベントカレンダーなどというハイカラなものは若い衆に任せておきたかったのですが 一念発起しCSIRT最前線から熱いEDR推し怪文書をしたためました。 EDR欲しいが一歩踏み出せないセキュリティ担当者や情シス、駆け出しCSIRTの方に届けこの想い。 EDRはいいぞ。 そもそもEDRってなんぞや Endpoint Detection and Response の頭文字。 なんのこっちゃ、という話ですが要するに「エンドポイントの情報(インストールされているアプリケーション、ログ、起動プロセスなど)を収集し、エンドポイントでの脅威検知及び対応を支援するツール」ってなところです。 所謂アンチウィルスソフトウェアと呼ばれてきたもの(これはこれでEndPointPro

    もうEDRしか勝たん、という話 - Qiita
  • ITシステムの運用監視サービスへの不正アクセスについて / 2020年12月4日 株式会社日立システムズ

    株式会社日立システムズ(代表取締役 取締役社長:柴原 節男、社:東京都品川区/以下、日立システムズ)が提供しているITシステムの運用監視サービス*1において、ネットワークを経由したと推定される不正アクセスが確認されました。 事態の判明後、速やかに対策を講じ、件を調査した結果、現時点でお客さま情報が外部に流出した事実は確認されておりません。 お客さまをはじめ関係者の皆さまに多大なるご心配をおかけしていますこと、心より深くお詫び申し上げます。 日立システムズは、今回の事態を重く受け止め、お客さまの業務への影響を最小限とすることを最優先に対応し、不正アクセスに対する情報セキュリティ対策のさらなる強化に努めてまいります。 なお、既に関係省庁・関係機関*2には報告済みです。 *1 お客さまシステムと日立システムズデータセンターをIP-VPN回線で接続し、システム上のメッセージ監視、構成機器の異常

  • DEAD CODE COOKBOOK ~デッドコードの作り方と復活の呪文~ の紹介 - Qiita

    この記事は 闇の魔術に対する防衛術 Advent Calendar 2020 の1日目の記事です。 2日目も埋まっていなかったので 存在しない正規表現 という記事を書きます。 参加しているカレンダーとして完走させたいので、是非参加してください! 枠はまだまだ空いています! DEAD CODE COOKBOOK ~デッドコードの作り方と復活の呪文~ を11/30に公開しました。 以下は、「はじめに」「🔖中断を利用するパターン」「🧪return後のコード」「👼ネスト修正による中断コードの移動」「🧟goto文のラベルによるジャンプ」「🧟ホイスティング」を一部抜粋した紹介となります。 書の目的 デッドコードは、 プログラムの一部として存在するが、決して実行されないコード のことである。一時的な変更等でデッドコードを作る場合もあるが、多くの場合は バグ(プログラム自体の誤り)の可能性が極

    DEAD CODE COOKBOOK ~デッドコードの作り方と復活の呪文~ の紹介 - Qiita
  • はてなブログ全体のセキュリティ向上のため、2020年12月28日(月)をもってTLS1.0, 1.1 での通信を停止します - はてなブログ開発ブログ

    いつもはてなブログをご利用いただきありがとうございます。 はてなブログをご利用のユーザー様の情報の安全性を高める目的で、2020年12月28日(月)をもちまして、脆弱性が報告されているインターネット通信暗号化方式 TLS1.0, 1.1 での通信を停止します。この変更により、古いOSや古いブラウザからはてなブログが閲覧できなくなります。 ご利用中のユーザー様にはご迷惑をおかけし申し訳ございませんが、ご理解いただければと思います。 閲覧できなくなった場合の対応方法 閲覧できなくなった場合には、以下の方法で閲覧できるようになります。 OSを最新のバージョンに更新する ブラウザを最新のバージョンに変更する ブラウザのインターネット通信の暗号化方式の設定を変更する ただし、ご利用のパソコンやスマートフォンによっては、OSやブラウザのバージョンアッププログラムが提供されていない可能性もあります。その

    はてなブログ全体のセキュリティ向上のため、2020年12月28日(月)をもってTLS1.0, 1.1 での通信を停止します - はてなブログ開発ブログ
  • 今時のPythonはこう書く2020 - Qiita

    はじめに システム作ってるとかライブラリ作ってるみたいなある程度Pythonを綺麗に1書くことが求められる方々に向けた記事です。 (機械学習系のライブラリを使うためにPython書いてる方とか、初学者の方にはちょっとあわないかも知れません) 綺麗に書くための作法の難しさって共有が面倒なところだと思うんですよね。その書き方は間違いじゃない、間違いじゃないけどもっといい書き方があるぞみたいなやつってなかなか指摘し辛いですし、じゃあ1人に対してレビューしたら他のメンバーにはどう伝える?そもそも伝える必要?俺の工数は?みたいになりがちです。 一番いいのはこういう時はこう書く!みたいなドキュメントを作って「ドキュメント違反です」ってレビューをしてあげることなんですが、まーそれもそれで超面倒じゃないですか。なのでこの記事がそのドキュメントの代わり、とまではいかなくとも礎くらいになればいいなと思って書き

    今時のPythonはこう書く2020 - Qiita
  • WebSocketの次の技術!?WebTransportについての解説とチュートリアル - Qiita

    概要 こんにちは。NTTコミュニケーションズのyuki uchidaです。普段はSkyWayというWebRTCプラットフォームの開発やWebRTCリサーチャー(見習い)をしています。 この記事は NTTコミュニケーションズ Advent Calendar 2020 の3日目の記事です。 昨日はMasaki Shimuraさんの記事、 「Threat Intelligenceの活用を促進するMISPの紹介」でした。 この記事は、WebSocketの次の技術ではないかと噂される、WebTransportの概要や双方向通信の歴史をまとめつつ、WebTransportのdatagram形式でデータを送信してみるチュートリアル記事です。 対象読者 WebTransportっていう技術を初めて聞いた人 WebSocketを使ったことがあり、不満がある人 双方向通信・リアルタイム通信について興味がある人

    WebSocketの次の技術!?WebTransportについての解説とチュートリアル - Qiita
  • 成長の早いジュニア・ソフトウェアエンジニアの特徴 - junebox

    こちらが伝えた内容から不要なことを邪推しないというか、文字通りに「真っ直ぐ」である人は、望ましい行動に最短経路で向かっていくので効率的な行動を選択していくな、と感じます。「なにかわからないことがあったら、すぐに質問してくださいね」と言われたときに、実際にすぐに質問できる人はどんどん前に進んでいきます。余計なことを考えない分、リソース効率がよいのでしょう。 ぼく個人は、人間はもともと素直な生き物なんじゃないかと思っています。それが、イヤな体験を重ねるたびに少しずつ防衛的になって、だんだんと素直さに蓋をしてしまうケースがあるイメージです。「それくらい自分で調べろ、いちいち質問するな」と怒鳴られるようなことがあったら「すぐに質問してね」と言われてもなかなか実行に移せなくなりそうですよね。そういう人は「自分は、そういう状況である」というのを自覚することから始めるとよいでしょう。「質問してよかった」

    成長の早いジュニア・ソフトウェアエンジニアの特徴 - junebox
  • ウェブの進化とウェブブラウザ開発の最前線

    学部 3, 4 年生向けの特別講義で『ウェブの進化とウェブブラウザ開発の最前線』というタイトルで話をしてきました。 ウェブの進化の歴史を知ることで現在のトレンドについて理解し、またウェブブラウザというグローバルで大規模なソフトウェアの開発の一端を垣間見ることで、ウェブやウェブブラウザの開発に少しでも興味を持ってくれたら良いなぁという気持ちで話をしてきました。 なお歴史観については私の事実誤認も含まれると思うので、間違いを見つけたら教えて下さい :-) 追記 (随時) たくさんの反応を頂きありがとうございます!次回同じような資料を作るときの参考にできるよう、ここにメモしていきます。ウェブは無限に話せる話題があって楽しいですね! ウェブ以前のハイパーテキストの歴史も取り入れるべきでは? ありがとうございます!おっしゃるとおりで、ウェブの進化史と言いつつウェブが公開されてからの話しかしていないの

    ウェブの進化とウェブブラウザ開発の最前線
  • Command Line Interface Guidelines

    Contents Command Line Interface Guidelines An open-source guide to help you write better command-line programs, taking traditional UNIX principles and updating them for the modern day. Authors Aanand Prasad Engineer at Squarespace, co-creator of Docker Compose. @aanandprasad Ben Firshman Co-creator Replicate, co-creator of Docker Compose. @bfirsh Carl Tashian Offroad Engineer at Smallstep, first e

    Command Line Interface Guidelines
  • Don't Panic: Kubernetes and Docker

    By Jorge Castro, Duffie Cooley, Kat Cosgrove, Justin Garrison, Noah Kantrowitz, Bob Killen, Rey Lejano, Dan “POP” Papandrea, Jeffrey Sica, Davanum “Dims” Srinivas | Wednesday, December 02, 2020 Update: Kubernetes support for Docker via dockershim is now removed. For more information, read the removal FAQ. You can also discuss the deprecation via a dedicated GitHub issue. Kubernetes is deprecating

    Don't Panic: Kubernetes and Docker
  • AndroidアプリのKotlin化をやり切るための腕力 - ドワンゴ教育サービス開発者ブログ

    この記事は、ドワンゴ Advent Calendar 2020の4日目の記事です。 N予備校Androidチームでは、およそ2年かけて、Javaで書かれたコードのほとんどをKotlinに書き換えました。この記事では、コードをKotlinに書き換える上で必要だったことをまとめていきます。 Kotlin化に技術はそこまで必要ではない そもそもKotlin化をすることにそこまでの技術力は必要ないです。JavaKotlinの互換性が高いので、Kotlin化によってコードが壊れることは少ないですし、以下のように文法にも大きな変化はないので、読めないコードが生まれることもありません。 Javaで作成したFragment public class SimpleFragment extends Fragment { @Override public View onCreateView(LayoutInf

    AndroidアプリのKotlin化をやり切るための腕力 - ドワンゴ教育サービス開発者ブログ
  • M1 MacでWindowsの起動に成功! ベンチマークテストではSurface Pro Xを上回る

    M1 MacWindowsの起動に成功! ベンチマークテストでSurface Pro Xを上回る数値も記録2020.12.04 12:3038,171 塚直樹 これがM1の実力…。 新たにMacシリーズに投入された、Apple(アップル)のM1プロセッサ。そしてこのM1を搭載したMacで、ARM版Windows 10の動作に成功しました! ちなみにARM版Windows 10とは、広く使われているインテルやAMDプロセッサで動作する通常のWindows 10とは異なる、ARMというアーキテクチャのプロセッサで動作するWindows 10のことです。 今回のデモは、 ARM版Windows 10のプレビュー版をAppleの仮想化環境のフレームワークである「Hypervisor.framework」を通じて仮想化することで、実現しました。 Who said Windows wouldn't

    M1 MacでWindowsの起動に成功! ベンチマークテストではSurface Pro Xを上回る
  • The 12 Factor Design System - UGAP Engineer's Blog

    デザインシステムについての知見が溜まってきたので、The 12 Factor App のパロディで The 12 Factor Design System というものを考えてみました。 元ネタのThe 12 Factor AppはモダンなWebアプリケーションとしてあるべき姿を12のベストプラクティスにまとめた方法論です。 それを真似て、自身の経験からデザインシステムとしてあるべき姿を12個にまとめてみました。 無理やりなところやコンテキストによるところがあると思いますが、半分ネタ半分気で作りました。 文章の構成などもあえて真似て書いています。 何かの参考になればと思います。 はじめに デザインシステムは次のようなWebサービスやアプリを作り上げるための方法論です。 宣言的なフォーマットを使い、プロジェクトに新しく加わったメンバーが要する時間とコストを最小化する。 UIパーツの依存関係を

    The 12 Factor Design System - UGAP Engineer's Blog
  • 「Rosetta 2」はこうなっていた! - 新・OS X ハッキング!(273)

    少し間が空いてしまったが、決してサボっていたわけではない。「Apple M1」搭載のMacBook Airのレビュー記事を3回にわたり書いているし、これこのとおり、OS Xハッキング!に新ネタを...というわけで、今回は「Rosetta 2」。MacBook Airのレビューでサラリと触れたが(リンク)、より深く掘り下げてみたい。 Rosetta 2の基 Finderを使いアプリの情報ウインドウを眺めてみると、Intel/Catalina環境では見かけなかった「Universal」や「Intel」といった文字列を確認できる。前者はUniversalアプリでx86_64バイナリとARM64バイナリの両方を、後者はx86_64バイナリのみを含むアプリという意味だ。もうひとつ「Appleシリコン」と表示されるアプリもあるが、こちらはARM64バイナリのみということになる。 Universalア

    「Rosetta 2」はこうなっていた! - 新・OS X ハッキング!(273)
  • 無料の SSL 証明書が得られる ZeroSSL を使ってみた

    はじめに 皆さんは ZeroSSL を知っていますか?個人でウェブサイトを運営している皆さんであれば、多くの方は Let's Encrypt を利用されていると思います。 https://letsencrypt.org/ja/ もちろん僕も使っています。僕の様なエンジニアの方であれば SSL の仕組みもおおよそ理解もしているし、コマンドラインの実行方法も知っておられるのでウェブサイトの SSL 証明書を取得する事もそれほど難しい事ではないでしょう。 しかしそれほど詳しくない方が certbot の様なコマンドを使って SSL 証明書を発行するのは割と難しい事です。そこでご紹介したいのが ZeroSSL です。 https://zerossl.com/ ZeroSSL とは ZeroSSL もまだあまり名前が知られていないせいか、Google 検索で「ZeroSSL」を検索すると「ZeroS

    無料の SSL 証明書が得られる ZeroSSL を使ってみた