The Easiest Way to Host a Multi-page Dashboard using Python, Dash, and Linux for Beginners

Subscribe to get access

Preview:

Why Host a Dashboard?

One of the aspects I enjoy most about data analysis is sharing insights I find from the data. Creating a dashboard to share insights using Dash is easy if you know a little Python, but hosting an app can get a little tricky. I swear, my first time in a Linux server I probably spent more time figuring out how to troubleshoot errors than code the app! If you’re trying to break into a career in data, understanding how to host apps and dashboards gives you the ability to easily share a portfolio of projects to potential employers or clients.

Dashboards in Python for Beginners using Dash — Live Updates and Streaming Data into a Dashboard

Subscribe to get access

Preview

Stream Data to Dash

There are several reasons to analyze streaming data. Perhaps you’re looking for anomalies in credit transactions, monitoring network traffic and server resources in a time series, or capturing tick data for automated trading algorithms. Or maybe you simply want to see what people are saying about wine on Twitter! In this article, I’ll explain how to use the Python library Tweepy to stream live tweets into a the wine dashboard built with Dash.

How to Start a Business in an Afternoon Using Python and Dash Part 2 — Creating a Contact Form and Blog

Subscribe to get access

Preview

Building Your Online Empire

The road to riches is paved with multiple income streams, and these days it has never been simpler to start an online business with little to no start-up capital. In my previous guide, How to Start a Business in an Afternoon using Python and Dash, I explain how to sign up for an Amazon Affiliate account and create a home page for an affiliate website from scratch using Python and the Dash framework. If you have not read the previous guide, do not worry! This article contains the complete advanced template code for the website and these new features!

How to Start a Business in an Afternoon Using Python and Dash Part 1

Subscribe to get access

Preview

Become an Entrepreneur

A few years back, I started exploring ways to make extra money and always saw affiliate marketing pop up as a popular option. I did some research and decided to give it a try. I picked a niche I thought I’d enjoy: Reviewing food. I created a website and tried to build a business around reviewing beef jerky, and I called it Ultimate Jerky Review (UJR)! Although I shut down the website since it wasn’t a very lucrative endeavor, I learned a lot about how to set up and get started affiliate marketing.

How to Setup User Authentication for Dash Apps using Python and Flask

Subscribe to get access

Preview:

Secure Your Data

Not long ago, it was declared that Data is the new oil in the digital economy[1]. Since that declaration, understanding cyber security and how to protect data has become of utmost importance for businesses around the globe. As someone who works with sensitive education data every day, I understand first hand the seriousness of keeping records protected.

How to Create Powerful Web Apps and Dashboards using Dash 2.0

Subscribe to get access

New to Dash or Python?

It has been over a year since I created pythondashboards.com to help people learn the Dash framework, and my tutorials have gotten over 300,000 views to date. I am truly thankful to everyone that has supported me and found my content helpful. I appreciate the feedback and will continue to publish content to help beginners and everyone else master the Dash library.

The Auto-Sommelier — How to Implement HuggingFace Transformers and Build a Search Engine

Subscribe to get access

Read more of this content when you subscribe today or view it on Medium.com

Creating the Auto-Sommelier

Back in August 2019, I put my first Natural Language Processing (NLP) project into production and hosted the Auto-Sommelier on my website. Using TensorFlow 1 and the Universal Sentence Encoder, I allow users to describe their ideal wine, and return wines with a description that is similar to the query. The tool transforms wine reviews and user input into vectors and calculates the cosine similarity between user input and the wine reviews to find the most similar results.

Enter Analytics: From Boot Camp to working in Data Science

When researching boot camps online, there always seem to be a lot of mixed opinions. There are a lot of them out there, some more expensive than others, and they all have slightly different focuses while claiming they can churn out analysts, full stack devs, and/or data scientists in as little as 12 weeks. In my experience, education tends to boil down to you get out what you put in, and my experience taking a Data Visualization and Analytics boot camp was no different.


Why a Boot Camp for Me?

I’ve always been interested in computers, but never thought computer science was for me. Growing up, I never felt like I was that good with numbers so I didn’t try that hard when learning math. In high school, I took a course on Java and a course on computer networking fundamentals. Neither of them captivated me, so I decided to keep computers a hobby and ended up studying Scientific and Technical Communication in college.

