Trading a Cloud Identity for Your Own: Workload Attestation on Managed Compute

Post Syndicated from Netflix Technology Blog original https://netflixtechblog.com/trading-a-cloud-identity-for-your-own-workload-attestation-on-managed-compute-516d5a29b252

By Dhruv Pratap

Introduction

Organizations that have been around for a while usually run two identity systems side by side. One belongs to the cloud provider: IAM roles, instance profiles, execution roles. The other is your own, and it is the one your internal services actually check when they decide whether to answer a request.

On infrastructure you build yourself, you can bootstrap your own identity however you like. On managed compute you cannot. The provider hands your process a cloud identity and nothing else.

This post describes how we close that gap for Apache Spark workloads running on Amazon EMR. A workload that starts with only an AWS identity has to end up holding a first-class internal identity. Doing the exchange is straightforward. Making it trustworthy is the part that took the design work. Very little of what follows is specific to Spark or to EMR.

Two identity systems

Internal service-to-service authentication at Netflix runs on a private PKI called Metatron. Every workload gets a short-lived X.509 certificate, and services authenticate each other with mutual TLS. A workload cannot simply ask for a certificate. It is issued only after the identity service has satisfied itself that the requester really is the workload it claims to be. That verification step is called attestation. In each environment we support (VMs, containers, functions) attestation rests on some environment-specific proof that the platform can check on its own.

The second concept is the Data Project, which is our unit of ownership for data. A Data Project owns tables, has a set of authorized users, and has an identity of its own. Jobs run as the Data Project rather than as the person who launched them. That is what keeps table-level access control and audit consistent across scheduled and interactive use.

So the problem is this. A Spark job on managed compute starts with an AWS execution role and no internal identity. Everything it needs from inside the company (reading an encrypted column, evaluating table ACLs, holding an interactive session open longer than a short-lived token lasts) requires the internal one.

One identity, one role

The design rests on a decision made outside the Spark stack entirely. Each Data Project identity maps 1:1 to a dedicated IAM role, and the service that owns Data Project metadata records that mapping.

The mapping is what makes translation possible. It lets a statement in the provider’s vocabulary (“this process is running as role R”) become a statement in ours (“this process is workload W”). Without it there is nothing to translate into, and no amount of cryptography helps. The hard part of bridging two identity systems is rarely the protocol. It is committing to a mapping and then keeping it authoritative.

One practical objection arrives immediately. A single AWS account cannot hold tens of thousands of IAM roles, and we expect data projects in the order of ten thousands. We handled this by sharding data project roles deterministically across a small pool of dedicated accounts, which scales well past the projected number of projects and has the useful side effect of keeping workload roles on the far side of an account boundary from the control planes that launch them.

Components

Five components take part.

The control plane is the only service allowed to launch Spark jobs. It resolves the Data Project’s IAM role, builds and signs a workload metadata payload, and submits the job with that role as the execution role. It holds a signing key issued to it for this purpose alone.

The Data Project service is the authority for the identity-to-role mapping.

The Identity service receives attestation requests, verifies them, and issues certificates.

A Spark plugin provides the hook. Spark 3.0+ added a plugin interface with driver-side and executor-side components that are initialized while those processes are bootstrapping.

AWS STS acts as a notary, which is not its usual job.

Step one: the control plane makes a signed claim

When a job is submitted, the control plane validates the caller, looks up the Data Project’s IAM role, and builds a small payload describing the workload it is about to launch. The payload names the application identity, the mapped role, and the environment, stack and detail that the resulting credentials should be scoped to. The control plane signs the payload and passes it and the signature through as ordinary job configuration.

Two properties of this step matter. First, only one service can produce a valid signature, so the set of things that can assert “this workload is legitimate” is small and auditable. Second, the payload is a claim rather than an authority. On its own it proves nothing, because job configuration travels through infrastructure we do not fully control and anything that can read it can replay it.

Step two: the workload proves it holds the cloud identity

When the managed service launches the driver process, it does so under an OS user that has the execution role’s credentials available. The driver-side plugin initializes and uses those credentials to sign, but not send, a request to the provider’s identity endpoint (sts:GetCallerIdentity). The result is a short-lived pre-signed URL.

That URL is a transferable proof of possession. Anyone can fetch it. Only the holder of the role’s credentials could have produced it. And the response comes from AWS rather than from the workload, stating which role signed the request. The workload cannot lie about the answer because the workload does not supply the answer.

The pattern is not new. It is the same idea behind AWS IAM authentication in HashiCorp Vault and in AWS’s own function attestation flows. It generalizes well: any environment that gives a process cloud credentials and nothing else can still produce a verifiable statement about its own identity.

The plugin sends one attestation request carrying both artifacts, the pre-signed URL and the signed metadata.

Step three: corroboration

The identity service does four things.

  1. It fetches the pre-signed URL against AWS STS and reads back the role that signed it. This is the provider’s statement.
  2. It verifies the metadata signature against the key issued to the control plane. This is the platform’s statement.
  3. It corroborates the two. The role AWS reports must be the role the control plane said it dispatched, for the identity the metadata names.
  4. It issues certificates for that identity, scoped to the environment, stack and detail from the signed metadata.

Step 3 is the point of the whole design. Neither statement is sufficient by itself, and they fail in complementary ways. The provider’s statement is unforgeable but under-specified: it gives you a role, and a role is not a workload. It says nothing about why this process exists or what it should be allowed to be. The platform’s statement is well-specified but unverifiable on its own, for the reasons above. Put together, the signature says the workload was legitimately dispatched and the pre-signed URL says this really is it. Neither party has to trust the workload’s own account of itself.

There is a tension here that we settled deliberately, and other teams should expect to meet it. The provider’s answer identifies a role, not an application. Deriving an application name from a role name is fragile string matching, and the session identifiers the platform assigns are not under our control. We chose to take the application identity from the signed metadata and use the provider’s answer only for corroboration. That costs a network round trip and a stricter signing requirement, and it buys a much clearer trust story.

The fan-out problem

A Spark application is one driver and up to thousands of executors, created and destroyed throughout the life of a job. Attestation designed around one process per host does not survive that.

There are two defensible answers.

In the first, each executor attests independently. This is uniform, adds no new trust boundary, and grounds every process’s identity in the same provider-verified proof. The cost is amplification. One large job can produce thousands of STS calls and thousands of attestation requests in a burst, which looks a lot like an attack and creates a hard dependency on provider-side rate limits.

