ok time’s up
here’s the deal with server actions
if you’re excited about them you’re wrong
if you’re mad about them you’re wrong
let’s do this
unfortunately @t3dotgg was right - the key thing the haters are misunderstanding is that NextJS is a backend framework
in your head think about it like express or any other http server - you wouldn’t be surprised if you could return html and do a database call right next to it
except it’s a better express because it lets you build all kinds of complex interactive clients via React
fundamentally there’s nothing wrong with this - you’ve been doing it forever in every other language, just never with this kind of focus on the frontend bits
but sorry nextjs fans you’re wrong too for dismissing people’s worries about “separation of concerns”
the only real job you have as a programmer is encapsulation - figuring out what details to hide and what to expose
and because this is your one job, of course you’re all terrible at it
forcing a hand rolled API layer at least guaranteed some level of thought and blast zone for refactoring
with that gone, doing the wrong thing just got a lot easier
it’s why in past generations, the frameworks had some encapsulation ideas built in (to varying degrees of being useful)
all the acronyms, MVC, MVVM, DDD yes can be overkill but the root ideas exist for a reason
https://t.co/GATDGb5Ia8 had these ideas baked in, elixir’s phoenix has a tutorial about bounded contexts right at the beginning, PHP only got lambos once Laravel nudged you into a stricter structure
are they perfect? no. but they’re a hell of a lot better than whatever you’re about to come up with given that NextJS has no philosophy on this problem at all
so a lot of you are about to repeat all the same mistakes we’ve seen a generation ago if you don’t slow down
Just found my new favorite app → https://t.co/CdlTqYzeOo
Create beautiful animations of your code snippets just by typing them + adding a frame to the timeline 🤯
Built with @remotion by the amazing @dparksdev
Could we stop comparing raw models (llama, stable diffusion,...) with APIs (gpt4, claude,...). Most APIs probably include a lot of engineering tricks and even several models under the hood chained or MOEd together so these are not the same things at all and can't be compared.
🆕 The End of Finetuning
https://t.co/PknLZsk5I0
"The right way to fine-tune language models... is to actually throw away the idea of fine-tuning. There's no such thing. There's only continued pre-training."
— @jeremyphoward, who created ULMFiT with @seb_ruder back in 2018!
now on @latentspacepod
Andrej Karpathy is a legendary researcher who helped start OpenAI and created Stanford's first deep learning class.
@karpathy's advice on how to learn AI:
(1) 10,000 hours of deliberate practice will make you an expert. You can iterate as you work. Only compare yourself to the past, not to others.
(2) Don't worry about making mistakes. You build intuitions on what is useful vs. not useful- they are not dead work.
(3) Teach to strengthen your understanding and find gaps in knowledge. Similar to "If you can't explain it to a six-year-old, then you don't understand it yourself" - Albert Einstein.
This maths book is trending on Hacker News!
I took a quick look and realized how great of a book this is to learn how to think mathematically.
It's 700 pages long and very approachable compared to other maths books.
https://t.co/Ra2EtO3ET9
Expounded a bit more on some of the various thought process on how you manage different workloads in Postgres. Biggest takeaway, put different workloads in a different DB, connect them via FDW 💯 - https://t.co/KoRPUGWn87
Not just in the race: the Mercedes was clipping in Q3 as well!
(Clipping: losing speed despite 100% throttle as the battery gets drained🪫)
Correlated to:
-Higher drag
-Lower ICE power
-Worse ERS system
VER gained lots of time in each DRS zone! (highlighted in yellow) #F1
This is a baby GPT with two tokens 0/1 and context length of 3, viewing it as a finite state markov chain. It was trained on the sequence "111101111011110" for 50 iterations. The parameters and the architecture of the Transformer modifies the probabilities on the arrows.
E.g. we can see that:
- state 101 deterministically transitions to 011 in the training data, so the probability of that transition becomes higher (79%). Not near 100% because we only did 50 steps of optimization.
- state 111 goes to 111 and 110 with 50% probability each, which the model almost learns (45%, 55%).
- states like 000 are never encountered during training, but have relatively sharp transition probabilities, e.g. 73% of going to 001. This is a consequence of inductive biases in the Transformer. One might imagine wanting this to be 50%, except in a real deployment almost every input sequence is unique, not present in the training data verbatim.
Not really sure where I was going with this :D, I think it's interesting to train/study tiny GPTs because it becomes tractable to visualize and get an intuitive sense of the entire dynamical system. Play with here: https://t.co/8jdceMLpqy
I wrote my first survey paper on equity risk premiums (ERP) in October 2008, and have updated it every year since. My 16th update for 2023 is now available for download here: https://t.co/Z3dNaJw1qa. It is long & boring. So, the summary in linked tweets...