Tag: software
What is SaaS Software?

A SaaS, “Software as a Service,” application is a type of cloud computing application that is hosted by a third-party provider and is made available to customers over the internet. SaaS software and apps typically provide customers with business applications which are delivered on a subscription basis. Customers then pay a set fee on a regular basis, usually monthly or yearly, to access the application. Many SaaS apps offer free versions of the software that can be upgraded for more functionality. Many also offer a free or inexpensive trial of the software so users can determine if the app suits their needs prior to committing to a paid plan.
Questions answered in this article include the following:
What are the advantages of using SaaS software?
Incorporating SaaS apps into a business often has many advantages:
- Flexibility: SaaS applications are often highly scalable and can be customized easily to meet the changing needs of a business.
- Ease of Use: SaaS applications are usually easy to set up and use. This allows a business to start using them quickly with minimal effort.
- Automation: SaaS applications automate many manual processes. This saves businesses time and money.
- Accessibility: Saas applications are typically accessible from any device with an internet connection so users can access them from anywhere that has such a connection.
What are the disadvantages of using SaaS software?
SaaS software also has a number of disadvantages:
- Limited Control: Unlike traditional software, with SaaS apps, the user can only access and configure the application as much as the provider allows and cannot customize it beyond that point.
- Interoperability: A business may not be able to integrate SaaS applications with their existing applications and systems. This is particularly true if a business needs to access data from multiple sources.
- Reliability: SaaS software can be unreliable because it is not accessible if the SaaS provider or the internet connection goes down.
Is SaaS software a good option for my business?
It depends. It can be, but it depends on the parameters of the business. SaaS software can be very cost effective for many businesses because the business does not need to purchase, install, and maintain the software themselves. If the business requires multiple users to access the application, however, it can potentially become very expensive. Also, since security is maintained by the host company who regularly monitors and updates the software, it tends to be very secure, but it is hosted on the cloud, which typically reduces security. In addition, if a business needs a lot of control over the software beyond what a provider allows or if they need to integrate many systems, SaaS software may not be the best solution for them. Whether SaaS software will be a good option for a business depends on their needs: what they need help with and whether the SaaS software can do what they need it to do. Only they can decide.
What are the most common problems Saas software solves?
The four most common business problems that SaaS software can solve can be grouped into four categories:
- Accounting and Bookkeeping: SaaS accounting solutions can help businesses automate and streamline their financial processes. These processes include invoicing, payments, and payroll. For small businesses, SaaS software often eliminates the need for manual bookkeeping and simplifies the entire financial process.
- Customer Relationship Management (CRM). CRM SaaS solutions help businesses manage their customer relationships in a more efficient, effective way. CRMs typically include such features as lead tracking, contact management, and automated communications, which enable businesses to easily manage their customer base.
- Human Resources (HR): HR SaaS solutions provide businesses with a range of tools and features to help them manage their employee data and performance. This includes scheduling, onboarding, payroll, and employee benefits.
- Project Management: Project management SaaS solutions help businesses plan, manage, and track their projects. These solutions typically include features such as task management, resource management, and reporting. This enables businesses to effectively manage their projects and ensure successful outcomes.
A future article will go into more detail about the problems that SaaS software can solve as well as possible recommendations if you need help that could possibly be provided by SaaS software.
Matraex would like to be your go-to source for answers to your app development and technology questions. Feel free to contact us, leave a note on our website’s instant messaging feature, or leave us a question on our Google Business Profile. We look forward to hearing from you.
Sign up to receive answers to your questions delivered directly to your inbox!
What Is Artificial Intelligence?

