Filter
Exclude
Time range
-
Near
Jakarta EE mentorship makes it easier for newcomers to join, learn, and contribute while fostering collaboration across our global community. With one-on-one guidance, mentors help you: 💡 Understand the contribution process 🔧 Get hands-on technical support 🌍 Connect with the broader Jakarta EE ecosystem Learn more: hubs.la/Q047T4yk0 #JakartaEE #JavaEE #Mentorship
2
4
610
Replying to @softwerica
todo ser humano tinha que passar pelo javaEE swing primefaces pra construir caráter
4
227
【Javaエンジニア】募集 教育関連システムの改修プロジェクトにて、設計からテストまでを一貫して担当いただきます。 Javaを用いたWeb開発の実務経験5年以上をベースに、上流工程メインで活躍いただける方を募集中! 顧客折衝やPostgreSQL、JavaEEの知見がある方は即戦力として大歓迎です。対面でのコミュニケーションを重視する現場で、これまでの経験を活かしてプロジェクトを牽引したいプロフェッショナルをお待ちしています。 詳細はDMにて! #エンジニア募集 #Java #システム開発 #上流工程 #WEB開発 #SE #IT案件
2
158
黑马V11版 最新Java高级软件工程师课程-JavaEE精英进阶课 pan.quark.cn/s/d123bd8802db 秋颜《用ChatGPT写爆款文章》 pan.baidu.com/s/1KDyI11jCThI… 3个月成为Python网络爬虫工程师 pan.quark.cn/s/dd26ef77fb5b 黄豆奶爸《AI绘画大师班》 pan.baidu.com/s/14ctrfs22_18…

2
16
1,799
Jakarta EE mentorship makes it easier for newcomers to join, learn, and contribute while fostering collaboration across our global community. With one-on-one guidance, mentors help you: 💡 Understand the contribution process 🔧 Get hands-on technical support 🌍 Connect with the broader Jakarta EE ecosystem Learn more: hubs.la/Q047T3Cw0 #JakartaEE #JavaEE #Mentorship
1
7
545
【4月の入社情報⑦】 30歳エンジニアのMさん(関東) 年収   :490万円(+170万円UP)で確定しました! 前職年収 :320万円 3年在籍で:約554万円(+234万UP)見込み さらに単価交渉で目指す年収:約618万円(+約298万UP) ■スキルセット 経験年数 :5年 技術   :JavaEE,SQL,COBOL 担当工程 :詳細設計~運用保守 ■参画予定案件キーワード Java,C#,Symfoware ■エントリーURL ritsuan.com/entry/ #リツアン入社情報

5
18
1,732
9
10
60
Azul Zulu OpenJDK has joined Docker’s trusted ‘Official Images’ program – a major source for Java developers seeking verified, secure and production-ready Java containers. azul.com/blog/trusted-java-c… @AzulSystems #Java #JavaEE @JakartaEE #JavaDeveloper #JakartaEE #OpenJDK #Zulu
4
6
245
看普通人学AI指南,40多页干货手把手带你从认识AI到搭建知识库。 pan.quark.cn/s/79ec8fb61fd1 拉勾教育 31讲带你搞懂 SkyWalking pan.quark.cn/s/e95ddbab018d 零基础读懂财务报表! pan.quark.cn/s/35f1fd337ef1 乐字节-云日记-JAVAEE王牌入门项目-带源码课件 pan.quark.cn/s/32201a1b2fbb

7
33
3,288
九天菜菜 -机器学习实战 pan.quark.cn/s/86cb5ca5a63d 春节习俗小故事动画,传统年味与文化传承的趣味启蒙 pan.quark.cn/s/48fced7ddf7a 【尚硅谷】韩顺平 - Java数据结构和算法 -带源码课件 pan.quark.cn/s/eca57c57046f JavaEE企业级分布式高级架构师023期 - 带源码课件 pan.quark.cn/s/9c04f33de551

3
1,373
全网付费文章-大佬文集圈 学习先锋 精选研报 2月9日更新 pan.quark.cn/s/05af85ba98ca 【开课吧】JavaEE企业级分布式高级架构师023期 -带源码课件 pan.quark.cn/s/9c04f33de551 iOS Flutter高级进阶班级 -带源码课件 pan.quark.cn/s/f99627e77b0a Oracle软件在主机平台的应用 pan.quark.cn/s/d7ccbb226340

