Losing the imitation game
AI cannot develop software for you, but that's not going to stop people from trying to make it happen anyway. And that is going to turn all of the easy software development problems into hard problems.
- A computer can never be held accountable. Therefore, a computer must never make a management decision.
Programming as Theory Building
Non-trivial software changes over time. The requirements evolve, flaws need to be corrected, the world itself changes and violates assumptions we made in the past, or it just takes longer than one working session to finish. And all the while, that software is running in the real world. All of the design choices taken and not taken throughout development; all of the tradeoffs; all of the assumptions; all of the expected and unexpected situations the software encounters form a hugely complex system that includes both the software itself and the people building it. And that system is continuously changing.
To circle back to AI like ChatGPT, recall what it actually does and doesn't do. It doesn't know things. It doesn't learn, or understand, or reason about things. What it does is probabilistically generate text in response to a prompt.
Syntax Across Programming Languages
You know one language and want to find the corresponding operator or function in another language
sprintf-like
sprintf Awk, C, C++, F#, Maple, Matlab, merd, OCaml, Perl, Perl6, PHP, Pike, Ruby
printf Haskell
% Python, Ruby
Why Do Developers Care About API-First? | Postman Blog
There’s a lot of talk lately about API-first as an approach to design and development. While there are many paths to API-first, usually the people driving this initiative within their organizations have job titles like API architect, API designer, and API platform leader. It makes sense because they are most invested in the efficiency, interoperability, and quality of the organization’s APIs.
Kent C. Dodds’ .filter() Trick Will Change How You Use JavaScript | by Dr. Derek Austin 🥳 | Coding at Dawn | Jun, 2021 | Medium
Kent C. Dodds’ .filter() Trick Will Change How You Use JavaScript. This one-liner uses the Boolean constructor to magically remove all falsy values from an array ✨.
https://twitter.com/kentcdodds/status/1009918457394225152
const plugins = [
isProd ? optimizePlug : null,
isProd ? prodOnlyPlug : null,
!isProd ? testingPlug : null,
usefulPlug,
].filter( Boolean );