Fuck you, Mozilla.
1,799 karma · joined January 25, 2011
email: richter@(domain).net
Fuck you, Mozilla.
(running it since 9mo on my Pixel 8)
Fun thing, customers find the new version (htmx/django-livecomponents) to be more responsive than the old version (react+REST). New version is less lines of code and easier to hack on die to fewer context switching.
Give htmx a try, it's worth a shot!
The site is full of dark patterns.
Maybe think twice before putting a 40MB GIF on a website?
Regarding b), yes there are good reasons for prepared statements. I won't go into your argument "for scalability" (premature optimization cough) but cached query plans aren't perfect either: data and data typologies change, and so does the optimal query plan. See https://blog.soykaf.com/post/postgresql-elixir-troubles/ for a blog post about Elixir/Phoenix/Ecto users being bitten by that.
> I wonder if the person who wrote this understands SQL to sufficient depth. Not saying either way, just asking.
I did not write the IHP code, just the above comment. But I've read many of CJ Date's books and have a good grasp on the relational model, and of SQL too. I simply don't see things as black/white, there are certain queries where I do prefer prepared statements and functions, or PL/pgSQL even, then there are ones where I use an external .sql file to keep things tidy. But most of the time (especially in the user facing part of a web app) I like my ORMs or SQL DSLs.
IHP is supposed to become the Django/Rails/Phoenix of Haskell.
I've been using Django professionally for since 2013, but have started using IHP a couple of weeks ago. It's still quite early but with surprisingly few rough edges, i.e. the developer ergonomics are much better than I expected. It has great documentation that is improving rapidly (as opposed to many other Haskell libraries, which provide little more than API docs or even just the typed function definitions) and offers a refreshing take on database management and migrations.
Some of its killer features:
- HSX, a JSX-like template language that looks like HTML while providing type safety
- Auto live reloading without the need to setup anything
- Documentation with examples: it lets you query the database without learning about monads
- it defines |> for you ;-)
- type-safe, composable SQL queries:
projects <- query @Project
|> filterWhere (#userId, userId)
|> filterWhere (#deleted, False)
|> orderBy #createdAt
|> fetchThe previous episode was as good as expected, and I can't wait to listen to the latest one. It's a bit sad that I work from home, I'd love to have to commute tomorrow so I could listen to it on the train...
The ideas, the writing, the chosen music, and especially the production quality is top notch. I don't know how he does it or where he's got his budget from, but this sounds better and more professional than almost all other podcasts, totally on par (or even better) with content produced by BBC etc.
If Black Mirror went back to its pre-Netflix roots and had an audio version, THIS would be it!
Material Design was released end of 2014.