Posts

Showing posts from May, 2020

Python in Business Applications

Python has become very popular recently in applications for data science and machine learning, in fields where fast prototyping is a priority. Python is a good candidate as it is easy to learn with its forgiving dynamic typing (I know this can also be a disadvantage), a variety of libraries and possible direct execution at the command prompt. For its serverless Lambda service Amazon Web Services (AWS) offers Python as programing language along with Java and Node.js. I have become curious about Python. It's pretty easy to get started. The prerequisites are: Download and install a current Python version like Python 3.8 for your computer Install a package manager like PIP  Have a suitable IDE ready like Visual Studio Code (or any other) For database driven applications you have a database ready like the PostgreSQL on the AWS free tier Let's start with a few simple lines of code. Looking at the variabl...

Unknown Territory: Amazon Webservices, PostgreSQL, Python

Image
Already a few months ago, I signed up for the Amazon Web Services (AWS) Free Tier. Unfortunately the free tier option expires after one year. So I decided to discover what's possible and get some reasons why AWS has become so popular. It's easy to get overwhelmed by the huge variety of options the AWS web console provides. It's a good idea to start with the known inside the unknown like with a relational database. PostgreSQL was my favorite because it has a powerful database programming language similar to Oracle's PL/SQL. Here are the basic steps to get started: Create an AWS account seperate from the initial root account . The admin account should only be used for its purpose - administration. I also strongly recommend to set up a billing alert to avoid unwanted high charges. Inside the RDS (Relational Database Service) create a PostgreSQL database instance along with a VPC (Virtual Private Cloud) and a security group. Here's the user guide for MySQL but can be ...

REST (almost) Directly from the Database - ORDS

Image
On of my customers had the major portion of his business logic in the Oracle database. There were complex views and multiple PL/SQL packages. More PL/SQL business logic was in a large enterprise wide Forms application, that could also be extracted and moved to the database. To serve contemporary responsive Angular based applications, there was a layer on top of the database built on Weblogic Server and ADF Business Components (ADF BC) providing RESTful services for the Angular frontend. The ADF BC layer can hold no state (as it would in a regular ADF Faces application). Furthermore, it has almost no business logic because the logic lives in the database.  With no holding state and providing almost no business logic, the WebLogic ADF layer turns out to be a heavyweight (and costly) SQL-to-JSON gateway. One approach to get rid of it is a REST implementation with an open source framework like Spring on a lightweight container like Tomcat. But there is a learnin...