Nearly two years ago we entered the Gemini era, and it's changed how people and organizations work, learn, create and get stuff done. Today we're entering the next phase with Gemini 3, our most intelligent model.
Every generation of Gemini has built on the last. In less than two years:
- Gemini 1 showed breakthroughs in native multimodality and its long context window expanded the kinds of information that could be processed.
- Gemini 2 laid the foundation for agentic capabilities and pushed the frontiers on reasoning and thinking, helping with more complex tasks and ideas. And 2.5 was also a step-change in coding capability.
- And today, Gemini 3 combines all of these capabilities so consumers, developers and businesses can bring any idea to life.
Gemini 3 is state-of-the-art in reasoning and is much better at figuring out the context and intent behind your request, so you get what you need with less prompting. It’s our next step in making AI truly helpful for everyone.
Many developers think Lombok is part of the Spring framework.
But the truth is Lombok is not Spring-specific.
It’s a standalone Java library
It works in any Java project, not just Spring Boot
Because in Spring Boot projects, we write tons of DTOs, Entities, Configs, etc. Lombok cuts down the boilerplate there, so it feels like a Spring feature, but that's not true.
Polling Vs Webhooks
- Polling
Polling involves repeatedly checking the external service or endpoint at fixed intervals to retrieve updated information.
It’s like constantly asking, “Do you have something new for me?” even where there might not be any update.
This approach is resource-intensive and inefficient.
Also, you get updates only when you ask for it, thereby missing any real-time information.
However, developers have more control over when and how the data is fetched.
- Webhooks
Webhooks are like having a built-in notification system.
You don’t continuously ask for information.
Instead you create an endpoint in your application server and provide it as a callback to the external service (such as a payment processor or a shipping vendor)
Every time something interesting happens, the external service calls the endpoint and provides the information.
This makes webhooks ideal for dealing with real-time updates because data is pushed to your application as soon as it’s available.
So, when to use Polling or Webhook?
Polling is a solid option when there is some infrastructural limitation that prevents the use of webhooks. Also, with webhooks there is a risk of missed notifications due to network issues, hence proper retry mechanisms are needed.
Webhooks are recommended for applications that need instant data delivery. Also, webhooks are efficient in terms of resource utilization especially in high throughput environments.
--
Subscribe to our weekly newsletter to get a Free System Design PDF (158 pages): bit.ly/bbg-social
Couldn't Agree More!
#Terraform sets up ur infra — like creating servers, networks, firewalls, storage — all the basic building blocks
#Ansible is used to configure what’s already there — like installing apps, setting permissions, starting services, or applying updates
#DevOps
Apache Kafka was born out of a problem. 😉
LinkedIn engineers => faced difficulties in tracking website metrics, activity streams and other operational data.
A team of engineers => led by Jay Kreps, Neha Narkhede and Jun Rao started developing a distributed publish-subscribe messaging system that could handle high-throughput, low-latency data streams.
This system eventually became Apache Kafka.
It was open sourced in early 2011.
The name 'Kafka' was chosen by Jay Kreps.
He named the system after the famous author 'Franz Kafka'. 😊
Kreps was an admirer of Franz Kafka's writing and found the name fitting for a system that dealt with the flow of information.
It's written in Java and Scala.
Later they founded => 'Confluent' (a company) in 2014 to provide commercial support and additional tools for Kafka users.
Read more in the 🧵
𝗦𝗼𝗳𝘁𝘄𝗮𝗿𝗲 𝗔𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲 𝗣𝗮𝘁𝘁𝗲𝗿𝗻𝘀
Software design defines a system's architecture to meet requirements, creating blueprints for development teams. Over time, reusable architecture patterns have emerged that reduce complexity, increase maintainability, and speed development.
The most crucial software architecture patterns are:
𝟭. 𝗟𝗮𝘆𝗲𝗿𝗲𝗱 𝗔𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲: Divides applications into logical layers (Presentation, Business, Data Access) with specific responsibilities. Promotes separation of concerns and easier maintenance.
𝟮. 𝗠𝗶𝗰𝗿𝗼𝘀𝗲𝗿𝘃𝗶𝗰𝗲𝘀: Decomposes applications into small, independent services communicating via APIs. Each implements a single business capability and can be independently deployed, enabling team autonomy and continuous delivery.
𝟯. 𝗘𝘃𝗲𝗻𝘁-𝗗𝗿𝗶𝘃𝗲𝗻: Uses events for asynchronous communication between components. The system doesn't wait for event handling to complete before continuing, making it ideal for real-time applications requiring high scalability.
𝟰. 𝗦𝗽𝗮𝗰𝗲-𝗯𝗮𝘀𝗲𝗱: Uses independent "spaces" as autonomous units across multiple servers. Eliminates single points of failure in high-volume systems and overcomes data bottlenecks and network latency.
𝟱. 𝗠𝗶𝗰𝗿𝗼𝗸𝗲𝗿𝗻𝗲𝗹 (𝗽𝗹𝘂𝗴-𝗶𝗻 𝗮𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲): Provides minimal core functionality with additional services as separate modules. Developers can modify components without impacting core functionality, which is ideal for applications requiring customization.
𝟲. 𝗖𝗤𝗥𝗦 (𝗖𝗼𝗺𝗺𝗮𝗻𝗱-𝗤𝘂𝗲𝗿𝘆 𝗥𝗲𝘀𝗽𝗼𝗻𝘀𝗶𝗯𝗶𝗹𝗶𝘁𝘆 𝗦𝗲𝗴𝗿𝗲𝗴𝗮𝘁𝗶𝗼𝗻): Separates read and write operations into distinct models. Improves performance and scalability in complex domains by optimizing each path independently.
𝟳. 𝗛𝗲𝘅𝗮𝗴𝗼𝗻𝗮𝗹 (𝗣𝗼𝗿𝘁𝘀 𝗮𝗻𝗱 𝗔𝗱𝗮𝗽𝘁𝗲𝗿𝘀): Isolates business logic from external concerns. Allows applications to be driven by various sources and developed independently from runtime dependencies.
Selecting the correct pattern depends on your specific requirements and constraints. Real-world applications often combine multiple patterns to address different aspects of system design.
#technology#softwareengineering#programming
2.2M Followers 433 FollowingAWS is the world's most comprehensive cloud, enabling organizations to accelerate innovation, reduce costs, and scale more efficiently.
47K Followers 117 Following#Istio is an open platform that provides a uniform way to connect, manage, and secure microservices. ⛵️ Join our community: https://t.co/23fWuCAw1W
12K Followers 2 FollowingWorld’s #1 Kubernetes Tools Directory. Follow us for the latest Kubernetes News, blogs, and development of Agentic AI tools and resources.
13K Followers 1 FollowingHand-picked Kubernetes jobs, clear salary ranges and apply directly to companies.
Curated by the @Learnk8s team.
Mastodon: [email protected]
167K Followers 187 FollowingLinux and Open Source Web Portal 🐧
Follow us to
- Get the latest Linux and Open Source news 📰
- Learn Linux tips and tutorials 💡
- Enjoy Linux memes 🤣
131K Followers 558 FollowingTech writer @logrocket, @sitepointdotcom and @refine_dev 📚
Built DevTunes FM (1.8M+ listens) and DevQuizzes (900K+ answers) 🚀
397K Followers 0 FollowingLove Linux/Unix, open source, and programming? Into Sysadmin & DevOps? Follow us! Boost your IT career with daily new tools, apps, and humor ⤵️
13K Followers 6 FollowingDevOps Online is your industry news website. We provide you with the latest news and thought leadership straight from the global world of DevOps.
206K Followers 3K Following🌏 Digital Nomad 🇬🇧🇵🇹🇹🇭
⭐️ GitHub Star of the Year | 👨🏫 GitHub Top Teacher Award
🤓 Developer Advocate @paypaldev
🎙️ Views expressed are my own
52K Followers 1K FollowingDevRel Lead @appwrite 🥑📍🛠️ Tinkering with web apps, cloud and AI tools 🧑💻 📍 👨👩👧👦 Bringing writers together at @blrwritersroom 📝
137K Followers 725 FollowingOfficial Microsoft Azure account for improving the customer experience by connecting the Azure community to the right resources - answers, support, and experts.
340K Followers 850 FollowingFree. Cross-platform. Open source. A developer platform for building all your apps. Official handle of the .NET team at Microsoft.
1.1M Followers 21 FollowingLimitless innovation. ☁️ Follow along for the latest news and resources from the official #MicrosoftAzure team. For help, contact @AzureSupport.