In the second, executors inherit credentials from the driver. The driver attests once and distributes credentials to executors over Spark’s internal RPC, which we configure with authentication and AES-GCM encryption so that only processes in the same application can take part. Load on the identity service stays constant. The cost is a second trust boundary and a driver that is now a credential distribution point.

Considering our scale at Netflix here we went with the second approach. The general lesson is that identity amplification is a capacity question, and it is better to answer it on purpose than to have it answered for you during an incident.

Lifecycle

Certificates are short-lived by design, so bootstrapping is only half the work. On self-managed hosts a system service handles renewal. Inside managed compute there is no equivalent hook, so the driver JVM runs a timer that re-attests on a fixed interval, well ahead of expiry. Credential material is written to a temporary directory readable only by the process owner and removed when the process exits.

Executors do not refresh. They are usually short-lived, and an executor that somehow outlives its credentials can exit and be replaced, which is cheaper than making every executor a renewal client.

The rule worth carrying into any similar system is that attestation has to be a repeatable operation rather than a bootstrap step. Anything that can only happen once at process start will eventually be the reason a long-running job dies nine hours in.

Why this generalizes

If you run your own identity system and are moving workloads onto managed compute, the specific services here matter less than the shape of the solution.

  1. Anchor on one exchangeable primitive. A single authoritative 1:1 mapping between your identity and a provider identity is what makes translation possible. The rest is plumbing.
  2. Require two independent claims and corroborate them. One from the provider, unforgeable and under-specified. One from your control plane, well-specified and replayable. Trust the intersection and never either alone.
  3. Keep the signer scarce. If exactly one service can make the platform’s claim, your trust story fits in a sentence.
  4. Hook the layer you still own. On managed compute you rarely control the host or its init system, but you almost always control the runtime: a plugin, an agent, an entrypoint. Attestation belongs there.
  5. Decide the amplification policy on purpose. Distributed engines multiply every per-process operation by their parallelism.
  6. Make attestation repeatable and credentials short-lived. Renewal is a requirement, not a follow-up.

What makes the result trustworthy is that no single participant issues an identity by itself. Not the workload, not the control plane, not the provider. And the workload, which is the party in the weakest position to be trusted, is never asked to vouch for itself.

Acknowledgements

Thanks to Amer Hesson for the Data Project abstraction, Nick Siow for the Data Project IAM role sharding, and Doug Clark for Metatron attestation.


Trading a Cloud Identity for Your Own: Workload Attestation on Managed Compute was originally published in Netflix TechBlog on Medium, where people are continuing the conversation by highlighting and responding to this story.

[$] How KDE got funding to add enterprise features

Post Syndicated from jzb original https://lwn.net/Articles/1096245/

The Sovereign Tech Agency (STA) is
investing nearly €1.3 million
in KDE through 2027. At Akademy 2026
in Graz, Austria, Nate Graham and Kevin Ottens, two of the contributors who
helped bring in the investment, explained how the funding was secured, provided
tips on how projects should approach organizations like STA, and talked about
how that money will be improving KDE for everyone. In addition to keeping the
community informed about the work, the pair hoped to pass on what they have learned
to encourage others to help raise funds for development as well.

Improving site performance by shipping more CSS

Post Syndicated from Josh Black original https://github.blog/engineering/architecture-optimization/improving-site-performance-by-shipping-more-css/


The Primer Design System powers many of the experiences you see on GitHub today. From buttons to banners to breadcrumbs, these foundational components are required to be accessible, flexible, and performant across a wide variety of scenarios.

Back in 2023, the number of components on certain pages began to explode. This led to several performance-related challenges with our existing CSS-in-JS solution:

  • Initial page loads took longer due to styles being initialized on the client
  • Server-side rendering performance declined as style collection shifted from the client
  • Updates to styles grew out of control as component count grew on a page

It became clear that the Primer team needed to address the issue at the source. We needed to find an alternative that would completely avoid the client and server costs that we were seeing with our current solution. Most importantly, any alternative we pick would need to work in a way that would avoid any breakage to GitHub during the migration.

Introducing CSS (Modules)

The Primer team found a solution that met all of our criteria: CSS Modules. This format would allow us to do one of our favorite things: write and use native CSS features, while still allowing some amount of the colocation and encapsulation that we had come to expect from CSS-in-JS.

With CSS Modules, styles would be authored in a CSS file alongside the JavaScript source for the component. It would also allow us to treat all class names as local by default, preventing some of the collisions and challenges that can come from global selectors. This format also removes the need for any client or server runtime behavior. Instead, styles would roll up into CSS stylesheets that were sent as part of the HTML for a page.

However, this solution was radically different from the CSS-in-JS solution we had at the time. This change would require an update to every Primer component and every component at GitHub authored using this technique. Thankfully, design systems are a perfect vehicle to deliver this kind of change at scale.

A gradual march towards CSS Modules

The situation for moving towards CSS Modules was clear. The Primer team would need to deliver updates to each of its components, moving them from CSS-in-JS to CSS Modules. At the same time, updates we made to these components could not break any usage in GitHub. Finally, the underlying technique we used for CSS-in-JS also had to continue working for any components in GitHub that were currently using it.

With all these constraints in place, we decided on an incremental migration strategy that would allow us to safely ship component updates without breaking the world. For each component, our plan was to:

  • Add a new file that translated existing styles to CSS Modules
  • Add the component to a feature flag that would toggle between the new and old styles
  • Use existing visual regression tests to verify snapshots were identical between our CSS-in-JS solution and CSS Modules
  • Gradually roll out the feature flag to our team, then to GitHub staff, and finally to all GitHub users to catch any issues along the way

This process created a strong feedback loop where issues were flagged early in the process as Primer continuously delivered these changes to GitHub. The use of feature flags allowed us to do this migration safely while giving us clear signals on the performance benefits of CSS Modules.

By December 2024, all components in Primer were migrated over to CSS Modules using this process. We saw performance wins across the board, in particular:

  • 55% less time to server-side render a page
  • 25% less time for components on a page to initialize

With clear performance wins from doing this work in Primer, we began to wonder if we could see similar performance wins by doing these conversions in other parts of GitHub. Similarly, how long until we could ultimately drop support for CSS-in-JS across the company?

Moving away from CSS-in-JS at GitHub

One of the trickiest parts about removing our CSS-in-JS solution from Primer was due to the usage of the sx prop. This prop was the way to style and customize components from Primer. Teams could provide an inline object to customize everything about the component. It represented the best and worst parts of CSS-in-JS:

  • Excellent TypeScript support with integration with our Design Tokens
  • Co-located with the component so that everything was in one place
  • High runtime cost due to the dynamic nature of inline objects used for sx
  • Difficulties scaling as the number of components using sx on a page grew

