Back to React
I’m now finishing week 12 of my 15-week software engineering bootcamp. While this isn’t the most technically difficult week, it’s been one of the most challenging.
My developer journey began in JavaScript. We moved onto React. But then we’ve spent the past six weeks in Python, SQL, and Flask. I think I’ve found in this transition that I have an affinity for Python and backend development, at least at first blush. That became pretty clear this week as we made the leap to full-stack by reintroducing React.js to our projects.
I’ve always had a love of spreadsheets. I know — I’m strange. My brain just works well when thinking about things as lists, arrays, models, and groupings. When I was introduced to VLOOKUP over a decade ago, it opened many doors in both my mind and the job market.
This has bode well for me learning Python and backend development. I’m not saying that I don’t like frontend work. In fact I do. But it’s proving more challenging for me to think within the parameters of JavaScript code, just as it was when we started out 12 weeks ago.
Get W’s stories in your inbox
Join Medium for free to get updates from this writer.
I think this might have to do with the more nebulous nature of JS. Yes there are rules, but they’re bendable, and there may be dozens of ways to accomplish what it is you’re trying to do in that language. When compared to the rather controlled, strict, but ultimately logical world of Python, JS is almost too loose (if you will) for someone like me, at least at first blush.
For example: When creating a backend database and API in Python, you create models which enforce rules on your tables. You create routes which guide requests to that server. There’s little room for variance. You build something that meets the requirements, and the things you’ve build require the client to interface with it in a specific manner.
When creating a frontend interface in JavaScript and React, you’ve got a lot of latitude in how you want something to look and function, and that’s before you even get into CSS. There might be a thousand unique ways you could create something like a tournament bracket. Whatever unique method you use can be molded and stitched together with other components. As long as your endpoints link to the database in a way the db can understand, you’re good to go.
But that freedom and latitude also means that while the components you build might function just fine on their own, they not work well with one another. You spend large amounts of time trying to figure out how to get them to link and talk to each other properly. And the most subtle tweaks can derail your whole project, and without Python’s relatively stringent logic pointing to exactly where things have broken down, JavaScript bug-finding involves a lot more trial and error. It’s almost too much at this point in my journey.
I’m sure as I get more comfortable coding, I’ll get better. I actually love the promise of JS and React’s avenues for creativity. But for right now, my mind lingers on Python’s predictable logic. I almost wish they’d taught us Python before JS.
You’ve probably noticed, this blog post lacks my usual depth, whimsy, and tangents. I love to write, but I simply don’t have the time for my writing to be fun today. This blog is literally one of the deliverables I have to meet for the week, and now I consider it met. Hope for something better next time.