Artificial Intelligence (also known as AI) is a branch of computer science that focuses on developing computer systems that have the ability to think, work, and react like humans and to perform tasks that normally require human intelligence. This involves accurately and efficiently processing large amounts of data and making decisions or predictions based on that data. AI can also be used to create self-learning systems that can learn from data and improve their performance over time. Let’s discuss and give some examples of how AI is currently being used. Keep in mind that these examples of AI are only a few of its many uses. These uses also often overlap in one app or piece of technology.
In this article, we will be covering the following types of artificial intelligence:
Image Recognition
Image recognition is a process in which a computer system is able to recognize and identify objects. These objects include people, places, writing, and actions in both still images and videos. With image recognition, a user can take a picture of an object, and AI will tell them who or what the object is. Google Lens, CamFind, and Amazon Rekognition are apps that currently use image recognition technology.
Natural Language Processing and Speech Recognition
Natural language processing and speech recognition work hand-in-hand to enable machines to understand, interpret, and generate human language. These technologies are integrated in many home devices that allow you to talk to the machine to turn on your lights and other appliances in your home without lifting a finger and to use Siri or Cortana to answer questions and fulfill requests. Natural language processing and speech recognition are also used in automated customer service and dictation software.
Autonomous Navigation
Autonomous navigation enables vehicles to move from place to place without human intervention. Such systems use sensors, cameras, and mapping data to navigate the environment. In addition, they are often programmed to react to changes such as traffic and road conditions. Autonomous navigation is used in self-driving cars, robots, and drones.
Machine Learning
Machine Learning uses algorithms that enable a machine to learn from provided data and make predictions based on that data. In this manner, systems access data and use it to automatically learn and improve without being explicitly programmed. One app that uses machine learning is Netflix. Netflix recommends content based on the content the user already watched through machine learning. Netflix also uses it to identify and block fraudulent accounts, to detect and reduce piracy, and to target potential customers with personalized ads.
Predictive Analysis
Predictive analysis uses data mining and statistical analysis to identify patterns and trends in data and then to predict future outcomes and behaviors. It can be used to make predictions about customer behavior and market trends. It can also be used to predict the success of a product or service, the likelihood of an event occurring, or the outcome of a particular decision. Weather apps use predictive analysis for more accurate forecasting, financial apps for identifying trends in the market and offering investment advice, and healthcare apps for identifying health risks and suggesting preventive measures.
Robotics
Robotics is a branch of technology that deals with the design, construction, operation, and use of robots as well as computer systems for their control, sensory feedback, and information processing. These technologies are used to develop machines that can substitute for humans and replicate human actions. Starship Technologies is a mobile app that allows users to order food and other items which are then delivered by robots.
Decision Making
During the decision making process, a machine makes a choice between two or more alternatives. It involves gathering information and assessing the available options to make the best decision. Shopping apps like Amazon, Ebay, and Wish use decision making to make personalized product recommendations to customers and to suggest alternatives if the user’s first choice is not available. Health and fitness apps such as MyFitnessPal and Fitbit also use decision making to track and analyze user activity and dietary habits. They then suggest personalized plans to help the user reach their health and fitness goals.
Artificial Intelligence is still an emerging technology, and we’ve only touched the surface of what might eventually be possible. It has and will continue to change how we interact with the physical world, to take over mundane tasks, to optimize operations in many fields, and to help us make better decisions.
Have any questions regarding app development? Matraex would like to become your go-to source for answers so you can be an informed consumer. Feel free to contact us, call us at (208) 344-1115, send us a message on our website, or post a question on our Google Business Profile. We’d love to hear from you.
Sign up to receive answers to your questions delivered directly to your inbox!
What Are the Different Types of App Development Companies?

When choosing an app development company for your project, there’s quite a few types of companies you can select from. App development can be a costly investment, so you may want to do your research to pick the best app development company for you. We’re going to discuss the different types of app development companies and some pros and cons of each so you can make an informed decision when you’re ready to choose a developer for your app development project.
The types of developers we’re going to discuss are as follows:
Keep in mind that these comparisons are how these different companies tend to be and are not absolute. You can also look at this chart for a side-by-side comparison:

