miniblog.

Lots of polish and neat new features in git 2.20! https://lkml.iu.edu/hypermail/linux/kernel/1812.1/00293.html I like the new 'break' command for rebasing. Easy to explain and easy to use.
The use of the word "lol" is apparently pretty rare now:
Photo
Remarkable to hear that Microsoft is replacing edgeHTML and Chakra with Blink and V8 in Edge! https://techcrunch.com/2018/12/06/microsoft-edge-goes-chromium-and-macos/ As the article comments, by limiting Edge to Windows 10, it couldn't gain enough market share to get many web developers to support it.
AlphaGo decisively beating Stockfish (a state of the art FOSS chess engine): https://www.chess.com/news/view/updated-alphazero-crushes-stockfish-in-new-1-000-game-match There was some discussion about the previous comparison being unfair, so it's interesting to see a match with more setup details.
Untyped programs don't exist: https://www.williamjbowman.com/blog/2018/01/19/untyped-programs-don-t-exist/ Demonstrates a simple theorem, but has a nuanced notion of types as invariants. It discusses the important questions of when we should check types, allowing escape hatches, and whether type checking should be decidable.
Effectively compiling machine learning models by building a source level differentiation analysis on standard Julia syntax: https://julialang.org/blog/2018/12/ml-language-compiler
Lovely talk on type driven development in Idris 2, largely a live demo! https://youtu.be/mOtKD7ml0NU
Interesting (though pessimistic) commentary on the fundamental value of bitcoin: the network is only viable if the value of a bitcoin exceeds the mining cost. https://www.marketwatch.com/story/bitcoin-is-close-to-becoming-worthless-2018-12-03
All the spectre/meltdown hardening techniques have a significant CPU overhead. I imagine CPU manufacturers have had to invest significantly in redesigns recently. Still, the additional overhead might force me to buy new hardware, and I guess others will too.
IPFS is becoming more widely adopted! It does solve a real problem: having a small blog collapse from HN or Slashdot users is silly. It feels rather like a more general solution for a CDN. https://twitter.com/Cloudflare/status/1041674183946764288
@rocx If it's built in to the language and pervasively used, I'd consider Optional<T> to include the null value. However, optional types prevent the mistake, since the compiler checks ☺️
Tons of hobby operating systems exist, but hobbyists have built browsers too. *Emacs has eww *Webkit and Chrome were both born from KHTML, a FOSS project *Servo started as a small research project
I've been thinking more about this viewpoint, and I think both simple kernels and simple browsers are possible for an enthusiastic hobbyist. https://twitter.com/patio11/status/1064394542776934400
Idle thought: you can view a type system as just an abstract interpretation of code. `x = 1` can be abstracted as assuming that x is a number, then checking that numbers are appropriate wherever x is used.
Overhauling the Rust homepage, and a superb discussion of effective writing to sell your ideas amd enable your users: https://blog.rust-lang.org/2018/11/29/a-new-look-for-rust-lang-org.html
The existence of a null value isn't a billion dollar mistake. The issue is when static type systems allow null anywhere. Even some dynamic languages don't have a null value. For example, some lisps only have the empty list, which they use as a null-like value by convention.
Using open source projects has tangible benefits for both companies and their staff:
Photo
Building a unikernel based on standard Linux, no init process, and link time optimisation: https://next.redhat.com/2018/11/14/ukl-a-unikernel-based-on-linux/
Awesome talk on IDE culture, live programming, and ideas that we can take from Smalltalk: https://youtu.be/baxtyeFVn3w
Awesome talk on IDE culture, live programming, and ideas that we can take from Smalltalk: https://youtu.be/baxtyeFVn3w
Showing 41-60 of 657 posts