As a result, the first part of our journey to move away from CSS-in-JS was to reduce sx usage across GitHub. This would allow us to immediately improve performance similar to the wins we saw when migrating Primer components. It also set us up perfectly for removing CSS-in-JS entirely from the product.

The Duality of Primer

It’s important to note that, while the design system itself was officially off styled-components, a large part of the GitHub codebase itself wasn’t. With sx props having been the de facto styling standard at GitHub for years, we were looking at thousands of sx props that needed migration before we could even think of getting GitHub onto the sleek new @primer/react version which didn’t rely on styled-components.

So… how did we do this immense amount of work while increasing confidence and reducing risk? The answer: not all at once.

The original CSS migration was a little bit more nuanced than we led on: in addition to migrating the components to CSS modules, feature flagging to test in production and slowly rolling them out, we also created “wrapper” components in a transitive library we called @primer/styled-react. The whole purpose of this package was to allow sx usage into the newly migrated components. This way, the instances of the GitHub UI codebase that were using this prop could continue to consume them by importing the same component through @primer/styled-react, while we realized the performance gains of importing straight from @primer/react for the cases that didn’t.

Styled Box Zero

The next phase of the migration process was as follows:

  • On a package-by-package basis:
    • Translate all sxusage into equivalent CSS modules files. This included cross referencing (See migrating to CSS variables)
    • Replace @primer/styled-react imports with @primer/react imports
    • Test in pre-production
    • Deploy

Curiously enough, while we were getting ready to undertake this massive effort, styled-components maintenance mode was announced, offering further confirmation that we were taking steps in the right direction.

The work kicked off April 2025 with a peak of ~7,760 sxprops to be migrated; we wouldn’t see it realized until May 2026. Initially, one of our great in-house developers, Ian Sanders, created a VS Code plugin that would assist with per-prop migration. A similar codemod was developed internally and utilized to migrate entire files in the GitHub codebase. The work, while requiring a bit of manual oversight and careful validation, was mostly automated. A rotation of 8 engineers migrated 6,419 props over the course of 6 months, observing Server-Side Rendering time performance gains ranging from 1% up to 22% in some pages.

Table titled “Server Side Rendering” with a search field and columns for CATALOG_SERVICE, CONTROLLER, and IMPROVEMENT. It lists GitHub services and controllers with improvement percentages ranging from 3.05% to 21.97%, including a highest value of 21.97% for github/code_view / commit.

In a different side of GitHub, Copilot’s capabilities were increasing exponentially. AI was getting smarter, more capable; we released Copilot coding agent and Copilot code review while this work was still underway.

By the time we picked this work back up, now April of 2026, the panorama was different; we were able to get down from 895 to 0 sxprops in the span of three weeks with a team of two engineers, relentless determination, and a whole lot of Copilot coding agents.

Area chart titled “Total SX props” showing values declining from about 7,300 in May to near zero by June–July of the following year, with several short-lived spikes. Two highlighted points are labeled 6.87k around August and 5.37k around October.

Battle of the themes

It was a big day: we had finally completed the sx migrations that were standing between us and full styled-components removal, years in the making… we can finally clean up these dependencies and move on to different, more exciting work, right? Wrong!

GitHub supports seven different themes, all of which offer a high contrast mode variation. All of it enabled through, you guessed it, styled-components. Before we can even think of removing these dependencies, we need to decouple our theming.

Now, this isn’t as huge a deal as it sounds. Our theming variables have always been defined in CSS through our @primer/css package, and we already planned forward for non-styled Theming when we migrated @primer/react in late 2025. It’s the JavaScript usage and utilities that are enabled by styled-components that we needed to remove. Once again, we got to work.

You know the drill by now: perform the migrations, roll it out slowly, feature flag everything. Two months and a few hiccups along the way later, we were all-systems go for dependency removal; we even feature flagged that. Better safe than sorry.

All’s well that ends well

GitHub has been running on 100% CSS modules as of June 2026. The safeguards we put in place enabled us to roll out significant architectural changes safely, stress test in production, catch errors, pivot and repair efficiently, ultimately allowing us to succeed in our goals and realize great performance gains along the way.

What looked at first like a CSS migration turned out to be a gradual re-platforming of how GitHub styles, themes, and ships UI at scale. By the end, we had not only removed sx, styled-components, and styled-system from dotcom, but completed it without breaking GitHub along the way. Enhancing the performance, user experience and delight of our products continues to be top of mind for all of us here at GitHub.

The post Improving site performance by shipping more CSS appeared first on The GitHub Blog.

Security updates for Friday

Post Syndicated from jzb original https://lwn.net/Articles/1096637/

Security updates have been issued by AlmaLinux (kernel, kernel-rt, perl-DBI:1.641, and unbound), Debian (jq, libreoffice, openssl, and redis), Fedora (389-ds-base, bcm283x-firmware, cockpit, flatpak-builder, mingw-gdk-pixbuf, openssl3, pcs, rust-cryptoki, squid, uboot-tools, and webkitgtk), Mageia (fuse3, perl-Net-DNS, python-gitpython, python-webob, thunderbird, thunderbird-l10n, and unbound), Oracle (postgresql:12, postgresql:15, postgresql:16, and skopeo), Slackware (php), SUSE (alloy, amazon-ssm-agent, ant, apptainer, chromium, corosync, cyrus-imapd, distribution, exiv2, ffmpeg-7, freeipmi, gdb, gnome-remote-desktop, google-osconfig-agent, govulncheck-vulndb, gvfs, hplip, ImageMagick, imagemagick, java-11-openjdk, jsoup, re2j, kernel, keybase-client, libsoup, libx11, libxrender, mcphost, memcached, opensc, perl-DBI, python-gitpython, python-weasyprint, rabbitmq-server, ruby3.4, util-linux, and zstd-jni), and Ubuntu (curl, expat, gdal, libass, libpcap, linux, linux-aws, linux-aws-7.0, linux-hwe-7.0, linux-ibm, linux-oracle, linux-raspi, linux-realtime, linux, linux-azure, linux-azure-6.8, linux-azure-fde, linux-azure-fde-6.8, linux-azure-fips, linux-fips, linux-gcp, linux-gcp-6.8, linux-gcp-fips, linux-gke, linux-gkeop, linux-ibm, linux-lowlatency, linux-lowlatency-hwe-6.8, linux-oracle, linux-oracle-6.8, linux-raspi, linux-raspi-realtime, linux-realtime, linux-realtime-6.8, linux, linux-hwe, linux-kvm, linux-aws, linux-aws-fips, linux-azure, linux-azure-fde, linux-azure-fips, linux-gcp, linux-gcp-fips, linux-gke, linux-gkeop, linux-hwe-5.15, linux-ibm, linux-intel-iot-realtime, linux-intel-iotg, linux-kvm, linux-lowlatency, linux-lowlatency-hwe-5.15, linux-oracle, linux-realtime, linux-xilinx-zynqmp, linux-aws, linux-gcp, linux-gcp-4.15, linux-gcp-fips, linux-aws-fips, linux-ibm-5.15, linux-intel-iotg-5.15, octavia, and swift).