Onshore Development
With onshore development, the developers live and work within the United States, though not necessarily in the same location as the product owner. With onshore development, the developer and the product owner live within a few time zones of each other and can usually communicate without time being a major factor. Both the developer and the product owner are often native English speakers so language tends to not be as much of a barrier. Due to these factors, onshore developers are often in higher demand. They also tend to charge a more premium price than development companies who reside in locations outside of the United States, though that will differ from company to company. It is worth noting that some onshore development companies outsource some of their work to offshore or nearshore developers to keep their costs down. If that is a concern, then you may want to ask your prospective developer about their outsourcing practices prior to hiring them. There are two different types of onshore development companies: remote development companies and local development companies.Local Development
Local development companies offer app development in the same locale as the product owner, which can lead to one-on-one, in-person meetings and discussions that might be easier to coordinate. Because of this, local development companies are often in high demand and they may have waiting lists, be difficult to initially talk to, and may be selective in the projects they accept. Because of their high demand and ease in communications to discuss individual projects once a project is taken on, they also tend to charge premium prices for their services.To summarize, local development companies offer the following:
Language Barriers – Language barriers can exist, but there tends to be fewer problems.
Time Disparity – Both product owner and developer are within the same time zone.
Demand – Tends to be in the highest demand.
Availability – Initial contact may be difficult to achieve, they may have a waiting list, and they may be more selective in the projects they take.
Communication Regular one-on-one, in person meetings can be coordinated and scheduled.
Cost – Tends to charge a premium price for their services.
Remote Development
Remote development companies have their business operations within the United States but are not in the same location as the product owner. This can lead to problems with availability, and all meetings would probably need to be conducted over the phone or through an online portal like Zoom, so meetings could sometimes be difficult to coordinate.
To summarize, remote development companies offer the following:
Language Barriers – Language barriers can exist, but there tends to be fewer problems.
Time Disparity – No more than a few hours difference in time.
Demand – They tend to charge a more premium price than offshore and nearshore companies.
Availability – They may be less available to take on projects than offshore or nearshore companies.
Communication – Remote development companies tend to rely on online communication platforms and phone calls and may sometimes have problems with coordinating meetings.
Cost – Tends to charge a more premium price for their services which is often based on demand.
Offshore Development
Offshore developers are developers who are not located in the United States and often reside and conduct operations from countries such as India or China. Offshore developers, in most cases, will be just as qualified as onshore developers, but communication can sometimes be difficult when hiring an offshore developer. There are several reasons for this. Time zones are totally different between the product owner and the developer, so it may be difficult to arrange meetings or meetings can be at unusual times. In many cases, there may also be language or idea barriers. With offshore developers, English is often a second language or their accent might be an obstacle. This language barrier can work both ways; they may not understand you either. Also, their culture may be totally different than what is the norm in the United States which can lead to their not understanding requests. This can sometimes cause unforeseen issues. Offshore developers tend to request a less premium price than a developer who lives and works in the United States, but price is determined by the developer and that is not always the case. There is also less demand for offshore developers most of the time so they tend to be readily available to take on new projects.To summarize, offshore development companies offer the following:
Language Barriers – A mutual language and idea barrier may exist with an offshore developer due to English not being the developers’ native language or a difficult to decipher accent of the developer.
Time Disparity – Often live in totally different time zones, 10-15 hours disparity in time.
Demand – Tends to be in lowest demand so is often easy to acquire.
Availability – Tends to be readily available to take on new projects.
Communication – Meetings may be difficult to arrange and may occur at awkward times.
Cost – Often charges a less premium price for their services.
Nearshore Development
A nearshore developer is a developer who lives and operates from a foreign company but within a few time zones of the product owner. In the United States, nearshore developers usually operate from Mexico or South America. This allows for easier communication since the working hours of the developer and product owner are similar, but there could be significant language barriers between the software developer and the product owner because English may not be the developer’s native language or they may have an accent that is difficult to understand. Nearshore developers tend to charge a less premium price and be in less demand than onshore or local development companies.
To summarize, nearshore development companies offer the following:
Language Barriers – English is usually not the developers’ native language, so definite barriers can exist.
Time Disparity – No more than a few hours’ difference in time.
Availability – Tends to be available to take on new projects.
Communication – Remote development companies tend to rely on online communication platforms and phone calls and may sometimes have problems with coordinating meetings.
Cost – Tends to charge a less premium price than onshore developers.
Demand – Tends to be in less demand than local or remote developers.
Freelancers
Software development freelancers can be located in the local area or found anywhere within the United States. Their availability for meetings with product owners, whether those meetings are in person or via Zoom, can vary depending on the amount of clients the developer has. Their price can also vary widely depending on their knowledge and experience. Freelance developers, due to being single entities and lacking a team, sometimes lack the knowledge to complete a software project as specified, and they may also lack the means to test a product thoroughly before it is launched. Due to these factors, a freelancer may sometimes abandon a project before completion.
Each freelance developer is different so they can fit anywhere within the spectrum of the others. The biggest thing to note, however, is that they may not have the knowledge or skills to complete the job they were hired for.
We hope that this information helps you find the right software developer for your unique project and circumstances. Check out Matraex’s other blogs for answers to other questions you may have. Ones that may be of particular interest to you include “How Much Does a Custom App Cost?” and “What Are Problems that Occur When Developing an App?” Can’t find an answer to your question? Contact us directly or give us a ring at (208) 344-1115. We want to answer all of you app development questions.
Sign up to receive answers to your questions delivered directly to your inbox!
What Is an MVP and Why Should I Consider One?

