An aspiring Full Stack Developer’s guide to quickly developing and deploying scalable web applications

Image for post
Image for post
Photo by Chris Ried on Unsplash

There used to be a time not so long ago when creating web applications was the work of child prodigies the likes of Mark Zuckerberg and Elon Musk. Or alternatively, you could enrol in a fancy college, spend the best four of years of your life (and your parent’s retirement savings) learning programming and then end up making subpar 90’s style web apps. Well, we’ve come a long way since then. With the inundation of open source tools and cloud infrastructure, developing and deploying phenomenal applications has been largely democratized. …

Using PostgreSQL to create stateful, multi-page applications with Streamlit

Image for post
Image for post
Photo by Mitchell Luo on Unsplash


Streamlit has come a long way since its inception back in October of 2019. It has empowered the software development community and has effectively democratized the way we develop and deploy apps to the cloud. However as with all new tools, there is still some way to go, and while the Streamlit team works tirelessly on addressing requests for new features, we developers ourselves can create ad hoc work arounds in the meantime.

A feature that Streamlit currently lacks, is the ability to implement programmable state for its apps. In its current form, there is no internal state that can store volatile data such as user inputs, dataframes and values entered into widgets. Given that Streamlit innately re-runs the entire script when the user triggers an action in the event of pressing a button or switching between pages, the app will reset all inputs and dataframes. While for many applications, this is a non-issue, for others it can be a deal breaker. Just imagine if you are trying to build an app with sequential logic using incremental steps, the absence of a stateful architecture would render Streamlit as an unsuitable framework. The founders have committed to releasing a stateful version in the near future, but until then, one can use an open source database such as PostgreSQL to develop a hack as I will explain below. …

The short answer is yes, but there's more to it than meets the eye

Image for post
Image for post
Photo by Cookie the Pom on Unsplash

Can I take the plunge? Will my engineering background help me in making the cut? Can I jump on the data science bandwagon?

If you see yourself asking any of these questions, then you’ve probably arrived at an increasingly common junction in your STEM career. There are many of us who have been mesmerized by how impactful and ubiquitous data science has become in our lives and feel the urge of somehow adjusting our careers to it. Truth be told, I was one of those people several years ago. Having come from a engineering background myself with several years of experience to my credit at the time, I began to see the comparatively greater impact of data science. And I decided to take the plunge myself; I enrolled in a masters program and two years later I landed my first software development job with an emphasis on data science applications. …

A review of the University of Illinois at Urbana-Champaign’s Online Master of Computer Science in Data Science

Image for post
Image for post
Photo by Myriam Jessier on Unsplash

In a post-COVID dystopia or utopia depending on which half of the cup of water you’re looking at, the relevance of an online medium through which a degree can be administered, completed and conferred cannot possibly be overstated. A once-in-a-century pandemic aside, there is a multitude of other reasons for which one could contemplate enrolling in an online program. Namely, being a working professional with limited time, being a parent with children to juggle or simply not having access to a world-class university at your doorstep. …

Developing an AI Fintech application to analyze and determine the financial health of banking clients

Image for post
Image for post
Report generated by Bank Scan

In a world where 2–3 billion people are underbanked, including 25% of households in the United States, the need to provide intelligent banking analytics cannot possibly be overstated. For those who may not be familiar with the term ‘underbanked’, it is defined as an individual with access to a bank account but with limited financial services and insights. Especially for many of us millennials, the absence of a solid financial advisor such as the likes of Apple Pay, can see us siphon off our wealth at warp speed.

Ostensibly, not everyone has access to advanced analytics provided by their bank or smartphone, however most of us will have access to some form of a bank statement or something to that effect. While current analytics services have the luxury of directly interfacing with your bank account and thereby acquiring information objectively, a third party service would need to quite literally read and digest the information printed on your bank statement. This is where a Fintech application with artificial intelligence can interface and add value to our poorly underbanked client. And this is indeed what this AI Fintech application hereafter referred to as ‘Bank Scan’ will do. …

Using computer vision to develop an inexpensive DIY speeding and traffic radar

Image for post
Image for post
Image by author