Agents can now set up your website’s security with Turnstile Spin

Post Syndicated from Jules Lemee original https://blog.cloudflare.com/turnstile-spin/

In 2023, Cloudflare declared itself free from CAPTCHAs with the launch of Turnstile, our privacy-first client-side challenge. Turnstile is free to use, works on any site (no need to proxy traffic through Cloudflare), and never asks a visitor to solve a puzzle. Now, we are launching Turnstile Spin, an agent-mediated end-to-end implementation of Turnstile.

Initially built with developers in mind, Turnstile requires a basic two-step implementation and understanding of frontend and backend development. First, you modify your frontend code to render the Turnstile widget; this allows Cloudflare to run the client-side challenges and issue a token. Second, you POST the token to our Siteverify API, which verifies the token and returns metadata about whether the visitor passed or failed the challenge. You can then act on this decision, like gating the login button until the visitor successfully solves a Turnstile challenge.

Turnstile now processes about three billion verifications on a typical weekday, and in one recent week more than 23,000 accounts created a new widget in the Cloudflare dashboard. This rapid adoption pushed us to evaluate how we can help users achieve full Turnstile validation seamlessly. Turnstile was built for developers, but demand for simple bot protection reaches far beyond people who write backend code every day. AI raises the stakes: it helps more people build applications, while giving attackers more ways to automate abuse. We wanted the same technology to make Turnstile easier to install correctly.

Turnstile Spin is our implementation of this new capability. You can use it to create the widget, embed it on your site, and embed Siteverify to relevant functions in your backend, just as you would manually. Spin also fixes improperly installed widgets and handles migrations from other CAPTCHA providers. You can start it from your Cloudflare dashboard, from Wrangler, or by pasting a public skill URL into your agent.

Adapting Turnstile for the Era of AI Coding Agents

When we first built Turnstile, web development followed a standard engineering pattern: developers wrote client-side interfaces and backend logic by hand. Turnstile’s setup naturally reflected that two-step workflow. 

Today, the way web applications are built has fundamentally shifted. AI coding agents now enable anyone, from experienced engineers to first-time creators, to spin up functional sites in seconds. However, security workflows designed for manual development don't always align with prompt-driven building.

To make Turnstile as effortless for AI builders as it has been for traditional web developers, we are introducing native support for AI agent workflows. Spin is designed to do that automatically. To check your own setup, open the Turnstile page in your account. If a widget has served traffic without backend validation, you will see a "Fix with Spin" action.

Meet Turnstile Spin

Turnstile Spin turns a two-part setup into a guided workflow with your coding agent. You choose where you want protection, and the agent finds the relevant frontend and backend code, proposes a plan, and waits for your approval. It then completes both sides of the integration together. Someone without backend experience can finish the setup correctly, while an experienced developer can skip repetitive work and catch missing steps.

Spin does not send your application code to Cloudflare or ask Cloudflare to change it remotely. The agent you already use, whether Claude Code, Cursor, Codex, or something else, makes the approved changes inside your codebase. The only new resource in your Cloudflare account is the Turnstile widget. Validation stays in your backend, next to the application logic that decides what happens after a challenge.

Spin can adapt to whichever of three contexts it finds in your codebase:

1. Fresh install 

No CAPTCHA in place. The agent embeds the widget on your frontend and wires Siteverify into your backend from scratch.

2. Widget recovery 

Cloudflare monitors Siteverify calls for each widget, and any widget with no server-side validation gets a "Fix with Spin" banner in your dashboard. The agent uses the same secret and adds the missing step to your backend, while the widget keeps serving traffic. This flow pre-empts the kind of support tickets people used to send about their Turnstile setups.

3. Migration from CAPTCHA

The agent detects the existing markers, proposes a substitution plan, and applies it after you approve. Existing Turnstile migration paths in the docs still cover the tool-specific details.

You can start Spin from the dashboard, Cloudflare Wrangler, or your agent directly through our skill. Typically, you'll use a combination of the three, by starting from the dash and pasting the skill into your agent, which will use Wrangler to facilitate the steps for you.

Early results

People began using Spin as soon as it reached the dashboard. Since its release in July, the dashboard has recorded more than 65,000 successful Spin widget creations, and developers have copied the generated prompt more than 30,000 times. This rapid adoption has demonstrated that bringing Turnstile directly into AI workflows fills a real, immediate need for builders. 

Those results also reflect the biggest lesson I learned while building Spin as an intern: an intuitive idea still needs time, feedback, and repeated simplification. Early in my internship, Bryan Becker advised me to share work before it felt finished, and Marina Elmore kept pushing me back to the customer's question whenever I overcomplicated the answer. I followed that advice by showing rough versions early, testing them with the team, and cutting as many steps as possible in the path of simpler security for our customer. 

Try Turnstile today through Spin

Turnstile is free for everyone, so try out Spin to deploy or fix Turnstile widgets in minutes. If you don’t have a Cloudflare account, you can create one with no further setup. Check out the docs for more details, and don’t hesitate to send us feedback.

Анатомия на едно разпадане

Post Syndicated from Емилия Милчева original https://www.toest.bg/anatomiya-na-edno-razpadane/

Анатомия на едно разпадане

Как залязва една партия в България? Зависи от партията. 

БСП го правеше повече от три десетилетия, СДС – три пъти по-бързо. А сега ГЕРБ може да покаже трети модел – как се свива партия, чиято най-силна идеология дълго време беше властта.

При БСП ги задържаше идентичността „Аз съм социалист“, която беше историческа и семейна. Демократичните промени завариха БКП – предшественица на БСП, с близо 1 милион членове (над 11% от населението). Партията можеше да сменя лидери, да губи избори, да се цепи и пак оставаше основание да се гласува за нея.

Затова и разпадът ѝ е твърде продължителен.