1
1,399
Replying to @Ryo20251222
Claude Codeの方がJavaが得意みたいです。 僕はもともとjavaee( jakartaee)の会社にいたので、Javaはそれなりに理解していますが、最近はRust言語に興味があり、パフォーマンスを求められるところを実装しています。
2
203
#ЛОНГРИД #ПРОГРАММИРОВАНИЕ #ИИ Про выбор языка программирования Особенно для разработчиков на Java Как всегда, это история о политике, крови, грызне, и скудоумных менеджерах Мне всегда казалось, что C# сильно лучше нашей Java (только LINQ expressions чего стоит - именно expressions а не применения типа LINQ-to-objects). А в F# (тоже работает на .NET) есть нормальные провайдеры типов и другая функциональщина. И всё это работает чудесно, а не как Haskell который несколько лет подряд сегфолтился на Windows, и никто это не чинил. Но всё портит маниакальная борьба Microsoft с конкурентами и из-за этого отсутствие экосистемы вне продуктов Microsoft. Это отсутствие конкуренции и деградация. Какой дурак захочет связываться с технологией, из-за которой тебя может назавтра трахнуть создатель этой технологии. На всякий случай, "Embrace, Extend, Extinguish" (EEE, "обнять, расширить, уничтожить") - это не забавная фраза и не инструкция к анальному плагу, а реальная антимонопольная стратегия Microsoft по захвату открытых стандартов. Она описана в судебном деле правительства США против Microsoft, 1998–2001. С Oracle в общем-то так же. Пример: фреймворк изначально назывался Javaslang, но влетел на разбиратльство с Oracle из-за использования слова "Java" в своем названии. Из-за чего авторы визуально перевернули название кверх ногами и получился VAVR. И даже красивый слоган придумали: "vavr - turns java™ upside down". Что не отменяет, что Oracle - контора пидорасов. Но есть нюанс - был один раз в истории особый исторический момент, когда сам Oracle выебали несколько компаний во главе с IBM, и значительный кусок власти у них забрали. И только благодаря этому ивенту Java всё ещё живая и интересная. История там довольно простая и поучительная. Наверное, сейчас уже мало кто помнит, но Java сделала контора Sun Microsystems. И дела у нее шли не очень. Чтобы как-то починить эти проблемы они пытались максимально контролировать свою власть над Java. А какому же программисту понравится, что его любимую игрушку контролируют? Это не понравилось целой индустрии. Так была создана особая свободная и открытая реализация Java под названием Harmony. Не та которая сейчас у Huawei, HarmonyOS, а другая :) Официально всё это проходило под эгидой Apache Foundation, но бэкалось силами разработки лидеров - например, IBM. Важная подробность. Sun придумали хитрую систему, как нагнуть сообщество юридическим образом. Они взяли свою тестовую сюиту TCK (Technology Compatibility Kit) -очень крутую, очень нужную, очень важную технически - на самом деле. Взяли и превратили в оружие. Та штука, которая не проходит тесты из неё - не может называться словом Java. Нельзя написать какую-то опенсорсную реализацию Java, и не пройти половину тестов - к тебе сразу же придут юристы. И всё бы хорошо, ну сделай всё по красоте, пройди тесты. Да вот только, TCK - это закрытый коммерческий продукт, который Oracle раздает только тем, кому посчитает нужным. Когда Oracle купили Sun, практику терроризировать всех через TCK они не оставили, а даже расширили и углубили. Возвращаемся к нашим баранам - Harmony как попытку переизобрести Java. Конечно же, Oracle отказалась предоставить Apache Foundation тестовый комплект TCK , что делало Harmony "не джавой" и приводило к куче юридических последствий. Тем не менее, двигать вперед Harmony было вполние можно, хоть и сложно. Это вызвало конфликт: основная опенсорсная организация в мире, Apache, вышла из оракловского JCP (Java Community Process), а компании вроде IBM, Red Hat и других поддержали бойкот Oracle, требуя открытости Java. К счастью, еще до покупки Oracle, Sun уже провела некоторую работу по превращению Java в опенсорсный проект. В результате, появился проект OpenJDK - это то, что люди сейчас подразумевают, когда говорят слово "Java". Он был уже более открытый и с более нормальными лицензиями (внутри GPL, с нюансами). Когда Oracle пошло на попятную и дало зеленый свет тотальному опенсорсингу OpenJDK, IBM присоединилась к OpenJDK, а Harmony закрыли. OpenJDK стал эдаким псевдостандартом: его код стал стандартной (и единственной реально работающей после смерти Excelsior Jet) реализацией Java-как-рантайма, а его опенсорсные процессы стали рельсами для дальнейшей разработки Java-как-проекта. Немного технических подробностей. Eclipse OpenJ9, Azul Zing/Zulu, Amazon Corretto - всё это живые реализации, но это всё упражнения над форком кода OpenJDK со своими фишками. И все эти организации бегают на очень коротком поводке, любая попытка в индивидуальные супер инновации - нарушение стандарта Java - добро пожаловать к юристам. Замечаение для джавистов: после почившего Excelsior, из всех них самая свободная трактовка идеи - это OpenJ9. Это отдельная реализация JVM, исторически происходящая из IBM J9, компактного рантайма, специально созданного для максимально эффектвного исполнения на девайсах пониженной мощности. А самая раузмная для повседневного применения, особенно вместе со Spring - это Liberica JDK. Про Либерику - это уже некое мое личное мнение, я не стану спорить, если вы найдете преимущества у кого-то еще. В свете общего охлаждения индустрии к Java как технологии, этого вполне хватило. Почему охлаждение? Ну там как бы другие разрабочики технологий на месте не сидели и породили множество других рантаймов. Возможно, не настолько крутых, эффективных, и удобных - но там можно было не иметь дела с Oracle, и в наше безумное время это уже само по себе фича! Процесс опенсорсинга был не простым и не приятным. Основной когда-то фреймворк, Java Enterprise Edition, Oracle зажали на 10 лет. TCK для JavaEE отправился в опенсорс в 2017. И по моим ощущениям, это был какой-то поворотный момент, когда Oracle просто перестали считать Java серьезным бизнесом и спустили всё на тормозах. Настолько вот антиобщественные у них настроения: или это бизнес, или это сообщество, третьего не дано. Тем не менее, Oracle кошмарить разработчиков не бросила, просто по-другому. Иск между Google и Oracle по поводу использования Java API в Android длился около 11 лет и закончился победой Google. Вообще всё существование языка Go - это просто работа над ошибками Google про то, как не иметь дело с Oracle. Изначальный Go это по сути Java без дженериков версии 1.4 (весна 2003 года) с нормальным компиятором в нативный код (в Java появился в 2018 в составе GraalVM, но по сравнению с Go он пока почти всем проигрывает). Как язык программирования Go, все еще хуже Java, хотя они пытаются пройти по ее пути - например, добавили дженерики и улучшили сборщик мусора. Тем не менее, вообще никакого Go могло бы и не быть, если бы Oracle зачем-то не начало это безумное судебное разбирательство на 10 лет длиной. Да, кто-то может сказать, что на самом деле Go - это боль от компиляции C и сложность управления зависимостями в больших кодовых базах, а совсем не Oracle. Я не буду спорить про то, что Go появился бы и без проблем с Java. Я поспорю только с тем, что Go в нашей ветке мультивселенной, и Go в той ветке где Java не было - один и тот же язык. Казалось бы, добро победило? Не совсем. Упаси тебя бог где-то использовать слово Java без согласования. Половина Oracle - это не программисты, а юристы, и ты, вот лично ты - не Google. Ты не сможешь с ними судиться 10 лет. Я очень сильно люблю Java и значительная часть моей жизни была с ней связана. И вся эта грязь очень сильно портит желание людей иметь с этим дело. Есть какой-то момент, когда крови и грызни собирается настолько много, что отмыться от нее очень сложно. Тем не менее, сейчас Java занимаются крутые, адекватные люди. И наверное, она придет к успеху. Будем надеяться. А вот с Microsoft этого так никогда и не произошло. Нет никакого общественного объединения или коммерческого фронта Войск Света и Добра, которое бы умудрилось взгреть все их тёмные практики. Впрочем, и C# не то чтобы какая-то жизненно важная штука, чтобы всем этим заниматься. Когда Java только появлялась, она была единственной и поэтому жизненно важной, а C# уже нет. А приводит это к тому, что экосистема C# - с гулькин хуй. У тебя есть несколько крутых фреймворков имени Microsoft, несколько известных опенсорсных проектов... и всё. Нет такого, что как в Java или JS/Node ты сидишь и час выбираешь, какую бы библиотеку из сотен использовать, чтобы сложить два числа. Rust тоже зашкварился о похожие проблемы. В 2023 году черновик их политики вызвал огромное бурление говн. Например, они запрещали использовать слово "Rust" в названиях crates, библиотек, репозиториев, инструментов для Rust, доменов/поддоменов и софта на Rust без лицензии. Бурление говн было настолько сильным, что заставило Rust Foundation отменить это решение. Но самое главное, что мы из этой истории узнали: в Rust сидят примерно такие же по майндсету чуваки, как в Oracle. Да, они уже научены горьким опытом Oracle и быстрее реагируют на мнение сообщества. Но в голове-то то же самое. Кто знает, что они придумают в следующий раз? Для меня пока что островком свободы кажутся ECMA Script, also known as JavaScript (слово "JavaScript" принадлежит Oracle, там же слово "Java"!!!!!, поэтому джаваскрипт джаваскриптом называть нельзя. Я уже говорил, что Oracle - контора пидорасов?). Несмотря на доминирование Google/V8 и Apple/JavaScriptCore в деле высокопроизводительного JS, вся остальная экосистема - это огромная Вавилонская Башня из проектов настолько разных и никак между собой не связанных, что ты как будто бы глядишь на мир из глаз Доктора Стренджа. И тем не мнее, всё это работает, причем - работает вместе! Внутри одного веб-интерфейса, или внутри одного бэкенда! На все это действительно сложно как-то повлиять корпорациям и внедрить туда свой тоталитарный контроль. Второй островок свободы - это C . Тут есть два нюанса. Первый: C разрабатывается большими плохими зубастыми компаниями. Но их МНОГО. И они разрабатывают всё это огромным комитетом, куда входят все. Если одна компания из многих начнет выпендриваться, то ее тут же сгрызут. Это чудесно, рынок в действии. Второй: сама природа современного C эклектична. По сути, почти каждый участник сообщества может делать всё что угодно, хоть в лес, хоть по дрова. И ему ничего за это не будет ни от каких юристов. Это супер важно: чтобы разработать фичу нужно быть гениальным инженером - и это возможно. Бороться с Oracle и Microsoft в суде - невозможно. Это огромная разница. А еще, нет какого-то человека, который бы знал "весь C " и мог придумать идеально совместимую фичу. После чего объявить себя диктатором, который Знает Как Правильно Нужно. Это задает здоровый тон анархизма. Для меня это самое главное. Не знаю как вам, а для меня наличие диктатуры, какого-то единого Великого Верховного Магистра, который Знает Как Надо - это настолько ужасно и чудовищно, что перекрывает примерно любые другие плюсы. Подчиняться диктатуре можно только если альтернатива - прозябание или смерть. Диктатура противна всему человеческому, а диктаторов совершенно естественно ненавидят. И всем был бы хорош C : и крутых фичей у него намного больше, чем в любом из популярных языков (включая C#). И разработка его ведятся круто и демократично. И работает он быстро. НО СИНТАКСИС - ПОЛНОЕ ГОВНО. До изобретения Perplexity мы даже не могли нормально загуглить программу на C - гугл воспринимал это как мешанину из спецсимволов. И вот какую мысль хочется вкинуть под конец. Мы вступаем в эпоху, в которой люди перестают писать код на Языках Высокого Уровня. Теперь всё за нас пишут роботы. Роботу, в целом, всё равно, на чём писать. Языки типа Java и C#, основная фича которых была в том, что писать на них было комфортно и удобно - должны потерять приоритет и уйти в тень, в тот очень небольшой загончик софта, который все еще будут писать люди. Банки, медицина, космонавтика - всё это будет на Java. Везде, где торгуют не столько софтом, сколько рисками и страхом. И там людям придется продолжать мириться с загонами Oracle. А вот все остальные в скором времени будут писать программы на обычном английском языке. А потом будет Нейролинк и языки станут не нужны. В какой из "языков высокого уровня" превратит нейрость вашу спецификацию зависит уже не от удобства этого ЯВУ для использования, а от конкретных технических характеристик: насколько качественный код генерит нейросеть, как рантайм языка управляет ресурсами, насколько быстра компиляция, насколько быстрые итерации разработки в целом. И может оказаться, что языки будущего - это не Go и не Java, а всеми забытые C /C. Может быть даже, ассемблер. Может быть даже, перфокарты - не обычные, а квантовые. Хорошая новость: никакой из этих языков вам не нужно будет знать сильнее, чем вы сейчас знаете ассемблер и Си. Разработчикам каких-то очень конкретных специальностей, типа "перформанс-инженер", наверное, нужно будет очень изредка забежать и поправить какой-то сложный случайный баг. Но для всех остальных всё напишет нейросеть, и это чудесна. Для соблюдения формальной корректности, нужно явно сказать, что по состоянию на начало 2026 года, утверждение "роботу всё равно, на чём писать" - спорное и скорее неверное. Качество генерации кода сильно зависит от языка (объём тренировочных данных, типизация как костыли для LLM, тулинг для верификации). Например, при написании кода на C у робота точно те же проблемы, что и у человека - он не может уследить за потоком памяти, отчего пишет совершенно неработающую ерунду. Даже Claude Code, даже GrokSuper Heavy. Все это заслуживает отдельного разговора, но размывает скоуп статьи. Напишу отдельно. И самое главное: написание кода через AI на разговорном языке — это настоящая свобода. Разговорный язык не принадлежит какой-то коммерческой компании, которая заставила бы вас говорить только то, что ей нужно. Сделать хорошее техническое решение — сложно, но не продолбать свою свободу может оказаться еще сложнее. Итого: учитесь писать на английском/русском/китайском и внятно излагать свои мысли. Имейте свои мысли, чтобы было чего излагать. В самое ближайшее время это понадобится.
Replying to @1red2black
да, тоже работаю с rust, хотя мой родной бэкграунд — .net
9
35
7,399
Hay dos tipos de desarrolladores web: los que piensan que su aplicación está segura porque validan inputs, y los que ya sufrieron un ataque XSS y ahora codifican como paranoicos. Cross-Site Scripting es esa vulnerabilidad que nunca pasa de moda, que sigue mutando, que se esconde en los lugares menos esperados, y que sigue explotando a los que subestiman el impacto de un simple string malicioso. Si alguna vez pensaste que con filtrar <script> estabas del otro lado, te tengo noticias: no solo estás lejos, sino que probablemente ya estés comprometido. El XSS moderno no es solo una cuestión de insertar código. Es una guerra de contexto, de interpretación del DOM, de manipulación del navegador y de escape de filtros mal implementados. Es meterse en los intestinos del renderizado web para encontrar un punto donde el navegador confíe en un dato y lo ejecute sin pensarlo. Porque eso es XSS: lograr que el navegador ejecute tu código en el contexto de otro. Y esa ejecución puede significar robo de cookies, secuestro de sesiones, explotación de credenciales OAuth, control de formularios, falsificación de interfaces, exfiltración de datos internos y hasta propagación automática a través de usuarios legítimos. La anatomía de un XSS exitoso Para que un ataque XSS funcione, no necesitás un RCE. No necesitás root. Solo necesitás que el navegador procese una variable controlada por vos y que esa variable termine en un sink ejecutable: innerHTML, eval(), document.write(), setTimeout() con strings, iframe[srcdoc], img[onerror], o cualquier punto donde el JavaScript dinámico se ejecute en el DOM. El típico ataque empieza con la inyección: un parámetro mal validado, un campo mal escapado, un comentario que se muestra sin sanitizar. Si ese input entra en la respuesta HTML sin codificar, ya está: tu payload vive ahí. A partir de ahí, el juego es mantenerlo vivo sin ser detectado, hacerlo pasar como legítimo, y que se ejecute sin alertar a los WAFs, sin levantar alarmas en los SIEMs, sin que nadie note que el DOM fue manipulado. Pero lo interesante empieza cuando entendés que no todo XSS es igual. Los reflejados (reflected) son los más conocidos, donde el payload va en la URL y vuelve en la respuesta. Los almacenados (stored) son peores: el payload se guarda en la base de datos y afecta a cada visitante. Pero hay un tercer tipo, más sutil, más elegante: el XSS basado en DOM. En este caso, el payload ni siquiera llega al servidor. El navegador lo genera a partir de un document.location.hash, document.URL, document.referrer u otra fuente controlada por el atacante. Es invisible para los filtros del backend, indetectable para los firewalls, y ejecutable directamente desde un bookmark o una URL falsa. DOM XSS: el bypass definitivo a los filtros tradicionales El DOM XSS representa un salto de paradigma. Ya no estás explotando al servidor, estás explotando cómo el frontend procesa el entorno. Si una página tiene un script que lee el document.location y lo usa directamente para renderizar contenido, estás en el negocio. Porque el servidor nunca verá tu payload. No hay logs. No hay entradas sospechosas en el backend. Todo se ejecuta del lado del cliente, sin intermediarios. Ejemplo básico: <script> var name = document.location.hash.substring(1); document.body.innerHTML = "Hola " name; </script> Ahora accedés a la página con: target.site/profile.html#<imgsrc=x onerror=alert(1)> Boom. Código ejecutado en contexto del sitio. Nada pasó por el servidor. Y si pensás que los frameworks modernos te protegen, te aviso que todos tienen sus escape hatches. dangerouslySetInnerHTML en React. v-html en Vue. bypassSecurityTrustHtml en Angular. Todos pueden ser explotados si el developer los usa mal. Y muchos los usan mal, porque no entienden el riesgo. Porque creen que si el input es interno, está limpio. Spoiler: no lo está. Nunca lo está. Técnicas de evasión: cuando los filtros fallan Todo filtro puede romperse. Y los atacantes ya tienen el máster en evasión de WAFs. Usar codificación de entidades (