5 Factors to consider before building a new application
I am a software developer and project manager; passionate about solving problems through IT.
Search for a command to run...
I am a software developer and project manager; passionate about solving problems through IT.
No comments yet. Be the first to comment.
The realm of Brain-Computer Interfaces (BCIs) is rapidly evolving, promising to revolutionize human-computer interaction. From medical applications like restoring mobility and communication to entertainment and cognitive enhancement, BCIs are poised ...
If you’re into Technical Writing or a member of any tech community, you’ve probably heard of the buzzword “DevRel.” It’s strange and confusing how so many job roles have been introduced into the world during this information age, and even confusing t...
Web scraping is an automatic method to obtain large amounts of data from websites. The data is largely unstructured and can be further refined. In this article, we will be testing the desktop application Scrape Any Website as an exercise for the HNGi...
Java is a multi-platform, object-oriented, and network-centric language. Spring Boot is an open-source Java-based framework used to create a microservice. It provides a good platform for Java developers to develop stand-alone and production-grade spr...
Going straight to coding without a ‘definite’ idea of what your app should look and feel like is very risky and can lead to unnecessary rework. It’s therefore necessary to plan a roadmap or process flow. This does not mean you have to have it all pla...
You probably have a few unfinished projects sitting somewhere on your computer. Why's that? I'll give you a moment to think about it.
The mind of a developer travels far and wide, endless ideas that flow like a waterfall. Having a vivid imagination is great, but it often leads to lack of focus and abandonment of projects, as you want to do everything you think of. It's therefore very important for every developer to consider certain factors before starting a project.
P.S I'll be using project and application interchangeably.
These may include;
1) What (and why) to build? This is the first step in accomplishing anything. What do you want to build and why?
Some why answers:
a. To build on existing skills
b. To learn a new language
c. To build or add to a portfolio
d. To create new technology and solve a problem
e. To contribute to open source
f. To make some extra cash
g. A school requirement
2) Complexity of the project: Is it simple or complex? Do you already have the requirements or research needs to be done? Can you can handle by yourself or you need a team to assist? Will there be integration to 3rd party systems? What's the best way to represent the project?
3) Familiarity with tools & languages, and availability of reference material: Having knowledge & experience of the tools you need to build a project means less time and energy to commit. In the same light, relatively new technologies don't have as much reference materials compared to older technologies. I bet you'd find thousands of articles on Python that you would on Deno.
4) Time available to commit: An extremely busy person might not finish that side project he/she has started, depending on all other factors listed above. Plan your time well. Be true to yourself and the capacity to deliver within the milestones set for your project.
5) Cost implication: You can develop applications without spending a dime but that's limited. Integrations to certain systems have cost implications. Can you bear those costs? Are there cheaper alternatives to the systems you choose? Will your project generate enough revenue to cover the costs? Will you be able to sustain the costs in the long-term?
Having said all these, don't cage your mind, don't sleep on those ideas. Write them down so you can remember them. Just maybe you'll implement one of them and be the next tech billionaire.
If you like this article, feel free to comment and share. You can also reach out to me on Twitter | LinkedIn | Github
Ciao👋🏼