TypeScriptを用いた開発では、その型システムを活かしてランタイムエラーを事前に防いだり、実装漏れを防いだりとコードの安全性の向上を図ることができます。 本記事では、個人的に知ったおかげでコードの安全性が増した!と感じたtipsをまとめました。 ※ なお、linterを用いたコードの安全性向上も非常に有効ですが、この記事では主にTypeScriptの型システムに焦点を当てています。 tips集 配列周りのtips まずは配列を扱う際に役立つ、tipsを紹介します。 配列からUnion型を作成する ↓のように(typeof array)[number]で配列の全要素を持つUnion型を作成できます。 const fruits = ["apple", "banana", "lemon"] as const; type Fruit = (typeof fruits)[number]; //
ノートパソコン、充電つなぎっぱなしにしてる? 今すぐ抜いて2024.03.18 19:00663,760 Maxwell Zeff - Gizmodo US [原文] ( そうこ ) デスクに着いているときは、ノートパソコンを充電に繋いでおくべき。いつ移動になってもいいように、常にフルの状態をキープしておくべき。充電ケーブルはなるべく繋いでいた方が、マシンの性能が上がる。 実はそれ都市伝説です…。 充電完了したら充電ケーブルは抜く。これがノートパソコンの正解です。 それなのに、なぜ多くの人が充電しっぱなし状態なのか、専門家に話をききました。カリフォルニア大学サンディエゴ校のアシスタント・プロフェッサーで、電池の劣化について研究をしているKent Griffith氏いわく、フル充電という状態は端末の負担になるといいます。 (充電しっぱなしで)バッテリー100%の状態が何週間、何ヶ月と続いてい
はじめに こんにちは、23卒でバックエンドエンジニアをしているたかしゅんです。 私の所属しているプロダクトではサーバーサイドの開発言語としてGoを採用しております。 チームでGoの勉強会をした際にあまりにもGoの流儀や綺麗な書き方を理解していなかったので、以下の書籍を読みました。 [Go言語 100Tips ありがちなミスを把握し、実装を最適化する] この書籍から得た知見、プルリクエストのレビューで受けたアドバイス、そしてコードレビュー時に意識すべき点などを基に、知識を整理し共有したいと思います。 基礎文法は理解しているけど、実際のプロダクトで何を意識して書けば良いのかわからない方に、少しでも参考になれば幸いです。 1. コード 1.1 不用意にネストしない 可読性の悪いコードには命名、一貫性、書式など様々な原因がありますが、その中の重要な原因の一つとしてネストが関係します。 よくある例と
ここでいくつかのルールとして motion-count-multiplied 例えば10jで十行下へ移動、d2kで上2行を削除など operator-doubled 例えばyy, dd, cc, >>とか、2回繰り返すとカーサーのある行に動作する upper case operator 例えばc->C、d->D, y->Yのように、現在のカーサーから行の最後まで動作するケースと、対になっている(逆の機能を持つ)ケース、例えばp->P, o->O, n->N, a->A, i->I, f->Fなど)に大まかに分けられる exclusive inclusive 例えば、yiw vs yaw, cib vs cabの違いで、テキストオブジェクトの内部(inner)だけか、境界線も含めるか(around) があります。これらのルールは他のプラグインにもよくみられるので、Vim wayに慣れればプラ
Go、Python、Kotlin、Rust、TypeScript の5つの言語について「並列処理、並行処理の手法」というテーマに絞り解説する「並列処理をGo/Rust/Kotlin/Python/JSで解説!思想の違いを体感しよう」。Python編では橘氏が登壇。Pythonで並列処理を行う際の設計方針と、実装上の癖について話します。 西川氏の自己紹介 西川大亮氏(以下、西川):ここからはPython編の「ちょっとしたデータ分析の並列化」というタイトルで、西川から話します。 GOに勤める西川です。今やっているのは、タクシーやハイヤーの営業支援。「お客さんを乗っけていない時間、どこを走ったらいいの?」とか「どういうところで待っていたら注文来やすいの?」というところのナビをする、「お客様探索ナビ」というサービスのいろいろなことをしています。小さなサービスなのでいろいろやっている感じですね。 P
ファイルコピー(というかエクスプローラ)周りの余計なお世話で発生する重さは本当にひどいので、 個人的な覚書を貼っておくので、もしよければ参考にしてほしい。 大変面倒だけど、全て設定すると劇的に早くなる。ためしてみてほしい。 勘違いしている人がやたら多いので追記下の設定はWindowsDefenderを切っているのでありません。WindowDefenderがWindowsDefenderを検索してループに陥る問題に対処しているだけです! システム設定Windows Defender自身を検索して無限ループに陥る問題を解消する - 設定→更新とセキュリティ→Windows セキュリティ→ウイルスの驚異の防止 - ウイルスと驚異の防止の設定→設定の管理 - 除外の追加または削除 - 除外の追加→ファイル - 「C:\Program Files\Windows Defender\MsMpEng.e
何か月か前に話題になっていたIntel N100の中華ミニPCにひかれて、5年以上ぶりに自宅の端末を入れ替えた。Intel N100+メモリ16GB+SSD256GB程+Win11pro付きでお値段2万円強という、信じがたいコスパ。 必ずしも優れているとは言えないスペックでWin11を快適に使うために、買ってから最小限やった設定を書いておく。 ・前提端末OSには粛々とHWの管理だけをしてもらい、「こんな素敵な&便利なWeb機能もあるよ!」的な導線はいらない。TeamsもOutlookも職場で嫌ってほど使っているが、自宅では金輪際使う予定なし。タスクバーのウィジェットもBingへの導線も全部要らない!という人向け。 ※本当はhttps://anond.hatelabo.jp/20191116220232さんのWindows11版の記事が出てればそれで事足りたのだけど、見つけられなかったので投
時雨沢恵一 @sigsawa (聞こえますか・・・、今あなたの脳内に、直接呼びかけています・・・。創作をする人よ・・・、主役級のキャラの名前を、いつも間違えて呼ぶキャラを、一人産み出しておくのです・・・。そして、最後近くの、ここぞ、というシーンで、正しく呼ばせるのです・・・。それだけでグッときます。聞こ文字数 2023-07-19 21:32:13
皆さんこんにちは お元気ですか?私は元気です。 Pythonにおける高速化手法を掲載してみます。 簡単なコード並びに索引のような感じで引けるようなイメージで作成しました。 本日の目次です。 Pythonにおける高速化の必要性 Pythonの高速化 高速化の手順 Profiling 基本的な条件 計測コード Pythonの基本的な書き方部分 rangeよりxrangeを(Python2.7) リストの生成 文字列結合 Import文のコスト 関数呼び出しのコスト ドットを避ける yieldを使う Numpyに関するTips Numpyを使用して基本演算を高速化する Numpyの要素にアクセスする演算をしない Numbaで手早く高速化 その他高速化ツール Cython Dask PyPy 感想並びに展望 参考文献 Pythonにおける高速化の必要性 PythonはC++やJavaと比較すると非
WindowsでVPN接続すると、デフォルトではすべての宛先がVPN経由になる。 それだと相手方の帯域を食うし、使い方次第ではセキュリティ的にもよろしくないので、業務上必要なトラフィックのみVPN経由となるよう、ルーティングを見直すことにした。 手順 すべての宛先でVPNを使わないようにする いったん、外向きの通信すべて、VPNに流さないようにする。 これはWindowsのGUI画面から設定できる。 ネットワーク接続を開く [ファイル名を指定して実行] からncpa.cplと入力する。 該当するVPN接続を選び、右クリックからプロパティを開く。 TCP/IPのプロパティを開く 詳細設定を開く リモートネットワークのGWを使わないようにする デフォルトの設定では、VPN接続中の外向き通信はすべてリモートネットワークのゲートウェイを経由するようになっているので、これを無効にする。 [リモートネ
Contents (Click to expand) ↕️ Design Mode Pretty Print Command Pallet and Super Search Snippets Live Expressions Tracking Changes Console Shorthand Find Unused Code Rendering Panel Network Paint Times Network Timings Inspect Network Requests Performance Identifying Memory Leaks Raw Memory Inspection Test bfcache Full Refresh Lighthouse Page Size Breakdown Record User Flows Advanced User Flow Opera
PHP 8.1へのアップグレードにまつわるまとめ PHP 8.1へのアップグレードには、mbstringにまつわるマニュアルに記述されない後方互換性のない変更が含まれることがあります。そのことを周知するべく、この記事を書くことにしました。 私てきめんは、PHPカンファレンス 2022にて、「治っていくmbstring 令和時代の文字化け」というタイトルでトークしています。以下スライドも参考にしてください。 Major overhaul of mbstringについて PHP 8.1から、Major overhaul of mbstringと呼ばれる、mbstringの大規模改修の内容が反映されるようになりました。困ったことに、RFC(Request For Comments)やChangelog、マニュアルにない内容で、mbstringを多用するPHPユーザーにとてつもない困惑をもたらすこ
会社の中でシェルスクリプトについての話をすることにしたので、このエントリはそのためのものです。 個人的な好みとかもいろいろ入ってしまっているので、そのあたりは取捨選択してください。 なぜ今シェルスクリプトを学ぶのか 公開されているSRE本をマルっとPDF化する SpotBugsのViolationレポートをMerge Requestのコメント投稿する ぼくの互換性についての考え方 何で書くか シェルスクリプトをうまく書くには ShellCheckを使う バッドパターンとその修正 line-by-lineの処理が多い lsを使う ls /directory | grep mystring ls | grep -v 'log$' lsの結果をループさせる 良いシェルスクリプトを書くためのTIPS set -euする 文字列は基本的にクオートする 局所変数にはlocalを使う 定数は読み取り専用
Tweet Pocket 「もし家族が亡くなったら、どんな手続きが必要になるんだろう?」 「葬儀や相続の手続きをすることは知っているけど、実際いつまでにどこでどんな手続きをすればいいの?」 いつかは訪れる身内の死、それとともに発生するのが数々の死亡後の手続きです。 多くの場合、そう何度も経験する出来事ではないため、いざ自分が遺族となったときに「どういった手続きがあるのかわからない」という声をよく聞きます。 この記事では、そのような「身内の死後、遺族となったときにやること」をわかりやすくまとめました。 「死亡後の手続きは、これを参考にしよう!」となるよう、”死後2週間”の手続きに限定して詳細に解説しています。 「死亡後の手続きは多岐にわたり、期限があるものも多く、大切な人を失った悲しみに暮れる間もない…」という実際の多くの感想をもとに、そうならないために、死亡後2週間の手続きについて特化しま
These 12 tips show you how to take better notes in Microsoft OneNote. Today, digital note-taking is as much about skill, as it is about the tool. Everyone takes notes, but many people don’t know how to do it properly. While notes provide a written record of the information you want to remember, the value of note-taking depends on how you paraphrase, organize, and make sense of the material. Whatev
この記事は、Supershipグループ Advent Calendar 2021の7日目の記事になります。 先日、sshを使用したファイル転送が回線速度と比べて異常に遅いという現象に遭遇したので、その際に行った調査を再現しつつ原因や対策について書いてみたいと思います。 要約 OpenSSHはデフォルトでinteractiveなセッションに af21 、non-interactiveなセッションに cs1 をDSCP値としてIPヘッダに設定する フレッツ網はIPヘッダのDSCP値を帯域優先サービスで使用しており、契約に応じて指定された優先度以外が設定されたパケットの転送は保証されない そのため、OpenSSHをデフォルト設定のままフレッツ網で使うと通信ができなかったり、速度低下などの悪影響を受ける可能性がある OpenSSHがDSCP値を設定しないようにするためには、IPQoS noneを設
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く