Showing posts with label NFL. Show all posts
Showing posts with label NFL. Show all posts

Thursday, September 2, 2021

Year 3: My NFL Score Prediction App on the Google Play Store

I'm about to kick off my third consecutive year as an app developer with my NFL Score Prediction app on the Google Play Store.

I started work on this application in January of 2016, over five years ago. Since then the web app has gone through various iterations, and over the past three years I've solidified some of design concepts.

One of the biggest design decisions for me was to make the application anonymous. To pay homage of the Internet of yesteryear, I only ask for a username and a password. I don't collect E-mail addresses, physical addresses, phone numbers, ask you for your identity, or anything. Why not?

Let's face it. This is an application that collects score predictions for football games. Do I really need to know anything else from my users? Nope. It's just for fun. It's not that serious.

One of the new functionalities for this year (2021-22)

Some updates for this year include a page that tracks your accuracy with some "visual analytics" which are in fact, bar graphs. I've also included the ability to view any users progress, whereas in the past I limited the Leaderboard to the Top 25 users only.

Some features that I should probably include going forward are: Detailed tracking of wrong and inaccurate predictions, and the ability to share your prowess with a "Share" button social media, maybe a button to randomize picks for each week. Just some ideas.

To help promote this app, I've started filming some YouTube videos where I break down my predictions.

As the season progresses I will upload some more videos to showcase the application. - Mike


Tuesday, July 7, 2020

4-Dimensional NFL Football

Years ago, I wondered how I might visualize a linear equation in 4 dimensions, or the generalized (though finite) "n" dimensions. When I asked for help, I was told, "You don't."

The truth is, you can. Here's an easy way to do so:

Playing surface for two (2) NFL teams

We all know and love NFL Football. Now, take into consideration the above playing field.

Normally, two teams play at once. At the conclusion of a game, there is a final score. Let's go with Bears 21, Packers 14.

Consider the final score as an "ordered pair." We've all plotted points on a X-Y axis system (Cartesian coordinates) when we were in, say 4th grade.

Just to be sure, we're plotting the ordered pair (21, 14) on an (x, y) axis system.

Now, let's introduce another team to the same game. So, let's say it's a three-way football game. Every team is playing on the same field, and with the same singular football. Of course, this isn't how football is played, but it could be.

Let's say the result is Bears 21, Packers 14, and Steelers 10.

Now we have 3-D, and our ordered triplet is (21, 14, 10) on an (x, y, z) axis system. What about adding one more team??

Playing surface for four (4) NFL teams

The above image demonstrates the playing field for four NFL teams to play against one another, at the same time. Let's say the final score is like so: Bears 21, Packers 14, Steelers 10, and Jets 7. This would allow for an ordered quadruplet (21,14,10,7) on an (x1, x2, x3, x4) axis system.

If you're unfamiliar with "n" dimensions, it works like this: You typically use "n" to denote an axis system that is four dimensions and higher. For example, (x1, x2, x3, x4, ... ,xn). So if there are 32 dimensions, n=32 and the ordered list ends with (x1, x2, x3, x4, ... ,x32).

The key concept here for our "4-dimensional" football game is that each team is playing on a singular surface, and they're all playing with the same football. If you increase the size of the playing field (with your imagination, you could conceive a set of 32 uprights, a field suitable for every NFL team playing simulatenously).

But for now, we will inspect a 4-dimensional NFL football game.

Imagine a game being played on the field with 4 sets of uprights, each of the four NFL teams battling for touchdowns and field goals.

