Class Hierarchies? Don't Do That
In theory , JavaScript does not have classes. In practice , the following snippet of code is widely considered to be an example of a “class” in JavaScript:
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 21,819 posts.
In theory , JavaScript does not have classes. In practice , the following snippet of code is widely considered to be an example of a “class” in JavaScript:
We recently explored how wealthy countries (those defined as high-income by the World Bank) tend to visit a different set of technologies than the rest of the world. Among the largest differences we saw was in the programming language Python. When we focus on high-income countries, the growth of Python is even larger…
Cloud printing for retail and food and beverage operations.
Realtime rendering and videogame programming mostly, but I love computer science and visuals in all their forms. This is a notepad of my ideas.
tl;dr annotated AHK scripts here. Anybody who’s spent time with me knows how much I love AutoHotKey, the flat-out best Windows automation tool in the world. Anybody’s who’s tried to use AutoHotKey knows how intimidating it can be. So to help with that, I’m sharing (almost) all of my scripts along with extensive…
Jamie Zawinski is what I would call a duct-tape programmer. And I say that with a great deal of respect. He is the kind of programmer who is hard at work building the future, and making useful thin…
For the last ten years or so of working on Bundler, I’ve had a wish rattling around: I want a better dependency manager. It doesn’t just manage your gems, it manages your ruby versions, too. It doesn’t just manage your ruby versions, it installs pre-compiled rubies so you don’t have to wait for ruby to compile from…
Writing Well-Documented Code - Learn from Examples
The benefits of getting to grips with Vim are immense in terms of editing speed and maintaining your “flow” when you’re on a roll, whether writing code, poetry, or prose, but because the learning curve is so steep for a text editor, it’s very easy to retain habits from your time learning the editor that stick with you…
This long post presents programming in a different light than what is commonly considered. We will look at cognitive aspects of interacting with code.
A complete list of SQLite releases in a single page and a chronology are both also available. A detailed history of every check-in is available at SQLite version control site .
A complete list of SQLite releases in a single page and a chronology are both also available. A detailed history of every check-in is available at SQLite version control site .
It’s official: Ferrocene is ISO 26262 and IEC 61508 qualified! You can even find the certificate in TÜV SÜDs certificate database. This means we achieved qualification for the open source Ferrocene toolchain. Ferrocene 23.06.0, based on Rust 1...
Here’s a straightforward benchmark. Time how long it takes to run ls ( a* ) n b in a directory with a single file named a 100 , compared to running ls | grep ( a.* ) n b . Superscripts denote string repetition and parentheses are for grouping only, so that when n is 3, we’re running ls a*a*a*b in a directory…
I have a hobby. Whenever I see the comment // this should never happen in code, I try to find out the exact conditions under which it could happen. And in 90% of cases, I find a way to do just that. More often than not, the developer just hasn’t cons…
This year, we released the 1st official version of our API. Our API versioning scheme allows us to providing apps with stable behavior and predictable timelines.
News, updates, and best practices for developing apps on Google Cloud Platform.
In this second post of our three-part series, we build a ledger for a Venmo clone by applying the accounting principles we learned in Part I.
In numerical linear algebra we are concerned with solving linear algebra problems accurately and efficiently and understanding the sensitivity of the problems to perturbations. We describe seven si…
We’ve observed agents discovering progressively more complex tool use while playing a simple game of hide-and-seek. Through training in our new simulated hide-and-seek environment, agents build a series of six distinct strategies and counterstrategies, some of which we did not know our environment supported. The…
I love Ruby! I’ve used it every day for years and I’m not sick of it yet. It’s an easy language to love: it’s expressive, flexible and syntactically beautiful ; it has a unique combination of useful features like mixins , metaclasses and blocks ; it comes with a useful core library and comprehensive standard library …
Libsodium is now 13 years old!
Here we are at the beginning of 2019 and I’m engaged in yet another discussion on the merits (or lack thereof) of keeping all of an…
Last time, we looked at how Scrum has become the de facto definition of Agile, and how it is uniquely lacking in technical practices compared to the other methodologies that were involved in creating the Agile manifesto. This lack of technical good practices and craft causes some obvious
When Java was first introduced, mainstream programming languages mostly either compiled to standalone executables (e.g. C/C++, COBOL), or else ran in an interpreter (e.g. Perl, Tcl). For many programmers, Java’s need for both a bytecode compiler and a runtime interpreter was a shift in thought. The compilation model…
Slides and videos explaining a functional approach to error handling
After needing to do a deep dive on the venv module (which I will explain later in this blog post as to why), I thought I would explain how virtual environments work to help demystify them. Why do virtual environments exist? Back in my the day, there was no concept
An exploration of the evolution and meaning of the Forth programming language and its context in history.