@nisreenmandvi AI cannot replicate the indescribable, unpredictable and special effect that hand made work (by a human) has.
It's not the same.
Today most websites made by relying too much on AI feel the same and do not work as well.
@pizzaboy Yess ! When something is done manually by someone(a human), it's different and special, in a way that’s hard to describe.
Even if AI tries to replicate it, it's not the same.
@theo Every tool from @astral_sh has been excellent so far (have been using mainly uv and ruff).
Just way faster and better experience than anything else that exists in the python ecosystem. Not even close.
@_nicolealonso 100% although the time and effort needed to get good at something always varies from person to person depending on the subject
And the more things you learn the better you become at getting good
@DanielLockyer Some docker images don't even have "latest" as a version, can you believe this ? x)
latest is only very useful for trying out things without looking for "what is the name of the most recent version"
Wished other ai apps were at least trying.
By at least letting the user paste the text, edit it and try to submit it (and then truncating it automatically or splitting it in chunks to make it work).
Instead, it just doesn't work.
Makes a big difference between having an excellent user experience vs never coming back.
@iamanishx@theo@t3dotchat For reference, t3chat limits input size at 32k tokens but the AI models available accepts input sizes around 128k or 256k tokens in general.
Huge difference.
The limit is not AI here, it's the UI.
@theo Mistral's LeChat is great, tried uploading a pdf and most apps didn't work (ChatGPT, Claude, t3chat) except theirs. It recognised all the text and was able to translate, make summaries, reply to questions, etc
all flawlessly
@heyandras Was looking for an S3 compatible open source self hosted solution. Guess I'll have to look somewhere else...
Now thinking of other alternatives for file upload and storage...
It can still remain quite short and simple ;)
How to do the same as in jQuery but in Vanilla JS:
// assuming you already have defined: a = document.querySelectorAll
.bind() => .addEventListener()
$('.class').bind('click', () => console.log('Clicked'));
// vs
a('.class').forEach(el => el.addEventListener('click', () => console.log('Clicked')));
// or without the .forEach if using just .querySelector for a single element instead of .querySelectorAll
.on() => .addEventListener()
// (direct)
$('.class').on('click', () => console.log('Clicked'));
// vs
a('.class').forEach(el => el.addEventListener('click', () => console.log('Clicked')));
// or without the .forEach if using just .querySelector for a single element instead of .querySelectorAll
// or (delegated)
$('.class').on('click', '.child-class', () => console.log('Nested clicked'));
// vs
document.addEventListener('click', e => { const t = e.target.closest('.child-class'); t && t.closest('.class') && console.log('Nested clicked'); });
.ajax() => fetch()
$.ajax({ url: '/api/data', success: console.log, error: console.error });
// vs
fetch('/api/data').then(res => res.text()).then(console.log).catch(console.error);
.each() => .forEach()
$('.class').each((i, el) => console.log(i, el));
// vs
a('.class').forEach((el, i) => console.log(i, el));