The scope of this tool, is to implement an image processing-based traffic radar that detects vehicle number plates and subsequently measures the instantaneous vehicle speed. This application of computational photography/image processing was selected in order to develop an open source and cost-effective alternative to current speeding radar systems that can carry a price tag upwards of $6,500 per unit[1]. As an open source technique, this will enable local authorities, municipalities or any individual to implement their own low-cost ($1,700) and convenient traffic monitoring systems with off the shelf devices and equipment.

To implement this application, a set of easily accessible and relatively inexpensive items and programs were selected. Namely, an iPhone camera with 60 fps, 1080p resolution, exposure time of 1/120 seconds and an activated flashlight was used for nighttime monitoring, while a Nikon D7000 camera with 24 fps, 1080p resolution and an exposure time of 1/60 seconds was used for daytime monitoring. Both cameras were setup with an adjustable tripod that was situated immediately to the side of the road with an inclination of 0°, a horizontal angle of approximately 20° towards the road and an elevation of approximately 2 feet off the ground. A total of 10 test cases were experimented using 3 different vehicles of varying sizes and speeds ranging from 20kph to 70kph at various ambient lighting conditions ranging from morning to evening. The test matrix can be seen in figure 1. Subsequently the recorded continuous footage was processed using several Python scripts to detect and report the number plates and vehicle speeds; a detailed description of this step can be found in the proceeding section. …

Developing an NLP driven trading instrument sentiment analyzer using the Google News API

Image for post
Image for post
Photo by M. B. M. on Unsplash


The Trading Sentiment Analyzer will compute a normalized ‘sentiment’ score for any stock, currency, commodity or index by analyzing relevant and current news articles on the internet. A video explaining this program can be found here. The source code can be found here.

What is the function of the program?

Traders are well acquainted with the phenomenon of ‘sentiment’ in stock markets and trading. A professional trader must not only consult fundamental technical indicators when contemplating whether to purchase an instrument, but must also observe the sentiment regarding that individual instrument. The Trading Sentiment Analyzer will analyze any currency, commodity, cryptocurrency, stock or index that the user requests by retrieving textual information from news articles from the Google News API. Subsequently after analyzing various articles, the tool will provide a quantified score on the one day, one week, one month and overall ‘sentiment’ of that instrument. A perfectly bullish (positive) sentiment will receive a score of 1.0 whereas a perfectly bearish (negative) sentiment will receive a score of -1.0. Any score that is in between will indicate to what extent that trading instrument has a positive or negative sentiment. …

Are we inherently unjust to women, or does this reality constitute a broader misunderstanding?

Image for post
Image for post
Photo by Unsplash

In the face of continued efforts and affirmative action programs to promote engineering careers to young women, it remains one of the most male-dominated academic disciplines. How has this come to be? Are we inherently unjust to women, or does this reality constitute a broader misunderstanding? Deciphering the social dynamics of women in engineering is an issue of increased salience more than ever before. A moral dilemma is at hand; is society unjustly depriving half of its own members from an equal vantage? Or have women passively lead from behind in their struggle for empowerment? The reasons for such a perplex quandary lies within several key arguments: namely — stereotypes and incorrect beliefs, lack of authentic career choice narratives and the self-mitigating role of women. Arguably the absence of women in engineering is due to a laissez-faire and self-deprecatory approach to work, whereby they willingly succumb to unwarranted male dominance. It is imperative to table these arguments in an attempt to reach a judgment on why exactly the status quo has has been sustained. …

Find an opportunity, make it your career and then bring your dreams along with you

Image for post
Image for post
Photo by Scott Graham on Unsplash

It goes without saying, that the most abundant and proliferated advice given to a young adult contemplating their career choices is to, “chase your dreams” or “follow your passion”, or ostensibly some other form of a superficial expression along the same lines. It is also fair to claim, that such advice is practically cliché and befitting of the mob mentality sort of society that we have transformed into, whereby common sense has been largely replaced by the availability cascade of certain self-reinforcing notions that otherwise lack any empirical form of veracity. Perhaps each and every one of us can relate to a landmark moment of our lives, where a ‘wiser’ elderly individual, proclaimed that pursuing our dreams and passion will somehow magically guide us to a lifetime of professional success and bliss. …


M Khorasani

Hybrid of a data scientist and an engineer. Logistician. Candid. Realpolitik. Unlearning dogma one belief at a time.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store