When I landed my first job out of college as an intern technical writer at a software company, I got my first taste of what computer science was really about. I fell in love with a language I had never seen before: SQL. When my internship ended, since I loved the company, I decided to take a job with their support team. It gave me an opportunity to write every day, pick up technical skills like SQL, and learn about the software development life cycle.

After six-ish years of climbing the ladder in the support department, I felt like I hit a wall. I had transformed into a product expert who was reading and writing SQL all day. Although I had some skills, I felt like getting to the next level was going to take credentials I didn’t have. Additionally, my interest in analyzing data was beginning to take off. For example, I was obsessed with the stock market.

While researching some stocks one night, I came across an advertisement saying something like, “Learn Data Analytics in just 24 weeks at the University…” Since it was advertised through my alma mater university, I decided to click the link and download a brochure. After doing more research, I learned it was a coding boot camp put together by a company named Trilogy, and it focused on teaching data visualization and analytics skills using coding languages like VBA, Python, and JavaScript. The boot camp was expensive, and even though I didn’t enjoy coding in high school, I decided I had matured enough as a person to give it another shot. I signed up for the boot camp and hoped it would take me down a path into data analytics!


Starting the Boot Camp

While researching what I had gotten myself into, I read a lot of reviews about people not liking their teacher. I was super lucky in that regard and got a fantastic teacher. He was humble, patient, knowledgeable, and good at keeping the class interesting. One of the benefits of taking a boot camp that offers in-class instruction is getting to meet like-minded and motivated people face to face. It allowed me to make some new friends as we all struggled through the process of going back to school and tackling fast-paced content.

I went into the course with very little Python experience. I had written a couple scripts to scrape some stock data from finance websites, and I messed around with scikit-learn to make a few predictive models, but majority of my technical skill set was SQL. Within the first third of the boot camp, we had worked through fundamentals of Excel and VBA, and started working with python, APIs and JSON data. It was an overwhelming amount of content, but it really made me push myself to focus and learn. My free-time evaporated as I dedicated it to homework.


Creating a Portfolio of Projects

The boot camp focused heavily on creating a portfolio of projects that could get employers interested. They were mostly group projects which was nice since it forced us to strategize merging code and gave us experience developing on a team. We were able to form our own groups, pick whatever topics we wanted (for the most part), and then were off to the races. We had almost zero restrictions as long as we met bare minimum requirements.

If you’re an over achiever or have experience with any of the languages, the projects acted as great opportunities show off a bit. Some of the people in my cohort had advanced degrees, and the collective background of the class was broad. There were quite a few people who had a PhD or MBA, and there were people who had never written a line of code in their life. Because so many people came from different fields, there was no shortage of interesting project topics. The projects also gave us a chance to work on our presentation skills since we had to present them to the class once they were complete.

You can see some of my projects here:

Generating Wine Recommendations
Visualizing World Cup Data
Extract Transform Load with Comic book data and MySQL
Analyzing Midwest Murder Data
Visualizing Options Trades

Criticisms of the Boot Camp

We covered a lot in a short amount of time… almost too many topics, actually. Just when you start getting comfortable and ready to do more advanced things, they change the topic. It is really up to you to decide what direction you want to take things outside of the classroom. For example, I am focused on python the most because I wanted to get into data science.

I do wish there was a larger focus on analytics in the class. Although we learned some basic statistics and fundamental analysis techniques, there was a large chunk of class devoted to web technologies like HTML, CSS, and JavaScript. I understand putting it in there so we can learn to code interactive dashboards and web pages to show off our projects, but it ended up taking a third of the class. I didn’t mind it because I work at a web-based software development company, so understanding JavaScript was applicable to my job, but others in the class found little value learning HTML and CSS. Another reason they cover basic web design is to make it easier to segue into web-scraping.

The coursework focused more on visualizing data than analyzing it, which might be great if that is what you want to learn. I was hoping to get more feedback on my assignments so I could gauge how I did with my analysis. The only stats we covered were things like Gaussian distributions, standard deviation, ANOVA, Chi-square, student-t, hypothesis testing, and a few other stats functions that I can’t remember from the SciPy Python library.

If you have no coding or comp-sci experience, I recommend checking out some online resources first to get a bit of knowledge because the course is really fast paced. Beyond Excel, VBA, Python and JavaScript, the course also touches on SQL, R, tableau, machine learning, and big data. I left the boot camp having exposure to all kinds of languages, but it just isn’t possible to remember them all because we only cover them briefly. I had to supplement the class room learning with additional online courses to get a deeper understanding of the languages.