According to Techopedia, an MVP (minimum viable product) is “a development technique in which a new product or website is developed with sufficient features to satisfy early adopters. The final, complete set of features is only designed and developed after considering feedback from the product’s initial users.”
In other words, an MVP contains 80% of the app’s value with only 20% of the features. It is an initial version of an app that will provide users with what is necessary to perform the primary functions of the app but without the functionality it is likely to acquire later. Many of those later functions will be determined by feedback from the users that the app is intended for.
Questions about MVPs in this article include the following:
What features are usually included in an MVP?
An MPV will have the basic content that is required for a user to navigate through the app including these essential features:
- The ability to gather user data.
- Login/Authentication features.
- Features that enable the users to actually engage with its key functions.
- Revenue generation/checkout capability (when needed).
What is not usually included in an MVP?
Non-essential or expensive content is generally not included in the MVP but will be added later based on demand and the feedback of the app’s users. This can include any of the following:
- Scale support, which consists of different methods of support, determined on the type of support and how in-depth the support is that one needs.
- Value proposition, which, according to Investopedia, is “the value a company promises to deliver to customers should they choose to buy their product.” This tends to be left out because, during the MVP stage of an app, the final value of the app to its users is to be determined.
- Differentors, which are features that set you apart or make you unique from your competition.
- Customized User Flows, that allow users to personalize their app experience but are not necessary for the primary functionality of the app.
- Social integrations, which allow users to interact with you or with each other.
If any of these features are essential for the primary use of the app, they would be included in the MVP. What features are included in the MVP is determined by the unique needs and requirements of the product user who has envisioned the software. The product used also determines what features are necessary to have in the app right away.
What are the reasons to consider an MVP?
There are many reasons to consider launching an app as an MVP. An MVP usually allows a product owner to release the app to the market as quickly as possible while also keeping the cost down. As an MVP, the app stays in a form that can easily be changed. An MVP also allows a product owner to gather user information, to conduct tests with real users before committing to the application’s full development, and to receive feedback from the app’s target market to see what resonates with them. From there, the product owner can see what changes and functionality the users would like to see as the app is further developed.
How do I prepare an MVP?
There are several steps that you can take that will help you create an MVP for your app:
- Create a list of features that you want your app to have.
- Put those features in order from most important to least important.
- Determine which features your app absolutely needs. That would be your MVP.
Can an app that starts as an MVP become successful?
Absolutely! Many well-known or popular apps started as MVPs. If you choose to start your app with one, you’ll be in good company. Apps that started as MVPs include the following:
- Facebook. Mark Zuckerburg initially designed it for his fellow classmates who attended Harvard University. He then expanded it to other universities while adding additional features, and it was eventually released to the public.
- Airbnb. The founders of Airbnb, Brian Chesky and Joe Gebbia, originally created Airbnb to rent out an air mattress in their loft in San Francisco for an upcoming conference. Now, people across the world use it to find and rent accommodations.
- Amazon. When Jeff Bezos started Amazon, it was designed for him to purchase books from distributors and then ship them to customers when he received orders. Now, Amazon sells products worldwide and many merchants use it to conveniently sell their products.
- Uber. Uber originally started as “Uber Cabs” and was created from the difficulty in locating taxis the traditional way. Now, anyone can become an Uber driver and many features are offered. Those features include tracking your drive and cost-estimating.
Do you have other questions that you need answered before going through with an app project? Take a look at our blog for answers to your questions. Particular blogs that may interest you include “What Are Problems that Occur When Developing an App?” and “How Much Does a Custom App Cost?” If you have any questions that have not yet been answered in one of our blogs, contact us, give us a call at (208) 344-1115, or leave a question on our Google Business page. We want to make sure that all of your questions are answered before you start designing your custom app so you get exactly what you’re searching for.
Sign up to receive answers to your questions delivered directly to your inbox!
How to Protect Your Intellectual Property

