Array.sort を紐解く
Array.sort を紐解く。この記事は JavaScript ネイティブの sort において注意すべき点(例えば、デフォルトの sort メソッドは値を String に変換し、文字コード順でソートするため上記のような結果になるなど)を語るものではない。今回は JavaScript の sort の背後にある実装方式について探っていく。
Array.sort を紐解く。この記事は JavaScript ネイティブの sort において注意すべき点(例えば、デフォルトの sort メソッドは値を String に変換し、文字コード順でソートするため上記のような結果になるなど)を語るものではない。今回は JavaScript の sort の背後にある実装方式について探っていく。
データベースにおいて、クエリ効率を向上させるため、データ量が多いときにはインデックスを作成することでデータベースの検索効率を高速化できる。本記事では PostgreSQL の index について探求する。大半の状況では、直接 `CREATE INDEX` 構文を使用するだけで一般的な開発シナリオに対応できるが、PostgreSQL では実は多くの異なる index type が提供されている。
一つの事実を認識しておこう。table は閲覧するためのものであり、派手なビジュアルのために使うものではない。最近、管理画面でテーブルを扱う要件が増えており、ユーザーにとって使いやすい table をどうデザインするかは一つの挑戦だ。特にデータ件数やカラム数が多い場合、ユーザーは余計な要素に気を取られやすくなる。実のところ、データの提示において table は…
今年の11月11日、大手ECサイトがダブル11のセールで盛り上がっているだけでなく、ちょうど僕の23歳の誕生日でもある。
Medium自体はコードブロックの編集に対応していない。その理由は定かではないが(おそらくエンジニアが主要なターゲット層ではないのだろう)、コードをハイライト表示したい場合、画像を直接貼り付けるか、Gistに貼り付けてから埋め込むかという方法をとることになる。
Expressでの開発時、エラーが発生すると通常はerror pageにそのまま出力されるか、本番環境なら404や500ページに直接リダイレクトされる。これは取り立てて言うほどのことでもないかもしれないが、正直なところ、あのような画面を見てテンションが上がるだろうか? default error…
Reactがついに正式にv16をリリースした。実際のところ公式ブログの紹介はすでにかなり充実している(しかも見やすくて素晴らしい)。本記事はメモとまとめとして、一部の詳細を簡潔に整理したものだ。1. componentDidPatch(error, info) React 16で最も注目すべき機能として、ErrorBoundary機能が追加され、lifecycle…
2015年7月から2016年10月までの1年余り、僕は大学2年の後期に最初のインターンを始めた。それがSudoだ。その頃はちょうどSudoが立ち上がって間もない時期だった(とはいえ公式サイトは大体出来上がっていて、継続的に改善を重ねている最中だった)。参加した時はだいたい13、14人程度しかいなかった。
ようやく最近の面接の振り返りをまとめる時間ができた。まず見えてきたことを総括しておくと:通常、企業の面接ではJavascriptの習熟度ばかりが問われ、その多くはアルゴリズムやプロトタイプチェーンの解説などで、DOMやEventの操作が問われることは滅多にない。CSSはほぼ出題されず、あってもclassやIDの優先順位を判定するような基本問題程度。HTMLの面接は…
Ramda は非常に便利なライブラリだ。lodash や underscore を知っていれば、Ramda を関数型プログラミング(FP)版の lodash と捉えることができる。それらの API には多くの類似点があるが、違いは Ramda 自体が FP の機能を持っている点だ。どんな API でも…
機械学習において、特徴量の数が多すぎると、過学習(overfitting)などの問題が発生する可能性がある…
日本語を独学し始めて3年余りになり、「日語八百屋」という週刊を立ち上げた。Facebookページ、Medium…
現在所属している会社では、ローカルのターミナルで直接 cap staging deploy コマンドを実行している。capistranoは自動デプロイツールとして非常に便利だが、いくつかの問題に直面することが避けられない:チームの全員が同じ環境を持っているわけではない、みんながデプロイした結果、staging環境に今どのブランチがあるのか完全に分からなくなる…
今日は鐵人賽(アイアンマンレース)の最終日だ。結びの部分がうまくまとまらなかった気がするし、時間の都合で十分に紹介しきれなかった部分もたくさんある。
フロントエンドのページでは、要素の高さを揃えるレイアウトが必要になることがよくある。最も直感的な方法は、コンテナ内のすべての要素を float や inline-block に設定することだ。float レイアウトを使う場合、親要素のコンテナを押し広げる(clearfix)必要があるだけでなく、子要素に margin を設定する必要もある…
以前、CSS変数についての僕の考えを書いたことがあった。もともとこのプロパティにはそこまで期待していなかったし、SASSの変数に使い慣れていたせいで、このCSS変数はかえって中途半端なシステムのように思えていた。しかし、もし君も同じように考えているなら、ぜひこの記事を参考にしてみてほしい。
SASSからPostCSSへ。およそ1年前、PostCSSはフロントエンドのエコシステムで急速に人気を集め始めた。いわゆるプリプロセッサとしての特性、プラグインの高度なカスタマイズ性、cssnextの機能を先取りして使える点、そして各種ビルドツール(gulp、webpack…)と組み合わせて手軽に扱える点がその理由だ。
今日はふざけずに、少し真面目な話をしよう。Sudoに来てちょうど1年、1年前にAppWorksに足を踏み入れた自分を振り返ると、ずいぶん遠くまで歩いてきた気がする——とあるベテランインターン生の告白。
Sudoの退勤後の日常番外編——RDリーダーが仕掛けたプランク対決大会。筋肉の発達度合いはコーディングの腕前と正比例するのか?答えは最後に明かされる。
ひとつの広告をきっかけに設立されたg0v。g0vの成り立ちは、実は「経済動能推升方案」(あの史上最も意味不明な広告)にある。この熱血なエンジニアたちがg0vを結成することを決意した。政府のオープン化を推進し、インターネットを通じて大衆へと広めることに注力している。g0vが一躍有名になったのは、318学生運動からだ。hackfoldrの共同編集フォルダの導入やライブ配信ツールによって…