Life After Boot Camp

After boot camp, I felt like I accomplished a lot and was able to develop a foundation of coding skills. It opened the door for me to advanced my career. A couple months after completing my certification, I landed a job as a Software Product Analyst on the Data Science team at my employer. Now I get a chance to work with experienced data scientists, software engineers, data engineers and data analysts. I developed a passion for coding and an enthusiasm for data science. Beyond the coding and career development, I made some new friends in the boot camp who I still hope to see from time to time. The boot camp changed my life for the better because I busted my ass and kept a positive attitude even though I had to sacrifice a lot of time and dedicate myself to learning something new.

My last day before starting my new career post boot camp

Final Thoughts

Boot camps aren’t for everyone, and if you’re thinking about taking one, make sure to research what the course offers. If you think you’re up for doing the work, they can definitely change your life and start you on a new path. The boot camp worked for me, but I already knew SQL and already had a passion for data. If you’re on the fence, check out all of the free MOOCs or online content that can help you decide if the topics are right for you.

Check out my github if you’re interested in seeing some of the assignments and projects I completed in the boot camp.

https://github.com/bendgame?tab=repositories

Medium Articles

I’ve been writing articles on Medium. Check them out!

Exploring Beef Jerky Data using Python https://medium.com/@erickleppen01/exploring-beef-jerky-data-using-python-115054741608

My Trick to learning List Comprehensions in Python https://towardsdatascience.com/my-trick-to-learning-list-comprehensions-in-python-8a54e66d98b

Pivoting your Data using Python, SQL or spreadsheets https://towardsdatascience.com/pivoting-your-data-using-python-sql-or-spreadsheets-62736ba23921

Analyzing Wine Descriptions using the Natural Language Tool Kit https://towardsdatascience.com/analyzing-wine-descriptions-using-the-natural-language-toolkit-in-python-497ac1e228d5

Web Scraping board game descriptions with Python https://towardsdatascience.com/web-scraping-board-game-descriptions-with-python-7b8f6a5be1f3

Affordable options for hosting your Data Science Projects https://medium.com/@erickleppen01/affordable-options-for-hosting-your-data-science-projects-7d290e8a5c11

Embracing Manual Data Collection https://medium.com/@erickleppen01/embracing-manual-data-collection-9ebccbac578d

Generating Wine Recommendations using the universal sentence encoder https://towardsdatascience.com/generating-wine-recommendations-using-the-universal-sentence-encoder-d086edd13d00

Big Changes

Life is going great! I’m getting married in nine days, I’ll be starting a new career in three weeks, I’m planning my next coding project, and studying hard to keep some of the skills I learned in the Data Analytics boot camp I completed a couple months ago. I have a lot of big changes coming up, and I know I will accomplish a lot of great things as a husband, Product Analyst, and data science enthusiast.

I’m proud of the wine recommendation app I was able to put together and host at robotsdodream.com, but I need to make a few improvements to enhance the user experience. I am working on redesigning the site so it returns the results on the same page, instead of redirecting the user away from the search tool. I’ll also be embedding links within the results so you can shop for the recommendations on wine.com.

The last feature I have planned for the coming months is a “Random” button. Not just any-old random button, though… I want to engineer a feature that could generate a random search query to produce the recommendations. Not only could I practice some NLP data manipulation techniques, but also I’d be able to provide some insight into wine descriptions. For example, I am not a wine connoisseur and don’t know a whole lot about ways in which people describe wine. These are some of my typical queries:

  • red and easy to drink
  • sweet and fruity
  • buttery rich chardonnay
  • full bodied and flavorful

As you can see, I don’t have an exhaustive vocabulary when it comes to wine. Using data science to better understand some of the key words used in the descriptions will hopefully help me produce better recommendations.

While I’m working on those features, I’ve started planning my next project. My soon-to-be wife and I have been talking about getting into some board games. As a life long gamer, I think analyzing some of the top board games on boardgamegeeks.com would be a fun way to decide which game we try next. I created a plan for the dataset and started working on a python script to scrape some data. I’ll write up a tutorial on what I did once I’m done with the data engineering phase.

Other than the coding projects, my wedding is right around the corner and I landed a new job that allows me to apply the experience I’ve gained over the last 8 years in new and exciting ways. Life is busy, but I am enjoying my upward spiral and can’t wait to see what challenges I’ll overcome next.