Spud Software developed a custom ride-share solution designed by college students for college students.
Following up on our recent discussions about software development and the debate between native, web and hybrid applications, we're excited to announce the launch of the Campus Drive app, a custom software solution that included native app development for both Apple and Android platforms.
Campus Drive is the newest ride-share app that brings college students together and promotes safety, convenience and affordable transportation solutions. The concept of Campus Drive was developed by three students at Mount St. Mary's who recognized a need for a safe transportation service for their fellow classmates, and chose to partner with Spud Software to turn their vision into reality.
Mount St. Mary's is located in a rural region about an hour outside of Baltimore, Maryland. Because of its location, the students there were under-served by the current ride-share market. So founders Louis Tonon, Mateo Ruiz de Somocurcio Lanata and Zach Burau, all members of the Mount St. Mary's tennis team, started a two-driver program to help their classmates. But they quickly came to realize that the lack of safe and reliable transportation extended beyond their own school.
Burau, a Grand Blanc, Michigan native, had driven past Spud Software for years and watched our growth from a small shop with just a few employees to a team of 35+ people. So when it came time to choose a software development company to partner with, Spud Software was the logical choice.
We collaborated with Campus Drive to not only create a ride-sharing app, but to develop an entire business solution. Through our process of define, design, develop and deliver, we created a multi-faceted solution that includes an administrative portal for managing users, a process for driver applicants, the ability to track user activity and a public facing website. In addition to all of this, we utilized Xamarin to develop responsive, cross-platform applications for Android and iOS devices.
The solution that Spud developed for Campus Drive also featured a variety of third party integrations, including:
The Campus Drive app is now being used on a number of campuses, including Mount St. Mary's, Central Michigan University, Hope College, Ferris State University and Alma College, with plans to expand in the coming months.
As developers, it's exciting to see our client's dreams come to life and know we played a vital role in making that happen. It's especially great when we know our applications are being used to not only provide a valuable service for others, but to also give the next generation safer solutions and reliable transportation services.
If you'd like to learn more about Campus Drive, you can visit their website here. If you want to know more about how Spud Software can help you bring your vision to life, drop us a line or give us a call.
Do you know which type of app is best for your business?
We live in a world of "There's an app for that." There are apps that help you balance the budget, call a cab, decide what to eat for dinner and even chase imaginary monsters around your neighborhood. But apps aren't just for your personal life. Businesses are cashing in on the popularity of apps to not only manage their day-to-day operations but also engage customers. Yet building an app for your business is a big step, and it's important to not only know but also understand all of your options before you take the leap.
Last week, we tried to demystify some standard programming terms, but we wanted to go a little more in depth on the topic of apps as application development is at the very heart of what we do. There are a variety of application types, and one is sure to be a good fit for your company. So what are your options when it comes to developing an app?
A native app is an application or program that has been developed to work on a specific device or operating system. While "native app" is most commonly used to reference an application on a mobile device, it can also mean an application built to run on a desktop (or laptop). For instance, the calculator that is bundled in with an installation of the Windows operating system is a native app. It will only work on a PC with Windows installed.
A native app is installed directly on the machine or device and will only run on operating system for which it is developed. So an application built for your Android device will not work on an Apple product unless an alternate version of the app has been built to run on iOS. Native apps may or may not require an internet connection as some are designed to store information directly on the device, while others store data remotely. But a native app can only be accessed on a device where it has been installed.
A web app, on the other hand, is an application that is accessed via a web browser over a network such as the Internet. It is not bound by an operating system or tied to a specific device. And while it would be easy to confuse a website and a web application, the difference is in the functionality of what is being accessed. Generally speaking, a website is informational in nature while a web application performs specific functions, storing and transmitting data, performing calculations, generating reports, etc. Unlike native apps, a web app does not need to be downloaded or stored locally to function. A web app is accessed instead via a web browser such as Chrome, Safari or Microsoft Edge and should function equally well across all browsers.
A hybrid app is exactly what it implies - a cross between a web app and a native app. Hybrid apps utilize a native app "shell" that provides access to native platform features while displaying information that is being drawn from a web application. Without an internet connection, hybrid apps usually have limited to no functionality.
There are a number of pros and cons associated with each of the types of app development, and before you decide to pursue app development you should know which option is best suited to your company's need.
If you're ready to embark on the process of developing an app for your business, Spud Software is here for you. We'll help you determine which application type best suits your company and your development needs. Just give us a call to end the great application debate for your business.
When talking to techies, can you speak their language?
If you've ever talked to a programmer you've probably been left wondering what language they're speaking. It sounds a lot like English, but when you put the words all together, what comes out makes as much sense as if it were in Greek. We get that. We do actually have our own language (several of them, in fact), and we know there are times when it just doesn't make sense to other people. So that's why we've put together this primer on tech talk.
If you want to test your Tech IQ, here are some common terms in the software development industry. These are words or phrases you'll likely run into any time you're looking to have a custom solution developed for you. Don't worry, we'll give you the answers at the end, with more details to help you navigate the world of custom software.
1. A wireframe is:
a) An old fashioned clothes hanger
b) A pair of glasses
c) A physical model of a software solution
d) An outline of what your app will look like, with components spelled out
2. API stands for:
a) A Piece of Information
b) Application Programming Interface
c) Anterior Postulate Interface
d) Application Particular Information
3. Which of these best describes a "dev environment":
a) The ideal atmosphere for developing software
b) Where the programmer sits to work on a software solution
c) The server location where software is being developed and tested
d) The computer software used to write code
4. What does "Device Agnostic" mean?
a) Software that is not specific to an operating system or device
b) Software that works on older phones
c) Software that looks like an app
d) Software that can be used by multiple companies at once
5. When we talk about "Unit Testing" what are we referring to?
a) Making sure a device is operational
b) Testing portions of the code for function and logic
c) Final testing of the entire software solution
d) Using teams to test during development
6. What do we mean by "deploying" software?
a) Transfer software to multiple server locations
b) Sending software out for testing
c) Utilizing other programmers for help building software
d) Making a completed software solution available for use
Think you've got the right answers? Let's see how you did:
1: D, 2: B, 3: C, 4: A, 5: B, 6: D
These are just a few of the standard terms you might run into when developing a custom software solution. It's definitely not an exhaustive list. Other terminology that is important to understand when you're looking to have custom software built include:
DNS: This stands for Domain Name Service and is essentially the system that allows computers, websites and servers to talk to one another. The DNS is what directs users to your website or application and is usually managed where the domain name is registered and/or the site is hosted.
Dev vs. Production Environments: As mentioned above, a Dev environment is where the code behind your software solution is being developed. The Production environment is where the final product will be deployed, allowing users to access your software.
API: While the quiz gives you the correct definition, there's a little more to the story of APIs. An API is a system by which your software solution talks directly to a partner solution and requests data from that other software solution. Your system receives the data, processes it, and displays the information within your interface.
User Interface: The User Interface, or Front End, includes every part of your software that the user can manipulate or interact with. It's important that the user interface is optimized for all intended devices and easy to navigate to improve the overall user experience.
Software Back End: The Back End of your software solution is usually the area that is restricted from public viewing. In most cases, only your developer or programmer will ever see the back end and they use it to manage various aspects of the system.
Native vs. Hybrid vs. Web App: If you're looking to have an App developed, it's important to know whether you want it to be Native, Hybrid, or Web based. So what's the difference? A native app is developed for a specific platform and only runs on that platform. So a native app built for iOS will only run on Apple devices while an app built for Android will only run on those devices. Web apps are websites that look and feel like an app, but are not native to any environment and can be accessed on any device. A Hybrid app is a combination of the two. It involves a native app that is stored locally on your device that pulls in information via a web app.
If you find yourself in a conversation with a programmer (and we hope you do!), understanding these terms should help you feel a little more confident in the conversation. After all, when you're having custom software built, it's important that you are actively involved in the process, because the software is being built for you and your needs. If you're contemplating having a custom solution built, or you just want to know more about how custom software can complement your company and its processes, feel free to give us a call. We promise we won't overwhelm you with a lot of Techie Talk right off the bat, but by building your Tech IQ, you'll find the entire process even more rewarding.
How can you implement the principles of gaming to increase engagement?
Let's face it, life is a lot more engaging when it's fun. On Saturday you'd probably rather hit a college football game than rake leaves in your back yard. And there's a reason Friday is celebrated around the world - it's the start of the weekend fun. But did you know that you can apply the principles of engaging through fun to your business?
The last several years have seen the emerging trend of employing gamification to appeal to a company's customers and employees. Gamification is the application of typical elements of game playing (e.g., point scoring, competition with others, rules of play) to other areas of activity, often through web or mobile applications to encourage engagement with a product or service. And it's being utilized in increasing numbers. In fact, by 2019 it's estimated that the gamification market will be worth over 2.8 billion dollars.
If you were to ask your customers to fill out a 10 question survey, chances are only a small percentage would respond. But if you offer a quiz with the ability to compete against others, earn badges and even free products or services, more of your customer base is likely to participate. That's because gamification taps into the psychology of motivation - using recognition and value to affect people's behavior.
Companies have been embracing gamification as a proven method for increasing customer loyalty. Take Qdoba, for instance. The mexican fast food chain spiced up their customer loyalty program by adding an app filled with colorful graphics and themed levels based on a consumer's eating habits. As Qdoba customers eat at their restaurants and use their loyalty rewards they earn points toward a variety of levels, each one unlocking new rewards opportunities in addition to free food items. The more a customer uses the program, the greater the rewards. The final level offered is the Champ level, with monthly mystery perks and extra points for each purchase.
But the concept of gamification isn't reserved for customer loyalty. Many companies have found gamification useful in motivating employee productivity and participation as well. There are three main areas where this concept is especially useful: Onboarding Employees, Adapting to Change and Aligning with Organizational Goals.
Onboarding and adopting a company's processes can often be a daunting task for new employees. But through the process of gamification, it can become fun and easy. By utilizing beginner levels and advancing through the learning process, new employees complete more tasks and retain more information than they would by simply reading through company documentation or watching training videos.
This concept also helps existing employees adapt to change within an organization. When employees are motivated to learn and put into practice new systems and habits, the return on investment is far greater. The gamification process motivates employees through competition, acknowledgement and rewards.
It's useful in increasing sales and motivating employees to engage in behaviors that connect an employee's objectives with the organization's objectives as well. By focusing on the activities that prompt employee behavior and turning them into something fun and engaging, companies can not only see results on leaderboards, but promote behaviors that align with organizational goals. These efforts use feedback, achievement and recognition to help employees grow and advance their output.
If you are ready to increase your company engagement through gamification, Spud Software has the team in place for you. Our experienced developers can define, design, develop and deliver a solution that blends fun with function. Just give us a call and we'll help you take your business to the next level.