Atlantic Business Technologies, Inc.

Category: Development

Here, you’ll find insights on programming languages, frameworks, and techniques that shape the web and software landscape. Whether you’re a developer looking to refine your skills or simply curious about how things work behind the scenes, this space offers practical knowledge and thoughtful perspectives.

  • Five reasons to outsource your software development project.

    Five reasons to outsource your software development project.

    There are many scenarios where it could make sense to outsource a software project. But first, let’s clarify the difference between outsourced development and offshore development.

    You could outsource to an offshore firm. You could also outsource to a company in your backyard. In this post we are talking about partnering with a software development agency in your backyard, not overseas. 

    Here are a few reasons outsourcing might be the smarter and easier route.

    1. Your team lacks the technical skills needed for this project.

    Although It would be convenient if all programmers had the qualifications to work on all projects, that’s far from reality. Each developer has a unique set of technical skills and experiences. You could have many highly-qualified and capable people on your team. But that does not guarantee that they are a good fit to build the kind of software you need at the moment. By turning to an outsourced team, you can find teams that specialize in exactly what you’re looking for. When you’re positive you’ll get the specific knowledge needed for the job, you lower your risk of missing deadlines and making mistakes.

    2. A new project could derail your busy team.

    In other cases, your software development team may have the right background needed for your project. But companies with in-house programmers usually have many ongoing needs. Your team may not have time in their schedule to give the project necessary attention and care.

    Or maybe your team is focused on other features and don’t want to do the upkeep or grunt work on a new application. Adding a large job on top of existing duties can slow down work on critical tasks. It can also leave your new development project in a perpetual purgatory. On the other hand, let’s say your programmers do have the time to tackle the new project. Do they have expertise in using new tools? Buying necessary tools to complete a new project and training your software development team is costly.

    3. You need the project finished on a tight deadline.

    An outsourced programming team is your best bet when you need a new piece of software finished yesterday. They have the ability to devote a specific group of developers to the job and on your schedule. 

    When you outsource a project, it is with the intent that the team you’ve hired focuses on your deadline. They’ll go to work knowing that time is of the essence and a vital part of making the project a success.

    And let’s not forget about money as motivation. Your outsourced team is working under different financial parameters than your in-house programmers. Payment is dependent on a successful project completed on time.

    Your in-house programmers are most likely salaried and not facing the same pressure. In other words, a vendor has more incentives to work at the pace you need than your salaried employees might.

    4. You want an outsourced perspective on the project.

    Deciding to outsource your software development project brings about many benefits, aside from providing you with extra hands to do the work. You also get the benefit of many years experience and a new perspective. Your vendor has, thus far, not been a part of the process. They weren’t in the same meetings. They can see the project through the lens of their own expertise, finding patterns over time. They know the causes of your pain and can help you avoid common pitfalls.Your vendor can also look at the merits and constraints of the job with a more critical eye. This allows them to ask better questions and give more productive feedback. The result will be a stronger app or piece of software. The project will not only meet your standards, they will exceed them

    5. You need user experience perspective.

    Let’s face it, software developers are great at writing code and all the fancy DevOps automation, but they often lack the necessary empathy to be critical of the user experience they are creating. A critical step to deliver a satisfactory UX will involve bringing in an outside team to provoke conversations. Have structured conversations around how the user interface and user experience are impacting the software and ultimately business value.Outsourcing software development can reduce stress.It’s always great to have your own team of trusted and talented programmers in your company, but you don’t have to rely on them for every project. In fact, letting a partner handle excess can create focus and boost employee happiness. We’re always game for any type of project thrown our way. Learn more about our process and reach out. We’d be glad to have a more in-depth conversation about your specific needs and what we can do to help.

  • How to tell if my website is outdated?

    How to tell if my website is outdated?

    If your website is not responsive, not accessible, not performant (mobile included), or leveraging outdated or insecure technology, it may be a sign that your website is outdate. This can give the impression that your business is not reliable or trustworthy. In such cases, it’s crucial to consider the services of a company specializing in website development to ensure your site is up-to-date and effective.

    Outdated websites that are not compatible with modern web browsers and devices can lead to poor user experiences. This can include issues such as slow loading times, broken features, and security vulnerabilities. And since users expect websites to be reliable and functional, these issues can be frustrating and off-putting.

    Add to this the fact that old, outdated websites may not comply with modern web design and accessibility standards – such as a website that doesn’t use responsive web design principles. It may not display properly on mobile devices, or if it doesn’t comply with accessibility standards it may exclude users with disabilities. 

    You may think that because your website still seems okay, it’s okay to not update things. But in today’s competitive digital landscape, businesses need to prioritize their core web vitals and ensure that their website development is up-to-date and user-friendly. Without it, there’s a chance you could drive potential customers to choose a competitor’s website instead.

    Based on our 25 years of website development experience, here are four main things that make a site look outdated:

    Non-Responsive Website

    In 2024, non-responsive website development is no longer acceptable because of the increasing number of users accessing the internet through their mobile devices. With the proliferation of smartphones and tablets, users expect websites to be mobile-friendly and responsive.

    A responsive website adapts to different screen sizes and devices, ensuring that the user experience remains consistent across all platforms.

    Non-responsive websites require users to zoom in and out or scroll horizontally to view content, leading to a clunky and frustrating experience. This gives the impression that a business is out of touch with modern technology and trends, which can negatively impact its reputation and credibility.

    To address and fix non-responsive websites in 2024, businesses need to prioritize working with a website development company who has experience with mobile-first design principles. This means website development with the mobile user in mind and ensuring that the website functions seamlessly on all devices. This ensures that the user experience is consistent, regardless of the device they are using to access the website.

    Another approach is to use modern website development technologies, such as CSS Grid and Flexbox, to create layouts that are flexible and can adapt to different screen sizes. Developers can also leverage frameworks and tools such as Bootstrap and Foundation to build responsive websites quickly and efficiently.

    Accessibility

    When you don’t run your website through tools to measure accessibility you are potentially limiting your audience. Accessibility is a growing concern due to government legislation, contractual requirements, and more widespread news and information about the business value of digital accessibility.  Not to mention it just makes sense.

    Website development companies are now using tools like Google Lighthouse to measure website SEO, Performance, and Accessibility. You may also see accessibility referenced as a11y in your browsing. 

    Needless to say it’s important that your website needs to be accessible!

    Slow Loading Speed

    Slow-loading websites are also a problem when it comes to outdated features. Users expect websites to load quickly, and if a website takes too long to load, they may become frustrated and may abandon the website altogether. This can result in a high bounce rate, lower engagement, and fewer conversions. Additionally, with Google’s focus on page speed as a ranking factor, slow-loading websites may suffer from lower search engine rankings, leading to even fewer visitors and traffic.

    To avoid these problems, website development agencies need to prioritize website speed and performance when building and optimizing websites. This can include optimizing images and media, minimizing the use of large files and complex scripts, leveraging caching and compression techniques, and using a fast and reliable web hosting service. Using a content delivery network (CDN) can also help to distribute website content across multiple servers, resulting in faster load times for users.

    Old Technology

    Finally, using outdated technology on a website can make it look bad and even be dangerous.

    While outdated technology may not be compatible with modern web browsers and devices, leading to a poor user experience, what’s worse is that it can also lead to security vulnerabilities.  Technology, such as Flash, which is no longer supported by many modern web browsers can pose security risks to users, for example. Similarly, using outdated coding languages or frameworks can result in slower performance and limited functionality.

    To avoid these problems, developers and designers should stay up-to-date with the latest web development technologies and design trends. This can include using modern programming languages and frameworks such as HTML5, CSS3, and JavaScript. These technologies provide more advanced features and better performance, resulting in a better user experience.

    If you’re looking to update your website and ensure that it meets the latest technical standards, consider Atlantic BT as your website development partner. We have 25+ years of experience in website development and design. We can help your business to modernize its website and provide a seamless user experience that engages and converts visitors.

  • Revolutionize Your Business: A Step-by-Step Guide for Implementing AI Applications

    Revolutionize Your Business: A Step-by-Step Guide for Implementing AI Applications

    The pace of technological advancements we’re seeing in this early part of the 21st century is amazing, almost unbelievable. And now, with the launch of ChatGPT, businesses have the opportunity to utilize AI applications to help them to make decisions faster and more accurately than ever before.

    Atlantic BT has been in business since 1998 and has helped over 1,000 businesses to capitalize on the past 25 years of emerging technological advancements. We’re using this deep experience to help our clients enter this new era of technology, artificial intelligence, as well.  

    In this article, we’ll discuss how “digital transformation” has progressed from data collection and analysis, to automation, and now artificial intelligence strategies. Then we’ll outline the steps necessary to implement AI applications in your business. 

    The Impact of ChatGPT on Business: Opportunities and Challenges with AI Applications

    OpenAI brought Artificial Intelligence to the mainstream with its 2022 launch of ChatGPT. And it still reigns supreme today as the most powerful and versatile tool for natural language processing available to the general public. 

    One of the key features that sets ChatGPT apart from other AI applications is its ability to generate text that is both natural and coherent, making it well-suited for tools like chatbots and other conversational agents. Which makes it a game changer for businesses. With AI technology, businesses can greatly enhance their operations, improve customer experiences, decrease costs, and further drive innovation. 

    However, this fast-paced technological innovation has created some challenges for businesses as well. From labor shortages, to inflation, cost limitations, and increased competition, organizations are under immense pressure to boost productivity and maintain their competitiveness. (To be fair, this has always been the case, but it seems to be even more important “now.”)

    Incorporating AI applications into a business isn’t much different than the process a business would have gone through when it incorporated any other new technology of its time.

    Innovative business leaders, especially those at the enterprise-level, have already turned their focus towards leveraging automation and artificial intelligence (AI) as a solution to bridge productivity gaps. Which means that companies who still haven’t embraced AI face the possibility of falling behind. Lack of understanding, budgeting concerns, or waiting for the technology to mature are some of the reasons holding companies back. While these challenges exist, there are ways to overcome them and successfully implement AI applications in business processes.

    The AI Journey From Data Collection to Digital Transformation

    Sophisticated technologies are evolving rapidly. These advancements present businesses with the opportunity to revolutionize their day-to-day processes and decision-making. They can do this by incorporating advanced automation, artificial intelligence, and context that goes beyond traditional organizational boundaries.

    However, achieving this kind of transformation requires a comprehensive understanding not only of the potential offered by new technologies, but also of how existing information systems interconnect and where current business processes can be optimized. 

    Most businesses have already recognized the power of automating mundane processes. But now with the use AI applications, we can pass some of the analyzing and decision making on to technology to handle as well. Data collection, automation, and now AI all play important roles in a company’s overall digital transformation strategy. Here’s how:  

    Data Collection and Processing. 

    Collecting data from various sources and processing it to make it usable, is pivotal for a business. Businesses collect a wide range of data to help them make informed decisions, improve operations, and better understand their customers. This could involve setting up data collection mechanisms, cleaning the data, and storing it in a structured format. 

    Automation. 

    Automation technologies can streamline business processes and increase efficiency. It is essentially programming robots to follow a set of instructions – If ‘A’ is specified, the robot will take action ‘B’. The rules are defined by humans, and the robots just carry out the commands. The goal is to liberate people from monotonous tasks that are labor intensive and thus often ridden with errors. 

    The majority of automation utilizes software to move data from one place to another. As an example, take this project Atlantic BT completed for Stan Johnson Co. They wanted to improve their integration between their Drupal website and Salesforce. There were areas of information that would be added or updated in Salesforce and then manually re-done in the website. Atlantic BT enhanced the custom integration to include relevant data, set up on a frequent sync, ensuring consistency across two business critical systems. Here’s a link to the Stan Johnson case study.

    While automation is merely taking orders, AI applications are designed to actually learn and then act on what they learn. 

    Artificial Intelligence. 

    With automation in place and a wealth of data available, companies can proceed with implementing AI applications. The purpose of AI is to imitate the human mind on a higher level – but in a very specific and limited number of tasks. Thus, AI applications will observe patterns and results of prior experiences in order to carry out tasks. 

    Rather than just following instructions, like an automated application, AI will figure out and act on what it has discovered. This may involve utilizing machine learning algorithms to extract insights from data or incorporating AI-powered solutions such as chatbots or recommendation systems. 

    But there’s even another distinction when talking about AI. (We won’t go too far down the rabbit hole). Narrow AI is a system that has been trained for a specific task (like ChatGPT or DALL-E). General AI is the more sci-fi scenario of understanding and learning in any domain like humans can (like GLaDOS or Bender).

    When we discuss AI applications in business, we’re talking about narrow AI. Why? General AI doesn’t exist yet!

    Digital Transformation.

    Armed with insights derived from AI, companies can initiate significant changes in their business processes, models, and culture. Digital transformation is the practice of using technology to radically change your business. It’s about leveraging all the digital tools at your disposal – data analytics, automation, AI applications – to fundamentally transform how your business operates and makes decisions. 

    A Strategic Roadmap for Implementing AI Applications in Business 

    Incorporating artificial intelligence technologies into a business isn’t much different than the process a business would have gone through when it incorporated any other new technology of its time. Such as, the internet, social media, e-commerce, smart phones, and cloud computing. 

    When we began building websites, it was to help businesses make use of new technology – the internet. Same theory with AI – others are already doing the heavy lifting to innovate AI technology, we’re simply helping clients to use that technology to advance their business.  

    A few years ago, we wrote a guide to help businesses manage complex development projects. Since implementing AI is basically a “complex development project”, these same guidelines apply.

    Here is a high-level overview of how any business can implement AI applications into their business operations today: 

    1. Assess Your Business Needs

    The first step in AI implementation is to assess your business needs and identify the areas where AI can add value. Check out this article with practical use cases for where AI applications can be implemented across many common business departments like accounting, human resources and marketing.  

    Partnering with an AI Consultant, like Atlantic BT, will allow you to lean on our 25 years of experience to help you to flush out your business goals, acknowledge your pain points, and identify opportunities for improvement. This will help you better prioritize AI use cases and define clear objectives for your AI projects.

    2. Data Collection and Preparation

    AI relies on high-quality data to generate accurate insights and predictions. Your data may need to be cleaned, processed, and labeled to ensure it is suitable for AI model training.

    3. Model Development and Training

    AI models are the core components of AI systems. And if you do not have someone in your organization with development experience, you should definitely consider partnering with an AI Consultant to help you design and develop AI models using appropriate algorithms and techniques. 

    These models will need to be trained using your prepared data and fine-tuned to optimize performance. Selecting the right AI frameworks and tools for model development are part of the process.

    4. Integration and Deployment

    Once your AI models are trained and validated, they need to be integrated into your existing systems or applications. Again, you’ll want someone experienced to ensure smooth data flow and compatibility with your infrastructure. 

    5. Monitoring and Evaluation

    After AI deployment, it is crucial to monitor the performance of your AI applications and evaluate their impact on your business. 

    6. Continuous Improvement

    Like any other technology, AI is an iterative process that requires continuous improvement and optimization. Your AI applications will require updates to ensure they remain effective and secure. And as your business needs evolve, your systems will need to evolve with them. 

    Use this link to download our free step-by-step guide for how to manage a complex development project. 

    Partnering with Atlantic BT as your AI Consultant

    Implementing AI applications into your business can be a complex and challenging endeavor. Partnering with an AI consultant can provide the expertise, guidance, and support needed to ensure a successful AI implementation. 

    We’re excited for what the future of our own business operations look like with the AI enhancements we have planned at Atlantic BT. And we think it would be just as exciting to partner with other business leaders to do the same for their organizations. 

    Even if you aren’t sure what you want to do, but you just know that you don’t want to be left off the AI train, let’s still schedule a call. We can help you to discover the right opportunities for improvement through AI. And our technical expertise will help uncover any limitations within your organization’s infrastructure that may hinder its full potential. 

    Click here to book a consultant with the Atlantic BT team. 

    Atlantic BT

    Atlantic BT has been building websites for 25 years. Great organizations, from startups to enterprise, trust us to design, develop, and secure their most important web projects. We deliver mission-critical technology and build powerful experiences that drive organizations to achieve their goals. 

  • From Chaos to Control: How a Technology Consultant Can Streamline Your Business’s Tech Assets

    From Chaos to Control: How a Technology Consultant Can Streamline Your Business’s Tech Assets

    Companies today face all sorts of disruptions, but the most complex among them comes from technology assets. Even if you were clear about your organization’s systems and platforms just a few years ago, chances are that everything has changed since then. Recognizing this, Atlantic BT steps in as a leading technology consultant, offering a suite of services to help organizations navigate the ever-changing technological landscape.

    You may find that you’re spending more time keeping up with technology than you are on your core business functions, which will cause your business to suffer. Perhaps your workers are continually burned out because in addition to carrying out their core jobs, they are having to put out technology fires. 

    Successful companies adapt to new technology changes in order to maintain their market presence, increase their market share and keep up with the competition. If your organization is struggling to keep up with the ever changing technological landscape, it may be time to partner with a technology consultant.  

    What is a Technology Consultant?

    Technology consultants are indispensable allies in today’s digital age. They guide businesses through the adoption of cutting-edge technologies, advising them on the use of modern tools. Possessing the right digital technology can propel a business to the forefront of innovation and significantly enhance revenue generation.

    An experienced technology consultant will bring a robust understanding of technology, its workings, and its business applications. This expertise is rooted in extensive industry experience and an educational background in technology, enabling them to help businesses leverage technology effectively and efficiently.

    Exploring Key Technologies for Business Growth

    In the digital era, businesses are increasingly leveraging a variety of technologies to streamline operations, enhance customer experiences, and drive growth. These technologies, ranging from Content Management Systems and Customer Relationship Management systems, to data analytics tools and cybersecurity measures, serve as the backbone of modern businesses. They not only automate and simplify complex processes but also provide valuable insights, improve online visibility, and ensure the security of digital assets.   

    Here’s a closer look at some of these key technologies and how they benefit businesses:

    • Content Management Systems (CMS) for managing and updating website content.
    • Customer Relationship Management (CRM) systems for tracking customer interactions.
    • Enterprise Resource Planning (ERP) systems for managing business processes. 
    • Data Analytics tools to derive insights from large volumes of data.
    • Social Media Management tools for managing their online presence.
    • Search Engine Optimization (SEO) tools for improving their website’s visibility on search engines.
    • Cybersecurity measures to protect their digital assets.
    • Cloud Computing services for scalable computing resources.
    • E-commerce platforms for online sales. 

    Each of these technologies plays a crucial role in the digital transformation journey of a business, and having the right guidance can make all the difference. 

    What Does a Technology Consultant Do?

    Technology advisory partners get to know your firm’s technology needs well, help you architect your technology strategy, and then use deep knowledge and experience to execute these strategies. 

    They can help you with your existing technology footprint or guide you in building new transformation initiatives. They exist to help you achieve your business objectives, reduce risks, make life easier for your employees, and keep your company safe from cyber threats. An experienced consultant can also help you with insights on industry best practices, recommend new technology adoption or technology upgrades and even help host and maintain your critical technology. 

    These partners – which are often managed services providers – already have relationships with companies that provide access to core and emerging technologies such as business process automation, HR management, and cloud-based operations. This can take the pressure off your own staff so they can focus on growing your business and meeting customer expectations. 

    “A managed service provider (MSP) delivers services, such as network, application, infrastructure and security, via ongoing and regular support and active administration on customers’ premises, in their MSP’s data center (hosting), or in a third-party data center.” – Gartner

    When working with a managed service provider or technology consultant, businesses can expect comprehensive support across a multitude of areas:

    • Custom Software Development: Technology consultants often aid in the creation of tailor-made software solutions, while also ensuring their maintenance, updates and security.
    • Technology Infrastructure Updates: Consultants can assist in planning for infrastructure changes, forecasting costs, and conducting risk assessments.
    • Repairs and Maintenance: They can cater to the support needs of the company’s IT tools, which includes software, hardware, network connections, and cybersecurity tools.
    • Project Management: Some consultants assume a project management role, supervising development and implementation projects within the company.
    • Cybersecurity: Technology companies who specialize in cybersecurity can advise businesses on the latest security measures and tools available in the industry.

     

    About Atlantic BT

    Atlantic BT is an award-winning managed service provider located in Raleigh, NC. We’ve been in business since 1998 and have served as a trusted technology consultant for enterprise businesses since our inception. Training Industry has been a client of ours for over a decade. Read more here about how our technology consulting services have helped their business to grow. For more information about working with Atlantic BT, visit our website, or call us at 919-518-0670, or send us a message to schedule some time to chat.

  • Working with an Agency is like a Fine Dining Experience:  An Analogy to Explain Project Expectations And Interactions

    Working with an Agency is like a Fine Dining Experience: An Analogy to Explain Project Expectations And Interactions

    In two previous posts, I compared 1) website planning and development with custom house building, and 2) website maintenance with owning a vehicle

    In this post, I correlate the fine dining experience to working with an agency who is building your custom website or web application. This will make fewer technical correlations, but instead focus more on the people and process involved in bringing your project to life. And yes, I did make myself hungry while writing this article.

    Getting Seated

    You walk into the restaurant. The atmosphere is calm, the lighting is warm and soft, and you approach the host. There’s a short introduction, and they make you feel welcome. Maybe you made reservations earlier, but maybe not. If not, you put your name on the list and relax in the lobby. At some point (now or later), the host calls your name, and you make your way to the table. They inform you who will be your server for the evening, and soon that person arrives.

    Surprisingly, the sales process can and should follow a similar path. Once you reach out to a vendor and you’re introduced to a sales representative, hopefully you feel at ease. Sure, you’re having discussions about schedule, scope, and budget when planning a project (which doesn’t happen while waiting in the lobby for your table), but you’re learning if your companies are a fit. It’s clear you’ve found a vendor who understands your needs, cares about your success, and budgets align. Eventually a contract is agreed upon, you’re assigned team members, and a kickoff meeting is occurs.

    What’s on the Menu?

    With fine dining, there are a lot of interactions with staff once you are at your table. Many of them are with your server. To start, water is brought to the table and drink orders are taken. While the server gets your drinks from the bartender, you start browsing the menu. Your drinks arrive, and you have questions about the menu. The server has answers to most, but they go and ask the chef about one particular detail. 

    It’s a multi-course meal, so you put in appetizer orders while you think more about the entree. A sommelier arrives, and they discuss with you the varieties of wine that pair well with the meals you’re considering. Your party discusses everyone’s ideas, you ask a few last questions of the server, and they take your order.

    Discovery and design phases of web development also include many meetings and conversations. Many. Your digital project manager is going to be your point person throughout the project. They’ll facilitate meetings, answer your questions, and provide you updates. 

    In discovery, instead of you asking the bulk of the questions, it’s more common to provide the answers to many people as goals and requirements are identified. A UX researcher is a team member who is heavily involved in discovery. During the design phase, a UX/UI designer takes lead on visual design and a developer or architect provides technical design. It’s common for you to bring designs (UI mockups) to your team or stakeholders for review. Eventually, everything is approved, and the development phase begins.

    Let’s Get Cooking

    Your order’s been placed – and the waiting begins. You’re not abandoned, but you have your drinks and the heavy decision making is complete, so you have some time for yourself and your party. The server still checks in with you, refills drinks as needed, and you may see other team members such as food runners who bring you the appetizer and later your salad.

    But there’s a lot more people involved with your meal. A line cook makes your appetizers and prepares your salad. In the meantime, the head chef is preparing the entree with the assistance of a saucier. Finally, a sous chef reviews your meal to make sure everything is absolutely perfect. Remember, you don’t get to see any of this! 

    It’s honestly the same in web development, except this process takes weeks or months – not minutes or hours. You’ve reviewed wireframes, mockups, and data design documents, but now your website is being developed behind the scenes. It can be difficult to have no tangible progress for a while after so much engagement. Eventually, the digital project manager will schedule demonstrations or screenshare progress during status meetings. 

    The team, meanwhile, is busy. Back end and front end developers are creating the code base and building features. Every feature has to be developed, including code reviews by other developers. Cloud engineers work with developers to set up deployments. Quality assurance team members are testing the site throughout against acceptance criteria. Soon enough (okay, maybe not soon enough), the website is ready to be launched!

    The Meal Arrives

    Your meal arrives. Appetizer and salad plates have been cleared, food runners place the plates in front of you, and your server gets a ramekin of sauce you realize you didn’t ask for earlier. The fanfare is quick, and then you’re free to dig in. Shortly after, your server checks in again making sure everything’s as expected. Later, while you’re still enjoying the meal, the house manager or general manager stops by too. The staff may have completed most of the work, but you still feel taken care of.

    Launch day for your website is a big deal. Your old website is taken down and the new one is made available to the public. There’s lots of communication and excitement. A couple of small bugs are found and resolved quickly. Your digital project manager continues to be on point and coordinate with the team as you provide positive feedback, find a few problems, and maybe ask for a couple of small changes you didn’t realize you wanted before. It’s also common that your original salesperson, or an executive, also checks in with you to make sure your website and experience with the team are both satisfactory.

    You Don’t Leave After the Meal Arrives

    You sit back, your entree devoured. Hopefully, no one at your table unbuttons their top pants button. This is a fine meal, at a fine restaurant, in fine company – you don’t have to leave immediately! You decide to have a cup of coffee, or an after dinner drink. The server mentions a few special desserts that are available, and one of them is too good to pass up. 

    Your website has been up and running, launch announcements have been posted, and you and your team are focused back on other company initiatives. That doesn’t mean you abandon the website though. You have some articles planned out to add over the next few months. You and your staff, now really using the website regularly, have a few ideas for new features. Plus, the website needs regular updates and maintenance for security purposes and to keep it from getting out of date.

    What Doesn’t Fit

    So far, this article is more around experience than specific technical aspects of development, most of the comparisons work reasonably well. However, there are a few areas that don’t line up.

    Cloud Hosting. We can draw direct comparisons of developers with line cooks, and sous and head chefs with lead devs and quality assurance, but there’s not a great correlation with cloud engineering. If the meal is the website, there’s no food correlation to cloud hosting engineers – no one really in charge of the building, security, and repairing of cookware and plates. Sure, a general manager might be in charge of locking up the building and ordering or replacing cookware – but no one is crafting individual plates or creating individual access policies for the pots.

    Content. With a dining experience, after you’ve decided what you want to eat, your job is complete (except for eating). If your website is a large content website, however, you may have a significant responsibility – adding content. Depending on the technology and budget, the vendor may be able to build the entire site without your assistance. Honestly, this is rare. You likely have new pages you want to write, older content to clean up, and some older web pages to delete. It may be more efficient or cost effective to have your staff learn and build the pages themselves. No restaurant is going to let you into the kitchen in order to do some of the cooking yourself!

    Payment. One other departure comparing a fine meal with custom development is how payment is handled. With a meal, it’s a single evening that’s paid for in full after all services are rendered. Vendor relationships are different, and web development projects are larger, so an invoicing schedule is usually agreed upon as part of the contract.

    A Restaurant You Never Leave?

    I think it’s important here to wrap up by calling attention to the fact that the website launch doesn’t correlate to the end of a fine dining experience but rather the middle. And honestly, if you have a good relationship with your vendor and understand that a website isn’t a product but a service, that website launch may fall in the very early part of a long endeavor spanning many years.

    And lastly, even though it doesn’t feel like it while you’re at the restaurant, you will need to eat again. A well developed website with ongoing maintenance can last a long time but not forever!

    The Series Is Complete

    I hope this article and the others in the series help to provide you with more insightful context for your next website or web application project, and maybe liaise better with the vendor.  It’s been enjoyable to map out the complexities of web development with more common and relatable experiences. 

    I hope your next project is with Atlantic BT, but even if it’s with another agency – I hope your home building, car maintenance, fine dining adventure of custom web development goes extremely well!

  • You Get What You Pay For: Measuring Software Quality

    You Get What You Pay For: Measuring Software Quality

    “You get what you pay for” is a phrase that applies to many parts of life, and software development is no exception. However, much of what goes into software development is a bit of a mystery to the layman, and understandably so. 

    It took me four years of education to gain a cursory understanding and many more years of hands-on experience to gain real knowledge of software development. So if you aren’t a technical expert and you’re paying for software development services, how can you truly evaluate quality? 

    The difference often lies in four areas: change management, planning and review, automation, and testing. 

    Simply put, companies that get these right produce higher quality software than those that don’t. These key elements drive efficiency, building software with fewer errors while creating a structure that facilitates future development

    Change Management

    Source Control

    We store code in a source control repository, meaning every change we make is tracked and saved. Furthermore, multiple developers can work on a project at once without fear of overwriting each other’s changes. 

    We also practice Infrastructure as Code. This means that hosting environments are scripted as code and stored in the repository, ensuring that infrastructure can be stood up in a repeatable manner. The benefits include simplified maintenance, testing, and disaster recovery.

    Versioned Releases

    Every deployment is planned and versioned so that we know the exact state of our software and when it got there. Being able to reference past work enables us to add new features quickly and easily.

    Planning & Review

    Feature Specifications

    Every feature is planned using a consistent format. We outline the feature’s business objective, document our assumptions and questions, outline dependencies, formulate a work plan, and determine how to test if it’s working correctly. We prefer to measure twice, cut once.

    Code Reviews

    Every line of code that’s written is reviewed by another developer. Nothing is released without peer review and approval.

    Automation

    Continuous Integration

    Code from all developers is run through software that compiles or parses the code, triggers the automated tests, and reports back on coding style and complexity. This happens daily (sometimes several times a day) and allows us to detect problems early – before code is deployed.

    Automated Deployments

    We remove the human element of error by automating our deployments. Continuous Integration Servers run in parallel with deployment tools to ensure that our clients’ code reaches the intended servers efficiently and consistently.

    Testing

    Automated Tests

    Every project is shipped with automated tests in place to ensure performance, accessibility, and predictable functionality. We use unit tests, integration tests, visual regression tests, accessibility tests, and load tests to ensure that the software we build behaves exactly as it should.

    Acceptance Criteria

    Acceptance criteria define the technical requirements of development work, and we write our acceptance criteria in Gherkin. This provides the perfect blend of human readability with technical specificity, and can also be used with automated testing.

    Quality Assurance

    We still test the good old fashioned way too. Every feature is tested against its acceptance criteria by a Quality Assurance Engineer. Before a feature is released, we ensure that the user experience is precisely as we intended it to be.

    Spend Your Money Wisely

    Through effective change management, planning and review, automation, and testing, we produce top quality software for our clients. 

    If you’re already working with a software development partner, ask if they’re doing these things for your project. If they aren’t, then you’re likely getting less than you deserve. Contact us today for a free consultation, and we can discuss applying these best practices for your next software development project.