• Home

  • Custom Ecommerce
  • Application Development
  • Database Consulting
  • Cloud Hosting
  • Systems Integration
  • Legacy Business Systems
  • Security & Compliance
  • GIS

  • Expertise

  • About Us
  • Our Team
  • Clients
  • Blog
  • Careers

  • VisionPort

  • Contact
  • Our Blog

    Ongoing observations by End Point Dev people

    CSTE Conference EpiTrax retrospective

    Steve Yoman

    By Steve Yoman
    June 29, 2022

    Banner photo of 4 End Pointers in our conference booth

    Last week we were in Louisville, Kentucky for the CSTE Conference. End Point staffed a conference booth to represent the EpiTrax public health surveillance system to a wonderful group of public health experts.

    You can read some background about the conference and CSTE in our earlier blog post announcing our plans.

    Photo of attendees at a CSTE conference session

    We really enjoyed meeting new friends in person after two years of canceled events due to the pandemic. We spoke with staff from health departments and disease surveillance teams from several state and local jurisdictions, as well as with experts from the CDC and other software and service vendors.

    One of the highlights was going around to meet other people staffing booths at the conference. It charged us up to see and hear about all of the interesting and innovative things going on in the public health space at a time when there is so much that needs to be done. We were particularly struck by the efforts being made in onboarding and distributing ELRs and eCRs, areas where the Electronic Message Staging Area (EMSA, which we deploy and support) can complement and enrich those activities.

    Photo of CSTE conference hall

    The open-source disease surveillance and reporting software EMSA and EpiTrax both …


    conference casepointer epitrax emsa

    How to deploy a Django App with Aurora Serverless and AWS Copilot

    Jeffry Johar

    By Jeffry Johar
    June 26, 2022

    Photo of an aurora
    Photo by Виктор Куликов

    AWS Copilot has the capability to provision an external database for its containerized work load. The database options are DynamoDB (NoSQL), Aurora Serverless (SQL), and S3 Buckets. For this blog we are going to provision and use Aurora Serverless with a containerized Django app. Aurora Serverless comes with 2 options for its engine: MySQL or PostgreSQL.

    Watch Amazon’s 2-minute introduction video to get the basic idea of Aurora Serverless.

    We are going to work with the same Django application from my last article on AWS Copilot.

    In my last article, the Django application was deployed with SQLite as the database. The application’s data is stored in SQLite which resides internally inside the container. The problem with this setup is the data is not persistent. Whenever we redeploy the application, the container will get a new filesystem. Thus all old data will be removed automatically.

    Now we are moving away the application’s data externally so that the life of the data does not depend on the container. We are going to put the data on the Aurora Serverless with PostgreSQL as the engine.

    Diagram of Django app with SQLite database

    Django with SQLite as the internal database


    Diagram of Django app with AWS Aurora database

    Django …


    docker containers aws postgres

    How to deploy a containerized Django app with AWS Copilot

    Jeffry Johar

    By Jeffry Johar
    June 21, 2022

    Photo of 2 pilots in an airplane cockpit

    Generally there are 2 major options at AWS when it comes to deployment of containerized applications. You can either go for EKS or ECS.

    EKS (Elastic Kubernetes Service) is the managed Kubernetes service by AWS. ECS (Elastic Container Service), on the other hand, is AWS’s own way to manage your containerized application. You can learn more about EKS and ECS on the AWS website.

    For this post we will use ECS.

    The chosen one and the sidekick

    With ECS chosen, now you have to find a preferably easy way to deploy your containerized application on it.

    There are quite a number of resources from AWS that are needed for your application to live on ECS, such as VPC (Virtual Private Cloud), Security Group (firewall), EC2 (virtual machine), Load Balancer, and others. Creating these resources manually is cumbersome so AWS has came out with a tool that can automate the creation of all of them. The tool is known as AWS Copilot and we are going to learn how to use it.

    Install Docker

    Docker or Docker Desktop is required for building the Docker image later. Please refer to my previous article on how to install Docker Desktop on macOS, or follow Docker’s instructions for Linux and …


    docker containers cloud aws python django

    Getting started with Docker and Kubernetes on macOS

    Jeffry Johar

    By Jeffry Johar
    June 20, 2022

    Shipping infrastructure at a dock

    What is the best way to master American English? One school of thought says that the best way to learn a language is to live in the country of the origin. For American English that would be the USA. Why is that so? Because we as the learners get to talk to native speakers daily. By doing this, we get to know how the natives use the language and its grammar in the real world.

    The same goes for learning Docker and Kubernetes. The best way to learn Docker and Kubernetes is to get them in our MacBooks, laptops, and PCs. This way we can learn and try locally what works and what doesn’t work in our local host at any time, any day.

    Lucky for us earthlings who enjoy GUIs, Docker now has Docker Desktop. As its name suggests, it is nicely built for the desktop. It comes with GUI and CLI to manage our Docker and Kubernetes needs. Please take note of the Docker Desktop license. It is free for personal use, education, and open source projects, and has a fee for enterprise usage. With that out of the way, let’s get things started.

    Docker Desktop Installation

    The official Docker Desktop for can be found on Docker’s website. It covers installation for …


    docker kubernetes containers

    Implementing Authentication in ASP.NET Core Web APIs

    Kevin Campusano

    By Kevin Campusano
    June 17, 2022

    Several buildings with a lightly cloudy blue sky

    Authentication is a complex space. There are many problem scenarios and many more solutions. When it comes to Web APIs written with ASP.NET Core, there are various fully featured options like Duende IdentityServer or Azure Active Directory. These promise to be “everything but the kitchen sink” solutions which are robust and allow you to deal with many complex requirements.

    But what if our requirements dictate that we need something simpler? Do we have to roll out our own from scratch? Or does ASP.NET Core offer smaller, customizable, somewhat independent puzzle pieces that we can put together without having to write all the code ourselves and still have a good amount of control?

    Spoiler alert: The answer to that last question is yes. And we’re going to talk about it in this very article.

    There is a Table of contents at the end of this post.

    Two approaches to authentication: JWT and API Keys

    In this article, we’ll take an existing ASP.NET Core Web API and add authentication capabilities to it. Specifically, we’ll support two authentication schemes commonly used for Web APIs: JWT and API Keys. Also, we will use our own database for storage of user …


    authentication security dotnet aspdotnet

    3 useful built-in objects and functions in JavaScript

    Phineas Jensen

    By Phineas Jensen
    June 15, 2022

    Three semi trucks parked on concrete, with a dog standing watch over them

    I love learning (and learning about) programming languages. Right now I’m teaching myself Rust and trying to learn about 3D rendering. Every time I find a list of programming languages I have to look up every one that I haven’t heard of, and when I see posts about Zig or Haskell or any other cool project on Hacker News, I can’t help reading through the comments and seeing people discuss the unique features, quirks, and drawbacks of each language.

    One thing I enjoy about learning about these languages (sometimes in an all-too-shallow way) is seeing all the different methods and syntaxes that exist for solving problems, and while it’s always tempting to think the grass is greener on the other side, it’s also important to do the same kind of exploration within the languages I’m using right now. Not only is it important, it actually makes using those languages a lot more enjoyable as I find new, more efficient ways to do things I’ve probably done dozens of times before.

    With that spirit, here’s a little list of cool objects and functions in JavaScript that have given me that feeling of excitement and made the language more fun and …


    javascript tips

    End Point booth at CSTE 2022 conference

    Shannon Sandall

    By Shannon Sandall
    June 9, 2022

    Divided interstate highway in lush green trees and fields Photo by David Barajas

    Converging on Kentucky

    We are excited to announce that End Point will be attending the CSTE (Council of State and Territorial Epidemiologists) conference in less than two weeks!

    We will be running a booth during the 3-day conference in Louisville, Kentucky from Monday, June 20 through Wednesday, June 22, 2022. Our crew is scheduled to include Steve Yoman, Linda King, Ben Goldstein, and me.

    Please come visit us in booth #35 to learn more about the EpiTrax Disease Surveillance System and EMSA (Electronic Message Staging Area). Now is the time for public health entities to turn to modern systems to perform disease surveillance, automate the ingestion of electronic laboratory records (ELRs) and electronic case reports (eCRs), report to the CDC through NMI reporting methods, track outbreaks, perform contact management, and do it all with a highly configurable system.

    Our booth will feature a VisionPort Mini to showcase EpiTrax and EMSA! VisionPort is our product combining hardware and software to give organizations the ability to create dynamic, shared immersive multimedia experiences. We are delighted when we have opportunities like this to use VisionPort to …


    conference casepointer epitrax emsa

    Understanding Linear Regression

    Kürşat Kutlu Aydemir

    By Kürşat Kutlu Aydemir
    June 1, 2022

    Green Striped Photo by Scott Webb

    Linear regression is a regression model which outputs a numeric value. It is used to predict an outcome based on a linear set of input.

    The simplest hypothesis function of linear regression model is a univariate function as shown in the equation below:

    $$ h_θ = θ_0 + θ_1x_1 $$

    As you can guess this function represents a linear line in the coordinate system. The hypothesis function (h0) approximates the output given input.

    Linear regression plot

    θ0 is the intercept, also called bias term. θ1 is the gradient or slope.

    A linear regression model can either represent a univariate or a multivariate problem. So we can generalize the equation of the hypothesis as summation:

    $$ h_θ = \sum{θ_ix_i} $$

    where x0 is always 1.

    We can also represent the hypothesis equation with vector notation:

    $$ h_θ = \begin{bmatrix} θ_0 & θ_1 & θ_2 \dots θ_n \end{bmatrix} x \begin{bmatrix} x_0 \\ x_1 \\ x_2 \\ \vdots \\ x_n \end{bmatrix} $$

    Linear Regression Model

    I am going to introduce a linear regression model using a gradient descent algorithm. Each iteration of a gradient descent algorithm calculates the following steps:

    • Hypothesis h
    • The loss
    • Gradient descent update

    The gradient descent …


    machine-learning data-science python
    Previous page • Page 14 of 218 • Next page