Skip to content
Coding Fanatic
  • Android Development
  • News and Reviews
  • Road2Pro
  • Tutorials
  • Services
  • About

Can software be perfect?

  • November 1, 2017January 10, 2018
  • by Richard Clarke

Applications, or Apps for short, are pieces of software designed to solve a problem. Whether it increases productivity or breaks boredom, apps are good tools to have. But can they be perfected? 

Short answer? No. Software can never be perfected because daily issues continue to increase and change.

Take for instance a fart soundboard app. It might start with a single sound effect. But now users want more fart sounds, so the developers make 10 different kinds of farts. What happens when users want to record their own farts? And what about the ones who aren’t particularly flatulent but want to create a sound to call their own? These ideas are never ending. Most of the time they don’t even start on the user end, but the developer’s end.

How can users increase the volume? How can users sample more farts? How do I make it PERFECT? This is the core of every developer’s drive. Perfection. We all want to make the end-all be-all product. While this chase can be exciting, one must be careful not to get entangled by the idea of a “true” final solution.

In college, I created a program where users enter input, the program manipulates it, and displays output. It was a fairly simple task…one that I spent 30+ hours working on in one weekend. I wanted to be sure that if a user enters erroneous input, the program could warn the user and prompt them to re-enter their information without crashing. This meant searching documentation on the String class in Java, looking at different loops, and a sleepless night on the keyboard.

I figured it out after breaking night to complete the program. However, I lost a lot of sleep and exhausted myself for an A that I could have gotten for a fraction of the effort. My point is, we all want to do our best to create solutions. Instead of worrying about the optimal solution, we should shift our focus to solving problems at a lower level and expand over time.

The amount of time needed for optimal expansion of the software depends on a case by case basis. I believe this approach will help software developers deliver good products while leaving enough room for improvement later down the line.

-CF

Related

Pizza Time
Signal Private Messenger Review
Richard Clarke
Richard is currently a developer using Java and Android Studio to build custom applications for Android. Richard tutored in mathematics at Montgomery College, and worked in Information Technology before entering the Software Development industry as a Quality Engineer.
Java Programming

Related articles

Family Ties, 33/100 Days of…
Is Software Testing Right for…
Moving Forward
It’s a great time to…
How Fortnite Keeps Good Times…
They’ll slow you down, AND…

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Join the mailing list!

This field is required.

Check your inbox or spam folder to confirm your subscription.

Follow me on social media!

  • GitHub
  • YouTube
  • X
  • Instagram
  • LinkedIn
My Tweets

Join the mailing list!

This field is required.

Check your inbox or spam folder to confirm your subscription.

Follow me on social media!

  • X
  • GitHub
  • LinkedIn
  • YouTube

Archives

Theme by Colorlib Powered by WordPress