Code, Commit, Deploy: My First Django Deployment
Tags: python, django, javascript
Published: 2023-12-12 01:27:56

Hey _dev.to_,

Since my last post in which I covered my starting as a backend developer with Django {% embed https://dev.to/nueldotdev/starting-django-as-a-beginner-4efm %} I can say I have accomplished a few things. I have solidified myself in Django, I am more comfortable with languages, built multiple personal projects and most recently, explored the world of mobile development with React Native.


But the most worthy feat, is the one in the title. 


## In The Beninging
(not a typo btw😆)


It was mid 2023, I was desperate to learn something new, I looked at my options, trying to figure out what would be the best step forward, AI but it didn't feel right, other frameworks like; Reflex (Pynecone), Streamlit (Which I used while playing with ChatGPT prompts) and a bunch other stuff.

But there was an itch that wasn't being scratched, it was my need to see things placed properly and working as they should, and so I settled on React... I had touched it once or twice in the past but I believe I had a better understanding now.

I was wrong.
<img width="100%" style="width:100%" src="https://media.giphy.com/media/L20mbc7yRfsly/giphy.gif">

The issue was simple, I had little to not-so-competent knowledge of JavaScript, so thinking back now... 
<img width="100%" style="width:100%" src="https://media.giphy.com/media/Sttv5WXZxz59IDXtTt/giphy.gif">

I had to re-evaluate my plan, React had me questioning my life choices more than a multiple-choice test with no correct answers.
I just couldn't get it!
My method was simple, build an entire working project with vanilla JS, none of the fancy, just learn the dang language.


So I embarked on the journey you are hopefully still reading on.
It took me sometime to get things sorted, and just like all of us, **I HAD ISSUES**. From figuring out what to do, to finding a method of implementation, to surprisingly the least stressful part- _<u>The Deploy</u>_.

> I will cover that in a minute, but let's talk about the project first.


## The Project


Multiple projects came to mind, as it was not my first attempt at building something with JavaScript solely on the frontend, I already had somewhat of something feasible. A quotes web application called "_<u>Quotiva</u>_". It's a passion project I started with the mindset of deploying and completing, but circumstances at the time didn't let that come to fruition (I'd like to add that I plan on returning to work on it, we'll see how that goes).

So here I was months later, without any zeal of trying something new, I open up my wallet and I've got no cash... In that moment, it hit me, every impulse purchase I made within the last week, had accumulated to running me dry, yes I still live with my family, but I do desire the ever attractive and beautiful _<u>Financial Independence</u>_. Then I thought to myself, "Let me build an expense tracker, it'll help me personally so why not?"

Those words, coupled with my guilt of getting myself broke, sparked something in me, and within a week and some days (this consisted of drawing out a plan, finding a design and stuff) I had built a functioning expense tracker --> [SpendWise](https://spendwise.pythonanywhere.com/), code wasn't perfect, it had a lot of repetition (I broke DRY, I'm deeply sorry), the functionality was not as good as my sleepy eyes thought, but I somehow convinced myself to believe the words, "This is fine."

<img width="100%" src="https://media.giphy.com/media/NTur7XlVDUdqM/giphy.gif">


## The Deploy

> Yay! You made it this far. Let's not stop here, PLEASE?

### Emotion

It was night, if I can recall correctly, it was probably around 1 towards 2AM. I felt happy, overjoyed, a sense of achievement equal only to what I felt when I wrote my first line of code, it was exhilarating, it was... 

[_Okay see here's the thing, I have searched for the past 10 minutes for a word that accurately describes the feeling, but anyone who's felt it, knows it, this is the best word I could find... I don't think it really captures it, cause I don't think there's even a word, but, Let us advance forthwith,  gracefully continuing on this journey, unwavering in our resolve._]

It truly was... _EUPHORIC_


### Online and Running

[Python Anywhere](https://pythonanywhere.com/) was the easiest to get started with, almost 6AM at this point, and I thought, "Why not just deploy it?"
I don't remember it being hard, I followed some tutorials on YouTube, but looking back, it kind of was, I did get it up and running that night in maybe an hour or so, that could probably be because I was Cloud 9 high.

Over time, I have worked on the code, added more to the UI, changed a bit of the workflow and the project and even recently pitched the mobile app to my mind (Still waiting for feedback).
All-in-all, it was a process that I will definitely never forget, and it has helped my confidence as a developer, and it's all happening cause I realized...

<img width="100%" src="https://media.giphy.com/media/TKvHkcnbtGgKxQwlqu/giphy.gif">



## Conclusion

Having a project online and hosted especially as someone trying to gather experience is exciting but also a bit scary. On one hand you've got something that says, "Yeah, I made that," but there's also that feeling of, "Is this really good enough?"

In my experience (I do not have a lot), it's to _<u>JUST DO IT.</u>_ what's the worst that could happen?
I often bring it up when I attend a tech event or conference here and there and the reception I receive is overwhelmingly positive.


From a personal perspective, it's not great, but I believe few years down the line, I may come to see it as a watershed moment in my career (hopefully tech works out 🤞) thanks to this project, I've gained an ability to maintain a codebase, I am not perfect, but now I know what I am doing and how I should be doing it in a way that isn't to different from the original code I am working with, cause of this I began writing `.md` to record changes I have made along the way as I realized I kept forgetting what I had updated or deleted, this would lead to commit messages like this:

![Commit message for changes I couldn't remember](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h87ux6ji6z5en9p1wzbi.png)


With all that said, I guess all this does is point out why it's important to just build, and deploy if you can, for a backend dev like me, it's more than just what it looks like cause I have to make it function, so in those terms, I am one step closer to being a fullstack dev? Maybe😅

<img width="100%" src="https://media.giphy.com/media/KEYEpIngcmXlHetDqz/giphy.gif">

Alas, if you have followed this all the way here, then **_<u>THANK YOU</u>_**
I might be writing a lot more, maybe about React Native, so who knows😄
Hope I didn't bore you to death, but then if I did, you wouldn't be reading this right now... YAY Written media I guess [looked it up, it's Blog media? Cause apparently [_Blogging_ is a type of media](https://creativeedgemediagroup.com/blogging-vs-social-media-whats-the-difference-and-why-blogging-is-beneficial/#:~:text=Blogs%20are%20a%20relatively%20new,businesses%20with%20their%20marketing%20strategy.)

SEE YA LATER READER!!👋