In the beginning phases of developing an application, there are many things to keep in mind in order to protect an idea and the process through which the idea is implemented. One important first step is setting up possession of code. By setting this up at the beginning of the process, you can confirm ownership which will give you ultimate control over what happens during the project process.
What is Possession of Code?
Possession is defined as, “the state of having, owning, or controlling something.” This is no different within the world of software development. To avoid issues down the road, setting up access to the current code base is best practice. To understand this process, it can take a bit of training and research but it is well worth it to protect your project.
Time and time again, individuals run into the issue of obtaining their code from a previous developer when switching to a new freelancer, internal developer, or third party development firm. If you have possession of your code, you have access to invite new developers or revoke past developers if there comes a time when you no longer want a developer to make changes to your project.
NDA
Another way to protect your code is through an NDA (non-disclosure agreement). While ensuring that you have obtained possession of your code is important, an NDA is an equally important next step.
What is an NDA?
An NDA is a non-disclosure agreement. Its purpose is to create the legal framework that protects you and your application idea from being shared with anyone else. This article is a great resource that will tell you everything you need to know when it comes to non-disclosure
Do I need an NDA?
It is best practice to have an NDA in place when dealing with anything pertaining to intellectual property. An NDA ensures confidentiality and protection. Without an NDA, you are at risk of your idea being leaked.
Your ideas are an extension of your creativity and keeping them protected is of utmost importance. Ensuring possession and ownership and signing an NDA are two ways that you can ensure protection and have peace of mind and you dive into the world of software development.
Agile and Waterfall Methodologies in Software

Waterfall and Agile are well known approaches in software development. They are two unique methodologies providing different directions for various types of projects.
Agile Software Development – a type of development framework that expects the need for flexibility and applies a level of efficiency to the delivery of the finished product through consistent deliverables & communication.
Agile
- Frequent meetings
- Works well in conjunction with MVP
- High flexibility
- Short term deadlines – quick deliverables
- Collaboration between parties
- Reduced risk
- Cost effective
This graph shows the flow of an agile timeline. There is constantly a new deliverable and after each deliverable, there is communication between parties to review what is working and what needs to shift in order to continue improving the product. The time between each deliverable is typically two to four weeks, although it can be shorter. Due to consistent communication between parties, agile is more cost effective because the project can shift easily and frequently.
Waterfall Software Development – With a waterfall methodology, the scope and requirements of the project are defined upfront. The client receives large batch deliverables at the end of each development phase.

Waterfall
- Goals set from the beginning
- Requirements are clear and fixed
- Infrequent meetings
- Complete deliverables before moving onto next phase
- Low flexibility
- Higher cost
Looking at the graph to the right, you’ll see that Waterfall project timelines are longer than Agile. While working on a Waterfall project, there is often less communication as the requirements are less flexible in the beginning phases of the project. Due to this, there is more risk associated because of less flexibility to change the product. In Waterfall, each stage of the project needs to be completed before moving on to the next step.
Agile is more commonly used today because of the flexibility, cost efficiency, and reduced risk associated with this methodology.

Does Your Business Need a Mobile App?

Mobile apps have increasingly become an integral part of the digital landscape. For many businesses, they are an indispensable asset and for others, the question still remains: “Should my business be utilizing a mobile app?” This article discusses a few things to consider before jumping into the world of app development and will give a better understanding of things to consider when deciding if an application is necessary for your business.
- Your audience
- The value of your app
- Your competitors
- Long term app support
- Current website

Your Audience
Consider who your audience and ideal customers are. Here is a great article from HubSpot that breaks down exactly how to figure out who your target audience is.
The Value of Your Mobile App
An app should add inherent value to both a business and its customers. Here are a few ways an app can add value:
- New Revenue
- Selling goods and services
- Process payments, track orders, and manage inventory
- Sell a new product
- Offer follow-up goods
- Build Relationships
- Connect to your customers through push notifications about new products, services, special offers, and events.
- Collect customer feedback and build relationships
- Better customer service
- Reduce Expenses
- Can help save time
- Answer questions
- Automate processes
Long Term App Support
Apps require maintenance of follow-up features and updates. Once an app is developed, there may be bug fixes to keep up with along with improving basic functionality of the app as time goes on. Consider the time commitment and cost associated with keeping an app updated.
Current Website
When deciding if you need a mobile app, consider whether you are able to accomplish what you need by adding small changes to your website. A well optimized website can provide many of the same functions as a mobile application. If you already have a website, think about the additional benefits a mobile app will provide and ask yourself the question, “Should my business be utilizing a mobile app?”
All in all, developing an app can be a very positive addition to your business when it adds value and helps you connect with your consumers. If you are interested in looking at the next steps, talking with a professional app development company is a great place to start in order to assess your business needs and determine if an app is right for you.

