https://mostafa.dev

An screenshot of my blog on https://mostafa.dev
An screenshot of my blog on https://mostafa.dev
The screenshot is generated using BrowserFrame and Screely.

It’s slightly more than two years that I first started writing on Medium. At some point, nearly a year ago, I decided to go with the paywall, but later, I found that it was a bad idea, and it would be better not to hide even a tiny bit of information behind money. So, I opted out.


With a focus on SEO optimization for developers

Image for post
Image for post

A more up-to-date version is on my blog:

The very first developer relations online meetup of Stockholm was streamed live on Facebook on April 15, 2020. It was also recorded and later published on YouTube for those who couldn’t attend.

The event was organized and streamed by Oleg Pridiuksson, who is a decade-old experienced developer advocate who worked for great companies like King and Unity. He is now a developer relations program consultant and basically founded the Developer Relations Sweden meetup group.

There were three speakers: Hassan Al Kazmi, who is an artist advocate at King, who talked and answered…


How to load test your API using your existing Postman collections and k6?

Image for post
Image for post

A more up-to-date version is on my blog:

In this article, I’ll explain how to use a Postman collection I have created to load test our instance of our test API. The process is pretty straightforward, as is shown below. You need to feed your exported Postman collection to our postman-to-k6 converter, and use the generated k6 script to load test your own API.

# convert postman collection to k6 test
$ postman-to-k6 test-api.json -e env.json -o k6-script.js
# run load test
$ k6 run --vus 100 --duration 5m k6-script.js

Our Test API & Its Testing Scenario

In order to demonstrate the power of k6 in different…


How to use our new k6 script generator in openapi-generator to convert OpenAPI/Swagger specifications to k6 scripts?

Image for post
Image for post

A more up-to-date version is on my blog:

Overview

Throughout the years, there has been many attempts to devise a universal format for defining Web API specifications. The objective was (and still is) to help stakeholders of the system to work with those APIs, without having access to the source code. Each new “universal” format came with the promise of being ubiquitous and all-encompassing, but eventually faded away due to various reasons, like OData and WSDL.

One of the major players in this field is Swagger, developed by Tony Tam in 2011, which later was hired by the SmartBear Software, effectively…


Image for post
Image for post

Originally published at https://k6.io by Ragnar Lönn.

It has been almost three years since we first published our first comparison & benchmark articles that have become very popular, and we thought an update seemed overdue as some tools have changed a lot in the past couple of years. For this update, we decided to put everything into one huge article — making it more of a guide for those trying to choose a tool.

First, a disclaimer: I, the author, have tried to be impartial, but given that I helped create one of the tools in the review (k6), I…


How to run a microVM in an unprivileged environment with Firefighter?

Image for post
Image for post
Credits: https://firecracker-microvm.github.io/

A more up-to-date version is on my blog:

For years, cloud computing was a way to convince users and business to spend their money hosting their services on servers collocated on cloud data-centers. Things are changed and merely providing basic storage and processing power is a thing of the past. Cloud services are so complicated today that each one of them needs proper training to just be able to use them. Distributed data-stores, load-balancers, storages, serverless and container automation and orchestration services are just a few example of the vast number of cloud computing services.

One can now have a…


Raising awareness about threats and defense mechanisms introduced by OWASP API Security Top 10 2019!

Image for post
Image for post
Credits: OWASP API Security Top 10 2019 PDF cover

A more up-to-date version is on my blog:

In my previous article about secure code review and penetration testing of Node.js and JavaScript apps, I tried to give the reader an introduction to the old, but gold, OWASP Code Review Project and the OWASP Top 10 Project and to mention the tools of the trade using the simplest approach possible.

Recently the new OWASP API Security Top 10 2019 is released, as a release candidate, which is a breath of fresh air into the field of security and penetration testing. It is a tribute to its old pal, OWASP Backend…


How to send k6 output to Apache Kafka?

Image for post
Image for post

A more up-to-date version is on my blog:

Undoubtedly, Apache Kafka is one of the most prominent pieces of software existing in today’s distributed architectures, from cloud-providers supporting it to on-premise setups. It can be used to store and process millions of messages per second, so it makes it a perfect fit for distributed real-time data processing solutions. Although it provides very advanced features like stream-processing and horizontal scalability, it is very easy to use: you just have to send your messages to it (produce) and later pick them up (consume) for further processing. It has all the features you…


How to deal with 2to3, tests, incompatibilities and dependencies

Image for post
Image for post

A more up-to-date version is on my blog:

A while ago I’ve self-assigned the daunting task of migrating an ancient API project written in Python 2.7 and Django to the latest stable Python 3.7 and Django 2.2. What at first seemed to be a piece of cake, turned out to be a Hydra, the multi-headed dragon, with its dependencies acting like an octopus.

I should admit that it was no easy task. I remember days I was banging my head to get that tiny fix to work as expected. …


How the devil is in the detail!

Image for post
Image for post
Credits: freepik.com

A more up-to-date version is on my blog:

Disclaimer:

  • I am not an attorney, a lawyer or an advocate whatsoever, so seek the help of a professional on your case before signing anything.
  • I tried my best to be as anonymous as possible about the attributions and references in this article and I strongly deny any attributions.
  • I try to be as fair and as informative as possible to both parties, and I take no responsibility on any of the views expressed in this article. USE THEM AT YOUR OWN RISK!
  • Views expressed in this articles are solely those of…

Mostafa Moradian

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