The Strength of Open Source
Computer Scientist with an interest in all tech! Let's hack!
Search for a command to run...
Computer Scientist with an interest in all tech! Let's hack!
No comments yet. Be the first to comment.
For the longest time, I've been exploring various Linux distributions, each with its unique strengths and quirks. After much experimentation, I’ve found my sweet spot with Manjaro Linux. Here’s why it’s become my daily driver and how it seamlessly co...
In the vast landscape of software development, it's easy to get caught up in the debates about which programming language reigns supreme. However, it's crucial to remember that programming languages are just tools—each with its own strengths and weak...
I recently had the opportunity to dive down into Hashicorp's Nomad and Kubernetes. We are looking into replacing a manually provisioned setup that is currently configured by Salt. While Salt already offers us easy deployment and configuration of all ...
In this post we solve a few easy challenges on pwnable.kr called cmd1 and cmd2 cmd1 and cmd2 These two challenges required us to circumvent a cleared PATH environment variable. cmd1 In the first challenge, the program has a small filter, that doesn't...
In this post we solve the lotto challenge of pwnable.kr. lotto The challenge starts by inviting us to play a game of chance Mommy! I made a lotto program for my homework. do you want to play? ssh lotto@pwnable.kr -p2222 (pw:guest) Inspecting the co...
I recently wrote a small piece at work, regarding the commercial benefits of utilizing Open Source Software. It was meant to be easy digestible, without dwelling too much on technical details. Enjoy.
At flowtale we work with a lot of data, both analysis and visualization. The visualization we usually implement in a web based manner, to easily showcase clients and users the results and KPI's, without the need for installing native applications on desktop computers or mobile devices.
This need for a web based application bears with it a lot of additional requirements such as security, flexibility and interoperability with other tools and last but not least, user management.
Users being able to log in to an application, and perhaps being managed by an administrator is usually handled by a web application and stored in it's database. However, most large corporations are already utilizing a Microsoft Active Directory (AD), or similar. Interfacing with this, could alleviate the manual task of registering new users to our applications, as the corporations employees are already present in AD. Currently we are working on an Azure Platform where interfacing with Azure Active Directory (AAD) would be very beneficial to our customers, as all user management would now be moved to the cloud.
Interfacing directly with Azure Active Directory and writing our own backend authentication plugin for Django is certainly an option. Microsoft has an API exposed for AAD which allows us to securely query for active users and log them into our application. However, as it turns out, an Open Source plugin already exists under the MIT License that does what we need.
This use of Open Source significantly reduces the amount of time we spend developing features, and allows us to deliver a top shelf product in a short amount of time.
Our technical stack depends on the needs of the customer. However we always provide general recommendations that we stand by, as we know the tools and their performance. One of our prefered tools is the postgres database.
In this case, a test in the plugin caused an unhandled exception when using postgres, which we were able to resolve with a few lines of code. We submitted our fix back to the original maintainer and the plugin now supports this database, along with others who follow the same error handling.
Some Open Source licenses require any application using the Open Source code, to also become Open Source. This is known from the widely-used Gnu Public License. For commercial use, this is rarely an option, as customers are not interested in their competitors getting access to source code they bought and payed for.
However, an alternative exists. Since the plugin we found is under the MIT License, we are allowed to utilize the code in our commerical, non disclosed source code. The MIT license specifically allows for this use-case, in contrast to GPL and other licenses. Hence our application source code, your product, is kept closed source, proprietary and completely within your control.