Skip to content

Privacy Policy

What this site collects, why, and what you can do about it.

last updated

who runs this site

ncctcr is the personal site of Mykola Nesterchuk, based in Plovdiv, Bulgaria. I am the data controller under the GDPR. For anything in this policy, write to n.ncctcr@gmail.com.

in short

  • There are no accounts, no sign-up forms and no ads, and I don't sell data.
  • Analytics runs only if you accept it, and you can change your mind at any time.
  • Hosting, and CodeSandbox on pages with code playgrounds, work without that choice. Details are below.

analytics (your choice)

The legal basis for all analytics is your consent (GDPR Art. 6(1)(a)). If you decline or don't answer, none of these scripts are loaded. If you accept and later decline, the page reloads without them.

Google Analytics 4 is provided in the EEA by Google Ireland Limited. It records the pages you view, where you came from, your browser, device and approximate location, and actions on the site: copying code, using a tool preset, marking an interview question or flashcard, picking a search result, switching the theme, and clicking share, contact or outbound links.

Google states that it does not log or store IP addresses of users in the EU, Switzerland or the UK. Event data is kept for at most 14 months. Google may process data in the US, where it relies on the EU–US Data Privacy Framework. See Google's privacy policy.

Vercel Web Analytics and Speed Insights give me page counts and loading performance. They set no cookies. They record the URL, referrer, country or approximate location, browser, operating system, device type and performance metrics. Web Analytics groups a visit with a hash of the request that is discarded after 24 hours. See Web Analytics and Speed Insights privacy notes.

hosting

The site is hosted by Vercel Inc., whose servers process your IP address, the requested URL and your browser details to deliver pages and protect the service. Some of this may be processed in the US. The legal basis is my legitimate interest in running a working, secure site (GDPR Art. 6(1)(f)).

code playgrounds

Many blog posts include live code playgrounds. As you reach one on the page, it loads in a frame served by CodeSandbox. Your browser connects to CodeSandbox and to public package CDNs, which receive your IP address and browser details. The playground also sends CodeSandbox technical statistics about load times and your browser type, and it can store the items listed below. The legal basis is my legitimate interest in showing working examples (GDPR Art. 6(1)(f)). See CodeSandbox's privacy policy.

stored in your browser

NamePurposeLifetime
_ga, _ga_*Google Analytics cookies that tell visits and visitors apart. Set only after you accept.up to 2 years, or until you decline
__cf_bmCloudflare bot-protection cookie on codesandbox.io. Can appear only on pages with a code playground.about 30 minutes
CodeSandbox storagelocalStorage and IndexedDB on the playground’s codesandbox.io address, used for the playground’s own state and cached code. Only on pages with a code playground.controlled by CodeSandbox, until you clear site data
cookie-consent-v2localStorage: your answer to the cookie question, so you are not asked on every page.until you clear site data
themelocalStorage: light or dark theme, if you switched it.until you clear site data
interview-progresslocalStorage: which interview questions you marked. The list stays in your browser. If you accepted analytics, each mark is also sent to Google Analytics as an event.until you clear it or the site data

if you email me

I use your address and message to reply, and keep them only as long as the conversation needs. Mail is handled by Google (Gmail). The legal basis is my legitimate interest in answering you (GDPR Art. 6(1)(f)).

your rights

Under the GDPR you can ask for access to your data, correction, deletion, restriction or portability, object to processing based on legitimate interest, and withdraw consent at any time. Withdrawing doesn't affect earlier processing. Email me to use these rights. Analytics data is pseudonymous, so I may be unable to match it to you.

You can also complain to your local data protection authority. In Bulgaria that is the Commission for Personal Data Protection.

changes

If what the site collects changes, I'll update this page and the date at the top.