Python Logging Under The Hood

Python Logging module is perhaps one of the most widely used and often not so well understood module. While most of the things are documented quite well, sometimes it's easy to miss out a few things. Here we take a look at Python's Logging module in a bit more details, trying to get under the hood to figure out what's really happening.

Read more...

OpenAirInterface with Linux Network Namespaces

Abhijit Gadgil
OAI
OpenAirInterface aims to develop open source software solutions for 4G and 5G cellular network, that would run on COTS hardware (typically x86/ARM based CPUs). The project provides an Air Interface Simulator (OAISIM) and implementations of eNodeB and the EPC. OAISIM allows one to test the software implementations of the Network components, without actually having access to the RF part. This blog post explores, how this can be done on a single decently high end desktop.

Read more...

Some Nice 'git rebase' and 'git add' features

Abhijit Gadgil
Git
This blog post discusses a couple of handy tricks - using `git rebase` and `git add` to re-organize code where one can add parts of code in a single file into separate commits.

Read more...

Python Project Workflows - Part 3 (pylint)

In the [first part](/python-dev-environment.html) we looked at a few challenges involved when developing a Python project in a collaborative environment. In the [second part](/python-dev-environment-2.html) we looked at how `Pipenv` addresses some of those issues. In this part of the series we are going to take a closer look at how one can use code linting tools. Specifically we are going to be looking in details at using `pylint`.

Read more...

Python Project Workflows - Part 2 (Pipenv)

In the [first post](/python-dev-environment.html), we looked at what are typical issues in setting up Python project workflows and took an overview of the tools of the trade. In this post, we are going to be looking closely at `pipenv` a tool for managing Python project dependencies. In particular we are looking at how `pipenv` will help us solve the problems of reproducible builds and managing dev and production environments properly.

Read more...