При СДС стана обратното: десните останаха, СДС – не. През 90-те синята идея беше начин на самоопределение, но избирателите постепенно се отделиха от организацията. Хората не престанаха непременно да бъдат десни, антикомунисти, прозападни и/или реформатори. Просто СДС престана да им бъде необходима, за да са такива, а мнозина се и разочароваха.

Партията обаче може да умре, без да умрат идеите ѝ.

През 2009 г. се появи Синята коалиция, в която СДС беше заедно с „Демократи за силна България“ (ДСБ) и други три партии, и спечели само 15 депутати. На същите избори изгряващата с подкрепата на германските консерватори дясноцентристка ГЕРБ взе 116.

Днес СДС е в коалиция с ГЕРБ, по-скоро като знак за идентификация, отколкото като дясна същност. Разликата между двете номинално десни политически сили е, че ГЕРБ първоначално получи европейска дясноцентристка рамка и легитимация отвън, включително от Европейската народна партия (ЕНП) и фондации като „Конрад Аденауер“, докато при СДС синята идентичност възникна отдолу – като обществена и политическа идентичност. 

Сега на ГЕРБ ще ѝ остане рамката, а на СДС – марката.

Какво е да си гербер през 2026 г.?

При ГЕРБ обаче въпросът е по-сложен: какво остава, когато партия, изградена около способността си да бъде на власт, изгуби властта?

Пет месеца след като ГЕРБ–СДС се сви до 433 755 гласа, лидерът Бойко Борисов обяви, че партията „ще скъса с популизма“ и ще се върне към „дясната си консервативна същност“. Любопитно признание – за да се върнеш някъде, трябва първо да си си тръгнал оттам.

А ГЕРБ дълго време не вървеше нито наляво, нито надясно, единствено към властта.

Докато ГЕРБ беше силна, можеше да си позволи да бъде идеологически всеядна. Сега, когато е отслабена, идентичността влиза в употреба, тъй като е нужна друга основателна причина човек да остане с нея.

Десен? Но ГЕРБ години наред участваше в политики, които самият Борисов сега определя като популистки. Консерватор? Европеец? Борисов винаги е оставял тези послания за евродепутатите си, не и за вътрешнополитическа употреба. За нея беше „Вие сте прости и аз съм прост, затова се разбираме“, после идваха магистралите и „стабилността“.

На вота на 25 октомври обаче партията няма дори собствен кандидат за президент. И може да се окаже, че президентските избори ще са най-интересният стрес тест за бъдещето ѝ – не толкова кой ще спечели гласовете на ГЕРБ, а дали изобщо още съществува единен електорат на ГЕРБ.

На прощаване Борисов пие кафе

Бойко Борисов обикаля инфлуенсърски канали, но вместо като политически офанзиви интервютата му звучат като равносметка. Между самохвалството, носталгията и заяждането с опонентите прозира усещането, че цикълът на ГЕРБ приключва и започва ерата „след Борисов“. Коментар на Емилия Милчева.

„Граждани за европейско развитие на България“ (ГЕРБ) – партия, появила се в момента, в който на България ѝ предстоеше усвояване на европейски фондове като член на ЕС, никога не е имала силна идеологическа връзка с избиратeлите си като старата БСП или СДС от 90-те. В ГЕРБ тази връзка стъпи върху прагматизма – власт, управленска ефективност, достъп до публични ресурси и разпределението им, местна власт и разбира се, Бойко Борисов. 

Резултатът е видим. Електоратът на партията на властта е верен, докато вярва, че ГЕРБ ще остане партия на властта. 

Стрес тестът

На 8 септември ГЕРБ официално реши да не издига кандидат за президент и вицепрезидент на изборите на 25 октомври. Така 400 000 избиратели на ГЕРБ бяха оставени да гласуват „по съвест“, без име от собствената им доскоро успешна партия.

Къде ще отидат?

Президентският вот е тестът, който ще покаже дали съществува електорат на ГЕРБ, или става дума за различни групи избиратели, които досега са били държани заедно от ГЕРБ. Причините за това задържане са различни и първата несъмнено е Бойко Борисов.

ГЕРБ е партия, изградена около харизматичен лидер, каквато например беше и НДСВ, макар че за разлика от нея успя да създаде силни местни структури. Именно тази мрежа в местната власт я прави по-устойчива от обичайните лидерски проекти, характерни за българската политика. През октомври 2024 г. е последният силен парламентарен резултат на ГЕРБ – 642 973 гласа и 26,39%, което е ръст от 112 315 гласа спрямо юни същата година. 

Втората причина е властта и достъпът до нея: кметове и общински съветници, администрация, местен бизнес, партийни структури. Лоялността към партията на властта може да отслабне, когато властта се премести другаде. Това е хипотеза, която следва да се проследи през конкретни преливания на дадени хора и/или цели местни структури, а не да я обявяваме за факт.

Третата е „стабилността“. Част от избирателите не са непременно идеологически гербери, а хора, за които Борисов и ГЕРБ означават предвидимост и управляемост. Един от анализите на изборите през 2024 г. например свързва част от тогавашния ръст на ГЕРБ именно с посланието, че партията може да възстанови политическата стабилност, което беше особено важно за малкия и средния бизнес.

Четвъртата причина е реалният десен електорат, привлечен от ниски данъци и евроатлантическа ориентация. И антикомунисти. Точно на него очевидно се опитва да говори Борисов, когато обявява връщането към „силна дясна консервативна партия“ и признава греха в популизъм.

Не трябва да забравяме и навика. След близо две десетилетия ГЕРБ вече има собствен твърд електорат. Това не е непременно свързано с идеология като при старата социалистическа или синя идентичност, но продължителното гласуване за една партия само по себе си създава партийна лоялност. Анализ на Gallup от 2025 г. говори именно за установено „твърдо ядро“ на ГЕРБ.

Sic transit gloria Boyki*

Емилия Милчева разнищва брауновото движение вследствие на създалото се в триъгълника на властта напрежение – и най-вече хаотичните танцови стъпки на Борисов, който непрестанно настъпва опърпания шлейф на партията си и се препъва в него.

Рентгенът за избиратели

Първият тур на президентските избори ще покаже колко от електората на ГЕРБ е твърдо ядро и колко – подвижна периферия, която идва при партията, когато я възприема като силна, и си тръгва, когато вече не я вижда така. Ако гласовете се разпръснат между различни кандидати и негласуващи, ще стане ясно какъв е и съставът на избирателите на Борисов. 

Истинският тест обаче ще дойде на балотажа. Ако до него стигнат Илияна Йотова – Кирил Вълчев и Андрей Гюров – Георги Кандев, както към момента очакват част от наблюдателите, ще е интересно да се проследи накъде ще тръгнат избирателите на една от най-големите партии, която обаче изобщо няма кандидат.

