DEV Community


Posted on

My Path to the Rails Way: Part One

When I set out on my journey to become a rails developer I knew the road was going to be an uphill climb. Feelings would ebb and flow, motivation would be depleted and the feeling of wanting to give up would also most likely wash over me.

I will give you the honest truth here... all of that did happen. In addition, I had two opportunities that fell through because of tax reasons(one of which actually presented me with an offer but later had to revoke it because the company was not setup to hire people from Louisiana, which is where I am currently located). As 2021 approached, I told myself that I needed to double down in my efforts and focus in the coming year. Well January 1st came and started with receiving an email at 9:00am informing me that I would not be moving forward in the interview process for a company that I had applied to and had a real interest in working for.

A few days later I became aware of the thoughts of an employee at a certain institution, all of which will remain nameless, which, to present in a distilled form, that there was almost no chance that I would be able to land a job as a ruby developer and that I should shift my focus to React/Node/ and/or learn Java/C++.

And with that, the fork in the road ahead appears.

Do I go against what I feel passionate about deep within my guts and accept defeat and shift my efforts in learning or do I give a middle finger to any and all naysayers and consume all of this as fuel to drive this ship forward?

Well friends, to give in would just not sit well with me because to give in means doing work that I am not passionate about and that's not going to serve any company that I may become employed at nor myself. Option two sounds like the way forward to me.

So with that, I want to document this journey in blog form in an effort and hope that, if I am able to successfully achieve this goal, then this can be a road map for others to come.

The plan with this series is to build a rails app from the ground up, step by step. Learning how to make decisions on designing the system, selecting the right tools for the tasks at hand and when. Also covering topics like testing, setting up continuous integration/ deployment pipelines, integrating payments, sending and receiving emails, in app messaging, generating reports and many more things.

It most likely won't be easy but as they say, nothing worth doing in life comes easy.

Along the way there will most likely be small detours into building extremely small side apps for the purpose of learning how to use certain tools/ gems but I will share that part of the journey as well. In addition, any reading materials I consume will be documented as well.

With all of that stated, let's talk about the app that I plan to build. Currently I have a "job" as the manager of a rehearsal room facility(I don't get paid per-say but I get to have a room in the building for free). The facility has twenty four rooms which tenants rent on a month to month basis, paying rent between the first and fifth of each month otherwise incurring late payment fees.

We will get into more detail about the requirements of the application but I want to end this post with the problem that building this application solves(hopefully).

Currently a spreadsheet is made for whatever the current month is and used to keep track of who is in what room, the tenants phone number, the rooms monthly rental fee(the price varies based on the size of the room), whether or not they have paid yet this month, what type of payment did they make(cash, check, online, etc.) and any notes pertaining to the tenant and/or room. This spreadsheet has to get generated every month and is honestly just a hassle to setup and fill out. Also, any communication between myself and a tenant is done via a phone call or text but it would be nice to have an in app messaging system for communicating with tenants and being able to have those conversations documented in a central location that is not my cell phone.

I think this is a good stopping place for now but I am extremely excited about the future and I hope you are willing to join me in this journey.

Happy Rubying!

Discussion (6)

jaredcwhite profile image
Jared White

I can't even begin to tell you how much I respect what you've written here. It's one thing to spar on Twitter about the minutia of building software. It's another thing entirely to make hard career choices so that you can keep building with and learning the tools you deeply care about. I honestly don't think most programmers are willing (or able!) to take that stand. Way to go.

collinjilbert profile image
Collin Author

Wow, thank you so much Jared for those amazingly kind words. I hope that in putting this out there and seeing it through, I can inspire at least one person to take that same stance and follow what they truly feel passionate about and not settle for something other than what they feel drawn towards. I think in making this choice a long and difficult road has been paved maybe even repaved in front of me, yet I feel it will be an extremely rewarding journey, one that I am happy to take. Reading your words makes me even more certain of this and for that I again sincerely thank you for them! Thank you.

hanspln profile image
Hans P Lie-Nielsen

Thanks for a great writeup!

Stay focused! That's the hardest part once you get everything rolling. Then you'll want to add too many feature you'll never need. I guess that's part of everyone's journey.

When you're ready to jump into the more realtime stuff like StimulusReflex or the new Hotwire, my suggestion is a task list for the facility.

collinjilbert profile image
Collin Author

Thank you, I'm glad you enjoyed it. I like you're idea in regard to the realtime stuff. I actually had a similar idea but it was for a service ticket system (which is basically a task list lol) for room or building repairs.

bizzibody profile image
Ian bradbury

2021 sounds like it’s going to be a great journey!

Look forward to hearing more.

collinjilbert profile image
Collin Author

Thanks for reading Ian! I'm hoping that 2021 will indeed be a great journey, hopefully full of growth, knowledge sharing and meeting new people in this wonderful ruby community.