Your software developer is quitting: now what?

So the truth is out! The developer that knows everything about your project is not going to be around to finish it.
You may have cursed a bit under your breath and tried to quickly maneuver to keep them on board – however, you are reading this article because you now know it is up to you to confirm you have possession of your project. It is up to you to take control of the software so you can direct it and secure the future of it. Here is how you do it.
- First of all, don’t freak out, a calm and professional response to the news is the best way to encourage a smooth transfer of all project assets and assistance identifying ‘forgotten’ assets.
- Second, create a shared ‘offboarding’ document and / or folder where you can coordinate the process of collecting information about your project.
- Request information from your developer – Let them know that the most important part of their offboarding is to help you understand the project – so you can help the next person take it over.
- Confirm that you have the information you are looking for – it can be tempting to just assume you have it, but by taking the time to verify it, you will identify things that are missed and save headaches later.
Don’t Freak Out
Why is this a step? Because we have found that some of our past clients needed this reminder. Too often we hear of hasty hire or poorly orchestrated offboarding while the manager spends time realizing that the project was not going to be done the way they had previously assumed. Often, the decision will be made to try to ‘get it all done’ in the next two weeks. They drive the developer to spend every moment of their last two weeks getting writing code. This should not be the first priority! The first priority should be to ensure that the possession of the project is fully in the control of your company and the company can continue development of the project in the future.
One of the reasons that we see managers ‘Freak Out’ at this stage is because they have not previously recognized that they should have set their project up in a way that made sure that the project was already in the possession of the company. Ultimately, any project that was going to be owned by your company had to be in company possession anyway, right? So this is a good thing – we are going through the process of putting your project in your control – so your project will survive this ‘developer change’ and any ‘developer changes’ in the future.
Your systematic and practical approach to offboarding your current developer will result in a strong understanding of your project and an improved ability to select the ideal replacement when you restart your project. The possession you end up with will give you the confidence to restart and finish the project in the future.
Create a shared offboarding folder
Create a shared folder where you can work with your developer over the next days and weeks to collect information about your projects. You will want to create the area yourself and setup the structure to have the information you want.
I use Google Documents because the ability to collaborate is better than any other tool, but what is important is that it works for you and your developer and you are able to see each other’s work. Create several documents and give your developer access so they can make changes where you can see them. I recommend that you create the following documents at a minimum – be sure that each of the folders has permissions which allow your developer to make changes:
- Document: Offboarding Checklist / Instructions
- Document: Offboard TeamMemberName – MM/DD/YYYY – Projects / Assets / Credentials
- Folder: Project Asset Uploads
- Folder: Recordings
I have created an example (with some sample entries)
Request the following from your developer:
- Fill out the offboarding document with credentials and links to each project and project source
- List all code repositories and transfer ownership to me
- Provide me with access to your workstation
- Record a video of you working through opening, making a simple development change and then deploying
- Record a video showing the workstation and development environment and configuration
- Record a video explaining for each project what your next steps and recommendations would be
Confirm possession and control of your code
- Understand and confirm your understanding of all project assets
- Test credentials and confirm owner level access to all project assets
- Confirm project source links and documentation, add notes and request updates
- Review recordings and request additional recordings.
- Time permitting: Request a review / audit of code / transfer confirmation from a third party
Marketing Websites vs Web Applications