Йотова би могла да предизвика интерес сред избирателите на кандидати със сходни политически нагласи, които формално се конкурират с нея, като например лидера на „Възраждане“ Костадин Костадинов, който влиза в президентската надпревара с евродепутата Петър Волгин като кандидат за вицепрезидент. Те оглавяват кавалкадата от претенденти за „Дондуков“ 2, които, макар и съперници, са от един и същи политически лагер. Разликата е единствено в коя част на спектъра се намират.

Освен Костадинов–Волгин тук са Волен Сидеров – Славчо Велков; Румяна Ченалова – Георги Георгиев; Георги Димов – Димитър Шивиков; Нако Стефанов – Нина Ламбова; Пламен Пасков – Светозар Съев. Към този лагер принадлежи и двойката Ивелин Михайлов – Юлиана Матеева. 

Всички те имат електорално припокриване с гласоподавателите за Йотова по оста Русия – войната в Украйна и „мира“ – националния суверенитет и критиката към евроатлантическия мейнстрийм. Най-вероятно значителна част от подкрепящите ги са гласували за Радев и неговата „Прогресивна България“ (ПБ) на 19 април. Сега ПБ официално застана зад Йотова–Вълчев.

А соченият за втори участник на балотажа Гюров влиза в битката с подкрепата на „Продължаваме промяната“ и „Демократична България“ и с неясен резервоар от избиратели. И тук ролята на ГЕРБ би могла да е значима. Защото може да се окаже, че за втория тур не ДПС, а ГЕРБ държи свободен пакет гласове и така въпреки отказа си от битката за Президентството може да се окаже решаваща за балотажа.

А прогнозите накъде ще тръгнат герберите вече се разминават – към Гюров според едни, към Йотова според други. По bTV Геновева Петрова от „Алфа Рисърч“ прогнозира, че много от симпатизантите на ГЕРБ ще послушат лидера си и няма да подкрепят никого преди втория тур на изборите. А политици от ГЕРБ като Делян Добрев твърдят, че никога не биха подкрепили Гюров. Това ще превърне президентския вот в рентген за партията. 

Нова бодра смяна. Всички, навсякъде, наведнъж

Трансферните прозорци за новите назначения в регулаторите са отворени. Комисии, инспекторати и палати чакат трепетно новоизбраните си членове. Къде са най-големите апетити и какво следва от това – анализ на Емилия Милчева.

Междувременно Борисов играе двойна игра. Първо на няколко пъти протегна ръка за „обединение вдясно“ срещу Йотова, а след появата на Гюров обяви, че „непоискана подкрепа не дава“ – сиреч кандидатът трябва сам да я поиска. 

В същото време евродепутатът на ГЕРБ Емил Радев, бившият министър Вежди Рашидов и кметове, свързани с партията, влязоха в инициативния комитет на Йотова – някои от тях уведомили предварително Борисов.

Разломът вече е видим и извън инициативния комитет: кметът на Стара Загора Живко Тодоров, който кара своя четвърти мандат, обяви, че при балотаж между Йотова и Гюров би подкрепил Йотова, а ГЕРБ се нуждае от „сериозно прераждане“.

В Илияна Йотова съм усетил човешкото. Тя винаги се е отнасяла с разбиране към проблемите. Познавам я от 15 години. Нямам колебания в моя избор.

Тодоров, който е от влиятелните фигури в ГЕРБ и напусна по-рано Изпълнителната комисия, казва и нещо съществено: че би гласувал за десен кандидат, „ако имаше стойностна кандидатура“. 

А Борисов обяви Йотова за свой „идеологически противник“ и заяви, че няма да гласува за нея. 

Със сигурност няма да гласувам за Йотова… Илияна Йотова е моят идеологически противник. Създал съм ГЕРБ, за да победя БСП.

Иронията е, че докато Борисов се опитва да върне идеологията на партията си, победителят от последните избори засега може да си позволи да няма такава.

Спечелилата абсолютно мнозинство в 52-рия парламент партия e без ясна политическа самоличност. 

Защо е малко вероятно в България да спечели демократичен президент

Следващите редовни президентски избори се задават. Засега обаче всички пляскаме с ръце за еврото и напрегнато мълчим по въпросите, засягащи избора на бъдещия президент. Но докога така и до какво ще доведе това – от Светла Енчева.

Разбиването на олигархичния модел не е идеология, а цел.

Но мнозинството на Радев може да си го позволи, тъй като е във възходяща фаза на жизнения си цикъл. „Прогресивна България“ събира под един покрив плосък данък и по-малко регулации за бизнеса, силна социална държава, борба с неравенствата и данък върху свръхпечалбите. 

Това обаче е привилегия на възхода. ГЕРБ също дълго можеше да бъде всичко за всички, докато печелеше. Когато победите свършат, идеологията внезапно става необходима.

Ако Борисов призове избирателите си да направят eдно или друго, президентските избори ще направят най-важната проверка за ГЕРБ – дали четиристотинте хиляди, които още гласуват за партията, продължават да гласуват и по команда на нейния лидер.

On Anthropic’s AI Misuse Report

Post Syndicated from Bruce Schneier original https://www.schneier.com/blog/archives/2026/09/on-anthropics-ai-misuse-report.html

Earlier this month, Anthropic published a long report detailing all of the Claude misuses it detected. Daniel Meissler usefully summarized the report into 117 findings.

A few of the highlights:

  • AI agents increasingly handled reconnaissance, exploitation, data theft, propaganda production, surveillance workflows, and research while humans selected targets, set goals, and reviewed important outputs.
  • The report describes attackers using AI to industrialize credential theft, cloud compromise, phishing, vulnerability research, and the extraction of sensitive data from downstream organizations.
  • Influence operations used persistent agent memory, fake news sites, fabricated journalists, synthetic personas, political profiling, and large-scale multilingual content, although high content volume often produced little genuine engagement.
  • Surveillance and repression cases included automated dossiers, biometric and communications analysis, transnational targeting, coercive recruitment, and systems that continued operating locally after model access was revoked.
  • Biological and weapons cases show dual-use risk: AI supported advanced scientific and military work, but the report generally doesn’t establish completed biological weapons or operational battlefield deployment.

Гласовете на Америка. Междинните избори – брой 18

Post Syndicated from Йоанна Елми original https://www.toest.bg/glasovete-na-amerika-mezhdinnite-izbori-broy-18/

Гласовете на Америка. Междинните избори – брой 18

