Photo by Jp Valery on Unsplash

Hi! I’ve been using Django since 10 years now, ranging from dozens of personal projects to highly active websites accommodating millions of users. I’m using Django to showcase but this is really about the Web and HTTP, so there’s no reason it can’t be applied in {insert your favorite web framework}.

Hi! As web developers we have to be mindful about a lot of attack types and follow best practices to keep our users and data safe. My focus point during my master’s studies was network security, and I’m passionate about this topic and follow up recent developments in this area. In my professional life, I’m managing the backend of a website with many millions of users, this puts a lot of pressure on our shoulders to do our best.

Recently we have come across credential stuffing attacks. Credential stuffing attacks are badass and gets you thinking, whose fault is that…

Very short answer: Add the following snippet to the top of your wp-config.php file.

if (strpos($_SERVER[‘HTTP_X_FORWARDED_PROTO’], ‘https’) !== false)

Longer answer:

Photo by Fikret tozak on Unsplash

Hi! I recently was setting up a WordPress website for our CV Application []( and suddenly wp-admin URL started redirecting to itself, to the same exact URL. And when this happens enough times, Google Chrome just spits out the “err_too_many_redirects” error, as there’s probably an infinite loop. I’m using Cloudflare to manage my SSL and all the caching, plus some more.

Why is this happening?

My Cloudflare SSL setting was set to “Flexible” mode, this works as following, Browser sends…

Photo by Justin Lim on Unsplash

Hey everyone! In Part I of this series, we have investigated how to cache a long-running function, and what the common pitfalls are with caching.

Now it will get real and a bit more advanced, this will be production-grade code that has been battle-tested with millions of users :)

Version 2: Where we left?

Want to read this story later? Save it in Journal.

This is the current situation, it works OK. What I don’t like about this is that if 100 requests come in burst, all of them will experience a cache-miss hence start calculating and blocking the gunicorn workers. …

Hi! Caching is the most important aspect of scaling along with database indices. It’s not impossible to get up to 99% speed improvements using either one, when done right. I’ve been using Django over 6+ years and I will be sharing my learnings when I had to scale beyond millions of users. The techniques and insights I share by no means are limited to Python nor Django, they are universal. For this tutorial Django's built-in in-memory cache will be enough, you don’t need to set up a redis or memcache server.

You can find all the code I use under…

Hey everyone! Last month we rotated our secret keys in our production environment, to keep up with the best security practices. There was some friction and I will tell you how to avoid it. There are millions of users in this particular app so tiny bit of convenience multiplied by a million can be a problem.

This solution will work if you are using database backed sessions, which I assume majority of websites do and that’s the default configuration (, otherwise still read on it will help you to roll out your version that works for your session engine.

Photo by Faisal M on Unsplash

What is Secret Key?


Özgeçmiş yazmak stresli bir deneyim olabilir, çünkü bunun nasıl doğru olacağına dair çok fazla kaynak ve fikir var. Hangi kılavuzun izleneceğini bilmek zor olabilir, aynı zamanda format, içerik, renk kullanımı ve bir fotoğraf ekleyip eklememek konusunda en iyi yaklaşımın ne olduğu.

Özgeçmiş hazırlamak istihdam fırsatlarına başvururken aday deneyimini ve başarılarını göstermek için yaygın olarak kullanılır. Vurgulaması istihdam tarihine olduğundan, onsuz, deneyiminizi düzenli bir şekilde vurgulamak özellikle zor olabilir. Dolayısıyla, kariyer hedeflerinizi tanımladıysanız ve potansiyel bir işveren üzerinde kalıcı bir izlenim bırakmak ve röportaj alma şansınızı artırmak istiyorsanız, iyi bir CV tam da bunu yapacaktır. Becerilerinizi ve deneyiminizi vurgulamayı seçtiğiniz yol…

How to make a quick and smart CV? How to stand out in the eyes of the hiring manager when he has several CVs on his table? One way to do that is by writing an extraordinary CV.

A person’s resume describes his skills and experiences, and if he does have all those things, but they’re not well written on a resume, they won’t help him get the job. But a well-written resume will do you great favors.

The smart resume builder app helps you to write your CV in such an exceptional way that it describes your personality positively…

If your aim is to learn programming and get to know a bit better how to world runs, the first program you should ever write is a “hello world program”. So would you rather write this:

public class HelloWorld 
public static void main (String[] args)
System.out.println("Hello World!");

or this:

print(“Hello World!”)

They both do the same thing, first one is Java, the plague of programming world, and the second one is Python, clear and understandable.

I have been coding since 15 years now, I have used various languages in various contexts. I can see why Java…

Hello World!

Eralp Bayraktar

Python/Django Developer — TU München ’14

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store