GitHub is where people build software. More than 150 million people use GitHub to discover, fork, and contribute to over 420 million projects.

Homepage Please support this book: buy it or donate (Ad, please don’t block.) Deep JavaScript Table of contents
I am hopeful that 2021 will be the beginning of the end for two of my least favorite things – the pandemic and Accelerated Mobile Pages (AMP). For the past few months, I’ve been focusing on Google’s Page Experience update due to launch in May and what it means for publishers. The largest and most talked-about item in the update is Google announcing that sites with passing core web vitals will rece
In December, we announced the beta of Cloudflare Pages: a fast, secure, and free way for frontend developers to build, host, and collaborate on Jamstack sites. It’s been incredible to see what happens when you put a powerful tool in developers’ hands. In just a few months of beta, thousands of developers have deployed over ten thousand projects, reaching millions of people around the world. Today,
一流の人物は例外なく1万時間の練習に打ち込んでいるという「1万時間の法則」は、勉強やスポーツ、芸術などの分野で広く知れ渡っています。プログラマーのBreck yunitsはこの法則を信じて1万時間をプログラミングに費やしたのですが、実際に効果があるのかに自信を持てず、自身が尊敬するプログラマー25人に「あなたはプログラミングに何時間費やしましたか?」といった内容のメールを送ったとのこと。そして、返信があった5人の回答をGitHubに公開しています。 GitHub - breck7/30000hours: How many hours have you spent practicing programming? https://github.com/breck7/30000hours ◆ドナルド・クヌース:5万6000時間 数学者・計算機科学者であるドナルド・クヌース氏は1938年に生まれ、
2019年4月に経済産業省が発表した「IT人材需給に関する調査」によると、2030年には日本で45万人のIT人材が不足するかもしれないという。小学校では2020年からプログラミング教育が必修になるなど、プログラミング人材の育成に対する重要性は年々増し、関心も高まっている。 プログラミング上級者と初心者の違いは、どこにあるのだろうか。プログラミングは人類史において比較的新しい活動で、成果はもちろん、知識を構造化したり重要だと認識するポイントがそのレベルによって違うことは既に報告されている。しかし、脳のどこでこうした違いが発生しているのかは、まだ分かっていないという。 奈良先端科学技術大学院大学の研究チームは、コンピュータプログラムを理解する能力について、個人の習熟度の高さと関連する活動が脳内の複数の領域で見られることを明らかにした。研究結果は、2020年12月14日付けの『eNeuro』に掲
curl’s official birthday was March 20, 1998. That was the day the first ever tarball was made available that could build a tool named curl. I put it together and I called it curl 4.0 since I kept the version numbering from the previous names I had used for the tool. Or rather, I bumped it up from 3.12 which was the last version I used under the previous name: urlget. Of course curl wasn’t created
// Good: choose between two options as appropriate (see below). import * as ng from '@angular/core'; import {Foo} from './foo'; // Only when needed: default imports. import Button from 'Button'; // Sometimes needed to import libraries for their side effects: import 'jasmine'; import '@polymer/paper-button'; Import paths TypeScript code must use paths to import other TypeScript code. Paths may be r
DX(デジタルトランスフォーメーション) Excelを自動化できる!Pythonのモジュール「OpenPyXL」で効率化してみた 現在では表計算ソフトのExcelは企業の業務に欠かせない存在となっていますよね。 ですが、実際に活用していくと不便さを感じる場面もあり、これが業務の足かせとなって効率を下げてしまうことも。ところが今このExcelはプログラミング言語「Python」と組み合わさることで、操作を自動化して業務の効率化を行えるようになっています。 ちなみにどうやって自動化を行うのかというと、ExcelとPythonを結び付けるモジュール「OpenPyXL」を活用していくのです。 今回はこのExcel+Pythonで何ができるのかからExcel+Pythonを実現する「OpenPyXL」の基礎や準備について。また、簡単なExcelファイル、「シート」「セル」の操作方法をそれぞれ説明して
Today’s Go security release fixes an issue involving PATH lookups in untrusted directories that can lead to remote execution during the go get command. We expect people to have questions about what exactly this means and whether they might have issues in their own programs. This post details the bug, the fixes we have applied, how to decide whether your own programs are vulnerable to similar probl
The Architect’s Path (Part 2 - Bookshelf) Growing an architect is different from growing a system. This bookshelf will help. I help architects connect the IT engine room with the executive penthouse through model thinking, decision discipline, and metaphors. I have experienced IT from virtually every angle: startups, Silicon Valley engineering, corporate iT, and consulting. Updated: November 17, 2
「Redux は学習コストが高い」などと言って useState(または useReducer)と useContext を組み合わせ 劣化 オレオレ Redux を作ってしまうのを見かけます[1]。よくないことだと思いますが、気持ちは非常にわかります。Redux エコシステムがそういう気持ちにさせてしまう部分は大いにあります。 Redux は それ単体なら 学習コストは useReducer + useContext と同等であることを示してこの気持ち(誤解)を解かしつつ、なぜそういう気持ちになってしまうのか考察してみます。 まず useState と useReducer の違いを押さえておく 知っている方はスキップしてください。 useState と useReducer は本質的には同等で、どちらもコンポーネントにステート(状態)を持たせる役割があります。次のようなカウンターアプリ
For the last couple of years, DigitalOcean has run Hacktoberfest, which purports to “support open source” by giving free t-shirts to people who send pull requests to open source repositories. In reality, Hacktoberfest is a corporate-sponsored distributed denial of service attack against the open source maintainer community. So far today, on a single repository, myself and fellow maintainers have c
Microsoft has one of the largest C/C++ codebases in the world. All of its core products from Windows and Office to the Azure cloud run on it. Unsurprisingly, since C++ is not a memory-safe language, a lot of memory bugs popup in their codebase, and a lot of time has to be spent fixing them. Last year, Microsoft began looking at alternative programming languages that could help fix their memory saf
Why was “source” chosen? MySQL Asynchronous Replication is a change stream. Each replication configuration has a source and does not imply what role a server should have in the overall database architecture. Therefore, the use of e.g. “primary” does not fit, especially when replication is used to build database architectures topologies including bidirectional replication, multi-tiered replication,
Announcing Perl 7 Jun 24, 2020 by brian d foy image credit: Darren Wood, “7”, on Flickr. \ This morning at The Perl Conference in the Cloud, Sawyer X announced that Perl has a new plan moving forward. Work on Perl 7 is already underway, but it’s not going to be a huge change in code or syntax. It’s Perl 5 with modern defaults and it sets the stage for bigger changes later. My latest book Preparing
『プログラミング英語教本』という本を書きました。本日5/1にその電子版が発売されています。 プログラミング時に触れる英語のドキュメント4種類(ソースコードのコメント、APIリファレンスなど)について解説しています。「プログラミング必須英単語600+」についても詳しく紹介しています。 また、本書はプログラミング英語検定の学習用書籍にもなっています。 書籍ページ: https://globalization.co.jp/publication/programming-english-textbook/ (試し読みがこちらから可能) 現在、電子版を購入できるのは、達人出版会とGoogle Play書籍です(後日Kindleも予定)。 なお紙版は7月中旬の発売を予定しています。アマゾンや楽天ブックスではすでに予約を受け付けているようです。 お読みいただけると幸いです。
TL;DR 一行追加するだけで関数をメモ化するマクロを作った。 成果物はこちら https://docs.rs/memoise/ 背景 同じ引数に対して同じ値を返す関数(いわゆる参照透明だったり数学的だったりな関数)では、 関数の計算結果を保存しておくことによって計算を高速化したりすることができます。 このようなテクニックを関数のメモ化(memoise, memoize, memoization)などと呼びます。 特に再帰的に定義される関数についてメモ化を行うことによって、 動的計画法の実装をシンプルで直感的なものにできたりします。 しかし、関数のメモ化はやりたいことが自明なのにもかかわらず、 毎回手で書いていると微妙に面倒だったり、うっかりメモ化忘れで計算量が爆発してしまったり、 ちょっと辛いところがありました。 特にRustを使っていると、グローバル変数を雑に使うことを許して貰えないの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く