changelog.com
transcripts
Our great sponsors
changelog.com | transcripts | |
---|---|---|
12 | 15 | |
2,669 | 451 | |
0.9% | 1.6% | |
9.4 | 9.8 | |
3 days ago | 6 days ago | |
Elixir | JavaScript | |
GNU General Public License v3.0 or later | Creative Commons Attribution Share Alike 4.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
changelog.com
-
Ask HN: How does your CI/CD stack look like today?
Another https://dagger.io fan here. Have been using it since late 2021 to continuously deploy a Phoenix app to Fly.io: https://github.com/thechangelog/changelog.com/pull/395. Every commit goes into production.
This is what the GHA workflow currently looks like: https://github.com/thechangelog/changelog.com/blob/c7b8a57b2...
FWIW, you can see how everything fits together in this architecture diagram: https://github.com/thechangelog/changelog.com/blob/master/IN...
-
Fly.io Postgres cluster went down for 3 days, no word from them about it
I really like the work that you're doing Thomas, this is the right approach. FWIW, https://fly.io/blog/carving-the-scheduler-out-of-our-orchest... is one of my favourite posts on your blog.
For everyone else reading this, we have been running https://changelog.com on Fly.io since April 2022. This is what our architecture currently looks like: https://github.com/thechangelog/changelog.com/blob/master/IN...
After 15 months & more than 100 million requests served by our Phoenix + PostgreSQL app running on Fly.io, I would be hard pressed to find a reason to complain.
- What Phoenix Elixir Tutorial do you want to see?
- Any good and updated open source phoenix project
- Code repositories that help you to become a better Elixir programmer
-
Complete, Production-Ready Phoenix Reference Applications
Changelog.com
- Looking for recommendation of OS phoenix app to look at
-
Metaprogramming in Elixir
I see this criticism a lot but I don't think it has anything to do with macros specifically and more so to do with lack of familiarity with Elixir. I've felt the same way about Django being magic because I had trouble following the class hierarchy. It makes a lot more sense now because I'm more familiar with Python and Django. But even today I'll be looking deeper at something and ask WTF it's doing. In that respect, Elixir codebases are easier to me. The module depth seems "shallower" and I don't have to disambiguate between what behavior is caused by class inheritance or an imported function.
When I first tried to use Elixir several years ago Ecto.Schema [0] seemed complex and magical, but then I came to realize it's just converting module attributes to runtime code. There is not really that much complex macro logic going on.
>This also leads to cryptic errors where you get an error in non existant lines of code.
When was the last time you used Elixir? This isn't a problem I can recall having in the last 4 years or so of using Elixir.
>following the control flow in Phoenix is like a maze because of all the macro substitutions.
Can you clarify what you mean by this? A specific case as to where this happened for you would help. Phoenix's use of macros is actually pretty light [1] except for some very low level stuff. You can even see how frequently a developer will use macros in Phoenix by searching `__using__` in the codebase [2]. It's not used as much as people think. The majority is for views and controllers and only to provide a very thin layer of support on top of your regular use of code. As an example, the "macro magic" in Phoenix.Controller is just handling some basics for giving a layout and view to Plug and handling fallback actions for exceptions. You could do the plug calls manually and I think it would be safe to not use any macros in your controller code.
Another familiarity issue with the language (and any language really) is understanding what is meaningful in a stack trace and what isn't. And the likely cause of the error in the first place. Is it syntax? Is it mistyping a variable? Is a function just used improperly? (wtf is init_p_do_apply and why does it show up in every stacktrace?) You're juggling all these different issues - learning a new paradigm, a new syntax, not knowing how to extend things. It's obviously going to be a little overwhelming and, if not strictly required, we might just pick a different language that we're more familiar with.
[0]: https://github.com/elixir-ecto/ecto/blob/master/lib/ecto/sch...
[1]: https://github.com/thechangelog/changelog.com/blob/master/li... (not mine, I just go here to show the most frequent use of macros in Phoenix)
[2]: https://github.com/phoenixframework/phoenix/search?q=__using...
-
The new changelog.com setup for 2020
changelog.com used to be WordPress, then became a Phoenix app because it needed features that were hacky to implement & then manage in WP. It's more of a podcasting platform these days rather than a CMS.
The code in this repo tells the truth about what it is, and even shows how it works: https://github.com/thechangelog/changelog.com
transcripts
-
Fly.io Postgres cluster went down for 3 days, no word from them about it
- While experimenting with machines, after many creations & deletions, one volume could not be deleted. Next day, the volume was gone.
That's about it after 15 months of running production workloads on Fly.io.
We mention about our Fly.io experience often in our Kaizen pod episodes, which we publish every ~2 months: https://changelog.com/topic/kaizen. For anyone curious, this is the episode in which we announced the migration: https://changelog.com/shipit/50. There is a detailed PR which goes with it: https://github.com/thechangelog/changelog.com/pull/407. We've been talking about our migration plan from apps v1 (Nomad) to apps v2 (flyd) recently: https://changelog.com/friends/2#transcript-138
I'm sorry to hear that many of you didn't have the best experience. I know that things will continue improving at Fly.io. My hope is that one day, all these hard times will make for great stories. This gives me hope: https://community.fly.io/t/reliability-its-not-great/11253
Keep improving.
-
ceva aplicații care să mă ajute să fiu la curent cu programming/tech news? Începătoare aici. Bonus dacă au și opțiunea de widget. Mulțumesc!
https://changelog.com/ https://softwareengineeringdaily.com/ https://www.devopsbulletin.com/
- The Story of Heroku
- Code repositories that help you to become a better Elixir programmer
-
What are some good YouTube channels or podcasts that talk about the CS world?
Changelog (main, Go Time, Ship It)
-
Your Roadmap to Become a DevOps Engineer in 2022
Join Developer community forums like dev.to, Hashnode, Dzone, DevOps subreddit, Stackoverflow, DevOps StackExchange, Changelog, etc DevOps is taking the center stage and as we have mentioned before, it is becoming the epitome of software development. DevOps engineers are one of the highest-paid professionals in the world and this is the demanding tech job currently around the world. DevOps is a good career path and a proper plan and approach will get you a good job but once you get into it, it is highly recommended to always keep learning since the DevOps space is always evolving and new tools are emerging day by day. BTW, sometimes it can be difficult to get hired as a DevOps engineer without any prior work experience or knowledge of different tools and automation techniques, we at KodeKloud have come up with the KodeKloud Engineer to help you gain free DevOps work experience by solving real DevOps problems and challenges, with which you can get hired for DevOps role. Sign up for Free here.
-
Does anyone know of any good podcasts that are coder/programmers just talking shop? I am looking preferably for C# or C++, but any is fine really.
I haven’t had much luck finding programming podcasts involving ecosystems outside of JavaScript. That said, my top JS pick is JS Party. Also good tech/ coding related are The Changlog and Corecursive.
- Podcasts für Programmierer
-
Podcasts?
Changelog
-
How do you keep up with the developer ecosystem?
Personally I check Hacker News for some brain candy around once a day. I also read Lobsters for a slower moving but equally more thorough stream of tech news. Podcasts are an equally great source of information about what's happening. I like to listen to random episodes on the Changelog master feed.
What are some alternatives?
phoenix-liveview-counter-tutorial - 🤯 beginners tutorial building a real time counter in Phoenix 1.7.7 + LiveView 0.19 ⚡️ Learn the fundamentals from first principals so you can make something amazing! 🚀
awesome-elixir - A curated list of amazingly awesome Elixir and Erlang libraries, resources and shiny things. Updates:
phoenix-chat-example - 💬 The Step-by-Step Beginners Tutorial for Building, Testing & Deploying a Chat app in Phoenix 1.7 [Latest] 🚀
gossip-glomers - My solutions to the Glomers Challenge: a series of distributed systems challenges.
ex_chain - Simple Markov Chain written in Elixir
hexpm - API server and website for Hex
stylelint - A mighty CSS linter that helps you avoid errors and enforce conventions.
feedx - Generic feed adding social features to current applications.
Lobsters - Computing-focused community centered around link aggregation and discussion
stranger - Chat anonymously with a randomly chosen stranger
cluster-api-provider-hetzner - Kubernetes Cluster API Provider Hetzner provides a consistent deployment and day 2 operations of "self-managed" Kubernetes clusters on Hetzner.