Как я писал раньше, я пишу маленькую библиотечку, которая собирает библиотеки в npm пакеты.
И это позволило мне очень сильно возненавидеть webstorm и vscode. У сегодня весь день один вопрос: Как? Как вы умудряетесь проигрывать Cursor по DX и качеству подсказок?
WebStorm тут вообще днина. Их inline режим - это насмешка. Через него вообще ничего невозможно делать. Он подсказывает чушь. Из него код фиг скопируешь. Даже вставлять код в chatgpt и копировать ответ обратно более комфортно и продуктивно. Я не знаю в каком мире живут ребята из jetbrains, но это ужас. Маленькие типовые задачи уже спокойно на 95% делаются в Cursor через LLM, а живя(и платя) в WebStorm ты вынужден страдать.
С VSCode же ситуация нифига не лучше. Да, они сделали новый инлайн режим, но это полный пососач. У меня в 60% ситуаций возникает "ой, мы не смогли ответить, пылызы переформулируй запрос". И это после интеграции к ним Claude.
Я прямо очень разочарован. Такое чувство, что Microsoft и JetBrains тупо не хватает человека, который запустит Cursor и их редактор рядом и покажет как он решает одну и ту же задачу. Я не удивлюсь, если через года 3-4 JetBrains вообще обанкротится с таким подходом. И это прямо даже обидно, так как я плачу им и сижу невылозно на их продуктах с 2015 года. И такой тупой конец. Просто не могут осилить скопировать DX курсора. Слов нет
И это позволило мне очень сильно возненавидеть webstorm и vscode. У сегодня весь день один вопрос: Как? Как вы умудряетесь проигрывать Cursor по DX и качеству подсказок?
WebStorm тут вообще днина. Их inline режим - это насмешка. Через него вообще ничего невозможно делать. Он подсказывает чушь. Из него код фиг скопируешь. Даже вставлять код в chatgpt и копировать ответ обратно более комфортно и продуктивно. Я не знаю в каком мире живут ребята из jetbrains, но это ужас. Маленькие типовые задачи уже спокойно на 95% делаются в Cursor через LLM, а живя(и платя) в WebStorm ты вынужден страдать.
С VSCode же ситуация нифига не лучше. Да, они сделали новый инлайн режим, но это полный пососач. У меня в 60% ситуаций возникает "ой, мы не смогли ответить, пылызы переформулируй запрос". И это после интеграции к ним Claude.
Я прямо очень разочарован. Такое чувство, что Microsoft и JetBrains тупо не хватает человека, который запустит Cursor и их редактор рядом и покажет как он решает одну и ту же задачу. Я не удивлюсь, если через года 3-4 JetBrains вообще обанкротится с таким подходом. И это прямо даже обидно, так как я плачу им и сижу невылозно на их продуктах с 2015 года. И такой тупой конец. Просто не могут осилить скопировать DX курсора. Слов нет
👎11👍7💩5🤡5🤔2👀1
В последний месяц я активно занимаюсь вопросами совместимости и всё больше убеждаюсь, что "конфиги — это зло". Причём дело не в том, что людям не нужно подстраивать что-то под себя, а в том, что многие оставляют настройки по умолчанию или копируют из другого проекта, полагаясь на принцип "ну, если работает, зачем менять". Оказалось, что конфиги — это действительно сложно: нужно разбираться и тратить время, чтобы понять, как всё устроено. А зачем париться, если и так работает?
Так вот, к сути. Если вы используете в проекте, который как-либо собирается, typenoscript и у него в конфиге прописано
https://devblogs.microsoft.com/typenoscript/announcing-typenoscript-5-0/#--moduleresolution-bundler
https://www.typenoscriptlang.org/tsconfig/#moduleResolution
На удивление, даже в текущем моём проекте стоит
Так вот, к сути. Если вы используете в проекте, который как-либо собирается, typenoscript и у него в конфиге прописано
moduleResolution: Node или же Node10, то попробуйте изменить его на bundler. Я думал со всех сторон и не понял зачем Node/Node10 может быть нужно в современном мире. Очень сильно сомневаюсь, что вы отпрыск ljharb'a, которому нужна нода 0.4.https://devblogs.microsoft.com/typenoscript/announcing-typenoscript-5-0/#--moduleresolution-bundler
https://www.typenoscriptlang.org/tsconfig/#moduleResolution
На удивление, даже в текущем моём проекте стоит
moduleResolution: Node, который мне пару раз стрелял в колено. Но так как мне было лень разбираться как оно работает, я попросту откатывал изменения. Не будьте как я. Старайтесь понимать как у вас работает код.Microsoft News
Announcing TypeScript 5.0
Today we’re excited to announce the release of TypeScript 5.0! This release brings many new features, while aiming to make TypeScript smaller, simpler, and faster. We’ve implemented the new decorators standard, added functionality to better support ESM projects…
👍20🤡3💩2
За последнюю неделю я пользовался гуглом ровно 1 раз. 1 раз за 7 дней.
Это просто гиганский сдвиг лично для меня. Если раньше про программистов говорили: самый главный навык - это умение гуглить, то сейчас, наверное, это пользоваться нужной LLMкой в нужное время.
Я полностью пересел на:
- https://www.perplexity.ai, когда мне нужно что-то загуглить. Теперь мне не нужно специально писать какие-то специальные запросы, удалять союзы, писать инфинитивы и делать прочие пассы руками, чтобы поисковик меня понимал. Я просто ищу на естественном языке что мне требуется;
- https://claude.ai - это основной мой генератор текста. Любого текста. Нужно написать письмо? Иду туда. Нужно написать код? Тоже туда. Нужна консультация по каким-то фундаментальным вещам - аналогично;
- http://chatgpt.com - но иногда лимиты у клауди заканчиваются. В таком случае я перехожу в чатгпт. Это тоже самое, только с худшим качеством, но безлимитно.
И самое главное: это всё доступно бесплатно! Я потратил ровно 0 центов на то, чтобы пользоваться сервисами выше. Я уверен, что у сервисов выше начнутся проблемы с бизнес моделью, если ими начнут пользоваться все люди мира, как они делают сейчас с гуглом. Но для меня гугл как поиск практически умер.
Вот так и произошла тихая революция. Старые инструменты, которые основаны не на LLM понемногу вымирают. Я даже впервые подумал обновить телефон на последний айфон до того как моя текущая трубка пришла в негодность - ровно из-за добавления apple ai в их продукты. В современном мире слишком много мусорной информации, чтобы обрабатывать её самостоятельно. Уведомления, куча писем в почте и т.п. И LLM являются прекрасным решением для упрощения жизни.
Это просто гиганский сдвиг лично для меня. Если раньше про программистов говорили: самый главный навык - это умение гуглить, то сейчас, наверное, это пользоваться нужной LLMкой в нужное время.
Я полностью пересел на:
- https://www.perplexity.ai, когда мне нужно что-то загуглить. Теперь мне не нужно специально писать какие-то специальные запросы, удалять союзы, писать инфинитивы и делать прочие пассы руками, чтобы поисковик меня понимал. Я просто ищу на естественном языке что мне требуется;
- https://claude.ai - это основной мой генератор текста. Любого текста. Нужно написать письмо? Иду туда. Нужно написать код? Тоже туда. Нужна консультация по каким-то фундаментальным вещам - аналогично;
- http://chatgpt.com - но иногда лимиты у клауди заканчиваются. В таком случае я перехожу в чатгпт. Это тоже самое, только с худшим качеством, но безлимитно.
И самое главное: это всё доступно бесплатно! Я потратил ровно 0 центов на то, чтобы пользоваться сервисами выше. Я уверен, что у сервисов выше начнутся проблемы с бизнес моделью, если ими начнут пользоваться все люди мира, как они делают сейчас с гуглом. Но для меня гугл как поиск практически умер.
Вот так и произошла тихая революция. Старые инструменты, которые основаны не на LLM понемногу вымирают. Я даже впервые подумал обновить телефон на последний айфон до того как моя текущая трубка пришла в негодность - ровно из-за добавления apple ai в их продукты. В современном мире слишком много мусорной информации, чтобы обрабатывать её самостоятельно. Уведомления, куча писем в почте и т.п. И LLM являются прекрасным решением для упрощения жизни.
Perplexity AI
Perplexity is a free AI-powered answer engine that provides accurate, trusted, and real-time answers to any question.
👍26💯4🤡3🗿3💩2❤1✍1👌1🍌1
Почти что каждая документация забывает описывать самую главную штуку напротив фич: это причина почему эта фича была добавлена и какие проблемы решаются. И даже не важно к какому продукту документация. Некст, нода, редакс? Везде будет только описание фич.
А у меня в мозгу есть суровый баг. Зачастую я не вижу связи между задачами и возможностями инструмента, даже если я знаю и про возможности, и про то как решаются задачи.
И я даже могу сходу привести пример подобного: зачем нужны inlineSnapshot в jest/vitest? Есть идеи? Вот я знал о наличии подобных штук, но никогда не применял, так как не видел смысла. И даже более, я начал в штыки воспринимать снепшоты, так как куча людей начали их использовать для тестирования интерфейсов.
А в реальности эта штука сверхудобна, когда у вас есть детерменированный output, который вы корректно руками описать не можете. К примеру, проверка ошибок тайпскрипта. Или же проверка на отсутсвие ошибок.
В моём же случае мне нужно было тестировать выхлоп моего сборщика библиотек. И пока мне напрямую не ткнули носом, что в этом кейсе можно было использовать инлайн снепшоты - мне это даже в голову не приходило.
Пишите в документации не только "что умеет", но и "зачем умеет". Это очень сильно упрощает жизнь.
А у меня в мозгу есть суровый баг. Зачастую я не вижу связи между задачами и возможностями инструмента, даже если я знаю и про возможности, и про то как решаются задачи.
И я даже могу сходу привести пример подобного: зачем нужны inlineSnapshot в jest/vitest? Есть идеи? Вот я знал о наличии подобных штук, но никогда не применял, так как не видел смысла. И даже более, я начал в штыки воспринимать снепшоты, так как куча людей начали их использовать для тестирования интерфейсов.
А в реальности эта штука сверхудобна, когда у вас есть детерменированный output, который вы корректно руками описать не можете. К примеру, проверка ошибок тайпскрипта. Или же проверка на отсутсвие ошибок.
В моём же случае мне нужно было тестировать выхлоп моего сборщика библиотек. И пока мне напрямую не ткнули носом, что в этом кейсе можно было использовать инлайн снепшоты - мне это даже в голову не приходило.
Пишите в документации не только "что умеет", но и "зачем умеет". Это очень сильно упрощает жизнь.
👍26💯4💩1🤡1
Ну и небольшое воскресное напоминание насколько люди могут использовать ваши штуки по-своему даже в самых мелочах. Они даже название по-своему переиначат.
😁4🤔2🤡2👍1💩1
https://www.jetbrains.com/grazie/
Мне время от времени приходится балакать и писать иноземною мовою, в которой я не сказать что силён, то я пользуюсь grammarly, которая мне весьма и хорошо помогала. Правда у граммарли есть одна особенность - она капец дорогая: 144 доллара в год при покупке на год.
Но если вы считали, что у jetbrains с AI очень плохо, то это не правда. У jetbrains есть проблемы только с js/ts и прочим фронтенд кодом. А вот с текстом он работает весьма хорошо. На уровне граммарли. И даже доступен бесплатно. И даже если платить, то получишь и jetbrains AI и их правилку текста. И это за 100 долларов(На 44 доллара дешевле). Так что, возможно, jetbrains всё же получит от меня деньги, правда не за IDE, а за возможность писать буковы другим людям.
Пока в этом году я прихожу к экономии в 300+ долларов на подписках:
- отписка от grammarly(+144 бакса)
- отписка от jetbrains All Products Pack(+175 долларов)
- возможно подпишусь на jetbrains AI(-100 долларов).
А у вас сколько трат на всякие AI тулы?
Мне время от времени приходится балакать и писать иноземною мовою, в которой я не сказать что силён, то я пользуюсь grammarly, которая мне весьма и хорошо помогала. Правда у граммарли есть одна особенность - она капец дорогая: 144 доллара в год при покупке на год.
Но если вы считали, что у jetbrains с AI очень плохо, то это не правда. У jetbrains есть проблемы только с js/ts и прочим фронтенд кодом. А вот с текстом он работает весьма хорошо. На уровне граммарли. И даже доступен бесплатно. И даже если платить, то получишь и jetbrains AI и их правилку текста. И это за 100 долларов(На 44 доллара дешевле). Так что, возможно, jetbrains всё же получит от меня деньги, правда не за IDE, а за возможность писать буковы другим людям.
Пока в этом году я прихожу к экономии в 300+ долларов на подписках:
- отписка от grammarly(+144 бакса)
- отписка от jetbrains All Products Pack(+175 долларов)
- возможно подпишусь на jetbrains AI(-100 долларов).
А у вас сколько трат на всякие AI тулы?
🤡11👍4💩2
https://vc.ru/ai/1675484-polzovateli-claude-poluchili-vozmozhnost-nastraivat-stil-otvetov-chat-bota
Тут пролетела мимо меня интересная новость, которая напомнила мне крутую штуку, которая есть у чатгпт.
Так сложилось, что я не очень дружелюбен со всякими иноземными мовами, в список которых входит и английский в том числе. По этой причине я почти везде перешел на английский. Но есть засада: современные инструменты слишком хорошо понимают кривой язык. Гораздо лучше людей.
И у чатгпт есть прямо киллер фича для такой ситуации: можно описать как тебе нужно именно отвечать. Причём это доступно и для бесплатного тарифа.
Промпт со скриншота закинул в комментарий
Тут пролетела мимо меня интересная новость, которая напомнила мне крутую штуку, которая есть у чатгпт.
Так сложилось, что я не очень дружелюбен со всякими иноземными мовами, в список которых входит и английский в том числе. По этой причине я почти везде перешел на английский. Но есть засада: современные инструменты слишком хорошо понимают кривой язык. Гораздо лучше людей.
И у чатгпт есть прямо киллер фича для такой ситуации: можно описать как тебе нужно именно отвечать. Причём это доступно и для бесплатного тарифа.
Промпт со скриншота закинул в комментарий
👍22🔥5💩3❤🔥2🤡2
https://github.com/nodejs/node/pull/55217
В следующем миноре node@22 ожидаем require(esm) без флага. Оно уже смержено в мастер.
Смерть cjs всё ближе и ближе.
В следующем миноре node@22 ожидаем require(esm) без флага. Оно уже смержено в мастер.
Смерть cjs всё ближе и ближе.
GitHub
[v22.x] backport unflagging of --experimental-require-module and related fixes/refactorings by joyeecheung · Pull Request #55217…
This backports the following PRs that are related to the unflagging of --experimental-require-module:
module: remove bogus assertion in CJS entrypoint handling with --import #54592
module: refator...
module: remove bogus assertion in CJS entrypoint handling with --import #54592
module: refator...
🔥5🤡2🗿2💩1
Старые апи.
Каждый раз, когда я сталкиваюсь с чем-то кривым и плохо спланированным в браузерах, то понимаю что это что-то из эпохи IE11 или раньше.
Сейчас я работаю над аналитикой на сайте и удивляюсь насколько плохо спроектирован sendBeacon. Если вкратце что это такое: этот метод когда-нибудь отправит данные по урлу, который мы передаём туда. Всё, максимально примитивно.
И эта примитивность плоха. В идеале, я хотел бы чтобы sendBeacon батчил и отправлять данные на сервер, когда пользователь не взаимодействует со страницей. Но этого нет - дока на mdn рекомендует делать это самостоятельно:
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/sendBeacon#sending_analytics_at_the_end_of_a_session
И самое неприятное то, что я не могу сделать всё это руками в юзерспейсе: requestIdleCallback попросту отсутсвует в Safari. В итоге, для примитивной аналитики нам нужно костылить кучу кода.
Каждый раз, когда я сталкиваюсь с чем-то кривым и плохо спланированным в браузерах, то понимаю что это что-то из эпохи IE11 или раньше.
Сейчас я работаю над аналитикой на сайте и удивляюсь насколько плохо спроектирован sendBeacon. Если вкратце что это такое: этот метод когда-нибудь отправит данные по урлу, который мы передаём туда. Всё, максимально примитивно.
И эта примитивность плоха. В идеале, я хотел бы чтобы sendBeacon батчил и отправлять данные на сервер, когда пользователь не взаимодействует со страницей. Но этого нет - дока на mdn рекомендует делать это самостоятельно:
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/sendBeacon#sending_analytics_at_the_end_of_a_session
И самое неприятное то, что я не могу сделать всё это руками в юзерспейсе: requestIdleCallback попросту отсутсвует в Safari. В итоге, для примитивной аналитики нам нужно костылить кучу кода.
MDN Web Docs
Navigator: sendBeacon() method - Web APIs | MDN
The navigator.sendBeacon()
method asynchronously sends an HTTP POST request containing a small amount of data to a web server.
method asynchronously sends an HTTP POST request containing a small amount of data to a web server.
👍6💩1🤡1
Где-то год назад я поражался насколько людей легко пробить, используя утечки Яндекс.Еды или других крупных компаний. Но меня успокаивало то что я чуток доверяю Яндексу и понимаю, что они закроют эту дырень. Но то, что данными людей торгуют просто в открытую и это легально - это прямо удивительно для меня:
https://habr.com/ru/companies/timeweb/articles/861510/
Причём, кмк, это касается не только РФ, но и как минимум Казахстана. https://b2b.kcell.kz/ru/product/direct-marketing
Всё больше убеждаюсь и убеждаюсь, что
а) сервисам жизненно необходимо иметь поддержку, которая осуществляется не только по номеру телефона. Хотя бы почту. Просто чтобы не дарить своего клиента конкурентам или разводилам;
б) Жизненно необходимо сидеть через kill-switch VPN, чтобы тебя не мог таргетить твой провайдер.
Не стесняйтесь использовать https://developers.cloudflare.com/1.1.1.1/encryption/dns-over-https и прочие технологии, которые мешают вас трекать
https://habr.com/ru/companies/timeweb/articles/861510/
Причём, кмк, это касается не только РФ, но и как минимум Казахстана. https://b2b.kcell.kz/ru/product/direct-marketing
Всё больше убеждаюсь и убеждаюсь, что
а) сервисам жизненно необходимо иметь поддержку, которая осуществляется не только по номеру телефона. Хотя бы почту. Просто чтобы не дарить своего клиента конкурентам или разводилам;
б) Жизненно необходимо сидеть через kill-switch VPN, чтобы тебя не мог таргетить твой провайдер.
Не стесняйтесь использовать https://developers.cloudflare.com/1.1.1.1/encryption/dns-over-https и прочие технологии, которые мешают вас трекать
👍9🤡2🤯1💩1
Зависимости
package.json - это место, где мне всегда нужно лезть в доку, так как я критически не могу угадать по названию что делает тот или иной ключ.
А так как я пишу бандлер для либ, то это бесит просто донельзя.
Из последнего: мне нужно описать список пакетов, с которыми может работать моя либа. Т.е. эти пакеты могут существовать, а могут и не существовать. Я справедливо предположил, что нужно использовать "optionalDependencies". Но после релиза ко мне начали приходить пользователи со словами: "а почему у меня устанавливается бабель и тс, хотя я их не ставлю?".
Оказалось, что optDeps - это как deps(т.е. нужно ставить), но установка зависимостей не падает, если поставить зависимость не удаётся. Да, об этом написано в документации. Но кто её читает перед использованием?
И да, это весьма удобно в некоторых редких ситуациях. К примеру, таким макаром Vite ставит нативные зависимости: перечисляются зависимости для всех платформ, и поставятся только те, которые подходят для текущей машины. Остальное просто упадёт и проигнорируется.
В моём же случае понадобилось описать мои зависимости в peerDeps и проставить флаги в peerDepsMeta.
Хорошо, конечно что есть такая возможность, но то что это делается не так очевидно и требует в 2 раза больше строк - бесит. Хотя этот кейс на порядки более частый чем optDeps.
package.json - это место, где мне всегда нужно лезть в доку, так как я критически не могу угадать по названию что делает тот или иной ключ.
А так как я пишу бандлер для либ, то это бесит просто донельзя.
Из последнего: мне нужно описать список пакетов, с которыми может работать моя либа. Т.е. эти пакеты могут существовать, а могут и не существовать. Я справедливо предположил, что нужно использовать "optionalDependencies". Но после релиза ко мне начали приходить пользователи со словами: "а почему у меня устанавливается бабель и тс, хотя я их не ставлю?".
Оказалось, что optDeps - это как deps(т.е. нужно ставить), но установка зависимостей не падает, если поставить зависимость не удаётся. Да, об этом написано в документации. Но кто её читает перед использованием?
И да, это весьма удобно в некоторых редких ситуациях. К примеру, таким макаром Vite ставит нативные зависимости: перечисляются зависимости для всех платформ, и поставятся только те, которые подходят для текущей машины. Остальное просто упадёт и проигнорируется.
В моём же случае понадобилось описать мои зависимости в peerDeps и проставить флаги в peerDepsMeta.
{
"peerDependencies": {
"react": "^17.0.0",
},
"peerDependenciesMeta": {
"react": {
"optional": true
},
}
}
Хорошо, конечно что есть такая возможность, но то что это делается не так очевидно и требует в 2 раза больше строк - бесит. Хотя этот кейс на порядки более частый чем optDeps.
👍18🤡4💩3
https://github.com/copilot
Тут MS добавил copilot для гитхаба, который умеет искать по гитхабу.
Правда он тупой и особо не помогает в сложных сценариях, но хотя бы ищет по документации.
P.S.Россияне, есть ли у вас возможность его использовать без VPN? В РФ и прочих запрещённых странах не доступно. Плюс, видимо, требуется покупка github copilot
Тут MS добавил copilot для гитхаба, который умеет искать по гитхабу.
Правда он тупой и особо не помогает в сложных сценариях, но хотя бы ищет по документации.
P.S.
👍4💩3🤡3🤬2
Воскресный юморок
https://x.com/UnseenJapanSite/status/1865557220857151961
Тут аспирантура в Японии в одном из университетов похоже что устала от засилия китайцев, поэтому зафорсила бан своей страницы в материковом Китае.
Так что если вы не хотите платить за геоip и хочется отключить доступ к сайту в Китае, то просто напишите "Площадь Тяньаньмэнь" в keywords, и Китай вас сам забанит
P.S. если живёте в Китае, то не удивляётесь что мой канал там забанен
https://x.com/UnseenJapanSite/status/1865557220857151961
Тут аспирантура в Японии в одном из университетов похоже что устала от засилия китайцев, поэтому зафорсила бан своей страницы в материковом Китае.
Так что если вы не хотите платить за геоip и хочется отключить доступ к сайту в Китае, то просто напишите "Площадь Тяньаньмэнь" в keywords, и Китай вас сам забанит
P.S. если живёте в Китае, то не удивляётесь что мой канал там забанен
🙉13🤡6❤2👍2😁1💩1
Forwarded from <divelopers>
CSS Wrapped 2024
Команда Chrome DevRel запустила CSS Wrapped 2024. Это лендинг с обзором новых возможностей CSS, выпущенных в Chrome (и не только) в этом году. Можно считать это итогами года для CSS.
В CSS появилось 17 новых возможностей:
-
- Анимация
- Exclusive Accordion
-
- Anchor Positioning
-
- View transitions
- Scroll-driven animations
- Scroll snap events
- Наследование свойств в
-
- @property
- Popover API
- @starting-style
-
-
-
Глядя на этот список и отслеживая новинки для публикации в этот канал, я впечатлён развитием CSS в этом году. Не помню такого количества фич раньше. Осталось дождаться хорошей поддержки всего этого. Тут я тоже настроен позитивно, о чём я уже упоминал. А пока предлагаю перейти на сайт CSS Wrapped 2024 и ознакомиться с демками всех новых возможностей. Особенно через последнюю версию Chrome, в которой все они поддерживается.
На самом сайте при этом во всю используются новые возможности CSS, поэтому можно поизучать исходники.
Команда Chrome DevRel запустила CSS Wrapped 2024. Это лендинг с обзором новых возможностей CSS, выпущенных в Chrome (и не только) в этом году. Можно считать это итогами года для CSS.
В CSS появилось 17 новых возможностей:
-
field-sizing- Анимация
height: auto, calc-size() и interpolate-size- Exclusive Accordion
-
::details-content- Anchor Positioning
-
scrollbar-color и scrollbar-width- View transitions
- Scroll-driven animations
- Scroll snap events
- Наследование свойств в
::backdrop-
light-dark()- @property
- Popover API
- @starting-style
-
ruby-align-
paint-order-
CSSNestedDeclarationsГлядя на этот список и отслеживая новинки для публикации в этот канал, я впечатлён развитием CSS в этом году. Не помню такого количества фич раньше. Осталось дождаться хорошей поддержки всего этого. Тут я тоже настроен позитивно, о чём я уже упоминал. А пока предлагаю перейти на сайт CSS Wrapped 2024 и ознакомиться с демками всех новых возможностей. Особенно через последнюю версию Chrome, в которой все они поддерживается.
На самом сайте при этом во всю используются новые возможности CSS, поэтому можно поизучать исходники.
CSS Wrapped 2024
Join the Chrome DevRel team and a skateboarding Chrome Dino on a journey through the latest CSS launched for Chrome and the web platform in 2024.
👍14🔥6❤1💩1🤡1👀1
Forwarded from БлоGнот
GitHub запустил бесплатную версию Copilot — теперь все 150 млн разработчиков на платформе получат доступ к 2000 автодополнений кода и 50 чат-сообщений в месяц при использовании VS Code. Достаточно просто авторизоваться через личный GitHub-аккаунт.
Бесплатная версия предлагает выбор между моделями Claude 3.5 Sonnet от Anthropic и GPT-4o от OpenAI. Можно задавать вопросы по коду, получать объяснения существующего кода, искать баги и вносить правки в несколько файлов одновременно. Также доступны сторонние агенты Copilot и возможность создавать собственные расширения.
Copilot Chat теперь доступен прямо из панели управления GitHub и работает с бесплатной версией. А для студентов, преподавателей и мейнтейнеров опенсорс-проектов сохраняется неограниченный бесплатный доступ к Copilot Pro.
Хороший подарок на праздники, хотя и с ограничениями. И сильный ход в конкуренции с форками VS Code с платными подписками — как Cursor или недавно запустившийся Windsurf от Codeium.
https://github.blog/news-insights/product-news/github-copilot-in-vscode-free/
Бесплатная версия предлагает выбор между моделями Claude 3.5 Sonnet от Anthropic и GPT-4o от OpenAI. Можно задавать вопросы по коду, получать объяснения существующего кода, искать баги и вносить правки в несколько файлов одновременно. Также доступны сторонние агенты Copilot и возможность создавать собственные расширения.
Copilot Chat теперь доступен прямо из панели управления GitHub и работает с бесплатной версией. А для студентов, преподавателей и мейнтейнеров опенсорс-проектов сохраняется неограниченный бесплатный доступ к Copilot Pro.
Хороший подарок на праздники, хотя и с ограничениями. И сильный ход в конкуренции с форками VS Code с платными подписками — как Cursor или недавно запустившийся Windsurf от Codeium.
https://github.blog/news-insights/product-news/github-copilot-in-vscode-free/
The GitHub Blog
Announcing 150M developers and a new free tier for GitHub Copilot in VS Code
Come and join 150M developers on GitHub that can now code with Copilot for free in VS Code.
🔥17👍2❤1🤡1
Почему на клавиатуре цифры идут как 1...90, а не 0...9?
Под праздники хочется иногда понаркоманить и посмотреть почему наш мир так нелогично устроен.
Вот почему цифры имеют именно порядок 1234567890?
Для этого нужно чуток заглянуть в историю. Не секрет, что наша клавиатура напрямую была перенесена с пишущих машинок, поэтому пора посмотреть что происходило у них. А у них, так как это сложное аналоговое устройство, очень сильно экономились клавиши.
И у первых машинок цифровой ряд был ещё проще нашего: 23456789. Как набирать 1 и 0 спросите вы? Очень просто: I(заглавная i) и O(заглавная o). Замена этих цифр на буквы для тогдашнего времени было оправданным. Каждая клавиша усложняла конструкцию и увеличивала стоимость машинки.
Но мир развивается и требования растут. Плюс бухгалтеры начинают использовать букву О и ноль вперемежку, из-за чего возникает необходимость отдельной клавише для нуля. И начинают появляться пишущие машинки с номерным рядом 234567890, так как 023456789 выглядит странно. А вместо единицы можно использовать строчную L. И никаких разночтений не будет.
И уже с прогрессом добавили единицу. А ноль, из-за того что привычки, переносить в начало не стали.
А теперь вопрос на засыпку. Символы, которые вводятся через shift+цифра на пишущих машинках были такими же как и у нас сейчас на кливиатуре. Внимание, вопрос: как вводить восклицательный знак(shift+1)?
Ответ:конечно же точка-бекспейс-апостроф. Бекспейс во времена пишущих машинок перещал каретку на символ влево, а не удалял его. Как вы себе представляете удаление символов в аналоговом мире?)
Картинки как выглядели клавиатуры, кстати, в комментариях
Под праздники хочется иногда понаркоманить и посмотреть почему наш мир так нелогично устроен.
Вот почему цифры имеют именно порядок 1234567890?
Для этого нужно чуток заглянуть в историю. Не секрет, что наша клавиатура напрямую была перенесена с пишущих машинок, поэтому пора посмотреть что происходило у них. А у них, так как это сложное аналоговое устройство, очень сильно экономились клавиши.
И у первых машинок цифровой ряд был ещё проще нашего: 23456789. Как набирать 1 и 0 спросите вы? Очень просто: I(заглавная i) и O(заглавная o). Замена этих цифр на буквы для тогдашнего времени было оправданным. Каждая клавиша усложняла конструкцию и увеличивала стоимость машинки.
Но мир развивается и требования растут. Плюс бухгалтеры начинают использовать букву О и ноль вперемежку, из-за чего возникает необходимость отдельной клавише для нуля. И начинают появляться пишущие машинки с номерным рядом 234567890, так как 023456789 выглядит странно. А вместо единицы можно использовать строчную L. И никаких разночтений не будет.
И уже с прогрессом добавили единицу. А ноль, из-за того что привычки, переносить в начало не стали.
А теперь вопрос на засыпку. Символы, которые вводятся через shift+цифра на пишущих машинках были такими же как и у нас сейчас на кливиатуре. Внимание, вопрос: как вводить восклицательный знак(shift+1)?
Ответ:
Картинки как выглядели клавиатуры, кстати, в комментариях
👍20💩1🤡1
UX или как Яндекс заскамил меня на 3к рублей.
Для меня новогодним открытием стало что в Яндекс.Еде кнопочка "оставить у двери" является синонимом "подарить посылку курьеру", потому что поддержка просто моментально встала на сторону курьера и послала меня лесом. Без разбирательств, без всего.
- Нет посылку у соседей?
- Нет
- Ну, извините, не может отследить, так что до свидания.
И даже пофигу на деньги. Меня поражает, что в компании на 10к-15к программистов не нашло ни одного человека который попал в ту же самую историю. Потому что "догфудинг" - это основа разработки. Ты должен потреблять то что разрабатываешь.
Тут же не только своим не пользуются, но и конкурентов совсем не трогают. Давайте опишу как это выглядит в uber.eats: Тебе после выполнения заказа приходит уведомление с фото, которое сделал курьер и телефон курьера. И в случае если фото не совпадает с твоей дверью, то ты отправляешь фото реальной двери в поддержку и тебе возращают деньги.
У Яндекса же вообще 0 информации. Вот вообще нет ничего.
Для меня новогодним открытием стало что в Яндекс.Еде кнопочка "оставить у двери" является синонимом "подарить посылку курьеру", потому что поддержка просто моментально встала на сторону курьера и послала меня лесом. Без разбирательств, без всего.
- Нет посылку у соседей?
- Нет
- Ну, извините, не может отследить, так что до свидания.
И даже пофигу на деньги. Меня поражает, что в компании на 10к-15к программистов не нашло ни одного человека который попал в ту же самую историю. Потому что "догфудинг" - это основа разработки. Ты должен потреблять то что разрабатываешь.
Тут же не только своим не пользуются, но и конкурентов совсем не трогают. Давайте опишу как это выглядит в uber.eats: Тебе после выполнения заказа приходит уведомление с фото, которое сделал курьер и телефон курьера. И в случае если фото не совпадает с твоей дверью, то ты отправляешь фото реальной двери в поддержку и тебе возращают деньги.
У Яндекса же вообще 0 информации. Вот вообще нет ничего.
🤡15😢8💩4👍2🤮2