The football itself, as is sails around the field from one player to another, and through each set of uprights, is a vessel used to facilitate variable interplay amongst each of the four dimensions (i.e. each of the four NFL teams.

The center of the playing surface (called "half-field" when there are only two teams) can be representative of an origin in the context of coordinate systems that stem from central, unifying points. This "center-field" point is equidistant from each of the four uprights and at the center of the playing surface, and does not move.

More specifically, the origin point is always the same: (0,0), (0,0,0), (0,0,0,0) and beyond.

The takeaway here is that as a spectator, if you observe one of these NFL games with four teams playing at once, on this type of field, you're seeing 4 variable components (i.e. dimensions) interacting with one another within a uniform, or linear environment.

The game's interplay is facilitated through a singular, unifying entity (in this case, an object... specifically the leather football itself). The game's outcome is a function of the leather football's trajectory around the field, as constrained by a separate list of official rules for play.

The playing surface is also finite and contains a singular origin point.

Using this example, our 4-way football game reaches a definite conclusion. We can imagine, after a grueling 60 minutes, the end result is Bears 21, Packers 14, Steelers 10, and Jets 7. Each play-call along the way allows for valuable analysis.

So the next time someone says, "You can't see four dimensions," you can reply with:
"Maybe not with perfect exactitude, but with some imagination we can conceive four-dimensional linear systems."

- Mike

Supporting material:
1. 
http://eusebeia.dyndns.org/4d/vis/01-intro
“Some believe that it is impossible for us to visualize 4D, since we are confined to 3D and therefore cannot directly experience it. However, it is possible to develop a good idea of what 4D objects look like: the key lies in the fact that to see N dimensions, one only needs an (N-1)-dimensional retina.” ... “What our eye sees is in fact not 3D, but a 2D projection of the 3D world we are looking at.”




 2.
https://people.eecs.ku.edu/~jrmiller/Papers/IVP.pdf
“based on the metaphor of being in a room with glass walls that one "flies through" the n-dimensional data set.” 

Tuesday, May 26, 2020

My NFL Score prediction app: Year 2 on the Google Play Store

I just updated my NFL Score Prediction game app. We are now entering Year #2 on the Google Play Store. You can download the application here (Android users, Google Play Store).
 
If you want to use the app, but do not have an Android phone, visit the direct URL: NFLScoreApp.com

The annual maintenance took me about 3-4 hours of work. This involved inputting the 2020 NFL schedule and resetting various internal knobs and levers. Not bad from a time standpoint... Although I will admit, I'm pretty lazy and I thought about just throwing my hands up and not renewing my server space about an hour in.

https://play.google.com/store/apps/details?id=xyz.appmaker.nbwebh&hl=en_US

It was pretty nice out today, so I missed out on the great weather but instead was stuck inside staring at the computer screen, which is one reason I left the tech industry to begin with, but whatever.

The application costs $20 a year for the server space and it cost me a one-time fee of $25 to become a Google Developer, so from a money standpoint, it's not a huge waste of money. It amounts to a couple of magazine subscriptions, more or less.

https://play.google.com/store/apps/details?id=xyz.appmaker.nbwebh&hl=en_US

This year (as opposed to 2019) I opened up the free app download to every single country that's available in the Google Play store. Last year I only had the application available to the U.S.A. and the United Kingdom.

Some improvements I made for the 2020 NFL Schedule: There is now a "My Stats" page that shows some bar graphs about your level of participation and gives your definitive ranking.

I redesigned the navigation to simplify it.

I limited the Leaderboard to the Top 25 users only.

I'm not sure how long I will continue to keep this app active, but I'm satisfied with how it's working as of now. I still believe in my concept, but I'd need major help to bring it to the next level.

If you are interested in working on or buying this application, i.e. purchasing the source code outright, shoot me an email. My address is listed on my "About Me" page on blogger. - Mike

Sunday, November 24, 2019

I built my dream app, and this is what happened

It took me two years of work to create my dream app. It's on the Google Play Store here, for now at least. The vision was clear, as were the motivations. To create an app that allows a userbase to predict the final score of a sports game, on an active "leaderboard" type of "Buddy List." This way, you could interact with friends in a light-hearted way in terms of who really knows what they're talking about before Sunday's Bears-Packers game.

 

I completed all work by myself, without help from anyone else. The first step was to create an LLC, just incase I were to receive investor interest. Then I weighed options to host the web application.

Over the two years it took to complete the app, I used Bluehost and BuyVM. Bluehost is helpful for a beginner, because they lay out the backend architecture of your site with a friendly GUI and set of menus. BuyVM requires more know-how and I wouldn't have been able to complete the setup without the knowledge I gained over the course of my tenure as a sys admin/ web app dev at a University.

In terms of the actual code writing, the most difficult aspects were the front-end interface and UX, the Leaderboard, the login mechanisms, and the overall design. I went through several iterations of the forward-facing markup before I settled on the W3.css I used for the PWA version of the app.

The backend scripting was all just written freestyle. The Leaderboard was the most challenging aspect and I actually legitimately failed trying to write it once. After a took a couple of months off I returned with a clearer vision for the Leaderboard and was able to complete it.

The app is heavily automated and updates on a single script execution that I do manually. The app would be fully automated if I were to pay for a service to put the final scores into a text file for me, but for now I do it myself. Once the scores are in the text file I just execute a single script and that updates the Leaderboard. As for building the app, it's also just a single script that completes that based off of the NFL Schedule as stored in a CSV.


I guess this puts a nail in the coffin into any conversations about, "I will create an app and become a millionaire." Hardly. I lost money making this. This should also put nails into the coffin on "portability." I wrote this app and ported it everywhere, from Ubuntu to Mac to Windows 10 to CentOS, building on production servers, and local machines regularly.

The two years I spent building this free application wasn't a total waste of my time. Over the course of creating the pages I studied Linear Algebra by myself and came to understand n-dimensionality in a proper fashion. I used a book I'd highly recommend by I.M. Gel'fand called "Lectures on Linear Algebra" and found it was quite useful and relevant to the idea of manipulating a creative idea in hyperspace. Had I not challenged myself, I would be less enriched.

How I wrote/recorded my album "Disposable" (2025)

Click to listen on YouTube, out now!! This blog post will attempt to fully encapsulate as much of the writing/recording/mixing process of th...