We are often asked if we build “websites” – yes we do, but there is nuance to the answer. The websites that we build are better defined as “Web Applications”. And a “Web Application” is different from another type of website – a “Marketing Website”. How are these two different? In short: A Marketing Website presents information about a topic or business and a Web Application helps users get something done. The table below describes many of the differences between a Marketing Site and a Web Application. Since Matraex is the #1 Web Applications development firm in the Boise market – people looking for a local ‘Website Designer’ will often reach out to us – I added some links to the Google My Business page for several long term and reliable local resources to help people understand the different companies that comprise these different categories of “Website” builders.
Marketing Website Developers
Web Application Developers
- Matraex, Inc (this is us!!)
- Vynyl
- Ventive
The key differences between a Marketing Website and a Web Application
Marketing Website | Web Application | |
---|---|---|
Purpose | A marketing website’s goal is to provide information, most of these are corporate business sites providing details of a company’s offerings with resources, contact information and links to related industry | A Web Application is a website that helps a user accomplish something through its interfaces. |
Development process | A Marketing Website can be developed by creating and approving a design, building on the information and content and then applying the design to the content. | A Web Application starts as an idea and forms into a list of features (a roadmap) with the most important features first. The developers implement the items in order of the roadmap. More sophisticated applications often have multiple environments so the complex logic can be tested be approving features to be moved to launch. |
Time to launch | An entry Marketing Website can take between one week and one month depending on complexity and number of pages. | An entry Web Application MVP (minimum viable product), can take 2 to 6 months to launch. |
Time Requirements | Most time goes to creating content and managing SEO. A larger one time cost to design the interface and layout is a close second | Most time is spent in developing code to create features and functionality. |
Team | A project manager, a content creator, and a front-end developer. | Project manager and a full stack developer. Larger teams will have roles split into back-end and front-end developers. |
Hosting Cost | Less expensive – MANY SOLUTIONS! | More expensive – the hosting is often decided by the technology stack and development group. Modern applications use cloud based hosting which only charge for usage, but can scale to high levels |
Common Technology Platforms | WordPress, Wix, Square | PHP, React.js, NodeJS, ASP.NET, java |
Specialties | HTML / CSS / Design / Front End SEO / Content Generation / Design / Copywriting | Programming / Database / Logic / Backend Testing / User Experience / QA Innovation / Security |
How App Development is Done

Application development UI illustration in flat design. Mobile app building concept banner with industrial crane and team of workers developing and constructing applications. App development company.
There is a constant need for apps to help employees and everyday people complete tasks. Developing an app of your own can be both helpful for the general workforce and lucrative for yourself. The following is a step by step approach for how app development is done.
1. Brainstorm
The first step in developing an app is to decide which kind you should make. Take note of the different tasks you do at work or at home and see if any of them can be automated. Write down all the ideas that come to mind, even the bad ones. In my experience, bad ideas that don’t get ignored lead to good ideas, so write them down. Take a look at other apps on the market and determine if they are lacking anything, or if there are ways they could be better. All of this will help you pinpoint what sort of app you should develop.

2. The Design Document
Once you know what kind of app you want to build, the next step is to put it into words in the form of the design document. The purpose of this document is to keep the development project on track. The design document outlines all of the features and abilities you want your app to have. For more information on writing a design document click here.

3. The Prototype
Now you’re ready to actually build the app. You’ll start by creating the prototype. This will be a rudimentary version of your app. At this point, the main concern is to get all of the functionality in place. The prototype doesn’t need to be beautiful, the art and design of the app (while important) will be one of the last things to work on.

4. Testing the App
There will be a plethora of bugs to work out. The bugs come from mistakes in the code, weird usage the app’s design didn’t account for and other reasons. Testing will help you find the mistakes so you can fix them before your end users find them. Try to throw every conceivable scenario at your app to make sure it can handle them properly. When you’re working so close to an app, it can be hard to step back and spot problems that fresh eyes could find. For this reason, you’ll want to have friends and family test your app to further uncover any bugs.

5. Polishing the App
Now that you’ve finish testing and fixed all the bugs you were able to find, you’re ready to polish your prototype into a finished app. This includes choosing attractive color schemes, borders, buttons and art that you want to include in your app, as well as organizing your menus in a way that has a logical flow. Typically a skilled UI designer would work on this part, but that would add significantly to the cost of your app. If a UI designer is not within your budget then at the very least make sure your app is both easy to use and pleasing to look at.

6. Distribution
Now your app is finished and ready for distribution. There’s a few ways you can get your app to the masses. If you designed your app for a particular operating system, there are online digital stores you’ll be able to sell it in. For example, if you designed your app for Android devices, you’d be able to sell it on the Google Play Store or even on your own website. Document your apps features and include tutorials and screenshots. If you distribute and sell the app through your own personal website you’ll need both a server and a decent digital payment system, respectively.

If you have an idea for an app and would like our team of developers to build it for you, contact us by clicking here and get started with a free one hour consultation.