# clients

Published articles for clients.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Patching This Site's MCP Endpoint and Limiting What It Can Do

DevFeed: [Patching This Site's MCP Endpoint and Limiting What It Can Do](<https://devfeed.tech/articles/patching-this-site-s-mcp-endpoint-and-limiting-what-it-can-do-30870.md>)

Original publisher: [Read original article](<https://brent.leekley.me/blog/mcp-patch-and-limits/>)

Author: Brent Leekley

Published: 2026-09-08T00:00:00Z

Content type: tutorial

Language: en

Sources: [brent.leekley.me blog](<https://devfeed.tech/sources/brent-leekley-me-blog.md>)

Topics: [Model Context Protocol](<https://devfeed.tech/topics/model-context-protocol.md>), [MCP Server](<https://devfeed.tech/topics/mcp-server.md>), [API](<https://devfeed.tech/topics/api.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [JSON](<https://devfeed.tech/topics/json.md>)

Tags: [aeo](<https://devfeed.tech/tags/aeo.md>), [agent-ready-website](<https://devfeed.tech/tags/agent-ready-website.md>), [agentic-ai](<https://devfeed.tech/tags/agentic-ai.md>), [agents](<https://devfeed.tech/tags/agents.md>), [api](<https://devfeed.tech/tags/api.md>), [api-security](<https://devfeed.tech/tags/api-security.md>), [clients](<https://devfeed.tech/tags/clients.md>), [json-rpc](<https://devfeed.tech/tags/json-rpc.md>), [logs](<https://devfeed.tech/tags/logs.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [mcp-server](<https://devfeed.tech/tags/mcp-server.md>), [model-context-protocol](<https://devfeed.tech/tags/model-context-protocol.md>), [prompt-injection](<https://devfeed.tech/tags/prompt-injection.md>), [protocol](<https://devfeed.tech/tags/protocol.md>), [rate-limiting](<https://devfeed.tech/tags/rate-limiting.md>), [retry](<https://devfeed.tech/tags/retry.md>), [server](<https://devfeed.tech/tags/server.md>), [streamable-http](<https://devfeed.tech/tags/streamable-http.md>), [webmcp](<https://devfeed.tech/tags/webmcp.md>)

### AI overview

This article explains how to patch a website's public, unauthenticated MCP endpoint. It covers updating to the current protocol revision while retaining compatibility with older clients, and applying limits including read-only tools, per-IP rate limiting, request-size caps, Origin checks, POST-only access, non-reflected strings, and privacy-preserving logs.

### Source excerpt

An MCP server on your website is a public, unauthenticated API. Bringing one to the current protocol revision while keeping older clients working, and the seven limits that bound it: read-only tools, a per-IP rate limit that always sends Retry-After, hard caps on body and argument size, an https-only Origin check, POST only, no reflected strings, and logs that store a salted hash instead of an address.

## The state of docs traffic: a 2026 midyear report

DevFeed: [The state of docs traffic: a 2026 midyear report](<https://devfeed.tech/articles/the-state-of-docs-traffic-a-2026-midyear-report-31095.md>)

Original publisher: [Read original article](<https://www.mintlify.com/blog/state-of-docs-traffic>)

Author: Kyan Yang

Published: 2026-07-29T00:00:00Z

Content type: article

Language: en

Sources: [Mintlify Blog](<https://devfeed.tech/sources/mintlify-blog.md>)

Topics: [Documentation](<https://devfeed.tech/topics/documentation.md>), [Model Context Protocol](<https://devfeed.tech/topics/model-context-protocol.md>), [Logging](<https://devfeed.tech/topics/logging.md>), [Server](<https://devfeed.tech/topics/server.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [agent](<https://devfeed.tech/tags/agent.md>), [ai-trends](<https://devfeed.tech/tags/ai-trends.md>), [clients](<https://devfeed.tech/tags/clients.md>), [docs](<https://devfeed.tech/tags/docs.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [report](<https://devfeed.tech/tags/report.md>), [retrieval](<https://devfeed.tech/tags/retrieval.md>), [search](<https://devfeed.tech/tags/search.md>), [servers](<https://devfeed.tech/tags/servers.md>), [tool](<https://devfeed.tech/tags/tool.md>)

### AI overview

Mintlify's 2026 midyear report examines how agents access documentation. It reports that agents represented 66% of measured web traffic in July, with direct machine routes becoming more common, and separately analyzes MCP assistant responses and tool calls.

### Source excerpt

Agents now account for 66% of measured web-traffic across docs powered by Mintlify, with July logging over 213 million agent web requests and 105 million human page loads as the month comes to a close.

## On Metastable Failures and Interactions Between Systems

DevFeed: [On Metastable Failures and Interactions Between Systems](<https://devfeed.tech/articles/on-metastable-failures-and-interactions-between-systems-39550.md>)

Original publisher: [Read original article](<https://charap.co/on-metastable-failures-and-interactions-between-systems/>)

Author: Aleksey Charapko

Published: 2025-12-24T21:26:49Z

Content type: opinion

Language: en

Sources: [Aleksey Charapko](<https://devfeed.tech/sources/aleksey-charapko.md>)

Topics: [systems](<https://devfeed.tech/topics/systems.md>), [retry](<https://devfeed.tech/topics/retry.md>), [clients](<https://devfeed.tech/topics/clients.md>), [servers](<https://devfeed.tech/topics/servers.md>), [Latency](<https://devfeed.tech/topics/latency.md>)

Tags: [clients](<https://devfeed.tech/tags/clients.md>), [fault-tolerance](<https://devfeed.tech/tags/fault-tolerance.md>), [latency](<https://devfeed.tech/tags/latency.md>), [load](<https://devfeed.tech/tags/load.md>), [metastabiilty](<https://devfeed.tech/tags/metastabiilty.md>), [other-thoughts](<https://devfeed.tech/tags/other-thoughts.md>), [performance](<https://devfeed.tech/tags/performance.md>), [retry](<https://devfeed.tech/tags/retry.md>), [server](<https://devfeed.tech/tags/server.md>), [signal](<https://devfeed.tech/tags/signal.md>), [state](<https://devfeed.tech/tags/state.md>), [systems](<https://devfeed.tech/tags/systems.md>), [timeout](<https://devfeed.tech/tags/timeout.md>)

### AI overview

The article explains metastable failures as self-sustaining performance failures caused by positive feedback loops. It uses retry storms to show how overload, latency, timeouts, and client retries can reinforce one another, and examines how ambiguous timeout signals make recovery more difficult.

### Source excerpt

I've written about metastable failures before. The topic has been picked up by a few different teams since the, all analyzing metastable failures more, while I apparently has been slacking off... Anyway, Metastable failures are self-sustaining performance failures that arise in systems due to a positive feedback loop triggered by an initial problem. This positive [...]

## Integrating Xandr's Real-Time Data Provider On-Premises: Infrastructure Requirements and Engineering Challenges

DevFeed: [Integrating Xandr's Real-Time Data Provider On-Premises: Infrastructure Requirements and Engineering Challenges](<https://devfeed.tech/articles/how-we-slashed-our-infrastructure-costs-by-80-while-successfully-integrating-xandr-s-real-time-ad-35067.md>)

Original publisher: [Read original article](<https://medium.com/gumgum-tech/how-we-slashed-our-infrastructure-costs-by-80-while-successfully-integrating-xandrs-real-time-ad-9ff665f1e138?source=rss----d4c1dee0f87b---4>)

Author: Guy Watson

Published: 2025-04-22T22:57:37Z

Content type: article

Language: en

Sources: [GumGum](<https://devfeed.tech/sources/gumgum.md>)

Topics: [real-time](<https://devfeed.tech/topics/real-time.md>), [Requirements](<https://devfeed.tech/topics/requirements.md>), [on-prem](<https://devfeed.tech/topics/on-prem.md>), [Latency](<https://devfeed.tech/topics/latency.md>), [Low Latency](<https://devfeed.tech/topics/low-latency.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>), [data](<https://devfeed.tech/topics/data.md>), [digital](<https://devfeed.tech/topics/digital.md>)

Tags: [ads](<https://devfeed.tech/tags/ads.md>), [advertising](<https://devfeed.tech/tags/advertising.md>), [challenges](<https://devfeed.tech/tags/challenges.md>), [clients](<https://devfeed.tech/tags/clients.md>), [data-processing](<https://devfeed.tech/tags/data-processing.md>), [decision-making](<https://devfeed.tech/tags/decision-making.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [latency](<https://devfeed.tech/tags/latency.md>), [low-latency](<https://devfeed.tech/tags/low-latency.md>), [metric](<https://devfeed.tech/tags/metric.md>), [on-prem](<https://devfeed.tech/tags/on-prem.md>), [performance](<https://devfeed.tech/tags/performance.md>), [platform](<https://devfeed.tech/tags/platform.md>), [real-time](<https://devfeed.tech/tags/real-time.md>)

### AI overview

The article describes GumGum's experience integrating Xandr's Real-Time Data Provider on-premises, focusing on infrastructure requirements, scaling challenges, latency, traffic volume, and the decision to own hardware.

### Source excerpt

How We Slashed Our Infrastructure Costs by 80% While Successfully Integrating Xandr's Real-Time Ad Platform!Introduction In the fast-paced world of digital advertising, maximizing return on investment (ROI) for ad spend is paramount. Buyers need to make data-driven decisions in real time to ensure their ads reach the right audience at the right moment. For us, integrating Xandr's Real-Time Data Provider (RTDP) was essential to providing the real-time optimization signals that would help our clients maximize their ROI by boosting Attention Time -- the key metric driving the effectiveness of programmatic ad campaigns. Our story is one of navigating through technical hurdles, experimenting with new infrastructure, and finding creative solutions to challenging engineering problems. As we embarked on integrating Xandr Real Time Data Provider, the path was far from straightforward. From vendor selection to scaling issues, and even the decision to own our hardware, every step had its complications. Yet, each obstacle presented an opportunity for innovation and refinement. In this article, we'll take you through the key challenges we faced, how we overcame them, and the lessons we learned from integrating Xandr on-prem. Whether you're considering a similar project or are simply curious about the behind-the-scenes of large-scale advertising tech deployments, our experience might just offer the insights you need. Xandr Integration and Its Requirements Xandr, a leading programmatic advertising platform, provides powerful tools to streamline and optimize ad delivery, targeting, and performance tracking. For us, integrating with Xandr RTDP meant integrating with the real time optimisation Xandr platform. Xandr's system, built to handle vast amounts of data in real time, comes with certain infrastructure demands. These include: Volume: The platform must be capable of handling massive amounts of traffic at any given time. For example, billions of ad impressions are processed daily,

## Gumroad payments and PayPal support issues affect a GoReleaser Pro creator

DevFeed: [Gumroad payments and PayPal support issues affect a GoReleaser Pro creator](<https://devfeed.tech/articles/gumroad-where-is-my-money-37770.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/gumroad/>)

Author: Carlos Alexandro Becker

Published: 2024-10-09T00:00:00Z

Content type: opinion

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [clients](<https://devfeed.tech/topics/clients.md>), [email](<https://devfeed.tech/topics/email.md>), [Support](<https://devfeed.tech/topics/support.md>), [stripe](<https://devfeed.tech/topics/stripe.md>)

Tags: [clients](<https://devfeed.tech/tags/clients.md>), [email](<https://devfeed.tech/tags/email.md>), [money](<https://devfeed.tech/tags/money.md>), [payments](<https://devfeed.tech/tags/payments.md>), [stripe](<https://devfeed.tech/tags/stripe.md>), [support](<https://devfeed.tech/tags/support.md>)

### AI overview

A GoReleaser Pro creator describes missing Gumroad payout emails, an apparent change involving PayPal support, and unsuccessful attempts to obtain clarification. The author says PayPal is the only available payout option in Brazil and is considering alternatives.

### Source excerpt

I've been using Gumroad for payments of GoReleaser Pro since the beginning, around May 2021.

## How Bazaarvoice UGC APIs serve information to its brand & retailers

DevFeed: [How Bazaarvoice UGC APIs serve information to its brand & retailers](<https://devfeed.tech/articles/how-bazaarvoice-ugc-apis-serve-information-to-its-brand-retailers-38725.md>)

Original publisher: [Read original article](<https://blog.developer.bazaarvoice.com/2024/05/06/how-bazaarvoice-ugc-apis-serves-information-to-its-brand-retailers/>)

Author: Udayaram Kammara

Published: 2024-05-06T11:57:33Z

Content type: tutorial

Language: en

Sources: [Bazaarvoice](<https://devfeed.tech/sources/bazaarvoice.md>)

Topics: [API](<https://devfeed.tech/topics/api.md>), [Caching](<https://devfeed.tech/topics/caching.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [Security](<https://devfeed.tech/topics/security.md>), [App](<https://devfeed.tech/topics/app.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Database](<https://devfeed.tech/topics/database.md>), [Server](<https://devfeed.tech/topics/server.md>), [servers](<https://devfeed.tech/topics/servers.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [api-architecture](<https://devfeed.tech/tags/api-architecture.md>), [api-security](<https://devfeed.tech/tags/api-security.md>), [apis](<https://devfeed.tech/tags/apis.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [bazaarvoice](<https://devfeed.tech/tags/bazaarvoice.md>), [caching](<https://devfeed.tech/tags/caching.md>), [clients](<https://devfeed.tech/tags/clients.md>), [cloud-infrastructure](<https://devfeed.tech/tags/cloud-infrastructure.md>), [content-syndication](<https://devfeed.tech/tags/content-syndication.md>), [conversations-api](<https://devfeed.tech/tags/conversations-api.md>), [data-denormalization](<https://devfeed.tech/tags/data-denormalization.md>), [data-processing](<https://devfeed.tech/tags/data-processing.md>), [database](<https://devfeed.tech/tags/database.md>), [e-commerce-solutions](<https://devfeed.tech/tags/e-commerce-solutions.md>), [enriched-data](<https://devfeed.tech/tags/enriched-data.md>), [gateway](<https://devfeed.tech/tags/gateway.md>), [high-traffic-systems](<https://devfeed.tech/tags/high-traffic-systems.md>), [load-balancer](<https://devfeed.tech/tags/load-balancer.md>), [load-balancing](<https://devfeed.tech/tags/load-balancing.md>), [performance](<https://devfeed.tech/tags/performance.md>), [product](<https://devfeed.tech/tags/product.md>), [product-catalog](<https://devfeed.tech/tags/product-catalog.md>), [read-and-write-apis](<https://devfeed.tech/tags/read-and-write-apis.md>), [resilient-architecture](<https://devfeed.tech/tags/resilient-architecture.md>), [response-caching](<https://devfeed.tech/tags/response-caching.md>), [scalability](<https://devfeed.tech/tags/scalability.md>), [security](<https://devfeed.tech/tags/security.md>), [software-architecture](<https://devfeed.tech/tags/software-architecture.md>), [ugc](<https://devfeed.tech/tags/ugc.md>), [user-generated-content-ugc](<https://devfeed.tech/tags/user-generated-content-ugc.md>)

### AI overview

This article describes the high-level architecture and design strategies behind Bazaarvoice's UGC APIs, including request authentication, gateway processing, load balancing, database retrieval, security filtering, and response caching. It states that the APIs recorded peak traffic of over 3 billion calls per day in 2023 and served hundreds of millions of pieces of user-generated content.

### Source excerpt

Bazaarvoice has thousands of clients including brands and retailers. Bazaarvoice has billions of records of product catalog and User Generated Content(UGC)from Bazaarvoice clients. When a shopper visits a brand or retailer site/app powered by Bazaarvoice, our APIs are triggered. In 2023,Bazaarvoice UGC APIs recorded peak traffic of over 3+ billion calls per day with zero [...]

## Bloco's Annual Transparency Report - 8th Year Edition

DevFeed: [Bloco's Annual Transparency Report - 8th Year Edition](<https://devfeed.tech/articles/bloco-s-annual-transparency-report-8th-year-edition-40801.md>)

Original publisher: [Read original article](<https://www.bloco.io/blog/annual-transparency-report>)

Author: Cláudia

Published: 2023-04-12T15:09:00Z

Content type: article

Language: en

Sources: [Blog - Bloco](<https://devfeed.tech/sources/blog-bloco.md>)

Topics: [Development](<https://devfeed.tech/topics/development.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [Android](<https://devfeed.tech/topics/android.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [App](<https://devfeed.tech/topics/app.md>)

Tags: [about](<https://devfeed.tech/tags/about.md>), [android-development](<https://devfeed.tech/tags/android-development.md>), [app](<https://devfeed.tech/tags/app.md>), [business](<https://devfeed.tech/tags/business.md>), [clients](<https://devfeed.tech/tags/clients.md>), [life](<https://devfeed.tech/tags/life.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [report](<https://devfeed.tech/tags/report.md>), [transparency](<https://devfeed.tech/tags/transparency.md>)

### AI overview

Bloco's eighth annual transparency report covers the period from April 2022 through March 2023. It reviews client projects, internal projects, revenue and expenses, and the development and performance of its Cabinet Android app.

### Source excerpt

Another year went by, one marked by many challenges and great satisfactions. This is our annual transparency report from the 1st of April'22 to the 31st of March'23. We believe companies should be as transparent as possible and this is another step in that direction.

## Be careful when converting Flow to LiveData

DevFeed: [Be careful when converting Flow to LiveData](<https://devfeed.tech/articles/be-careful-when-converting-flow-to-livedata-37158.md>)

Original publisher: [Read original article](<https://arkadiuszchmura.com/posts/be-careful-when-converting-flow-to-livedata/>)

Published: 2022-12-31T00:00:00Z

Content type: tutorial

Language: en

Sources: [Arkadiusz Chmura](<https://devfeed.tech/sources/arkadiusz-chmura.md>)

Topics: [Code](<https://devfeed.tech/topics/code.md>), [ui](<https://devfeed.tech/topics/ui.md>), [data](<https://devfeed.tech/topics/data.md>), [clients](<https://devfeed.tech/topics/clients.md>)

Tags: [clients](<https://devfeed.tech/tags/clients.md>), [code](<https://devfeed.tech/tags/code.md>), [flow](<https://devfeed.tech/tags/flow.md>), [function](<https://devfeed.tech/tags/function.md>), [livedata](<https://devfeed.tech/tags/livedata.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

This tutorial explains a caveat when converting Kotlin Flow to LiveData: the resulting LiveData emits upstream updates only while it has an active observer. Without an observer, it remains inactive and may not receive the latest value.

### Source excerpt

LiveData created this way will only emit data when it has active observers.

## A Review of Generative Art, Blogging, Work, and Side Projects in 2021

DevFeed: [A Review of Generative Art, Blogging, Work, and Side Projects in 2021](<https://devfeed.tech/articles/into-2022-37290.md>)

Original publisher: [Read original article](<https://muffinman.io/blog/into-2022/>)

Author: Stanko

Published: 2022-03-04T00:00:00Z

Content type: opinion

Language: en

Sources: [Stanko Tadić](<https://devfeed.tech/sources/stanko-tadic.md>)

Topics: [generative art](<https://devfeed.tech/topics/generative-art.md>), [3D modeling](<https://devfeed.tech/topics/3d-modeling.md>), [pixel](<https://devfeed.tech/topics/pixel.md>), [ibm](<https://devfeed.tech/topics/ibm.md>)

Tags: [3d-modeling](<https://devfeed.tech/tags/3d-modeling.md>), [clients](<https://devfeed.tech/tags/clients.md>), [code](<https://devfeed.tech/tags/code.md>), [generative-art](<https://devfeed.tech/tags/generative-art.md>), [ibm](<https://devfeed.tech/tags/ibm.md>), [pixel](<https://devfeed.tech/tags/pixel.md>)

### AI overview

The author reviews 2021, covering generative art, reduced blogging activity, a redesign of the site from Jekyll to Zola, work with TED and IBM Research, and side projects including 3D modeling, electronics, and a pixel art frame.

### Source excerpt

I'm super late with this post, but again, better late than never. I just couldn't find the inspiration and drive for writing last year. Generally, I lacked motivation and wasn't really productive. Generative Art # As for my art, 2021 wasn't as fruitful as the year before, but I did finish a couple of drawings. I'm still very much into it and lately I have found my drive again. AxiDraw, the pen plotter, continues to be my favorite purchase ever. Here are a couple of my plotted drawings from the last year: I wrote a separate post about the creative process behind the last drawing - Breaking down Krypton. Blog # Oh boy, did I neglect this blog last year. I wrote only four posts. But I really couldn't find the inspiration and will to write. Naturally, the number of visits dropped, and it was a little above 90K. The fact that adblockers now block Goat Analytics also had an impact on numbers. Luckily, now I have way more drive to write and keep the site updated. This February, the blog got a redesign that I planned for a long time. I wanted to add "Art" and "Projects" sections, but I kept redesigning it over and over again. Finally, when I decided to switch from JekyllI'll probably cover that in a another post. to Zola I was able to focus and finish the redesign. I did the design myself, using the thing or two I picked up from my designer colleagues. I released it as soon as I had something presentable. It was super bare bones and I'm still tweaking it and adding more personality, but nonetheless, I'm pretty satisfied with how it turned out. Fun fact, you can try my layout debug mode, I kept it in the production on purpose. Work # Last year was productive for my company as a whole. I had the pleasure of working with two clients, TED and IBM Research. In both cases, teams consisted of wonderful people and I feel proud that I was able to help them build and improve their digital products. Side projects # I tremendously enjoy these small pet projects. Generative art was a bi

## Wrapping-up 2021

DevFeed: [Wrapping-up 2021](<https://devfeed.tech/articles/wrapping-up-2021-40815.md>)

Original publisher: [Read original article](<https://www.bloco.io/blog/wrapping-up-2021>)

Author: Cláudia

Published: 2022-02-23T11:43:46Z

Content type: opinion

Language: en

Sources: [Blog - Bloco](<https://devfeed.tech/sources/blog-bloco.md>)

Topics: [Development](<https://devfeed.tech/topics/development.md>), [Android](<https://devfeed.tech/topics/android.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [Internet](<https://devfeed.tech/topics/internet.md>), [Template](<https://devfeed.tech/topics/template.md>)

Tags: [about](<https://devfeed.tech/tags/about.md>), [android](<https://devfeed.tech/tags/android.md>), [business](<https://devfeed.tech/tags/business.md>), [clients](<https://devfeed.tech/tags/clients.md>), [dev](<https://devfeed.tech/tags/dev.md>), [internet](<https://devfeed.tech/tags/internet.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [template](<https://devfeed.tech/tags/template.md>)

### AI overview

Bloco reviews its 2021 highlights, including the launch of the Stationhead Android app, the Awala app suite, work on OONI Probe, the Circles authenticator app, updates to Large Text Mobile and its Android App Starter Template, and changes to its publishing and work schedule.

### Source excerpt

A ritual we do every year is to write our annual highlights. We always start with the feeling "we haven't done much" but then we realise it's not true.

## How I Raised My Hourly Rate by 78% in My First Year as a Web Development Freelancer

DevFeed: [How I Raised My Hourly Rate by 78% in My First Year as a Web Development Freelancer](<https://devfeed.tech/articles/how-i-raised-my-hourly-rate-by-78-in-my-first-year-as-a-web-development-freelancer-35051.md>)

Original publisher: [Read original article](<https://markushatvan.com/blog/how-i-raised-my-hourly-rate-by-78-percent-in-my-first-year-as-a-web-development-freelancer/>)

Published: 2021-11-10T00:00:00Z

Content type: opinion

Language: en

Sources: [Markus Hatvan](<https://devfeed.tech/sources/markus-hatvan.md>)

Topics: [Development](<https://devfeed.tech/topics/development.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>)

Tags: [clients](<https://devfeed.tech/tags/clients.md>), [developer](<https://devfeed.tech/tags/developer.md>), [development](<https://devfeed.tech/tags/development.md>), [freelance](<https://devfeed.tech/tags/freelance.md>), [freelance-career](<https://devfeed.tech/tags/freelance-career.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [project](<https://devfeed.tech/tags/project.md>), [remote](<https://devfeed.tech/tags/remote.md>), [web-development](<https://devfeed.tech/tags/web-development.md>)

### AI overview

A personal account of raising an hourly rate by 78% in one year as a web development freelancer. It advises freelancers to improve their workflow, develop confidence, seek multiple sources of project leads, and continue relationships with recruiters.

### Source excerpt

There are many great ways of how you can begin building your confidence and showing your clients why they should pay you a higher hourly wage.

## Building a test suite for the OONI Probe Android app

DevFeed: [Building a test suite for the OONI Probe Android app](<https://devfeed.tech/articles/building-a-test-suite-for-the-ooni-probe-android-app-40804.md>)

Original publisher: [Read original article](<https://www.bloco.io/blog/building-test-suite-ooni-probe-android>)

Author: Cláudia

Published: 2021-09-20T11:10:34Z

Content type: article

Language: en

Sources: [Blog - Bloco](<https://devfeed.tech/sources/blog-bloco.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [test](<https://devfeed.tech/topics/test.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [unit tests](<https://devfeed.tech/topics/unit-tests.md>), [ci](<https://devfeed.tech/topics/ci.md>), [Dependency injection](<https://devfeed.tech/topics/dependency-injection.md>), [ui](<https://devfeed.tech/topics/ui.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [clients](<https://devfeed.tech/tags/clients.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [continuous-integration](<https://devfeed.tech/tags/continuous-integration.md>), [dependency-injection](<https://devfeed.tech/tags/dependency-injection.md>), [test](<https://devfeed.tech/tags/test.md>), [ui](<https://devfeed.tech/tags/ui.md>), [unit-tests](<https://devfeed.tech/tags/unit-tests.md>)

### AI overview

This article describes work with OONI to improve the quality of its Probe Android app by building a comprehensive test suite. The work included test infrastructure, continuous integration, dependency injection, fake-data factories, UI tests, and unit tests. Over 15 days, the team wrote 43 UI tests and 201 unit tests, increasing code coverage from 10% to 73%.

### Source excerpt

Let us tell you how we've worked with OONI to improve the quality of their Probe Android app.

## How To Win Your First Clients as a Freelance Web Developer

DevFeed: [How To Win Your First Clients as a Freelance Web Developer](<https://devfeed.tech/articles/how-to-win-your-first-clients-as-a-freelance-web-developer-35054.md>)

Original publisher: [Read original article](<https://markushatvan.com/blog/how-to-win-your-first-clients-as-a-freelance-web-developer/>)

Published: 2021-01-06T00:00:00Z

Content type: tutorial

Language: en

Sources: [Markus Hatvan](<https://devfeed.tech/sources/markus-hatvan.md>)

Topics: [Web Development](<https://devfeed.tech/topics/web-development.md>), [Development](<https://devfeed.tech/topics/development.md>), [Website](<https://devfeed.tech/topics/website.md>)

Tags: [client](<https://devfeed.tech/tags/client.md>), [clients](<https://devfeed.tech/tags/clients.md>), [developer](<https://devfeed.tech/tags/developer.md>), [freelance](<https://devfeed.tech/tags/freelance.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [linkedin](<https://devfeed.tech/tags/linkedin.md>), [social-media](<https://devfeed.tech/tags/social-media.md>), [web-development](<https://devfeed.tech/tags/web-development.md>)

### AI overview

A freelance web developer shares approaches for finding and winning clients, including using personal networks, referrals, testimonials, and LinkedIn. The article emphasizes prioritizing paid client work over unpaid lead-generation tasks.

### Source excerpt

It is certainly a challenging adventure to switch from the secure and predictable path as a member of a company at a full time job to running your own business with all of its complexities and requirements.

## 即刻多端实时通信实践

DevFeed: [即刻多端实时通信实践](<https://devfeed.tech/articles/article-41012.md>)

Original publisher: [Read original article](<https://blog.joway.io/posts/socket-io/>)

Author: Joway

Published: 2018-09-18T00:00:00Z

Content type: article

Language: zh

Sources: [Random Thoughts](<https://devfeed.tech/sources/random-thoughts.md>)

Topics: [Socket.IO](<https://devfeed.tech/topics/socket-io.md>), [WebSocket](<https://devfeed.tech/topics/websocket.md>), [Redis](<https://devfeed.tech/topics/redis.md>), [Load Balancing](<https://devfeed.tech/topics/load-balancing.md>), [Back end](<https://devfeed.tech/topics/backend.md>), [Publish-subscribe pattern](<https://devfeed.tech/topics/pubsub.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [channel](<https://devfeed.tech/tags/channel.md>), [clients](<https://devfeed.tech/tags/clients.md>), [cluster](<https://devfeed.tech/tags/cluster.md>), [load-balancing](<https://devfeed.tech/tags/load-balancing.md>), [nodejs](<https://devfeed.tech/tags/nodejs.md>), [redis](<https://devfeed.tech/tags/redis.md>), [room](<https://devfeed.tech/tags/room.md>), [socket](<https://devfeed.tech/tags/socket.md>), [tech](<https://devfeed.tech/tags/tech.md>), [websocket](<https://devfeed.tech/tags/websocket.md>)

### AI overview

This Chinese technical article explains how Jike's jike-io real-time communication infrastructure is built with socket.io. It describes server-to-client WebSocket notifications, per-user rooms, HTTP requests for business operations, socket.io's fallback and reconnection behavior, and Redis-based distribution across nodes, including sticky load balancing and the associated message-broadcast overhead. It also discusses connection spikes and Node.js bottlenecks.

### Source excerpt

背景 jike-io 是即刻基于 socket.io 构建的一个实时通信基础设施。目前客户端上的所有实时通信服务都是建立在其基础上，涵盖了私信、消息通知、用户反馈、活动页小游戏等诸多组件。 在目前即刻的实时通信设计里，我们的实时通信只是为了让服务端主动推送消息给客户端，客户端不会主动通过 websocket 发送消息。由于几乎我们所有需要发送消息的请求都会有一定业务逻辑在，而这个业务逻辑我们并不希望 websocket 连接层(jike-io)去处理，所以我们仍旧采用传统 HTTP 请求的方式去发送请求。至于之后是否需要推送消息给用户，由服务端调用 jike-io 的接口进行实现。

## Mitigating Disaster via Website Backups

DevFeed: [Mitigating Disaster via Website Backups](<https://devfeed.tech/articles/mitigating-disaster-via-website-backups-31282.md>)

Original publisher: [Read original article](<https://nystudio107.com/blog/mitigating-disaster-via-website-backups>)

Author: andrew@nystudio107.com (Andrew Welch)

Published: 2017-03-20T04:49:00Z

Content type: tutorial

Language: en

Sources: [nystudio107 | Articles on modern web development.](<https://devfeed.tech/sources/nystudio107-articles-on-modern-web-development.md>)

Topics: [backups](<https://devfeed.tech/topics/backups.md>), [Website](<https://devfeed.tech/topics/website.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>), [Development](<https://devfeed.tech/topics/development.md>), [Git](<https://devfeed.tech/topics/git.md>), [Database](<https://devfeed.tech/topics/database.md>), [Disk image](<https://devfeed.tech/topics/disk-image.md>), [hosting](<https://devfeed.tech/topics/hosting.md>)

Tags: [backup](<https://devfeed.tech/tags/backup.md>), [backups](<https://devfeed.tech/tags/backups.md>), [bitbucket](<https://devfeed.tech/tags/bitbucket.md>), [clients](<https://devfeed.tech/tags/clients.md>), [database](<https://devfeed.tech/tags/database.md>), [deploy](<https://devfeed.tech/tags/deploy.md>), [development](<https://devfeed.tech/tags/development.md>), [disaster](<https://devfeed.tech/tags/disaster.md>), [git](<https://devfeed.tech/tags/git.md>), [github](<https://devfeed.tech/tags/github.md>), [gitlab](<https://devfeed.tech/tags/gitlab.md>), [hero](<https://devfeed.tech/tags/hero.md>), [insights](<https://devfeed.tech/tags/insights.md>), [insurance](<https://devfeed.tech/tags/insurance.md>), [make](<https://devfeed.tech/tags/make.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [policy](<https://devfeed.tech/tags/policy.md>), [repo](<https://devfeed.tech/tags/repo.md>), [server](<https://devfeed.tech/tags/server.md>), [snapshot](<https://devfeed.tech/tags/snapshot.md>), [solid](<https://devfeed.tech/tags/solid.md>), [strategy](<https://devfeed.tech/tags/strategy.md>), [strikes](<https://devfeed.tech/tags/strikes.md>), [website](<https://devfeed.tech/tags/website.md>)

### AI overview

This tutorial explains how to protect websites with a practical backup strategy. It distinguishes server snapshots from backups for individual files and dynamically changing data, and recommends separating developer-created website assets from client-created content. The former can be versioned in a Git repository, while client data and uploaded assets require separate backup handling.

### Source excerpt

A solid backup strategy is an insurance policy for your clients, and can make you the hero if disaster strikes

## Collaborate with Touchlab and get a job at a great NYC startup - Touchlab

DevFeed: [Collaborate with Touchlab and get a job at a great NYC startup - Touchlab](<https://devfeed.tech/articles/collaborate-with-touchlab-and-get-a-job-at-a-great-nyc-startup-touchlab-38077.md>)

Original publisher: [Read original article](<https://touchlab.co/2013-09-collaborate-with-touch-lab-and-get-a-job-at-a-great-nyc>)

Published: 2013-09-04T21:41:00Z

Content type: release

Language: en

Sources: [Touchlab | Enterprise Mobile Innovation & Development](<https://devfeed.tech/sources/touchlab-enterprise-mobile-innovation-development.md>)

Topics: [clients](<https://devfeed.tech/topics/clients.md>), [App](<https://devfeed.tech/topics/app.md>), [Android](<https://devfeed.tech/topics/android.md>), [Job](<https://devfeed.tech/topics/job.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [app](<https://devfeed.tech/tags/app.md>), [clients](<https://devfeed.tech/tags/clients.md>), [community](<https://devfeed.tech/tags/community.md>), [developer](<https://devfeed.tech/tags/developer.md>), [press](<https://devfeed.tech/tags/press.md>), [recruiting](<https://devfeed.tech/tags/recruiting.md>)

### AI overview

Touchlab describes an embedded developer program in which selected clients work with its team during app builds, with participants learning and sharing knowledge. The article also notes that Cover is using the program as a recruiting tool for Android developers and that the program is not yet officially launched.

### Source excerpt

Select clients will be able to embed a developer with our team for the duration of their app build. Feel free to email us to find out more.