Gary Craig

1.3K posts

Gary Craig banner
Gary Craig

Gary Craig

@GaryCraigDub

Dublin, Ireland Katılım Mart 2009
489 Takip Edilen136 Takipçiler
Gary Craig
Gary Craig@GaryCraigDub·
@Ross_maybs I blame the lads on the scooters 👀🤣 10 years cycling everyday been on the deck 3 times, 2 of which were my own fault
English
0
0
3
34
Gary Craig
Gary Craig@GaryCraigDub·
@rustyrockets @TheNotoriousMMA I think you need a bigger sample size than a couple of tweets and the media coverage of the recent trouble. The centre getting is what has made Ireland successful and it needs to remain that way. You're in danger of being as polarising as the political parties you're criticizing
English
0
0
0
126
Russell Brand
Russell Brand@rustyrockets·
Why I reckon Conor McGregor (@TheNotoriousMMA) has a reasonable chance of getting elected if he stands for the presidency 🇮🇪
English
552
725
4.5K
768K
Raul Junco
Raul Junco@RaulJuncoV·
After reading a dozen articles, I still had questions. That's why I created this manual. Event Bus vs Message Queue vs Message Broker. Event Bus Designed for publishing events to many subscribers, Publish-Subscribe (Pub-Sub), One-to-many. The publishers and subscribers don't need to know about each other. High level of decoupling! Generally, the systems consume messages as they arrive instead of storing them. Does not guarantee delivery. When to use it: - Real-time notifications across many subscribers - Situations where many services need to react to specific events Examples: Inventory System: Notify other services when a product is out of stock. Monitoring Systems: Alert other departments when the system exceeds a certain threshold. Message Queue Designed to hold messages until a consumer service can process them. Use Point-to-Point or Producer-Consumer communication model. One-to-One. The sender delivers the message and waits for an acknowledgment. When to use it: - Decoupling producer and consumer services - Asynchronous processing of tasks Examples: Order Processing: Queue orders for one-by-one processing. Data Ingestion: Collect data at high velocity and process it when possible. Message Broker A robust system that includes the features of both Event Bus and Message Queue. Pub-Sub and Point-to-Point. Can be one-to-one, one-to-many, or many-to-many. When to use it: - Complex data routing scenarios. - Many communication patterns within a single application. - Transformation and aggregation of messages. Examples: Multi-service Orchestration: Coordinate tasks among various microservices using complex routing rules. Have you used any of them? Share your war stories.
Raul Junco tweet media
English
10
83
438
61.4K
Nelson Djalo | Amigoscode
Nelson Djalo | Amigoscode@AmigosCode·
6 API Architectural designs You Must Know 1. REST 🌐   Representational State Transfer - REST is like a classic library where you request specific books and receive them as they are. It's simple and widely used for web APIs, like ordering a la carte from a menu 🍽️. 2. GraphQL 🚀   GraphQL is like a customizable buffet 🍴 where you ask for exactly what you want and get a tailored plate. It allows clients to request only the data they need, reducing over-fetching. 3. SOAP 🧼   SOAP (Simple Object Access Protocol) is like sending a letter 💌 with detailed instructions, complete with a table of contents. It's more structured but can be heavier than REST or GraphQL. 4. gRPC 🚄:   gRPC is like a high-speed train 🚄 for communication between services. It uses Protocol Buffers for efficient data exchange and supports streaming and bidirectional communication. 5. WebSockets 🌐💬   WebSockets are like real-time phone calls ☎️ for the web. They enable two-way communication, perfect for chat apps and live updates. 6. MQTT 📡   MQTT (Message Queuing Telemetry Transport) is like a radio broadcast 📻, designed for low-bandwidth, high-latency, or unreliable networks. Ideal for IoT devices and sensor data. ▷ 👍🏿 Subscribe to our newsletter - bit.ly/45ucZPf #systemdesign #coding #interviewtips
GIF
English
22
813
2.8K
220.5K
Csaba Kissi
Csaba Kissi@csaba_kissi·
Fed up with spending $30 on MidJourney? Unveil the game-changing free alternative you've been longing for. Want to know the secret? Check out this thread: 🧵
Csaba Kissi tweet mediaCsaba Kissi tweet media
English
46
24
234
131.3K
Darren
Darren@SaffasRugby·
This was the classiest thing I’ve ever seen Owen Farrell do. #RWC2023
English
46
87
1.5K
382.2K
Dr Milan Milanović
Dr Milan Milanović@milan_milanovic·
𝗪𝗵𝗮𝘁 𝗮𝗿𝗲 𝗗𝗲𝗽𝗹𝗼𝘆𝗺𝗲𝗻𝘁 𝗣𝗮𝘁𝘁𝗲𝗿𝗻𝘀? Deployment patterns are automated methods of introducing new application features to your users. Your ability to cut downtime depends on the deployment style you use. Some patterns also let you roll out extra functionality. Doing this allows you to test new features with a small group of users before making them available to everyone. We have different options for deployment patterns: 𝟭. 𝗖𝗮𝗻𝗮𝗿𝘆 𝗿𝗲𝗹𝗲𝗮𝘀𝗲𝘀 A canary release is a method of spotting possible issues before they affect all consumers. Before making a new feature available to everyone, the plan is to only show it to a select group of users. We monitor what transpires after the feature is made available in a canary release. If there are issues with the release, we fix them. We transfer the canary release to the actual production environment once its stability has been established. 𝟮. 𝗕𝗹𝘂𝗲/𝗴𝗿𝗲𝗲𝗻 𝗱𝗲𝗽𝗹𝗼𝘆𝗺𝗲𝗻𝘁𝘀 We have run two similar environments simultaneously, lowering risk and downtime. These surroundings are referred to be blue and green. Only one of the environments is active at any given moment. A router or load balancer that aids in traffic control is used in a blue-green implementation. The blue-green deployment also provides a quick means of performing a rollback. We switch the router back to the blue environment if anything goes wrong in the green environment. 𝟯. 𝗙𝗲𝗮𝘁𝘂𝗿𝗲 𝘁𝗼𝗴𝗴𝗹𝗲𝘀 Here we can turn a switch on/off with feature toggles at runtime. We may roll out new software without exposing our users to any other brand-new or modified functionality. When we build new functionality, we can use feature toggles to enable continuous deployments by splitting releases from deployments. 𝟰. 𝗔/𝗕 𝘁𝗲𝘀𝘁𝗶𝗻𝗴 Two versions of an app are compared using A/B testing to see which one performs better. An experiment is like A/B testing. In A/B testing, we randomly present users with two or more page versions. Then, we use statistical analysis to determine which variant is more effective in achieving our objectives. 𝟱. 𝗗𝗮𝗿𝗸 𝗹𝗮𝘂𝗻𝗰𝗵𝗲𝘀 In a "dark launch," we introduce a new feature to a select group of users rather than the general public. These users are unaware that they are helping us test the functionality. We don't even point out the new functionality to them. It is nicknamed a "dark launch" for this reason. Users are introduced to the program to get feedback and test its effectiveness. #technology #softwareengineering #programming #techworldwithmilan #devops
Dr Milan Milanović tweet media
English
12
263
1.2K
131.4K
DNA
DNA@normalpurchaser·
Five most famous laws in the world NGN1,999 #Davido chef Dammy Atiku abubakar it has happened el Rufai 1 USD hamas in the west bank
English
24
255
561
153.7K
Dr Milan Milanović
Dr Milan Milanović@milan_milanovic·
𝗗𝗲𝘀𝗶𝗴𝗻 𝗣𝗮𝘁𝘁𝗲𝗿𝗻𝘀 𝗖𝗵𝗲𝗮𝘁 𝗦𝗵𝗲𝗲𝘁 Design patterns can be divided into three main types: 𝟭. 𝗖𝗿𝗲𝗮𝘁𝗶𝗼𝗻𝗮𝗹 𝗣𝗮𝘁𝘁𝗲𝗿𝗻𝘀 These design patterns deal with object creation mechanisms, trying to create objects in a manner suitable to the situation. Important patterns in this group are: 𝗙𝗮𝗰𝘁𝗼𝗿𝘆: This pattern allows delegating the instantiation logic to factory classes. The Factory Method creates objects without exposing the instantiation logic to the client. 𝗦𝗶𝗻𝗴𝗹𝗲𝘁𝗼𝗻 The Singleton pattern ensures that a class has only one instance and provides a global point of access to it. It's useful when exactly one object is needed to coordinate actions across the system. 𝟮. 𝗦𝘁𝗿𝘂𝗰𝘁𝘂𝗿𝗮𝗹 𝗣𝗮𝘁𝘁𝗲𝗿𝗻𝘀 These patterns deal with the composition of classes and objects that form larger structures. Important patterns in this group are: 𝗔𝗱𝗮𝗽𝘁𝗲𝗿: This pattern works as a bridge between two incompatible interfaces. It wraps an existing class with a new interface to become compatible with the client's interface. 𝗙𝗮𝗰𝗮𝗱𝗲: The Façade pattern provides a unified interface to a set of interfaces in a subsystem. Façade defines a higher-level interface that makes the subsystem easier to use. 𝗗𝗲𝗰𝗼𝗿𝗮𝘁𝗼𝗿: This pattern dynamically adds/overrides behavior in an existing method of an object. This pattern provides a flexible alternative to subclassing for extending functionality. 𝗣𝗿𝗼𝘅𝘆: The Proxy pattern provides a surrogate or placeholder for another object to control access to it. In its most general form, a proxy is a class functioning as an interface to something else. 𝟯. 𝗕𝗲𝗵𝗮𝘃𝗶𝗼𝗿𝗮𝗹 𝗣𝗮𝘁𝘁𝗲𝗿𝗻𝘀 These patterns are specifically concerned with communication between objects and how they interact and distribute work. Important patterns in this group are: 𝗖𝗼𝗺𝗺𝗮𝗻𝗱: The Command pattern encapsulates a request as an object, thus allowing users to parameterize clients with queues, requests, and operations. 𝗧𝗲𝗺𝗽𝗹𝗮𝘁𝗲 𝗠𝗲𝘁𝗵𝗼𝗱: This pattern defines the program skeleton of an algorithm in a method called template method, which defers some steps to subclasses. 𝗦𝘁𝗿𝗮𝘁𝗲𝗴𝘆: The Strategy pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable. Strategy lets the algorithm vary independently from clients that use it. 𝗢𝗯𝘀𝗲𝗿𝘃𝗲𝗿: This pattern defines a one-to-many dependency between objects so that all its dependents are notified and updated automatically when one object changes state. #technology #softwareengineering #programming #techworldwithmilan #developers
Dr Milan Milanović tweet media
English
13
420
2K
234.4K
Ross Maybury
Ross Maybury@Ross_maybs·
Champions League back at St James’s #NUFC
English
1
0
7
529
Department of Housing, Local Government & Heritage
Update! The Residential Zoned Land Tax is now at the next phase. Supplemental Maps identifying additional lands which may be subject to this tax have now been published. Visit gov.ie/rzlt to check supplemental maps or make a submission by Thursday June 1st.
English
62
25
51
243.4K
Sloan the Sloth Dev
Sloan the Sloth Dev@theslothdev·
Hey #DEVCommunity, Sloan here 👋🥱 I started a new series to teach you some best practices for content writing—with a few extra tips just for our favorite tech writing platform 😁❤️ Check out the first installment, which is all about creating a series: dev.to/devteam/best-p…
English
2
2
18
12K
Steve (Builder.io)
Steve (Builder.io)@Steve8708·
Hi! I'm Steve, CEO of @builderio We are a headless CMS that lets you drag and drop with *your* UI components, directly inside your existing sites and apps It can make for a much cleaner codebase and workflow than you might be used to:
English
13
16
247
66.7K
Steve (Builder.io)
Steve (Builder.io)@Steve8708·
8 modern browser APIs you might not know, but really should:
English
55
563
3K
525.5K
Easlo
Easlo@heyeaslo·
Notion has millions of users. But most people don't know its full potential. Here are 7 Notion ideas that you can copy:
English
111
384
2.4K
817.6K
Ivan Akulov
Ivan Akulov@iamakulov·
You might’ve seen this picture in the past. It shows the steps that happen in the browser whenever it needs to update the page: JavaScript → Style → Layout → Paint → Composite But what’s actually happening there is not that simple (and is pretty fascinating). Let’s dive in!
Ivan Akulov tweet media
English
6
69
280
46.8K
Easlo
Easlo@heyeaslo·
How to use Notion as a Second Brain (7 ways):
English
48
131
692
193.7K
egghead.io
egghead.io@eggheadio·
The weekend is a great time to catch up on podcasts. What developer podcasts do you love listening to?
English
7
1
14
15.2K