Ahmet Alp Balkan
  • Blog
  • About
  • Tweets
  • GitHub
  • Talks
  • Securing Docker with HTTP Basic Authentication

    13 October 2014
    I recently needed to secure my Docker host instance simply with a basic username and password authentication as I mostly find the certificate creation steps tedious. Docker has no built-in username/password authentication support so I thought I could have a HTTP proxy server which asks for a password on top of Docker Remote API server. Below you will find how you can secure your Docker host using username and password, namely HTTP Basic Authentication. Read more →

  • Introducing Docker.DotNet

    10 September 2014
    I am proud to announce my latest work: Docker.DotNet. It is a .NET library to interact with Docker API programmatically in C#/VB.NET applications. Using this library, you can command your docker instance to pull images, create containers, stop containers and many other things available in the Docker Remote API. The story behind it is, Docker has almost no tooling on Windows at the moment and I wanted to enable developers who would like to write Docker management apps for Windows on top of Docker API. Read more →

  • My Docker and Linux Containers talk at Microsoft

    15 August 2014
    I decided to publish slides of the talk I gave to my team at Microsoft Azure yesterday. It was a 30 minute talk introducing to Linux Containers, cgroups, Docker, CoreOS and clustering solutions in Docker ecosystem. I can tell you that my colleagues at Azure Fabric Controller were astonished by how LXC namespaces and cgroups easily can replace Hypervisors and how quickly Docker spins up new containers. I used a Linux VM in Azure to demonstrate spinning up containers running some basic commands, memcached servers and I showed how one can create Docker images by connecting the machine as well as using Dockerfiles. Read more →

  • How to List Blobs Properly with Azure Storage Client

    07 July 2014
    This article will be about some library methods of Azure Storage .NET Client Library often misused. I have seen several cases people used these in an improper way and doing so would often introduce bugs that you wouldn’t see on day one but appear much later on –which is the most dangerous kind. The first method ListBlobsSegmentedAsync is used to list blobs (files) in a container (folder or bucket) on an Azure Cloud Storage Service account. Read more →

  • Open Source is Not a Thankless Job

    30 May 2014
    I recently read an article on Scott Hanselman’s blog saying “Open Source is a thankless job, we do it anyway”. This post will not be an answer to that. I will tell you when open source is not a thankless job and ways to discourage other people from getting involved in your company’s open source project. There are times you do open source for the public good and times you do it for yourself and at the same time unavoidably for the public good anyway. Read more →

  • Microsoft Azure REST API + OAuth 2.0

    03 April 2014
    Recently, Microsoft Azure has announced support for using OAuth 2.0 protocol to authenticate Service Management REST APIs. This is something promising since OAuth 2.0 is pretty much the de facto standard for authentication on the web nowadays and it’s relatively easy to understand and reproduce manually compared to OAuth 1. Although the feature is still in preview mode, it works just fine. This will be a short, proof of concept post explaining how to authenticate the APIs using OAuth 2. Read more →

  • Introducing blobMetaDb

    13 March 2014
    Recently I have been working on an open source .NET library idea for Windows Azure. Check blobmetadb out on GitHub. blobmetadb watches your application’s requests to Azure Blob Storage (S3 of Microsoft, in case you’re not familiar) and keeps record of blobs you upload. By keeping a local database (Redis) of metadata of blobs, you can enumerate them, compute sizes of clusters very quickly. An example use case is, assume you have a Dropbox-like application in which you use Azure Blob Storage to store files uploaded by your users. Read more →

  • The Blue Badge – Reimagined

    09 February 2014
    For a while, I had this idea of redesigning Microsoft employee badges for a modern and neat look. So I spared a few hours this weekend. It’s over a year Microsoft has started to rebrand itself, starting from its logo to a brand new looking OS, from campus shuttles to direction signs on the campus and so on. Many employees are wearing this badge on their belts or pockets every day. Read more →

  • LINQ in Go

    08 January 2014
    A few days ago I announced a new open source library that provides querying methods for Go collections. By far, it’s my most popular project on GitHub, with around 300 stars. Before talking about it more, go ahead and take a look to get a rough idea. First of all, Go’s type system sucks, everybody knows that and it is by design. At least, Go language creators are fine with it, apparently it gets their work done in Google infrastructure level. Read more →

  • Go – taking slices of any type as input parameters

    27 December 2013
    My recent involvement with my new side project, go-linq, showed me that type system of Go is not designed for anything near object-oriented programming. There are no generics, no type inheritance, or anything helpful for certain purposes. However there is a type called interface{} you can assign pretty much anything into it, like object in .NET or Object in Java: var o interface{} o := 3.14 o := Student{Name:"Ahmet"} and it does not give any compilation errors. Read more →

  • ««
  • «
  • 9
  • 10
  • 11
  • 12
  • 13
  • »
  • »»

About the Author

I'm a software engineer at LinkedIn's Kubernetes-based compute infrastructure team. I enjoy building tools to orchestrate large-scale compute server fleets and love digging deep on Kubernetes and containers space. In my spare time, I maintain several tools in the Kubernetes open source ecosystem.

About me Other articles Follow on Bluesky Follow on 𝕏