Sunday, January 10, 2021

PCS - Deployment

 A small update.  I now have an easy publish and deploy step so I can easily make changes and deploy them to a development testing site to gain feedback.  Now I just need to do something worth getting feedback.

Saturday, January 9, 2021

PokerClubStats.com is coming


About ten years ago I created some software and a website to track stats for the Ante Up Intercontinental Poker Series (AIPS).  You can check it out at http://aipsstats.com.  Now I'm planning on writing a site that can handle Rec.Poker stats as well as pAIPS, which are two online tournament clubs that I help run.

Background

Some of you may know that I'm a computer programmer in "real" life.  I started my career writing C on Unix platforms.   In 2002 I transitioned to writing software for Microsoft's .NET Framework.  We created are software on .NET Framework 1.0 using ASP.NET WebForms and have continued development on it ever since.

Several things have been introduced into .NET that we haven't been able to make use of in our software at work.  I want to learn these technologies to see if there is a way to make use of some of it as we update our software.

Technology Mastery Goals

Here are some of the pieces of technology that I want to gain some proficiency:

  • Entity Framework - An object to relational mapping  (ORM) technology.
  • Razor Pages - A new style of performing HTML markup for web pages.
  • Identity - An API that supports login and credentials management.
  • .NET Core - the new cross/platform release of .NET.
  • Linux deployment - Linux boxes are cheaper to rent. So I'm going to target Linux as my deployment platform.
  • SQL Server Express on Linux - This is a free version of SQL Server that runs on Linux
  • Automated Testing - I'm going to figure out how to perform as much automated testing of this software as possible.
  • GIT Source Code Management - This is becoming the industry standard for source code management.
I could write software without learning these technologies.  It would probably be much faster, but I do want to gain some mastery here and this project is a good excuse to do just that.

Software Goals

I want to be able to easily track the three different Rec.Poker  series and the pAIPS series.  The goal is to allow players to deep dive in to stats for each player like:
  • Return on Investment (ROI)
  • Number of finishes in a given place.
  • Number of final tables
  • Changes in player of the year (POY) races
Eventually I want other clubs to be able to use the software for their own purposes as well.

Development Approach

I'm using an iterative software development style.  This means I'm planning on releasing new versions often, starting in a beta mode.  I'm hoping to get volunteers to help me beta test the software.  Let me know if you are interested in helping beta test.

Current Status

I started experimenting with the code in October 2020, but real development didn't start until November.  Because this is very part time, progress has been slow.  But I'm hoping to start having regularly published beta releases available.

I have the basic data model defined.  And have figured out how to write the business logic.  I'm currently working on Identity so administrators can log-in and add more tournaments, seasons, series or clubs.