В XXI век изборите са един от малкото останали механизми за отчетност в леко проскърцващите ни демокрации, но същевременно са и забавление, шоу. През ноември американците ще гласуват в т.нар. междинни избори, които се провеждат на всеки четири години, малко преди изтичането на половината от четиригодишния мандат на президента. 

Това означава, че американците ходят до урните веднъж на всеки две години – механизъм, който превръща междинните избори в своеобразен референдум за представянето на президента и управляващата партия. Поради това рядко се случва междинните избори да бъдат спечелени от нея. Залозите този път са големи, защото кризата изглежда неизбежна. Въпросът е кой и как ще понесе негативите от проблемите, задаващи се на хоризонта. 

За кого гласуват американците? 

Нещо повече – това е шестата година от управлението на президента Тръмп (в момента във втория си мандат). Американските политолози използват фразата six year itch, която на български се превежда като „кризата [букв. сърбежът] на шестата година“, за да опишат феномена, в който вторите междинни избори на даден президент обикновено костват най-много на партията му. След Реконструкцията (1865–1877) партията на всеки президент е губила места както в Сената, така и в Камарата на представителите. Мандатът на Бил Клинтън е единственото изключение.

По време на изборите американците ще гласуват за своите 435 депутати в Камарата на представителите, долната част на американския парламент. Тези представители (депутати) се избират на пропорционален принцип, тоест спрямо населението на щата, в който са издигнати. Ще се гласува и за 33 или 34 от общо стоте места в Сената, където представители са по двама сенатори от щат. Това се дължи на факта, че мандатът на сенаторите е шест години, така че приблизително ⅓ от местата в Сената са част от изборите на всеки две години. Депутатите в Камарата на представителите имат мандат от две години. 

По време на междинните избори множество щати избират и депутати в своите щатски законодателни органи. В добавка се провеждат и избори на общинско ниво – за кметове, губернатори, публични длъжности, както и за множество граждански и други позиции. Избирателната активност по време на междинните избори е традиционно по-ниска, отколкото на президентските – средно около 40% от всички гласуващи. 

Какво иска Америка? 

Стабилна икономика, разбира се. Мнозинството от избирателите посочват икономиката като основна грижа и приоритет, най-вече по отношение на растящите цени. На кого се доверяват обаче, е по-сложен въпрос – приблизително равен брой анкетирани в изследването на Pew Research Center казват, че са съгласни с политиката на едната или другата партия.

Макар и да е рано още за прогнози, през лятото на 2026 г. гласуващите, изглежда, са по-добре настроени към демократите: 43% казват, че биха подкрепили техен кандидат за Конгреса, а 70% от демократите и от независимите, клонящи по-скоро към демократите, казват, че е от огромно значение кой ще контролира Конгреса през ноември, спрямо 60% от гласуващите за републиканците.

39% от подкрепящите демократите заявяват, че мислят усилено за изборите, спрямо едва 22% от републиканците. Повечето избиратели казват, че ще гласуват срещу политиките на Доналд Тръмп, чиято фигура е решаваща за техния избор. Половината от запитаните, които клонят към републиканците, смятат, че Доналд Тръмп няма да повлияе на избора им; 44% заявяват, че биха го подкрепили. 

Гласовете на Америка. Междинните избори – брой 18
Източник: Pew Research Center

Ако в началото на мандата на Тръмп гласоподавателите изразяват повече съгласие с политиката на Републиканската партия, днес мненията са разделени почти поравно. Единствените сфери, в които хората смятат републиканците за по-компетентни, са справянето с престъпността и имиграционната политика; във всички останали се наблюдава или предимство на демократите, или равенство. 

По отношение на политиката, свързана с изкуствения интелект впечатляващите 51% от анкетираните казват, че не са съгласни с нито една от двете партии. 

Две трети от всички анкетирани не одобряват политиката на Доналд Тръмп, който запазва одобрението си сред основните си избиратели (едва трима от десет републиканци не одобряват политиката на президента). Републиканците продължават да оценяват икономиката като добра, макар и да има спад в одобрението от 8 процентни пункта спрямо началото на годината; прави впечатление, че общата представа и одобрение за икономическото състояние на страната вървят по ясни партийни линии: демократите са по-доволни от времето на Байдън, а републиканците – на Тръмп. 36% от запитаните очакват влошаване на икономическата ситуация. Американците са разтревожени от цената на здравеопазването и имотите, храната и електроенергията. Най-съществени са тревогите за цените на горивата, които продължават да растат в контекста на войната на САЩ и Израел срещу Иран.

Стана ли Америка отново велика? 

Шестима от десет запитани посочват, че икономическата политика на Тръмп е влошила ситуацията в страната. 29% от републиканците смятат, че решенията на президента не са имали особен ефект. 

Дори непоклатимата идеологическа вяра в президента обаче, изглежда, се обръща – делът на републиканците, които смятат, че политиката на Тръмп е довела до по-слаба икономика, е нараснал от 18% на 28%, докато делът на твърдящите, че Тръмп има положително влияние върху условията в страната, е паднал от 57% на 42%, което е значим спад. 

Ако през февруари 2025 г. 73% от републиканците са очаквали страната да е в по-добро състояние след година, през лятото на 2026 г. – година и половина по-късно, едва 41% отговарят със същата увереност. 

Гласовете на Америка. Междинните избори – брой 18
Източник: Pew Research Center

За републиканските избиратели е по-важно да бъде приета тяхната партийна политика, дори това да означава блокиране и забавяне на политическите процеси. Демократите са една идея по-склонни на компромиси. Но избирателите, които са по-крайни, са и по-ангажирани в политическия процес в сравнение с умерените.

Младите демократи са по-крайни в предпочитанията си от възрастните. Тази тенденция се запазва и при различните тинк-танкове и организации, ангажирани в мобилизацията на избирателите. На този етап най-тясно партийните и идеологически крайните формации са най-активни в предизборния процес. Дори сред членовете на такива групи обаче одобрението към президента Тръмп спада. В някои подобни организации се наблюдава спад в съгласието с президента от близо 30 процентни пункта. Одобрението към Конгреса е на рекордно ниски нива. 

Схеми, проблеми, роботи и протести 

В свое решение непосредствено преди изборите Върховният съд отхвърли искането на администрацията на Тръмп за налагане на нови ограничаващи регулации върху Пощенската служба (USPS) относно бюлетините по пощата. Мотивът бе, че въвеждането на нови изисквания в последния момент заплашва да създаде административен хаос за местните изборни комисии. За сметка на това партийното преначертаване на границите на изборните райони продължава да е инструмент за влияние и в двете партии. Така реалната битка за мнозинство в Камарата на представителите се води в няколко десетки наистина оспорвани окръга в цялата страна.

