ADRs are similar, yet the important point is not the format of the design log entry, but it's usage with AI.
with design log, we ask the AI to create the ADR or log entry, but unlike ADR we
1. require the AI to ask question and we answer.
2. require the AI to update the design log after implementation with any drift from the original design.
Both of the above help to make the AI more precise and prevent context drift.
You can find more short little APL games at
https://github.com/jamescprice/131-APL-Games-for-your-Commod...
It's meant to be a little games book in the spirit of the 1980s books of short little games for the 8bits of the era, and a love letter to APL and the Commodore line. Usually each game brings in a new glyph and you can get a feel for how the language works by looking them over. A work in progress.
Ken Iverson's "Notation as a Tool of Thought" paper/manifesto is a great read and speaks to the philosophy behind APL quite well. He makes a pretty good case for how a programming language without ANY keywords, just symbolic glyphs, is expressive, suggestive, and economic. Classic APL existed as a mathematical notation before it was implemented as a living symbolic maths language, and you can sense that heavy mathematical background in all the crazy glyphs being used.
The wikipedia page on floor and ceiling functions (https://en.wikipedia.org/wiki/Floor_and_ceiling_functions) says "Carl Friedrich Gauss introduced the square bracket notation [x] in his third proof of quadratic reciprocity (1808).[3] This remained the standard[4] in mathematics until Kenneth E. Iverson introduced, in his 1962 book A Programming Language, the names "floor" and "ceiling" and the corresponding notations ⌊x⌋ and ⌈x⌉.[5][6]
The wonderful Words and Buttons site has a nice writeup at https://wordsandbuttons.online/apl_deserves_its_renaissance_...
where towards the end they say "Roughly 86% of all the fun you get from APL programming comes from the mysterious symbols and the magic behind them." There's really something to that.
Sometimes it's like you can almost visualize the code flow as a complex optics system, with the iota generator ⍳ emitting a beam of light in the form of integers, then other glyphs acting like beam splitters, prisms, mirrors, diffraction gratings. I've come to see numbers differently.
I have immense respect for the work Dyalog is doing, carrying the commercial APL torch. They make it very easy to take it for a spin, you can give Dyalog APL a try at tryapl.org. Stefan Kruger has an excellent learning page at https://xpqz.github.io/learnapl/intro.html that I highly recommend if you choose to give some time to the Dyalog APL product. Some more excellent food for thought also to be found at https://www.sacrideo.us/is-apl-dead/
Yes, indeed, we use it. Actually, it started it cause we were getting tired of forgetting to remove old code, to refactor code that wasn't great, and just as a means to say good job mate to each other with my colleagues for cool pieces they wrote.
We found it rather fun to use and useful for us so we decided to clean it up and open source it for anyone else to use if they want.
As I understand it, any search engine whose SEO you care about will be loading web pages in a headless browser running JS these days, so depending on JS doesn't make something invisible. In any case, there is not much reason to use 'JS generated sidenotes', and I'm not sure any of the scores of examples I link do so. The sidenotes are part of the document, and get served with the rest of the document. (The ones which rely on JS are only doing so for presentation; the actual sidenotes continue to live in various span or div or aside elements that a search engine should have no problem understanding.)
Unless you have some major counterexample, sidenotes/SEO seems like a non-issue to me which really is that simple: "no".
Having taken part in building the Wix microservices architecture, I have to say that I understand and accept the critique of the article. Microservices is not a magic architecture, it solves some problems with the price of others.
When we stared Wix, we stared as a monolith - at 2006. In 2008 we split this monolith into two services due to different SLA - building websites and serving websites.
In 2011 we stared splitting the monoliths into micro services to solve software delivery pipeline - ability to move fast and scale with number of developers. Today we have about 20,000 deployments of new software every year, with over 1000 developers.
At Wix we are constantly investing a lot to maintain the microservices architecture and make it productive for our developers. We are making tools and utilities to return DRY into microservices architecture (think CDC support, GDPR support, Monitoring support, Scaling, Access Control, etc.).
My takeaways -
* Microservices do not come for free. You have to invest in making it work for you
* When building a startup - build a monolith. Break it down later when you understand what you need.
* We as an industry do not understand how to build micro services. There are a lot of fundamental aspects of microservices that are not commonly known / understood or ready as of the shelf solutions.
How? when you need to build any application with custom graphics or UX, in VB you are gonna writes tons of lines of code, while using CSS you just write 2-3 declarations.
with design log, we ask the AI to create the ADR or log entry, but unlike ADR we 1. require the AI to ask question and we answer. 2. require the AI to update the design log after implementation with any drift from the original design.
Both of the above help to make the AI more precise and prevent context drift.