The following is my contribution to #startYourShift, a monthly writing project where everyone is given a general development topic and invited to give their personal thoughts and experiences. This month’s topic is “Compromise. Balancing Project Needs with Internal Ideals.”
I didn’t have to think too hard about what to write for this month’s topic. I live and work in Blacksburg, Virginia for a consultancy named Modea. Almost all of the work that we take on are large, long-term projects. It’s easy to spin up a quick landing page for a client without too much planning. But if you’re building something like Duke Medicine.org, which is what I’ve worked on for the past year, there needs to be a significant amount of structure.
In my mind as a front end developer, the most crucial part of the project is the very beginning. By the time we get to the point that it’s time for development to begin, everyone is antsy to get going. In a big project, you’ve already spent at least a few weeks planning, wireframing, and comping. There’s always a temptation to just get to building the site. That’s what’s fun, that’s why we are developers in the first place, and everyone else on the team wants to see something in a browser.
Ironically enough for this topic, I have a meeting with my boss today to go over new front end standards that eventually will be used throughout every project here at Modea. It seems like a boring step, but it just can’t be skipped for bigger projects. And that’s the crux of this month’s question.
It’s on each of us to honestly decide what’s an internal ideal and what is actually a project need. If it’s a project need, it’s on us to put our foot down and make that known.
There’s things that would be great to have but just can’t happen in reality. I’d love to be able to use flexbox more. But I have legacy IE to worry about and building a fallback isn’t time feasible given the other tasks I have to complete. That’s an internal ideal.
Do we have a clearly defined set of standards for our site? Are we testing our builds? Do we have code coverage? These are things that aren’t internal ideals. They are vital to the long-term health of the project.
An overly simple way to look at it is this. Internal ideals are often more to make us happy as developers. Project needs are more to make the project or the client happy. Not to say that they can’t do both. But if you’re trying to decide if something is a need or an ideal, that’s a good first question to ask yourself before taking it to your project manager or client.