Изследване на „Харвард“ сочи, че преначертаването на границите намалява истинската конкуренция между различните партии и политики и води до дискриминация в определени райони. Според специалисти то усилва поляризацията, а ползите са минимални, защото и двете партии го практикуват до такава степен, че се изключват взаимно. В Тексас например превес вземат републиканците, а в Илинойс – демократите. Като се тегли чертата, републиканците печелят около две места от цялата работа, като дори това е под въпрос. 

Междувременно президентът Тръмп реши да ограничи или отнеме медийни акредитации на журналисти в Белия дом, което повдигна дебата за границите на медийната свобода и взаимоотношенията между властта и медиите. Президентът забрани достъпа на CNN, MSNOW и Politico до Белия дом, аргументирайки се със стандартните си обвинения, че разпространяват фалшиви новини. 


В знак на солидарност основните телевизионни канали (Fox News, ABC, CBS и NBC), както и вестниците The New York Times и The Washington Post обявиха съвместен бойкот на президента Доналд Тръмп и прекратиха осигуряването на споделени излъчвания (пултранслации) от събития с негово участие. Администрацията пък пусна свой канал в YouTube – Trump TV, който към момента има едва няколко хиляди зрители. 

Критиците виждат в тези действия опит за политически натиск върху неудобните медии, докато според поддръжниците на администрацията това е въпрос на спазване на институционален протокол. Казусът свидетелства за нарастващата поляризация между изпълнителната власт и традиционните журналистически организации, а тепърва предстои да се види реакцията на избирателите. 

Друг ключов проблем от последните седмици е нарастващият политически вакуум около изкуственият интелект. Водещи фигури в технологичния сектор (включително изпълнителният директор на Anthropic Дарио Амодей и Сам Олтман от OpenAI) отправиха публични призиви за по-умерено темпо и повишени стандарти за сигурност при разработването на следващите поколения ИИ модели. Искането за „забавяне“ отразява опасенията от киберзаплахи, дезинформационни кампании по време на избори и липса на регулаторна рамка. 

Изкуствен интелект и естествено лицемерие

Апокалипсисът се отлага. Поне във формàта, в който ни го пробутват напоследък – като унищожение на света от изкуствен интелект. Само че защо ИИ гигантите изведнъж се сетиха за сигурността и започнаха да превръщат загрижеността си в маркетинг? От Йовко Ламбрев.

Докато в началото на мандата на Тръмп обещанията за потенциала на ИИ и центровете за данни се лееха от всички посоки, все повече американски политици заемат защитна позиция, отрезвени от реалността. 75% от американците се противопоставят на построяването на нови центрове за данни, които се оказват по-скоро замърсители и консуматори на ресурси, отколкото източник на работни места в обещания прекрасен нов свят. 

Проекти за над 130 млрд. долара са блокирани през изминалата година вследствие на опозиция на местно ниво. Само през юли тази година са приети над 150 забрани на общинско равнище. Дори републикански бастиони като Тексас са част от тенденцията: губернаторът Грег Абът подписа забрана за подобни проекти, докато не се направи реална оценка на влиянието им. 

А в Охайо може би поставят началото на интересна тенденция: 

реалното усещане за реалните проблеми и реалните последствия като обединяващо избиратели от двата края на политическия спектър. 

В традиционно червения фермерски щат цените на торовете и на машинната техника скачат в резултат на множеството решения на администрацията на Тръмп, най-вече войната в Иран и търговските войни; цените в магазините са високи, малките бизнеси затварят. По време на обсъждане на построяването на нова електроцентрала, която да захранва нов център за данни, избиратели от различни политически партии изразяват едни и същи гледни точки. 


Усещането, че на политиците не им пука за проблемите на хората, както и трудностите при справянето с последствията от късния капитализъм (отровено здраве и скъпо здравеопазване, източване на местни водоеми, несправедливи данъчни облекчения и ефекта от замърсяването върху децата) са налице в Охайо. Просто история или началото на нещо друго? Предстои да разберем. Много движения, например това на демократсоциалистите, се опитват да анализират и използват тези социални тенденции в политически план. Дали има алтернатива и каква е тя, ще си разкажем през октомври. А дотогава? Дръжте се.


Абонирайте се, за да получавате този бюлетин на електронната си поща в момента, в който излезе!

Вече сте регистриран потребител на Toest.bg? Може директно от настройките на бюлетините в своя профил да изберете „Гласовете на Америка“ или да натиснете бутона по-долу:

Още нямате профил в Toest.bg? Регистрирайте се само с няколко клика:


Полуостров

Post Syndicated from Тоест original https://www.toest.bg/poluostrov/

Полуостров

аз няма никога да мог’ да се измъкна

Той няма никога да мож’ да се изплъзне
от жилавата пъпна връв със сушата
и в осоления и гладък въздух
остава му да гледа и да слуша
огънатата ивица на плажа
полепналите по скалите къщи
едва заобления хоризонт
завръщането
на едно и същото
до пълното съвпадане със мястото
най-сетне с примирение прието
пастьозното зелено на смокините
и матовото синьо на небето

Боряна Кацарска


Боряна Кацарска (р. 1967 г., София) е завършила НГДЕК и СУ „Св. Климент Охридски“. Доктор по философия. Автор на монография за Кандински. Превежда философски и поетически текстове от латински, английски, нидераландски. Автор е на поетическите книги „Друго име“ и „Милост към езика“. Стихотворението „Полуостров“ е от ръкопис, подготвен за печат от „Издателство за поезия ДА“.


Според Екатерина Йосифова „четящият стихотворение сутрин… добре понася другите часове“ от деня. Убедени, че поезията държи умовете ни будни, а сърцата – отворени, в края на всеки месец ви предлагаме по едно стихотворение. Защото и в най-смутни времена доброто стихотворение е добра новина.

ASRock Rack SORANOD8-2L2T Review A New AMD EPYC 8005 Sorano Motherboard

Post Syndicated from Ryan Smith original https://www.servethehome.com/asrock-rack-soranod8-2l2t-review-a-new-amd-epyc-8005-sorano-motherboard/

We review the ASRock Rack SORANOD8-2L2T which is a new motherboard providing lots of connectivity for the AMD EPYC 8005 Sorano series

The post ASRock Rack SORANOD8-2L2T Review A New AMD EPYC 8005 Sorano Motherboard appeared first on ServeTheHome.

The collective thoughts of the interwebz