Elixir v1.20 released! Now officially a gradually typed language: Elixir type checks every single line of code, finding bugs and dead code, without developer overhead (no typing signatures) and extremely low false positives rate. Plus a faster compiler! Links and reports below.
Phoenix LiveView 1.0.0 is finally here! Check the announcement for details https://t.co/3E6NSiXxeV
If you haven't given Elixir/Phoenix a try, you can now get started in seconds by installing Elixir and generating a Phoenix project from a single command:
Agreed. The value of PR descriptions is often in things that are NOT directly inferable from the changes:
- What original problem led to this PR?
- Are there related issues / prior discussions?
- What alternatives have been tried? Does this supersede previous attempts?
- Why are certain seemingly unreasonable choices made? What are the tradeoffs?
AI that generates summary based on the changes of an isolated PR is not really helpful in a meaningful way. Good PR descriptions need not only a holistic understanding of the entire codebase, but even the contribution history of the project. That’s of course harder to do, but I think it’s a possible direction to make it actually useful.
12 years ago when I announced @Ghost, I got the most criticism for this line of my original blog post:
"No corporate arm of the law. Ghost would be free as in Mozilla, not as in Automattic ... Every decision made would be about improving the software, not the bottom line."
Maybe now you can see why I wrote it.
Ghost was very deliberately set up as a single-entity non-profit foundation:
- No investors.
- No commercial entity wheeling and dealing in the background with shady tactics.
- No conflicts of interest around ownership of trademarks & domains.
I don't personally own anything to do with Ghost. The Foundation owns everything, and it has no share capital, so I own zero shares.
If anyone is considering starting a new CMS project and would like any advice, let me know. I'm happy to share the many mistakes we made, and the things I think we got right.
The web needs more independent organisations, and it needs more diversity. 40% of the web and 80% of the CMS market should not be controlled by any one individual.
If you don't like the way things are working, make something new and show the world how much better things can be by setting an example of how they can be done differently.
You don't need permission.
Share your ideas, and see where they take you.
Today, I can tell the little kid who was drawing his own video games on paper, copying screenshots he found in magazines, that we've finally done it.
We made a game, and despite all the years that have passed, it’s still hand-drawn. <3
It's amazing to me that after all this time, almost all media coverage of Telegram still refers to it as an "encrypted messenger."
Telegram has a lot of compelling features, but in terms of privacy and data collection, there is no worse choice. Here's how it actually works:
1/
Your customers’ feedback about what’s most painful & frustrating about your product is typically a lot more trustworthy than their take on what new features you should build.
A corollary to this: don’t view customer feedback as the only input you need for major product success.
"You can take a standard Elixir function and make it asynchronous, persitent, and scale it elastically with a few lines of code 🪄🧙. More on that soon…"
Oban + FLAME = 🚀
#MyElixirStatus
It's very sad that Twitter has corrupted people's algorithm-brains so much that they avoid sharing links 10 replies deep into a conversation.
Links are a fundamental building block of the web.
Here's my take on SDKs, what if instead of tens/hundreds/thousands modules you had, you know, one or two? Check out out this article where I write about this idea with the Stripe API as an example: https://t.co/Xnu7u7wQzu #MyElixirStatus
Elixir livebooks are pretty awesome. They're like Jupyter notebooks, but with sequential state, smart analysis of dependencies between cells, branched sections running in parallel, nice editable widgets, a pipeline debugger, a doctest runner, and more. 😍
@livebookdev
it's probably a good time to say that you should check out @elixirlang! it's an amazing functional language that gives you superpowers, and learning it was one of the best things i've ever done. it helped me understand distributed systems a little better coming from the JS world
@Lethain Even if you aren't growing fast, your software is still subject to bit rot and deprecation. Stuff degrades over time. New bugs and exploits are discovered. Usage patterns shift. People forget things.
The way to counteract this is by regularly updating & refreshing your systems.
React Compiler explained in 1 tweet:
1. It works on every platform that you can run React on
2. It enables you to completely forget about reactivity, and memoizes much more granularly than is possible by hand
3. No new APIs to learn, no rewrites, and incrementally adoptable