modernization Archives | HatchWorks Your US-based Nearshore software development partner Mon, 08 Jan 2024 23:01:40 +0000 en-US hourly 1 https://wordpress.org/?v=6.4.2 https://hatchworks.com/wp-content/uploads/2021/04/hatchworks-favicon-150x150.png modernization Archives | HatchWorks 32 32 2024’s Comprehensive Guide to Generative AI: Techniques, Tools & Trends https://hatchworks.com/blog/software-development/generative-ai/ Tue, 19 Dec 2023 01:43:41 +0000 https://hatchworks.com/?p=29510 Major tech companies like Microsoft, Google, Coca-Cola, and Spotify are championing AI, integrating it into various aspects of their businesses, from content generation to product innovation. This groundbreaking technology is reshaping traditional workflows, enabling unprecedented levels of innovation and efficiency across a diverse range of sectors. In this guide, we’ll introduce you to the burgeoning […]

The post 2024’s Comprehensive Guide to Generative AI: Techniques, Tools & Trends appeared first on HatchWorks.

]]>

Major tech companies like Microsoft, Google, Coca-Cola, and Spotify are championing AI, integrating it into various aspects of their businesses, from content generation to product innovation.

This groundbreaking technology is reshaping traditional workflows, enabling unprecedented levels of innovation and efficiency across a diverse range of sectors.

In this guide, we’ll introduce you to the burgeoning world of generative AI. We’ll explore its capabilities, dive into its many applications and use cases, and share tips on making it a seamless part of your projects. Plus, we’ll tackle the ethical and security challenges that come with this groundbreaking technology and provide insights on responsible AI deployment.

A cover for Hatchworks' guide on "2024 Generative AI Techniques, Tools, and Trends".

Generative AI is transforming industries and redefining how we create and build products, as evidenced by the projected growth of the AI market to an astounding $110.8 billion by 2030. 

At HatchWorks, we embrace new technologies to deliver top-notch custom software development services. That’s why we’re harnessing generative AI to build digital products that surpass customer expectations and redefine the future of digital product development.

Are ready to unlock the potential of generative AI? Let’s dive in!

Exploring generative AI algorithms

Artificial intelligence has come a long way in recent years, with advances in deep learning propelling generative AI adoption at unprecedented rates. For example, ChatGPT, an OpenAI language marvel, impressively hit 1 million users in just 5 days, while its sibling, DALL-E, which generates images, reached the same milestone in a mere 2.5 months.

In comparison, other innovative products outside the AI category took significantly longer to gain traction. Facebook, for instance, reached 1 million users in 10 months, and it took Netflix 3.5 years to achieve the same milestone.

A chart showing the adoption rate of three AI tools, ChatGPT, DALL-E, and GitHub CoPilot, over time. The chart displays the percentage of users adopting each tool, with ChatGPT having the fastest adoption rate.

At its core, generative AI is powered by deep learning algorithms that analyze vast amounts of data to make predictions, generate content, and even create new data.

Let’s dive into some of the most influential algorithms and see how they’re shaping the future of digital innovation.

Deep learning

One of the most striking examples of deep learning’s influence on generative AI is natural language text generation. By processing and understanding the structure, syntax, and semantics of human language, these advanced algorithms generate coherent, contextually appropriate, and sometimes creative text that seems to have been written by a human.

This ChatGPT meme, featuring Will Smith from the movie I, Robot, humorously pokes fun at the challenge of creating truly original content.
This ChatGPT meme, featuring Will Smith from the movie I, Robot, humorously pokes fun at the challenge of creating truly original content.

Take ChatGPT, for instance. This large language model is a prime illustration of deep learning’s potential in crafting human-like text. Its rapid adoption showcases the incredible demand for AI tools that can seamlessly interact, communicate, and generate content with an increasingly human-like touch, revolutionizing the way we work, learn, and connect with one another.

Moreover, ChatGPT is transforming our relationship with search engines, as it fosters more declarative and conversational interactions, making the process of seeking information more intuitive, efficient, and engaging.

OpenAI‘s GPT-4 has made remarkable improvements over its predecessor, GPT-3.5, boasting higher scores on nearly every academic and professional exam, even surpassing 90% of lawyers on the bar exam. Additionally, GPT-4 can now accept images as inputs, expanding its potential applications.

Another example is the recent formation of Google DeepMind, a powerhouse union joining forces to responsibly accelerate AI development. This dynamic partnership is set to conquer the toughest scientific and engineering obstacles while paving the way for AI to revolutionize industries and propel science forward.

Reinforcement learning

Taking a step further, reinforcement learning brings another dimension to generative AI. This approach involves training algorithms through trial and error, allowing them to learn from their mistakes and improve their performance over time.

Reinforcement learning has found numerous applications in generative AI across various industries, unlocking innovative possibilities and transforming how we approach problems.

These models have seen so much data… that by the time that they're applied to small tasks, they can drastically outperform a model that was only trained on just a few data points."

The AI toolbox

When it comes to selecting the right algorithm for a specific use case, it’s essential to consider the strengths and weaknesses of various AI tools.

Some popular generative AI algorithms include Generative Adversarial Networks (GANs), Variational Autoencoders (VAEs), and Transformer models like GPT-4.

  • GANs excel at generating realistic images and can be used for tasks like image-to-image translation and generating artwork.
  • VAEs, on the other hand, are particularly well-suited for data compression and can be applied in areas like anomaly detection and image denoising.
  • Transformer models have been a game-changer for natural language processing, powering state-of-the-art text generation, translation, and summarization systems.

Armed with the knowledge of these algorithms, you’re ready to explore their creative applications and unleash their potential.

Unleashing creativity with generative AI

All across various domains, generative AI is sparking a creative revolution. 

Music generation

While it’s unlikely to replace human creativity entirely, generative AI is making waves in the music composition world. It serves as a powerful tool for enhancing the creative process. By generating unique melodies, harmonies, and rhythms that adhere to given text descriptions, AI models like MusicLM inspire musicians to explore new ideas and push the boundaries of their art.

Take, for example, the recent news of a trending song called “Heart on My Sleeve,” written and produced by TikTok user ghostwriter977. The vocals for the song were generated by artificial intelligence and made to sound like Canadian musicians Drake and The Weeknd.

Despite its growing popularity, Universal Music Group (UMG) requested the removal of the song from various music platforms and called for a block on AI using copyrighted songs for training purposes. This incident highlights the ongoing debate surrounding the ethical and legal implications of AI-generated content in creative industries.

Text generation

Language models like GPT and BERT are revolutionizing content creation and automation. With the power of Natural Language Processing (NLP) techniques, AI models can generate coherent and contextually relevant text for a wide range of applications.

Text prompts can be used as inputs to guide AI-generated text, ensuring the output aligns with desired context and themes. This technology is not only automating content creation but also helping writers overcome writer’s block and enrich their writing.

These models can even be prompted to generate code. AI-generated code snippets and templates are streamlining the development process for companies, allowing them to more rapidly prototype and build high-quality software solutions for their clients.

A screenshot of GitHub's CoPilot AI assistance, showing a code editor with a suggestion for a code snippet.
Introducing CoPilot, GitHub’s AI-powered code assistant! CoPilot helps developers write better code faster by suggesting relevant code snippets based on the context of their code.

One notable example is GitHub Copilot, an AI-powered code assistant developed by GitHub and OpenAI. It integrates with popular integrated development environments (IDEs) like Visual Studio Code, Neovim, and JetBrains, offering auto-completion of code in languages such as Python, JavaScript, TypeScript, Ruby, and Go.

By leveraging the capabilities of OpenAI Codex, GitHub Copilot makes it easier for developers to navigate unfamiliar coding frameworks and languages while reducing the time spent reading documentation. Furthermore, a research study conducted by the GitHub Next team revealed that GitHub Copilot significantly impacts developers’ productivity and happiness. Surveying over 2,000 developers, the study found that between 60-75% of users feel more fulfilled, less frustrated, and are able to focus on more satisfying work.

Image generation

A campaign image for our podcast featuring two muscular men in a gym joking about the podcast's name. The image was generated using Midjourney AI.
Thanks to Midjourney AI, we were able to create this hilarious campaign image featuring two muscle-bound guys promoting our podcast, Built Right.

AI-generated art is transforming the creative and design industry by enabling artists and designers to create unique visuals using image generators. From photorealistic images generated using GANs to medical images for research and diagnostic purposes, generative AI is revolutionizing the world of visual content.

According to Everypixel, “More than 15 billion images were created using text-to-image algorithms since last year. To put this in perspective, it took photographers 150 years, from the first photograph taken in 1826 until 1975, to reach the 15 billion mark.” This staggering statistic underscores the transformative power and rapid evolution of AI in the realm of image generation.

At HatchWorks, we’re all about diving into the exciting world of Generative AI, and we wanted our blog to really capture that energy. So our fantastic marketing designer, Luis Leiva, opted for generative design to whip up a unique banner image for our blog post.

We fed the Midjourney AI model this prompt: “A Brave New World of Deep Learning, Reinforcement Learning, and Algorithmic Innovation, vector, illustration, happy, vibrant, teal, orange.”

We fed the Midjourney AI model this prompt: "A Brave New World of Deep Learning, Reinforcement Learning, and Algorithmic Innovation, vector, illustration, happy, vibrant, teal, orange."

Generative AI isn’t just about number-crunching and problem-solving; it’s also about unleashing creative flair. We hope to inspire you to ponder the broader applications of generative AI and explore the endless possibilities it offers in both practical and artistic realms.

Some more groundbreaking applications of image generation include:

Personalized marketing

Generative AI can create tailored visuals for marketing campaigns. Platforms such as Jasper, enable teams to generate personalized and brand-specific content at a much faster pace, leading to a tenfold increase in productivity. By leveraging AI-powered tools, businesses can craft captivating social media posts, advertisements, and marketing copy, considerably boosting the efficacy of their marketing strategies while maintaining a more targeted approach.

Icon and Logo Design

Having unique and tailored branding elements, such as icons and logos, is essential for products to stand out. AI-generated icons and logos offer an innovative solution to this challenge.

Transforming the world of icon and logo design, numerous new tools utilize AI-driven innovation to elevate the creative process. Magician for Figma uses AI to generate unique icons from text inputs, streamlining the icon creation process. Adobe Firefly focuses on providing creators with an infinite range of generative AI models for content creation.

By utilizing these cutting-edge tools, designers can effortlessly generate custom vectors, brushes, textures, and branding elements, leading to more distinctive and memorable designs.

Data Visualization and Analysis

AI-generated charts, graphs, and other visual representations of complex data sets enable companies to present information in a clear, engaging, and insightful manner, enhancing their product’s user experience.

Tools like Ask Viable could play a crucial role in this process, offering AI-powered analysis that turns unstructured qualitative data and feedback into actionable insights, allowing businesses to make data-driven decisions and optimize their performance.

User Interface Design

AI-generated interface mockups and dynamic design elements are revolutionizing the way companies create intuitive and visually appealing user experiences for their applications.

AI-generated interface mockups and dynamic design elements are revolutionizing the way companies create intuitive and visually appealing user experiences for their applications.

Tools like Genius are at the cutting edge of this transformation, offering an AI design companion in Figma that understands what you’re designing and makes suggestions using components from your design system. These AI-driven solutions allow designers to explore a multitude of ideas, iterate more efficiently, and ultimately deliver more engaging user interfaces.

Tips for integrating generative AI into your projects

To make the most of generative AI in your projects, it’s crucial to understand the best practices for selecting, training, and implementing AI algorithms. Here are some valuable tips to help you navigate the integration process and maximize the benefits of generative AI.

Selecting the Right Algorithm

  • Identify your project goals: Clearly outline the objectives of your project and the desired outcomes before choosing a generative AI algorithm. This will help you determine which algorithm best aligns with your goals.
  • Consider your data: Assess the type and amount of data you have available. Certain algorithms may require large datasets, while others can work effectively with smaller amounts of data.
  • Evaluate algorithm performance: Research the performance of various generative AI algorithms and compare their success in generating high-quality, relevant content. Select the one that best meets your quality and creativity requirements.

Incorporating generative AI into your workflows

  • Prepare your data: Ensure that your data is clean, well-structured, and diverse to provide a solid foundation for training your generative AI model.
  • Seamless integration: Design your workflows to accommodate generative AI output, making it easy to incorporate generated content into your projects.
  • Human-AI collaboration: Emphasize the importance of human-AI collaboration, using AI as a tool to enhance creativity and productivity rather than replace human input.
  • Iterate and refine: Continuously test and refine your generative AI implementations, gathering feedback from users and stakeholders to improve the overall quality and effectiveness of AI-generated content.

Assessing AI output quality and effectiveness

  • Establish quality metrics: Define clear metrics to measure the quality and effectiveness of your generative AI output. This can include factors such as coherence, relevance, and creativity.
  • Regular evaluation: Periodically evaluate the performance of your generative AI models against your established quality metrics and make improvements as needed.
  • Seek user feedback: Gather feedback from end-users and other stakeholders to understand how well your generative AI output meets their needs and expectations. Use this feedback to refine your AI models and workflows further.

By following these tips, you can successfully integrate generative AI into your projects and make the most of this powerful technology.

📌 For an in-depth exploration of how generative AI is revolutionizing various sectors, read our comprehensive report on Generative AI Use Cases Across Industries.

To see how HatchWorks is leading the way in AI-powered software development – visit our Generative-Driven Development™ page now.

Navigating the ethical and security challenges of generative AI

Generative AI, like any powerful technology, brings a set of ethical and security challenges that must be addressed proactively to ensure responsible deployment. Here, we’ll provide guidance on how to navigate these challenges effectively and maximize the positive impact of generative AI.

First, address the potential misuse of generative AI by developing and enforcing strict guidelines for its ethical use within your organization. Encourage a culture of accountability and monitor generative AI usage in your projects to prevent misuse.

Secondly, mitigate the risks of biased or uncontrolled AI-generated content by training AI models on diverse and representative datasets. Be aware that earlier models like GPT-3 have demonstrated biases related to gender, race, and religion, which can influence the output. Implement mechanisms to detect and mitigate harmful or offensive content and educate your team and end-users about potential biases and limitations, promoting responsible usage and critical evaluation.

Protection against the malicious use of generative AI is essential. Implement robust security measures, monitor AI-generated content for signs of malicious activity, and collaborate with industry partners and stakeholders to develop and promote best practices for mitigating malicious use.

In addition to security measures, prioritize transparency in your generative AI deployments. Openly communicate the use of AI-generated content and the methodologies behind it. Stay informed about the latest ethical and security developments in the generative AI field and adapt your strategies and practices accordingly. Foster a strong culture of responsibility and ethical awareness within your organization.

Lastly, invest in education and training. Provide your team members with education on generative AI technology, its potential risks, and ethical considerations, fostering a culture of informed responsibility. Encourage continuous learning to stay updated on the latest advances in generative AI and its ethical and security implications. Contribute to public awareness and understanding of generative AI, promoting informed decision-making and responsible use.

It’s predicted that AI could impact 300 million full-time jobs worldwide, so it is crucial to emphasize responsible and ethical use. By proactively addressing these challenges, you can ensure the responsible and beneficial use of generative AI in your projects, leading to a more innovative, efficient, and ethical digital product development process.

Frequently Asked Questions about generative AI

Generative AI is a form of artificial intelligence that uses algorithms to create new data, content, or predictions based on existing data. Unlike discriminative AI, which focuses on classifying and predicting outcomes, generative AI generates new instances, such as images, text, or music, based on learned patterns and structures.

Generative AI is a subfield of machine learning, which is an overarching discipline that deals with teaching computers to learn and make decisions based on data. Generative AI specifically focuses on the creation of new content by learning from existing data.

A Generative Adversarial Network (GAN) is a type of generative AI model that consists of two neural networks, a generator and a discriminator, that work together in a competitive manner. The generator creates new content, while the discriminator evaluates the content’s quality and authenticity.

Generative AI can explore a vast range of design possibilities, optimize solutions, and help designers create innovative, functional, and aesthetically appealing products.

Discover how our Generative-Driven Development services can transform your business by visiting https://hatchworks.com/generative-driven-development/.

Businesses can use generative AI to automate content generation, optimize decision-making, and create personalized experiences for customers, ultimately improving efficiency and reducing costs.

Some limitations of generative AI include the need for large amounts of training data, high computational resources, potential bias in generated content, and difficulty in controlling the generated output. Additionally, generative AI models may struggle to understand and generate content that falls outside the scope of their training data.

No. While generative AI can produce impressive results, it is not a replacement for human creativity. AI-generated content is based on patterns learned from existing data, meaning it cannot replicate the full range of human emotions, experiences, or intuition that drive creativity.

Summary

Generative AI has immense potential to revolutionize how we create, design, and innovate in the digital realm. By harnessing the power of AI tools and technologies, we can unlock new creative possibilities and enhance the quality and efficiency of our projects. By emphasizing responsible and ethical use, we can ensure that generative AI continues to have a positive impact on the industry and contributes to a more vibrant and creative digital landscape.

Generative AI has immense potential to revolutionize how we create, design, and innovate in the digital realm. By harnessing the power of AI tools and technologies, we can unlock new creative possibilities and enhance the quality and efficiency of our projects.

Balancing ethical concerns with responsible use, we can ensure that generative AI contributes to a more vibrant and creative digital landscape while mitigating its potential negative impact on the job market.

At HatchWorks, we understand the importance of leveraging generative AI responsibly and ethically. As a software development partner, we utilize the power of generative AI to build innovative digital products that meet the unique needs and expectations of our clients. Reach out to us to learn more about how we can help you harness the potential of generative AI for your projects.

Hatchworks: Your US-Based Nearshore Software Development Partner

At HatchWorks, we understand the importance of leveraging generative AI responsibly and ethically.

As a software development partner, we utilize the power of generative AI to build innovative digital products that meet the unique needs and expectations of our clients tailored to your industry.

Reach out to us to learn more about how we can help you harness the potential of generative AI for your projects.

The post 2024’s Comprehensive Guide to Generative AI: Techniques, Tools & Trends appeared first on HatchWorks.

]]>
Harnessing Generative AI Tools for Modern Software Development https://hatchworks.com/blog/software-development/generative-ai-tools-for-modern-software-development/ Fri, 07 Jul 2023 20:16:35 +0000 https://hatchworks.com/?p=29665 One of the most exciting areas of Machine Learning is Generative AI, a subset of AI that creates new data instances that resemble your training data. In the context of software development, this means generative AI models can assist in writing code, thereby transforming the way we develop new applications. Generative AI in software development […]

The post Harnessing Generative AI Tools for Modern Software Development appeared first on HatchWorks.

]]>

One of the most exciting areas of Machine Learning is Generative AI, a subset of AI that creates new data instances that resemble your training data. In the context of software development, this means generative AI models can assist in writing code, thereby transforming the way we develop new applications.

Generative AI in software development provides solutions to pressing issues like the shortage of skilled software developers and the growing backlog of feature requests and bug fixes. Companies are increasingly turning to AI to help streamline their processes and deliver high-quality software applications more efficiently.

The Competitive Edge: Harnessing Generative AI Tools for Modern Software Development.

AI coding tools, powered by generative AI, are at the forefront of this revolution. These tools generate code, helping developers to write faster and more efficiently, while also reducing the possibility of human error. AI applications are becoming increasingly sophisticated, able to take on more complex tasks and deliver even more value.

This article will delve into the world of Generative AI in software development, exploring its impact, the tools that are leading the charge, and what the future holds. Whether you’re a seasoned developer, a project manager, or a business leader, this piece will give you insights into the world of AI-powered software development.

How AI improves developer workflow and enhances productivity

Artificial intelligence (AI) is more than a buzzword—it’s reshaping the way businesses operate, innovate, and maintain their competitive edge.

At HatchWorks, we’ve seen firsthand how AI can streamline tasks, foster continuous learning, and boost productivity. Today, we’d like to share some insights from three of our colleagues, all of whom are incorporating AI into their everyday work.

Our journey begins with Fernando Manzo, who enthusiastically uses ChatGPT and the beta version of GitHub CoPilot. Both tools have become indispensable to him, assisting in understanding and developing code.

CoPilot acts like an autocomplete tool, suggesting the next steps when the developer might hit a roadblock. However, it’s ChatGPT that Manzo views as the superior ongoing training tool, capable of providing a contextual understanding of code and assisting with complex SQL queries. But Manzo reminds us that AI is not perfect—it can produce syntax errors and invalid options, so it’s essential to double-check your documentation.

Beyond coding, Manzo also appreciates the role AI plays in communication. Tools like ChatGPT and Grammarly help him in refining client-facing communications, making them concise and more compelling.

Gabriel Bejarano, another AI enthusiast at HatchWorks, agrees with Manzo that AI won’t replace developers anytime soon. AI’s role, according to Bejarano, is about enhancing performance by reducing time spent on repetitive tasks. GitHut CoPilot, for example, excels in autocompleting code and simplifying tasks such as sorting.

Bejarano also finds value in using AI for creating test cases, translating to new code bases, and even teaching coding when given the right prompts. He likens ChatGPT to a digital consultant that can answer complex questions and help with intricate tasks.

Stay competitive with essential AI tools in software development

What exactly are AI-based code-completion tools, and how do they work? To put it simply, these tools integrate with the software that developers use to write code. They leverage AI models trained on vast amounts of code to predict and suggest the next piece of code that a developer is likely to write.

Natural language processing (NLP), a subfield of AI that focuses on the interaction between computers and human language, plays a crucial role in the functioning of these tools. NLP enables the tools to understand and generate human language in a way that is both meaningful and contextually relevant. This is key to their ability to generate code from a natural language description, a feature that is proving to be a significant time-saver for developers.

Let’s take an example of a popular AI-based code-completion tool: OpenAI’s Codex. This tool is capable of translating comments written in plain English into code snippets in a variety of programming languages. By simply typing a comment describing what they want the code to do, developers can get a head start on writing the code. This not only saves time but also helps to reduce the cognitive load on developers, allowing them to focus more on problem-solving and less on syntax.

However, AI-based code-completion tools are not limited to code generation. They can also be helpful in identifying bugs and suggesting fixes, thanks to their ability to learn from the vast amount of code they have been trained on. They have the potential to become an invaluable coding partner, assisting with everything from writing boilerplate code to debugging.

Simplify code optimization and query management with AI

Generative AI is revolutionizing software development by automating tedious and repetitive tasks such as writing boilerplate code, performing standard database operations, and creating common UI elements. This automation enables developers to concentrate on the more complex and creative aspects of software development, fostering innovation and enhancing the quality of applications.

First, generative AI tools have a significant impact on code generation and developer productivity. As discussed earlier, AI-based code-completion tools integrated into development environments can expedite the process of writing code. By suggesting potential code blocks that match the developer’s intentions, these tools can reduce the time and effort spent on writing and debugging code.

One study suggested that these tools can boost code generation speeds by up to 55%. Consequently, this could lead to a considerable improvement in developer productivity and a reduction in the time it takes to bring new software applications to market.

Secondly, AI tools play a crucial role in debugging and enhancing the quality of software applications. AI can sift through vast amounts of code to identify potential bugs or vulnerabilities that may have been overlooked during the development process. It can also suggest potential fixes for these issues, reducing the amount of time developers need to spend on debugging. This proactive problem-solving capability can lead to improved software quality, as well as enhanced security.

Unlock ChatGPT’s potential through effective prompt crafting

AI can assist in the testing phase by generating test cases and scenarios. Clear, well-written task scenarios for QA testing, dogfooding, and beta testing help ensure that the software application is robust and reliable.

Prompt Engineering is a concept that plays a crucial role when developing a new application with an AI system. Essentially, Prompt Engineering involves crafting prompts that effectively guide the AI system to generate the desired output.

For instance, when developing an application, developers might provide the AI with prompts that describe the functionality they want to implement. The AI would then generate the necessary code based on these prompts.

Finding balance – using AI efficiently without sacrificing quality

AI coding tools aren’t designed to replace human coders but rather to augment their capabilities. Experienced developers can leverage these tools to produce higher quality work more efficiently, while less experienced developers can use them as a learning aid, accelerating their skill development.

This partnership, when effectively managed, can result in better software quality, reduced development time, and an overall more efficient and enjoyable coding experience.

AI-generated code expedites the development process. It’s capable of churning out blocks of code quickly, which can significantly reduce the time taken to develop software. But it’s not without its potential downsides.

One of the main challenges is the risk of vulnerabilities or bugs within the AI-generated code. While AI tools are becoming increasingly sophisticated, they’re flexible. This is where the critical role of a software engineer comes into play. Engineers are needed to review the AI-generated code, refine it, and ensure that it is accurate, secure, and efficient. Without this human oversight, the code produced could be subpar, insecure, or inefficient.

To ensure the quality of AI-generated code, a variety of strategies can be employed. Automated testing tools can be used alongside generative AI to check the code as it’s produced, catching any errors or vulnerabilities early on.

Regular code reviews by experienced developers can also help maintain high-quality standards. These measures, combined with continuous learning and improvement of the AI models themselves, contribute significantly to the quality assurance of AI-generated code.

On the other hand, the benefits of using generative AI in software development are manifold. AI can automate repetitive, low-level tasks, freeing up developers to focus on more complex and creative aspects of coding. This can lead to improved design and faster development times.

Additionally, AI can assist in debugging, potentially improving the quality of the final product. It can also help manage software feature requests and bug fixes, contributing to overall developer productivity.

Despite these advantages, the use of AI-generated code does present potential risks, one of them being intellectual property issues. For example, if an AI model has been trained on copyrighted code, there’s a risk that the AI could generate code that infringes on that copyright. Companies must take these issues into account when implementing AI tools, ensuring that they have the necessary permissions and licenses to use the training data for their AI models.

Leading with an AI-first approach in your business culture

Brandon Powell, CEO of HatchWorks and leader of our AI Task Force, envisions AI as a catalyst for growth and innovation across the entire business. He believes we’re at a generative AI tipping point, where AI tools can optimize different business departments, upskill our workforce, and ultimately lead to improved productivity and profitability.

One area where AI is making a significant difference is in recruitment. It not only helps in sourcing candidates but also engages them through AI-driven chat.

However, with the adoption of AI, there’s an essential question: How do we ensure AI doesn’t alienate our team members?

Transparency and continuous learning are key. We have to make sure that the adoption of AI aligns with the values and goals of our people.

Support client success with AI education and empowerment in product development

While AI holds great promise, it’s not without its challenges. AI code generators, for example, still need human intervention to piece together complex environments and understand legacy systems. Yet, Powell is hopeful, viewing these challenges as opportunities for the team to focus more on significant tasks and less on mundane ones.

AI is more than just a tool—it’s a strategic partner. It assists in making complex tasks manageable, fosters learning, and opens new avenues for growth. As we continue to adapt and learn, we’re excited about the endless possibilities AI brings to our organization, our customers, and our industry.

“The future of HatchWorks lies in being an AI-driven organization,” Powell says. “One that is Agile and ready to train our customers in the effective use of AI.”

Discover how HatchWorks’ Generative-Driven Development™ can accelerate your software projects – explore our innovative approach today.

Frequently Asked Questions about generative AI in software development

Generative AI in software development refers to AI systems that can automatically generate code. These systems use machine learning models trained on large amounts of code data to predict and suggest code blocks based on user inputs.

AI-based code-completion tools integrate with the existing software development environments. Developers can write descriptions in natural language, and the AI suggests several variants of code blocks that fit the description. Developers can then select and refine the appropriate code.

Research indicates that AI-based code-completion tools can speed up code generation by up to 50%. They can also assist in debugging, which may improve the overall quality of the developed product.

More experienced engineers seem to benefit most from AI coding tools. However, less experienced developers can also see productivity gains, although these may be less significant.

AI-generated code may contain vulnerabilities or bugs, just like human-generated code. It’s essential for software engineers to review AI-generated code to ensure its quality and security.

The cost of generative AI coding tools is generally low, with subscriptions typically ranging from $10 to $30 per user per month. These products are readily available and don’t require significant in-house development.

One potential issue is the risk of vulnerabilities or bugs in the AI-generated code. Additionally, inexperienced developers might not see as much productivity gain from these tools. Lastly, it’s important to discuss licensing and intellectual property issues with the provider to ensure the generated code doesn’t result in violations.

Summary

The move towards AI integration is more than just a trend—it’s a significant shift that has the potential to elevate the quality of software development significantly.

Here are our key takeaways:

  • Generative AI is not replacing developers; it’s augmenting their capabilities and helping them focus on problem-solving
  • Tools like ChatGPT and GitHub Copilot streamline coding and boost productivity by automating repetitive tasks and assisting in debugging
  • AI-generated code can have errors; human review is essential for quality and security
  • AI can be a catalyst for innovation and business growth
  • AI adoption should align with team values and goals, focusing on transparency and continuous learning.

By harnessing the power of generative AI, developers can focus more on complex, creative tasks, while AI handles the routine, tedious aspects of coding.

Thanks to the following for their contributions to this article: Matt Paige, Fernando Manzo, Gabriel Bejarano, and Brandon Powell.

Interested in exploring the power of generative AI for your projects?

HatchWorks can help. We provide the tools, expertise, and support you need to harness the potential of AI in your software development process.

Contact us today to learn how you can leverage generative AI.

The post Harnessing Generative AI Tools for Modern Software Development appeared first on HatchWorks.

]]>
The MVP Trap: Why You Need a New Approach to Modernization with Joseph Misemer https://hatchworks.com/built-right/mvp-trap/ Tue, 16 May 2023 12:00:28 +0000 https://hatchworks.com/?p=29589 If you’re ready to enter the next stage of product development – modernizing an existing solution – you might be tempted to try the MVP route again. It worked well once before, surely it can again… The truth is that updating an existing solution is a completely different process. You’re not starting from scratch this […]

The post The MVP Trap: Why You Need a New Approach to Modernization with Joseph Misemer appeared first on HatchWorks.

]]>

If you’re ready to enter the next stage of product development – modernizing an existing solution – you might be tempted to try the MVP route again. It worked well once before, surely it can again…  

The truth is that updating an existing solution is a completely different process. You’re not starting from scratch this time. You already have a product and users on board, and so you need a new approach.  

To talk more about modernizing a solution and the best approaches to take, we welcomed Joseph Misemer, Director of Solutions Consulting at HatchWorks, to the podcast. Joseph explains why the MVP approach doesn’t work when it comes to modernizing a solution and breaks down the different elements of a successful modernization project.  

Keep reading for the top takeaways or press play below.  

Why MVP isn’t the right approach for modernization

The MVP approach to product development is a tried-and-tested method for getting a new product to market. But is it always the right approach?  If, instead of creating a brand new product, you’re modernizing an existing one, Joseph argues that the MVP approach doesn’t really work.   He likes to use the well-known MVP metaphor of starting with a skateboard, moving to a bicycle, and then to a car. It’s a clear path of development and improvement.   But what if you already have a car? With an existing product, you’re not starting from scratch, and so rebuilding the entire thing isn’t the best move. It’s a whole lot more work, not to mention the fact that your users will likely be upset if they already love your solution.  Instead, Joseph believes the MVR or minimum viable replacement is the way to go.   

The principles of using an MVR 

Before you launch into modernizing your solution, Joseph outlines the six principles of using an MVR.  

1. Competing against your own product 

One of the biggest differences between the MVP stage of a new product and modernizing an existing one is that the competition looks a little different. With a brand new product, you’re competing with the wider market. With an existing product, you’re still doing that, but you’re also competing with the original version of your own product.   The competition may be greater, but you’re arguably in a better position with interested and paying users that can give you invaluable insights into how it could be improved.   

2. Prioritize your most valuable users 

Who are your most valuable users? They could be those who have been with you the longest or those who pay the most. However you identify them, they should be top of mind when you start any MVR project.  The last thing you want to do is upset these users. You want to give them nothing but improvements to the solution they already love. 

3. Understand how users are using your product 

To keep those users happy, you need a good idea of how they’re already using your product – and that might not always be immediately apparent. Some users might have uses for your solution that you’ve never even considered. The features you believe to be most valuable may not be the same for your users.   Before starting modernization work, speak to existing users and get feedback on how they use the solution and what you can do to make that better.  

4. Identify the most critical workflow 

At the MVP stage, you start with a blank slate and can pick a path to see if it sticks with users. But when it comes to redesign and modernization, you need to find spots where people are doing high-value workflows with your product. This way, you can identify which areas to focus on to produce the most value for your users.  

5. Prioritize incremental enhancement  

Incremental improvements should be your primary goal when working with an MVR. You already know what works and how your users feel about the solution. This can inform which areas need the most improvement.   Those improvements don’t all need to involve stripping a feature down and rebuilding it from scratch. You may only need to make tweaks in some areas and bigger changes in others.  

6. Focus on improving the functions and experience of using a product 

Before you start any kind of modernization project, you need to have a solid reason for all the changes. Modernizing a solution, moving it to the cloud, or rebuilding features is not cheap, easy, or quick to do. It can also cause disruption for your users, so you need a solid reason for the changes before you go ahead.   That reason should relate to improving the functions and/or experience of using the product. This could mean cleaning up the UI, changing workflows, improving speed or functionality. Maybe it’s to help the business scale so you can deliver a better service or to solve performance issues that users experience.   Understanding exactly why you’re doing it will help you stay focused on the right things, and it’ll also help you explain to your users how these changes will benefit them. This helps to keep them on board and feeling valued. The last thing you want is for them to associate these changes with a negative experience.  

The three approaches to modernization 

If you’re ready to go ahead with modernization, the next step is to decide on your approach. Joseph identifies three main approaches you could take 

1. Functional approach 

The functional approach involves looking at a function that a user does and seeing how you can upgrade it. You could approach modernization by upgrading a feature piece by piece or just take it one feature at a time. This approach is ideal if your product is clearly siloed into different functions. If not, you may want to try another approach. 

2. Process approach

The process approach could involve cutting across different user types to follow a single workflow. You might have different people using the system at each step, but not everyone will be self-contained inside that process. So, they won’t have to hop from something that’s updated to something that isn’t, the entire flow will be updated to make the transition smooth.  

3. Add-on approach 

The third approach is around add-ons. This is when you take something new and add it into the existing features or processes. It allows you to add more value and functionality that could improve workflows or the user experience.   The good news is that you don’t have to pick just one approach. You could combine them. For example, you might want to update usability while also including a new feature that helps to make a workflow run a bit smoother.   The key to making this all work well is to have open conversations with users to learn more about their behaviors and needs. By understanding your users, you can deliver a newly improved product that adds rather than takes away.    To learn more about the best approaches to modernizing your solution and the MVP vs. MVR approach, check out the full episode with Joseph.  

Matt Paige:

All right, we got a good one for you today folks. Today we got Hatcher’s very own Joseph Memer. He runs our solutions consulting practice and has about 20 years experience building teams that build and deliver custom software solutions. And he’s one of the few people that I give the tag of Agile Guru to every time I talk to him, I’m learning something new. I keep the notepad handy whenever I’m chatting with Joseph. He’s just a wealth of knowledge with everything agile, everything, building software in general. But welcome to the show, Joseph.

 

Joseph Misemer:

Thanks for having me, Matt.

 

Matt:

Yeah. Excited to start chatting with you on a interesting topic today. And today we got a bit of a hot take with a bit of a contrarian view. What most everyone in our industry holds near and dear to their hearts. And that’s the beloved MVP approach to software development. Everyone’s heard of the mvp, the minimal viable product popularized by air crease. It’s become the sole defacto way of building software full stop. Like it’s just, it just is. Everybody knows the mvp. If you’re talking about waterfall, you kinda get shunned out of the room. And if you try and speak against m p, you sure to attract an angry mob with pitchforks. But luckily Joseph, for us today, we’re in the safety of our homes. This is recorded. Nobody’s coming after us, after the show airs, maybe. But we’re going there today. And don’t get me wrong, MG MVPs have their place. If you’re trying to test a market hypothesis, build a proof of concept, test the technical feasibility of a solution. MVPs are a great way to go. We use MVPs for those approaches when you’re building something new but you can’t, apply this blanket approach to everything and just assume it’ll work. And this is especially true when you’re modernizing or redesigning a software solution. Joseph, take us off the top. Why does an MVP approach not work when you’re modernizing software or redesigning software?

 

Joseph: 

Yeah, sure thing, Matt. And I want to, we’ll start with a little bit of a metaphor. We’re all familiar. I the MVP metaphor of we’re gonna start with the skateboard, move to a bicycle, move to a car. And I think that’s a great metaphor for MVP software development. But if we think about maybe an experience of driving a car on a highway, right? Because that’s the point that you’re gonna be at when you finish that MVP project front. Your customers have that car, they’re zooming along. In Atlanta, people move pretty quickly on the highways. So let’s think about what would happen if somebody already has a car that you gave them and now you want to tell them you’re gonna start them back over on a skateboard with no warning. On the highway, what’s gonna happen? They’re gonna be terrified, right? They’re gonna be zooming along at 65, 75 miles an hour, and then they’re gonna find themselves standing on a skateboard. And that’s probably pretty dangerous, right? So we can’t, if we’re taking an existing solution, we can’t start people over from zero. We have to meet them where they are now. And that’s using your existing software.
Matt: That’s what, yeah, I was gonna say, that’s what so many people do, right? They take this MVP approach. You hand your customer this shiny new object. It seems great, but it’s not meeting the needs that they have. And you can, you get some upset customers that if you take that approach,
Joseph: Yeah, it’s such a big, it’s such a big risk. People get used to, people get used to things, right? Every time Microsoft changes the location of a button or a color of a highlight, you’ll have coworkers that are flipping out. We all have our experiences when somebody changes the behavior of something inside our email client, right? We’re so used to it. And if it gets moved even if it’s good in the long run, it’s still such a shock in that intermediate. Intermediate phase.


Matt:

Yeah. And so if we’re looking at, MVP, building something new versus MVR like, let’s baseline on a few differences, a few points of difference.They thinking we have this checklist of things, right? If you have an mvp, a new thing you’re testing a new solution versus mvr, you’re trying to replace something existing. Yeah. Primary goal of an mvp. You want to validate a market, validate a product. In VR or modernization, you wanna migrate. Users to a new solution with Little churn. Yeah. User base. None on the new thing. An existing base on the existing thing. Target users, you’re trying to attract new modernization. You wanna retain existing competition’s a whole nother side of it. Are you competing with existing behaviors with a new thing or your own solution with mvp? So there’s a whole litany of different differences here, and that’s not even getting into the workflows and the technology and the culture and all those other pieces. So there’s a dividing line between an mvp, something new versus modernizing something existing.

Joseph: 

Yeah, and I think that, you touched briefly on it, but one of the ones that I think is really worth considering a lot is the question of whether you’re starting from. From nothing or starting from your existing solution, right? You may have already won over a bunch of people to, to doing, whatever they’re gonna be doing on the platform that you’ve built for them, which is great. It’s such a powerful place to begin. But you can’t pretend they don’t have that experience. They can’t, you can’t pretend they’re not used to something. You can’t pretend that they’re not comfortable maybe with the workflows that they’ve built around it. And if you try to take that away without making a really strong argument in return, you’re gonna end up with a bunch of people who are unhappy and who might walk.

 

Matt: 

Yeah, definitely. And people are attached to their existing processes. But let’s get into the six, or so principles of mvr. So there’s like some core tenets that really start to mold this approach and this methodology. So I’ll Hit one. Let’s hear the rationale and the details behind it. But the first one being with an mvr, you’re competing against your existing product.


Joseph: 

Yeah. We talked a little bit about this just a minute ago, but. Hopefully people are already using the system that you’re trying to modernize. And in that case you’re not just competing against people from the outside. You’re competing against your existing experience. And so there’s a possibility of scaring people away. And, this is a place where there’s actually been a lot of study done on people’s openness and willingness to accept change. And there’s a couple of things that we’ve found are really powerful drivers of maybe sticking with. Older experiences rather than making a switch to the new one. And one of them is something called the endowment effect. And this is where people are really, almost always value what they already have more than something new that they can get. And they’ve got that strong grip on, on the current piece. And you really have to pry that, that out from them. And the other one is this idea of loss aversion. We think that it might be the same. We might be just as happy if we win $5 and if we lose $5. But studies have pretty consistently shown that people feel two to four times as bad when they’re encountering, when they’re encountering a negative experience than a positive experience. And this, I think, touches on one of the big risks you have to be aware of, right? You might be able to keep something, but if you give somebody a bad experience where they lose a tool they’re used to, they’re gonna be way more upset. Then if you give them a new tool that they didn’t have before. So this is something you really need to consider carefully when looking at your modernization plans. Because that idea of loss aversion, making sure you don’t take something away that people value is way more important to your users than giving them a shiny new bobble.

 

Matt:

Yeah. And you, it’s like that bird in the handsworth too, in the bush. And it’s not just like you can’t supply a bad experience, you gotta. Supply something that’s better than what they have. Something the same just isn’t gonna cut it. Yeah. It’s a, it’s almost a level, a higher bar when you’re modernizing or redesigning something existing in a lot of ways. Yeah. And you mentioned the endowment effect. It makes me think of my, so my brother-in-law, he’s got a dog, sweet dog, great animal. You give him his treat and he turns into this Jekyll high type of thing, protects it. He, if you even get close to it, you’re losing a finger. And it’s the same kind of thing. People are protective of what they know. It’s like humans are weird animals. I guess dogs are too. People are protective of what they have. Yeah. Yeah. There, go ahead.

 

Joseph:

No, I, I was just gonna say that’s something that that’s incredibly true and it’s so important to keep in mind is that the way people are gonna fight to, to keep their workflows the same and not have to give something up when they make a change.

 

Matt: 

Yeah. And so the next one prioritize your most valuable users. I think this is a super interesting one and it’s a big kind of differing point when you think of MVP versus MVR. It’s who are your key users? You’re prioritizing.

 

Joseph:

Oh, yeah. Cuz in MVP, you’re not even sure. When you go in with that blank page, you’re able to, you’re able to draw all over it. You’re able to make whatever decisions you want and draw whatever conclusions you’d like because there’s nobody there to tell you’re wrong. And when you’re doing a modernization, you’re gonna have people that are valuable, whether they’re the folks that are paying the most, the folks that are doing the most lever use, whether they’re people that you’re leveraging to. To speak for you and do word of mouth marketing however you define it. There’s gonna be people that are going to be adding that extra bonus level to your user experience. And you have to cater to them. Don’t bend over backwards, but you have to be particularly concerned with how they’re gonna react to changes. And you can’t just go in and assume that everyone is gonna be reacting the same way and that the impact of everyone’s reaction is gonna be the same.

 

Matt: 

And those users that use your system the most, that are driving the most revenue, and we’ll get into this as another principle as well. They have some of the craziest workflows and ways of using your product too. But the example I like to think of is it’s like you’re building condominium, right? Floors one through 20, exactly the same, two grand in rent. They’re all the same ceiling height, same amenities, all that. But you get to the penthouse. And they’re paying let’s say, I don’t know, $20,000 a month, something crazy. And they want swimming pool. They want their own elevator. They want a helipad, they want 30 foot ceilings. They want all these crazy amenities. If you’re not considering that upfront you’re outta luck by the time you get to need to start building that pen penthouse. And you haven’t established a sound foundation before you got there.

Joseph: 

Yeah. And I think along with that too, you can think about maybe people are using your system in ways you don’t anticipate. And so that needs to be part of your conversation as well. When you’re talking to these high value users. You put in a closet that you expect people to use for coats and they end up using it for some other kind of storage or something, and be prepared to respond to people finding that new new exciting way to do something. Maybe you’re, you’ve got people who are used to having an elevator big enough to. Piano in, and you can’t replace that with a tiny little elevator if you don’t talk to them and find out how they’re using it. And so be aware and be particularly aware of your power users, right? Because they’re gonna be the ones who are going to dream up ways to, to take full advantage of everything that you give them. Yeah.

Matt: 

So everybody picture that in your head, your customers. Trying to hoist a piano up the side of a building and how pissed off that’s gonna make ’em. So just visualize that in your head when you’re modernizing something and the approach you’re taking, but you segue perfectly into the next one, which is understanding how customers use your product. And I think every customer or client we’ve engaged with, They’re always surprised at how current users are using their system that they just were not aware of. And as we’re doing the research these new interesting ways of how they use the solution become unveiled, but talk through that a bit. And also that leads to potential opportunities, right? Once you start to learn these things.

Joseph: 

A hundred percent. And I think that’s one of the things that’s so great is that People use whatever tools they’re given to achieve their goals. And so if we’re making a tool for maybe our in-house staff to use, they’re gonna find the ways to do as many pieces of their job with that tool as they can. And if that means that when you’re starting to talk about how to replace it, you discover that people have been using your free text fields, for really weird things, or that people have been, tracking assignments in ways that you hadn’t ever anticipated. You both have to be prepared to support that, but it also gives you a great visibility into some of the valuable pieces you can do as part of the modernization process. If people have been using a notes field to track who owns a task, maybe grant people in the future, the ability to assign tasks, and that opens up a whole space of ability to drive value for your organization. As you find some of those places so you can automate on top of those pieces. As you find these other non-traditional, non intended ways of using the software as you go forward

Matt: 

And then there’s always the the tool that is will be around, I think it’s like a cockroach. It’s never gonna die. And that’s Excel. If people are still, I promise you, using Excel somewhere in their process that you don’t know about, that you could, automate and put into your solution. We’ve seen that a ton of times as well. Yeah.

Joseph: 

Yeah. And I think it’s always informative. The time I’ve worked on a modernization project, there’s always been somebody that’s come up to me after a discussion of a workflow and been like I can’t tell you this when my manager was on the call, but here’s all the steps that we do that, that nobody knows about. And there’s always something in there that you can capture and improve upon because people are having to cook corners. And if you can give them the tool as part of that modernization, it’s gonna be better for everybody. Improve visibility less. Less opportunity for mistakes. All those pieces come into play. But having, being able to have those open and honest conversations about how people are using the tool and about how people are using other tools because the current one doesn’t meet their needs, those are gonna drive the ability to get really successful modernization questions.

Matt: 

Yeah. And that’s powerful. That almost gets back to the discussion we’ve had with Andy Sylvere on another episode where, Being able to get under that user experience, knowing how to ask the right questions. Like you mentioned, like when mom and dad aren’t in the room. I’ll tell you how this really works, right? But it’s real. It, people figure out the best way to use things and it may not be the instructed way to do things. Yeah. In getting into the next one, so this segues into now identifying the most critical workflow. I think with mvp, the idea is, let’s keep it simple. Let’s keep it end to end. Let’s start with an easy workflow. Modernization redesign, you can’t always go that route. Yeah.

Joseph: 

If you’ve been stacking MVP for a while, you might have accumulated 3, 4, 5 individual pieces. But much like when we were talking about the critical users, when we started with mvp, we had a blank page. We were able to pick a path and we were able to see if it. If it’s stuck with people and try another path and try another path. Now we’ve got people who have worn those tracks into the ground. And we’re not gonna be able to pretend that that we don’t know what’s coming. So we need to look for those spots where people are doing those high value workflows. And hopefully by this point you’ve got an understanding of where the value is in your product, but if you can understand that and look at the things that are driving it that’s gonna help you make the selection on the places where you’re gonna get the most most bang for your buck when you’re looking at going forward.

Matt: 

And this really starts to frame up your roadmap in a lot of ways. Yeah. Once you identify, okay, who’s our most valuable user, right? Who’s, what’s the ways they’re using the product? Identifying the most critical workflows, then it starts to frame up, okay, how do we. How do we sequence this thing out? And that gets to the next principle, which is, and this actually does connect back to an m MVP type of approach, but you gotta prioritize incremental enhancement over big bang. So I think that’s one thing with MV r this is not an approach saying build everything, launch it all at once, and pray that it works. That’s not it. Yeah. Talk us through that.

Joseph: 

Yeah. And it’s. I think it’s important to recognize here we’re not trying to throw away the entire idea of mvp, right? The idea of take a small slice and get people using it so you’re not sitting on value continues to be in play. And you can see a lot of that. As you get an understanding of your workflows, there’s gonna be places where you don’t have to tear down and completely rebuild. Take advantage of that. Get people using the new technologies. If you’ve got customer facing and internal facing, you can make choices about where you want to do your first, UI update. If you’ve got process pieces, you can pick a place and update a, a. Slice of the process. Get yourselves so that you’re seeing some of that value. But I think when you look at these too, these are all tied together, right? Your most critical workflow might depend on which type of user you’re looking at. Your incremental steps may depend on what your critical workflow is. And all of these are gonna depend on, who’s already using your system. And how it’s already being used and how you’re gonna try to support that. So that might drive oh, yeah. The most important incremental enhancement is to make sure that we don’t delete any functionality, but we modernize it and we get it working better. Cool. That’s a good informed choice that you can make sometimes.

Matt: 

Yeah. It’s a, it’s almost like the way to think about it, MVR is a combination of all the MVPs. Required to migrate your existing customers to your new solution. With minimal churn. That’s another way to think about it. It’s like, how do you chunk this thing up in a lot of ways? Yeah. And the last one being, focus on improving the function, the experience and the technology. A lot of times you’ll have people sway too much one way or the other where it’s, solely it’s just technology. That’s all we’re focusing on. Let’s lift and shift this thing to the cloud and not worry about anything else or. Let’s focus too much on the ui, but your technology’s old as dirt, right? But it’s all of those things that are, you gotta think through and prioritize when you get this opportunity to actually modernize something. Yeah. Yeah.

Joseph: 

And I think the big piece with this is we don’t want to do something for no reason. Let’s understand why we’re doing things. We don’t want to just pick up and drop something into the cloud. We better have a reason for it. It’s not free to pick up something and drop it into the cloud. Yeah. It’s not free to completely redo our ui. It’s not free to to change our workflows. So let’s understand, let’s make sure we understand why are we cleaning this up? Are we cleaning it up? Because we’re finding that our team members can’t do their tasks without making mistakes and we’ve now learned a better flow to put in place. Great. Are we finding spots where we’re not collecting the right information? And so we can’t do the reporting we need to be successful as a business. Awesome. Let’s collect that information. Let’s do a project to collect that information. Are we finding that we’re not able to scale and so we’re having performance issues because we have our application running on a single server in the closet in back, awesome. Let’s move to the cloud and give ourselves the ability to be responsive to our loads. But all of these are a reason, and it’s making sure that we understand why we’re doing it so that we’re not just Hey, I’ve heard of the cloud. Let’s do the cloud. No let’s do it for a reason. Let’s do it for a reason. And that reason is scalability or flexibility. Or a new technology. Not just because we want to. And I think that’s so important for all of these is that, if we understand why we’re doing something, we’ll be able to position to tell our users what the value is gonna be and offset that endowment effect. We’re gonna be able to, Make the right selection of which users we need to support first. We’re gonna be able to make the selection of which workflows we need to support first. We’re gonna be able to pick which incremental change we make because we know why we’re doing it, and we’re not just throwing a dart at the port.

Matt: 

Yeah, exactly. And hopefully by this point, you, you jive in thinking, okay I understand why MVP may not be the best thing for everything, and I’ll understand the why. But Joseph how the hell do you do this? How does this work in practice? And you hit on some of it too. And that’s one of the most important things to consider. That’s where I see some of our solution consult things, work through this. You gotta be intentional. Yeah. About how you’re releasing out functionality, how you’re communicating it to your users. Cuz the last thing you want is unnecessary churn. Which relates into either unhappy users or lost revenue or inefficiencies. And there’s, several ways you can approach this. We got three favorite ones, at a high level we like to talk about, but take us through the the different approaches. Kind get down to that how layer.

Joseph: 

Yeah. So when we look at it, there’s three ways that we can approach doing a modernization an M V R project. And we don’t always pick just one of these play very well together, either between or within each other. But there’s three approaches that we look at most often. And one of them is called the functional approach. And this basically is where we look at a function that somebody does, and we can try to, we can try to upgrade one slice of your function. And we can pick another function and we can follow that all the way through. And this is maybe a spot where you’ve got different users and they’re very siloed in how they use the system. And if there’s no overlap in how people are gonna use it, we can take a look at this functional approach and we can upgrade or update the flow for all of one type and then all of another type and then all of another type. And this is great if it’s super siloed. But if it’s not super siloed, maybe we’ll need to take a look at another approach. And there we might look at the process process approach. And this is a case where maybe we’re cutting across different user types, but we’re able to follow a single flow all the way through and it sits by itself. And so we’re able to track, maybe an entire deposit flow from nose to tail, and then we can follow an entire audit flow from nose to tail. And this may have different people using the system at each step. But everyone is going to be self-contained inside that process. They’re not gonna have to hop from something that we’ve updated to something that we haven’t updated. While following that flow, they may have to hop from updated flow to not updated flow, but that’s an entirely separate workflow and they can make that transition fairly smoothly. The third one, Is what we call the add-on approach. And the functional and the process approach have been very focused on you have an existing system that’s doing everything you need to do and we need to take something new and bring it into that space with the add-on approach. We’ve got a an opportunity to take something that you’re not doing at all yet. And this can be a new function. It can be a new process. It can be both. But we can take this and no one’s ever done it before and we can bolt that on. Using our new approach and then we can bolt on another system. We can bolt on another system. And this allows us to focus on these new places, use the technology, use the new workflow, use the new pieces and tools that we have available to us while not touching any of the existing pieces. And this is perhaps the most extreme example of not messing with anyone’s current play base, but it’s certainly an option, if you’ve got something that’s completely new, don’t feel like you have to build it the way you built stuff 3, 5, 10 years ago. Yeah. Look for a way to build the new stuff with the new tools and then you can come on behind and try some of the other approaches to bring some of the pieces that you’ve built in the past forward.

Matt: 

Yeah, and this is one where if you looking to get into a new market or maybe a new customer segment, that add-on approach is. Particularly interesting way to test that out. So we got functional process add-on. Those are the three right there. And, it’s all about getting to, what is that? Releasable increment. How are we thinking about the approach to really bite off this elephant one bite at a time? Yeah. We’ve seen it fail on one side where you try to release an MVP and customers are unhappy. We’ve seen it on the other side where you try to do too much and package this giant thing together and release it, and that’s not great either. So you gotta have a dedicated approach and have the teams aligned on the approach that’s a critical thing cuz. But something existing you’re not, you mentioned sandbox earlier, you’re not in your own little sandbox. You got customer support. You got finance, you got all these different areas of the organization that you have to consider.

Joseph: 

Yeah. All right.

Matt: 

Go ahead, Joseph. You got other, there’s

Joseph: 

There’s so many moving, there’s so many more moving parts when you already have, when you already have the car running. That you can’t assume. Are gonna play nicely together if you don’t have that conversation, if you don’t spend that time doing that the prep work to set yourself up for success.

Matt: 

Yeah. It’s what’s the example? It’s like you’re building the airplane as it’s flying. That’s a startup example. It’s, very similar. You got an airplane flying, you’re trying to completely rearchitect it in the air and keep everybody safe. Similar kind of metaphor there. Make this real for us. Do you got any. Examples, any use cases where either you’ve seen an NVR type of approach for great, or on the flip side, a fail where a company maybe did not take this type of approach?

Joseph: 

Yeah. I was thinking a little bit about this before we, we talked and I, I had a bad experience with one of my online banks and they maintained some of saving accounts for my family. And they created a new product that was anyways really great, but I think they, they took an MVP approach to replacing an existing product and they sent it out the door where it could do the absolute bare minimum of this product, right? It was a savings account, it took in money, and it let me take money out, and it showed me my balance, but it couldn’t do any of the other things that the old savings account could do, including set up a joint owner. Yeah, so I was I used this to move money around to, to handle banking with my wife, and we were unable to link her, ch her accounts to this savings account, and it completely defeated the purpose. Of creating the savings account, which was a place to to bridge the other accounts that we had. And it was incredibly frustrating because we had a, an established process that we were using based on the tools that they had made available to us. And by cutting out that core tool when we needed it to upgrade that account, we almost walked away from that, that banking institution because they made it impossible for us to do the core workflow that we had. We had dreamed up. And I think this touches a little bit on that idea of. They may not have expected people to use their savings accounts to bridge a couple of checking accounts, but that’s how we were using it. And that doesn’t mean that we’re not gonna be impacted by their change in the process. And it really caught us out and it was really a very disappointing and frustrating experience for us.

Matt: 

We’ll keep the name of the bank protected and un undisclosed. But yeah it’s, they didn’t understand your particular needs and I’m sure what they delivered. The new thing was probably, Great shiny, awesome functionality, but it missed that core element that you as a particular user group, I promise you probably weren’t alone. I bet you there were other people in that same scenario, customer segment Yeah. That had that same use case in terms of how they used their solution.

Joseph: 

Quite possibly. Yeah. It was, but it was a clear instance. Somebody getting to that bare minimum functionality that works if you don’t have anything to compare it to, but as soon as you got a comparison point, you’re like, I can’t go backwards. I can’t go backwards.

Matt: 

Awesome. That’s great. And I think we’re about at a stopping point here, but MVR, so what are those core principles you’re competing against your own product? You prioritize your most value, valuable user, prioritize incremental enhancement over your big bang. Identify the most critical workflow. Understand how users are using your product. They got those paperclip products processes out there and improve the, the function, experience and technology of it. And then we talk through the different approaches as well. And, we got some resources out there. You can find ’em in the show notes if you want to go a bit deeper. And I think, Joseph, this is one of those topics where we could go down a rabbit hole on an entire episode, on any number of these areas, and we probably will in the future. But appreciate you having you on the show. I know folks can probably find you on LinkedIn. That’s probably the easiest spot out there. But thanks for joining us today. My pleasure.

Joseph: 

Thank you for having me.

Matt: 

Thanks Joseph.

The post The MVP Trap: Why You Need a New Approach to Modernization with Joseph Misemer appeared first on HatchWorks.

]]>
The 6 Principles of Minimum Viable Replacement (MVR) https://hatchworks.com/blog/software-development/the-6-principles-of-minimum-viable-replacement-mvr/ Fri, 17 Mar 2023 17:25:50 +0000 https://hatchworks.com/?p=29412 Is your business struggling with outdated legacy systems that just don’t seem to keep up with the times? As much as you’d like to rip out those old systems and start fresh, it can be a costly and risky proposition. Especially when a solution has existing users and is driving revenue for your business. That’s […]

The post The 6 Principles of Minimum Viable Replacement (MVR) appeared first on HatchWorks.

]]>

Is your business struggling with outdated legacy systems that just don’t seem to keep up with the times? As much as you’d like to rip out those old systems and start fresh, it can be a costly and risky proposition. Especially when a solution has existing users and is driving revenue for your business.

That’s where Minimum Viable Replacement (MVR) comes in. A Minimal Viable Replacement (MVR) is an approach, popularized by Kevin Mireles, to replace a legacy solution that has an existing base of users or customers. It’s a modernization strategy that involves upgrading legacy systems incrementally, replacing only the most essential components with newer, more efficient technology.

6 Principles of MVR.

Now, you might be thinking, “Isn’t that just putting a band-aid on the problem?” But hear us out. By upgrading your legacy systems in small, manageable increments, you can avoid the risks and high costs of a complete system overhaul, while still keeping your business up-to-date with modern technology, and more importantly running without interruption.

The MVR approach is guided by 6 key principles, each of which plays an important role in the successful modernization of legacy solutions. In this blog, we’re going to dive deep into those 6 principles and show you how to put them into action. By the end, you’ll have a better understanding of how MVR can work for your business and how to start your journey toward more efficient and modern solutions. Let’s get started!

Principle 1: Compete against your existing product

MVPs are focused on incumbent competitors that own the market. There is also competition from existing behaviors and status quo, which can sometimes be an MVP’s biggest competition.

However, when you are modernizing or digitally transforming an existing solution, your biggest competition is your existing solution. This is where human nature comes into play. Users are already familiar with using your existing solution and will prefer it even when it doesn’t make logical sense.

The two core psychological phenomena at play in an MVR are:

Endowment effect: People are more likely to retain an object they own rather than acquire a similar object (either in value or appearance). In essence, people feel a sense of ownership over the systems and technology they currently use and are not typically gung-ho about giving it up.

Loss aversion: People value losses more than they value potential gains. Not just by a little either. They tend to value it by 2 to 4 times more. Anything less than that is likely to be perceived as incredibly negative. In essence, a bird in the hand is worth two in the bush.

We are ultimately creatures of habit, which makes an MVR unique.

Principle 2: Prioritize your most valuable users

In any existing solution, you have many user segments, and they are not all equal. Typically there will be smaller user groups that either make up a majority of the product usage or a majority of the product’s revenue.

In either case, you must prioritize understanding your most valuable users’ needs, pain points, and desires first.

Principle 3: Identify your most critical workflows

While user segments are important, the workflows they leverage are even more critical. Prioritize the highest value workflows first and understand what parts of the system they touch.

This detail will directly impact the approach you take with your MVR, and will help define the incremental value you provide.

Principle 4: Focus on improving function, experience, and technology

MVPs focus on validating a market and an idea. With an existing solution, your product has already been validated. The focus should instead be on improving your existing solution to better serve your target users.

While technology is typically front and center with any modernization project, you can not miss the opportunity to improve and sometimes completely reimagine both the function and experience of your solution. The design of your solution is critical to adoption and ongoing use, and can not be overlooked.

Principle 5: Prioritize incremental enhancements over big bang

This is the one principle that is similar to an MVP approach. However, it is more nuanced and critical that the increments are clearly defined, and will not disrupt the existing users’ use of the current solution.

There are three standard approaches: Functional, Process, and Add-On that are detailed in our MVR overview: Minimum Viable Replacement: A New Approach to Modernizing Legacy Solutions.

Identifying the one that works best for your modernization project is critical to its success.

Principle 6: Understand how customers use your product

Your product will be used in ways you never intended. This must be understood and considered when improving the function and flow of your solution. Otherwise, you may be missing critical workflows that are not formally documented.

In order to understand this, it is imperative that you perform proper discovery and actually talk to actual users of the solution to understand from a qualitative standpoint how they use your solution.

You should also leverage any tools that provide quantitative data about how the system is used. This can include tools like Hotjar as well as system usage data.

Summary

In conclusion, Minimum Viable Replacement is a smart way to modernize your product without the high cost and risk of a complete overhaul. By following these 6 principles, you can ensure the success of your MVR strategy and keep your product up-to-date with the latest technology.

Remember to prioritize the most valuable users, identify the most critical workflow, focus on improving function, experience, and technology, prioritize incremental enhancements over big bang, and understand how customers use your product. With these principles in mind, you can modernize your product gradually and keep up with the competition.

Getting Started with HatchWorks Is Easy

Want to learn more about how we deliver solutions that are valuable, usable, feasible, and viable through our integrated US and Nearshore delivery model?

No matter what phase you are at in your software solution journey, HatchWorks can help you create a user experience your customers will love.

The post The 6 Principles of Minimum Viable Replacement (MVR) appeared first on HatchWorks.

]]>
What is the Built Right Mindset? https://hatchworks.com/blog/software-development/built-right-mindset/ Fri, 17 Mar 2023 17:15:21 +0000 https://hatchworks.com/?p=29411 If you are a product, technology, or business leader, and you are building a digital product or undergoing a digital transformation (which, let’s be honest, can be scary), you probably have two questions keeping you up at night: Am I building the right thing? Am I building it the right way? This is the difference […]

The post What is the Built Right Mindset? appeared first on HatchWorks.

]]>

If you are a product, technology, or business leader, and you are building a digital product or undergoing a digital transformation (which, let’s be honest, can be scary), you probably have two questions keeping you up at night:

  • Am I building the right thing?
  • Am I building it the right way?

This is the difference between creating a digital product that stands out and disrupts the market, versus those that fizzle out wasting time, resources, and cash. Whether you are undertaking a digital transformation at a Fortune 500 company or building a brand new solution as a startup, nobody’s got time for that!

What is the Built Right Mindset?

At HatchWorks, our sole focus is to build the right digital product the right way.

We call it the Built Right mindset.

But what does that mean?

Let’s start with the first component: “Am I building the right product?”

Am I building the right product?

The right product must satisfy three critical components. It must be valuable, viable, and feasible.

Valuable

Your solution must be valuable in the eyes of your end user, which ultimately impacts whether someone will buy or use your product. In order to achieve this you must focus on solving the right problem for the right user. You must have clarity on who your solution is for, and more importantly, what problem it solves for them. To do this, you must first understand your user’s job to be done. In other words, what progress are they looking to achieve?

Everything you add to your roadmap and build should be viewed through this lens.

Viable

It is not enough for users to love your solution. It must also work for your business and be economically viable for you to continue building and supporting your solution in a sustainable way.

This can come in the form of:

  • Your overall business model,
  • Your go to market strategy,
  • How you acquire customers, or
  • The total costs to build and run your business.

The one thing that can change the viability of your business are market forces. Take the pandemic for instance. It completely ruined the viability of some businesses overnight, while creating new opportunities for others.

P.S. If you are looking for a cost-effective way to build your custom software solution in your timezone, check out our comparison of onshore, offshore, and nearshore costs.

Feasible

Feasibility is all about whether or not the solution you have defined can actually be developed by your engineering team. This is based on their skill set, available technology, and the agreed upon timeline.

All three of these components must be satisfied to build the right digital product.

Am I building it the right way?

Building the right digital product is critical to get right, but it is all for naught if you don’t build it the right way.

A product that is built right must satisfy these four components: It must be maintainable, scalable, secure, and usable.

Maintainable

The majority of software cost is in ongoing maintenance, not its initial development. Having a maintainable solution is all about making life easier for your developers. A maintainable solution is one that can be repaired, improved, and understood with ease.

A highly maintainable solution possesses these 5 qualities:

  • Modular: the solution is composed of discrete components so that a change in one component has minimal impact on others in the system
  • Reuseable: The extent to which the solution makes use of assets that can be reused in building other assets in the system
  • Analyzable: the ease at which impacts of a change can be easily identified, diagnosed, and analyzed
  • Modifiable: The ease at which the solution can be modified without introducing new defects or degrading the existing solution quality
  • Testable: The ease at which the system can be tested ideally through automated testing

Scalable

This is all about how performant your solution is based on the changing demand for your solution. Prioritizing this from the start can lead to lower maintenance costs, a better user experience, and all-around higher agility.

This is more than just throwing your solution in the cloud – it has to be architected the right way to ensure optimal performance over time.

Secure

Security must be architected into your solution from the beginning, not an afterthought to be bolted on at the end. In today’s world, this is one area of your solution you can’t skimp on. It’s not just your sensitive data that’s at stake; your customers and users who depend on your solution are also in the balance.

Usable

Last but not least, your solution must be usable. Wouldn’t it be a shame to get this far, and not have a usable solution? This goes deeper than just the UI of your solution. It includes the user experience, which must be architected in a way that is enjoyable and friction-free for your end users. To do this, you must keep the user experience top of mind through initial ideation and discovery all the way through delivery.

Summary

To sum it up, building a digital product that hits the mark requires more than just throwing some code together and crossing your fingers. As a product, technology, or business leader, you need to constantly ask yourself two questions: Am I building the right thing, and am I building it the right way? This means making sure your product satisfies the critical components of being valuable, viable, and feasible, while also being built in a secure, scalable, maintainable, and usable way.

At HatchWorks, we call this the Built Right mindset, and it’s what we live and breathe every day to help our clients achieve success in their digital transformations. Whether you are building a brand new solution or modernizing an existing one, adopting this mindset is crucial to standing out in today’s fiercely competitive markets.

So, if you want to build a digital product that disrupts the market and sets you up for success, keep these principles in mind and focus on building the right product the right way. Trust us, your customers (and your bottom line) will thank you for it!

Getting Started with HatchWorks Is Easy

Want to learn more about how we deliver solutions that are valuable, usable, feasible, and viable through our integrated US and Nearshore delivery model?

No matter what phase you are at in your software solution journey,
HatchWorks can help you create a user experience your customers will love.

The post What is the Built Right Mindset? appeared first on HatchWorks.

]]>
The Evolution of Digital Transformation: From Pre-Internet to Post-Pandemic https://hatchworks.com/blog/product-design/history-digital-transformation/ Fri, 03 Feb 2023 20:45:16 +0000 https://hatchworks.com/?p=29097 Digital Transformation has an interesting history before becoming one of the most talked about buzzwords in the business world today. You likely have heard it mentioned in your CEO’s strategic initiatives. However, what once seemed like lip service for stakeholders and investors has now become a critical part of staying competitive in today’s market. Spending […]

The post The Evolution of Digital Transformation: From Pre-Internet to Post-Pandemic appeared first on HatchWorks.

]]>

Digital Transformation has an interesting history before becoming one of the most talked about buzzwords in the business world today.

You likely have heard it mentioned in your CEO’s strategic initiatives. However, what once seemed like lip service for stakeholders and investors has now become a critical part of staying competitive in today’s market.

Spending on digital transformation has reached a staggering $1.6 trillion in 2022 and is projected to reach $3.4 trillion in 2026.

That is some serious investment.

But where did the idea of digital transformation come from? Let’s first define what it is.

The Evolution of Digital Transformation: From Pre-Internet to Post-Pandemic.

What is digital transformation?

Digital transformation refers to the use of digital technologies to modify or create new business processes, customer experiences, and organizational culture in response to changes in the market and business needs. In some cases, this can lead to complete shifts in business models creating seismic waves throughout an organization.

Now that we have a better understanding of what digital transformation is, let’s look at its history and how it has evolved over time.

A brief history of digital transformation

There are four distinct eras in the evolution of digital transformation that has forced companies to adapt how they operate and serve their customers. Those who have been unable to adapt typically go the way of the dodo bird.

Pre-internet Era

1950 – 1989
This is where the foundational building blocks of the digital revolution were created. The invention of microchips and semiconductors enabled manual processes to be converted into digital technologies.

This started the first major digital transformation. Companies focused on shifting outdated processes to digital data. Worldwide, this created a need for business transformation and cultural change.

  • 1958 The microchip and semiconductor were invented
  • 1960 Moore’s Law defined

Post-internet Era

1990 – 2006
The next digtal era created massive change. The internet started the shift from a siloed world into a global one. Connection and access to data through the public accessibility of the internet createda more ubiquitous playing field. Personal computers exploded during this era, giving people terminals to the world wide web in their living rooms, and the first social networks began to crop up.

This era drove change in existing processes and business operations with the creation of the internet and increased access to customer data. More importantly, it caused companies to rethink their customer interactions as the internet significantly changed how people interacted, search, and buy.

  • 1990 Internet becomes publicly available
  • 1998 Google founded
  • 2000 Half of US households have a personal computer
  • 2004 Facebook founded
  • 2005 Internet users reach $1 billion worldwide
  • 2006 AWS created

Mobile Era

2007 – 2019
Just when companies were becoming comfortable with the modern internet and its impact on their business, another foundation shift happened with the introduction of the iPhone and the shift to mobile. This opened up a world of possibilities, new business models, and the introduction of new social and mobile channels, which drove another spike in digital transformation.

Marc Andreesen’s seminal writing, “Why Software is Eating the World”, laid out a clear vision of the future where software would disrupt every industry across the globe, and how new software-centric players would have the upper hand in this new world.

Interestingly enough, this is also around the time when the term “Digital Transformation” was first coined. Now the cycle of change required to stay competitive had a name.

  • 2007 iPhone released giving rise to the mobile revolution
  • 2011 “Why Software is Eating the World” written
  • 2013 The term “Digital Transformation” is coined

Post-Pandemic Era

2020 – Present
The last major era, and the one we are currently in right now, is the post-pandemic era. The pandemic accelerated digital innovations as companies were forced to rethink how they served their customers in a non-contact and remote world.

This ushered in shifts in business models and forced companies to take their digital transformation initiatives from the board room to the front lines with new urgency. This acceleration was the push many companies needed to implement a better customer experience.

Advances in AI and machine learning are playing a huge role in digital transformation initiatives. While the history of AI warrants its own timeline, advances in machine learning and tools like ChatGPT are clearly going to drive even more change in the way we work, interact, and live.

  • 2020 Global Pandemic
  • 2022 Digital Transformation spending at $1.6 trillion

How to approach digital transformation

Each digital era has caused businesses to rethink their internal operations and customer expectations. It has created fertile ground for new market entrants and has shifted, created, and even retired whole business models.

Where businesses get digital transformation wrong is by viewing it as something that can be completed or reach a state of maturity. Instead, digital transformation should be viewed through a lens of continuous development. Something you are always improving and optimizing upon.

However, even if you approach it in this manner, digital transformation is HARD.

Changing processes and replacing existing systems are not for the faint of heart. At HatchWorks, we leverage a proven approach when modernizing digital solutions called MVR (Minimal Viable Replacement). This approach focuses on breaking up the needs of the new system(s) into a clearly defined roadmap. This roadmap focuses on delivering valuable chunks of functionality into the hands of real users as soon as possible with minimal impact on their existing work.

Essentially, an MVR is the culmination of all the MVPs required to migrate existing customers to your new solution with minimal loss of existing customers.

Frequently Asked Questions about Digital Transformation

Some key events in the history of digital transformation include the rise of the internet, the emergence of social media, the development of mobile technology, and the growth of cloud computing and big data analytics.

All industries have been impacted by digital transformation to some degree, but some of the most significant changes have occurred in the retail, financial services, media, and entertainment industries.

Digital transformation has had a profound impact on society, enabling people to connect, communicate, and collaborate in ways that were previously unimaginable. It has also changed the way we access information, shop, and consume media.

The future of digital transformation is difficult to predict with certainty, but it is likely to involve continued advancements in artificial intelligence, the Internet of Things, and other emerging technologies. It will also involve the ongoing integration of digital technology into all aspects of business and society.

Organizations can benefit from digital transformation in many ways, including improved efficiency and productivity, enhanced customer experiences, greater agility and competitiveness, and the ability to generate new revenue streams and business models.

Organizations may face a number of challenges when undergoing digital transformation, including the need to update legacy systems, the complexity of integrating new technologies, and the potential for disruption to existing processes and organizational culture.

Digital transformation has changed the way we work in many ways, including the ability to work remotely, the use of digital tools and platforms for collaboration and communication, and the rise of the gig economy and other flexible work arrangements.

Getting Started with HatchWorks Is Easy

Want to learn more about how to modernize your existing digital solutions through an MVR approach?

The post The Evolution of Digital Transformation: From Pre-Internet to Post-Pandemic appeared first on HatchWorks.

]]>
Minimum Viable Product (MVP) vs Minimum Viable Replacement (MVR) – Understanding the Difference https://hatchworks.com/blog/product-design/mvp-vs-mvr/ Tue, 31 Jan 2023 21:04:06 +0000 https://hatchworks.com/?p=29128 Contrary to popular belief, the Minimum Viable Product (MVP) approach is not the only way to build a digital product. While it is a proven approach to building and validating new solutions, it falls flat when looking to replace an existing solution. So how do you approach modernizing an existing solution? Enter the Minimal Viable […]

The post Minimum Viable Product (MVP) vs Minimum Viable Replacement (MVR) – Understanding the Difference appeared first on HatchWorks.

]]>

Contrary to popular belief, the Minimum Viable Product (MVP) approach is not the only way to build a digital product. While it is a proven approach to building and validating new solutions, it falls flat when looking to replace an existing solution.

So how do you approach modernizing an existing solution? Enter the Minimal Viable Replacement (MVR), which focuses on building the minimal set of features needed to replace an existing solution and provide an improved experience for users.

Whether you’re in product, engineering, or running a project, understanding the difference between MVP and MVR will give you a powerful toolset for creating and improving digital products. Let’s start by defining each and then get into what makes them different.

MVP vs MVR - Understanding the Difference.

What is a Minimum Viable Product (MVP)?

An MVP, or minimum viable product, is a product with just enough features to be viable for a specific group of potential customers. The purpose of the MVP development process is to quickly test a product idea with a small group of users in order to gather feedback and data. This information can then be used to make a determination to continue, pivot, or stop development if the idea does not prove viable.

MVPs are typically stripped-down versions of a product, the smallest possible product, with only the most essential features and minimum functionality included. This allows the product to be released and tested in the market more quickly and at a lower cost. MVPs are intended to be functional products that can be sold, but they are not necessarily the final product.

The MVP approach is typically taken by startups who are looking to quickly validate a business idea or larger companies who are looking to test a new greenfield idea separate from their current products.

What is a Minimum Viable Replacement (MVR)?

A Minimal Viable Replacement (MVR) is an approach, popularized by Kevin Mireles, to replace a legacy solution that has an existing base of users or customers. With an MVR, you already know a market exists for your solution. The question becomes, can your new solution meet and exceed the value delivered by your old solution?

The approach focuses on decomposing the needs of the new system(s) into a clearly defined roadmap. This roadmap focuses on delivering valuable chunks of functionality into the hands of target users as soon as possible with minimal impact on their existing work.

Essentially, an MVR is the culmination of all the MVPs required to migrate existing customers to your new solution with minimal loss of existing customers. This approach is typically taken by mid-market or large companies that have existing solutions that need modernizing in some way.

To learn more about the approach, check out Minimum Viable Replacement: A New Approach to Modernizing Legacy Solutions.

What is the difference between MVP and MVR?

The key difference between MVP and MVR is in the goal and approach. While nuanced, they are critical to understanding when determining which approach is ideal for your software development project.
MVP MVR
Primary goal: validate a market or product hypothesis
Primary goal: migrate existing customers to the new modern system with minimal churn allowing for more agility
No existing customers
Existing customer base
Focused on attracting new customers
More focused on retaining existing customers than attracting early adopters
Competing against other companies or existing behaviors
Competing against your existing solution
Deeper research required to vet the viability of the solution
Minimal research required as the solution has already been proven to have market fit
Focused on a very small set of target customers and use cases to prove out the product’s value proposition
Focused on identifying the most valuable and sometimes extreme use cases for your most valuable customer segments among the many existing customer segments
Focused on new functionality
Focused on improving core functionality first, and typically new capabilities second
Targeted few specific workflows
Many existing workflows exist with existing users typically creating their own a-typical process within your system
Leverage new technology
Have to account for existing legacy technology
Ability to create new processes with a greenfield project
Must account for existing organizational norms, process, and culture

Why building new products and updating existing ones require a completely different approach

MVP and MVR are two important approaches in product development. Understanding each can help you determine which approach is best for you, and prevent you from wasting time, money, and resources, and losing customers.

Taking on an MVR is not for the faint of heart. You need a partner who can help guide you through the process, and not only protect your existing base of users but ensure you are set up for future growth.

Contact us to learn more about the MVR approach and how we can use it to turn your modernization project into one that will be the gold standard for future projects to come.

Getting Started with HatchWorks Is Easy

Want to learn more about how we deliver solutions that are valuable, usable, feasible, and viable through our integrated US and Nearshore delivery model? No matter what phase you are at in your software solution journey, HatchWorks can help you create a user experience your customers will love.

The post Minimum Viable Product (MVP) vs Minimum Viable Replacement (MVR) – Understanding the Difference appeared first on HatchWorks.

]]>
Minimum Viable Replacement: A New Approach to Modernizing Legacy Solutions https://hatchworks.com/blog/product-design/minimum-viable-replacement/ Wed, 18 Jan 2023 19:30:55 +0000 https://hatchworks.com/?p=29000 Minimal Viable Products (MVPs) have become the sole defacto way of building software. If you are not taking an MVP approach, you may get strange looks nowadays. It has been proven time and time again as an effective way to quickly test a market hypothesis or build a proof of concept to test the technical […]

The post Minimum Viable Replacement: A New Approach to Modernizing Legacy Solutions appeared first on HatchWorks.

]]>

Minimal Viable Products (MVPs) have become the sole defacto way of building software. If you are not taking an MVP approach, you may get strange looks nowadays.

It has been proven time and time again as an effective way to quickly test a market hypothesis or build a proof of concept to test the technical feasibility of a solution. But what happens when you are not building a new solution and instead you are modernizing or replacing an existing one?

If you are using an MVP approach in this scenario, you will be in for a rude awakening in the form of wasted time, money, and unhappy customers.

Don’t worry… there is a better way. The Minimal Viable Replacement (MVR).

Minimum Viable Replacement: A New Approach to Modernizing Legacy Solutions.

What is a Minimal Viable Replacement (MVR)?

A Minimal Viable Replacement (MVR) is an approach, popularized by Kevin Mireles, to replace a legacy solution that has an existing base of users or customers.

These modernization or replacement projects are often labeled with the overused term, Digital Transformation. No matter what you call it, they all have one thing in common.

Complexity.

With an MVR, you already know a market exists for your solution. The question becomes, can your new solution meet and exceed the value delivered by your old product?

The approach focuses on decomposing the needs of the new system(s) into a clearly defined roadmap. This roadmap focuses on delivering valuable chunks of functionality into the hands of real users as soon as possible with minimal impact on their existing work.

Essentially, an MVR is the culmination of all the MVPs required to migrate existing customers to your new solution with minimal loss of existing customers.

Why the MVP doesn’t work when replacing an existing solution

By now, we have all seen this age-old MVP metaphor.
A diagram illustrating why incremental progress doesn't cut it for modernizing legacy solutions.

The goal of an MVP is to provide end-to-end value in an incremental fashion. In this example, the desired outcome is to get from point A to point B, and the first iteration of the solution, the skateboard, accomplishes that right off the bat.

The problem is, your existing customers are not willing to trade down to a skateboard when they are currently driving a car with a leather interior, air conditioning, and Bluetooth. Oh, and a few of those other important features like seat belts, airbags, and brakes…

To make this real, picture handing your existing customers a skateboard and asking them to test it out riding down the highway. That is a sure recipe for disaster and guaranteed loss of revenue.

Aerial photo of a busy freeway.

The major differences between an MVP and an MVR

MVP MVR
Primary goal: validate a market or product hypothesis
Primary goal: migrate existing customers to the new modern system with minimal churn allowing for more agility
No existing customers
Existing customer base
Focused on attracting new customers
More focused on retaining existing customers than attracting new ones
Competing against other companies or existing behaviors
Competing against your existing solution
Deeper research required to vet the viability of the solution
Minimal research required as the solution has already been proven to have market fit
Focused on a very small set of target customers and use cases to prove out the product’s value proposition
Focused on identifying the most valuable and sometimes extreme use cases for your most valuable customer segments among the many existing customer segments
Focused on new functionality
Focused on improving existing functionality first, and typically new capabilities second
Targeted few specific workflows
Many existing workflows exist with existing users typically creating their own a-typical process within your system
Leverage new technology
Have to account for existing legacy technology
Ability to create new processes with a greenfield project
Must account for existing organizational norms, process, and culture

Why an MVR is unique

The typical approach for an MVP leverages the 80/20 rule, which in essence states that 20% of the functionality will serve 80% of the needs of your users. So therefore you should focus on that 20%.

With an MVR it is not that simple…

With an MVR, you have multiple customer segments you must satisfy in order to successfully replace a legacy solution. On top of that, those customers represent different value to your business, typically in the form of revenue or profitability.

Surprise, surprise – your larger, higher value customers typically require more extensive and complex functionality compared to 90% of your typical users.

This is why in an MVR you must consider the edge cases of your most valuable customers.

On top of having to consider edge cases (usually a ‘no no’ with MVPs), there are also two core psychological phenomena at play in an MVR.

Endowment effect: People are more likely to retain an object they own rather than acquire a similar object (either in value or appearance). In essence, people feel a sense of ownership over the systems and technology they currently use and are not typically gung-ho about giving it up.

Loss aversion: People value losses more than they value potential gains. Not just by a little either. They tend to value it by 2 to 4 times more. Anything less than that is likely to be perceived as incredibly negative. In essence, a bird in the hand is worth two in the bush.

We are ultimately creatures of habit, which makes an MVR unique.

A metaphor fitting for an MVR

Picture a 100-story condo. Let’s say you built the first 99 floors in a relatively standard fashion with 12-foot ceilings, standard bathrooms, and fixtures. They each pay $2K a month in rent.

Then you get to the last floor. The penthouse.

This is just one tenant, but they pay $30K per month.

They also have different requirements such as a swimming pool, 30-foot ceilings, and a helipad. If you didn’t account for this upfront, your architecture and design likely won’t support it.

So how do you approach an MVR to ensure you aren’t doing more harm than good?

The MVR approach

The goal of an MVR should be to meet and exceed the value delivered by your old solution without losing your existing customers in the process.

The approach focuses on decomposing the needs of the new system(s) into a clearly defined roadmap that focuses on delivering valuable chunks of functionality into the hands of users as soon as possible with minimal impact on their existing work. The roadmap should show them they don’t have to fear a loss of functionality because you have clearly communicated and mapped out when the functionality will be delivered.

There are 3 standard approaches to the MVR when considering how to develop your roadmap and define key milestones.

Functional Approach: If there is little overlap in functionality between end-user segments, you can structure your roadmap based on the specific functional needs of those different customer segments.

Diagram of a functional approach.
Process Approach: If your system covers long processes with no clear delineation by customer segments you can approach structuring your roadmap by the different processes and workflows within the system. Look for a natural break in the process to define replacement points where you can take segments of the process and replace them with the new system.
Diagram of a MVR process approach.
Add-On Approach: If you are looking to go after a new market or customer segment this is a good approach allowing you to create a newer leaner system focused on first adding that new target market or customer base. Then as the functionality builds up, you can migrate your existing customers to the new solution. This can be packaged as an add-on to your existing solution so as to not disrupt existing users, or make them feel like they are loosing their existing legacy solution in the process.
Diagram of a MVR add-on approach.
Below are some key elements to consider when taking on an MVR:
  1. Identify, define, and prioritize your different customer segments based on required functionality and value to your business
  2. Identify the edge cases your highest value customers must have to switch
  3. Align on if you are building the replacement solution for a new customer segment you are targeting in the market, and identify if this shift in strategy will result in churn of existing customer segments.
  4. Identify instances of customers using your solution in unintended ways (note: these are opportunity areas to build functionality to make these workarounds easier)
  5. Determine all the downstream applications and organizations using your systems inside and outside of the company
  6. Understand how users and organizations are using your solution and its data.
  7. Identify any regulatory or compliance-related requirements
  8. Determine if the new solution can start as an extension of the legacy one and sold as an add-on to start. Then, integrate the core functionality as part of your replacement strategy.
  9. Identify if there are any underserved customer segments that are not currently using your solution and would be happy with a true MVP
  10. Define your roadmap by breaking up the project into mini MVPs defined by functionality and customer segment served

Summary

At the end of the day, it is not a question of if you will need to replace legacy solutions. It is a matter of when.

While legacy solutions, processes, and technical debt have a knack for slowing down progress, you can’t let them hold you hostage.

Leverage an MVR approach to enable agility and innovation in your organization so you can continue to deliver value for your customers and your business.

Getting Started with HatchWorks Is Easy

Want to learn more about how we deliver solutions that are valuable, usable, feasible, and viable through our integrated US and Nearshore delivery model? No matter what phase you are at in your software solution journey, HatchWorks can help you create a user experience your customers will love.

The post Minimum Viable Replacement: A New Approach to Modernizing Legacy Solutions appeared first on HatchWorks.

]]>
Solving the Enterprise Innovation Challenge https://hatchworks.com/blog/modernization/solving-the-enterprise-innovation-challenge/ Wed, 07 Jul 2021 16:42:45 +0000 https://hatchworks.com/?p=22087 We all know the reality of the enterprise environment. Organizational size can often be a double-edged sword—big enough to apply resources to fuel innovation, yet too big to be nimble enough to jump-start the creative process. In other words, larger enterprises have the resources to innovate, yet far too often they are not able to […]

The post Solving the Enterprise Innovation Challenge appeared first on HatchWorks.

]]>

We all know the reality of the enterprise environment. Organizational size can often be a double-edged sword—big enough to apply resources to fuel innovation, yet too big to be nimble enough to jump-start the creative process. In other words, larger enterprises have the resources to innovate, yet far too often they are not able to execute.

Why is that? For many larger organizations, they first tend to be more firmly rooted in ensuring that all systems stay up-and-running as-is. This is often due to legacy IT systems and architectures that represent current embedded revenue generation—paired with a lack of bandwidth and verticalized expertise, which impedes the ability to expedite new approaches to product development strategies and execution.

So what do enterprises do to address this seemingly ever-looming innovation challenge? Well, the good news is that they can ensure size does not stand in the way of progress—but they will need help. Outside help.

The first step is finding the service provider. Lord knows the world is full of companies claiming to solve enterprise challenges—but many often fall short due to a lack of experience, or simply a lack of knowledge in a particular vertical market. My recommendation here is to seek out and vet a multitude of companies—finding the best fit for your particular situation. And yes, I know that’s a task that is easier said than done.

Perhaps the best way to look at it is through the focused lens of skill-sets, processes, and innovation. Enterprise Software Services come in a multitude of flavors. However, many of those services simply fit into the category of antiquated software development—rarely, if ever, delivering something tangible and successful.

Instead, what the right Enterprise Software Services provider should claim (and subsequently deliver) is the ability to bring you true-to-form, end-to-end, full-lifecycle software product development and support—ensuring the strongest and most positive user experience possible.

So how do you know this will be accomplished by the partner you select? This is where proven processes come in. Put simply, your partner should be able to unequivocally prove their ability to define your business case and market advantage, create a product roadmap built for scale and innovation, and develop a scalable solution. They should also be able to demonstrate their prowess to launch your new and updated applications in the cloud, and then manage them post-launch.

Your partner should have proven Agile development processes, and state-of-the-art infrastructure expertise—enabling them to define, design and develop solutions in a fraction of the time of antiquated approaches. These skills would ideally also include the use of modern languages, frameworks, tools, other software programs and systems to leverage existing components and improve upon existing systems with modern approaches to development.

Moreover, your partner should have the skill-sets and know-how to enable advanced technical architecture and infrastructure to support a better, enhanced user experience—and provide predictable, scalable development cycles for improved accuracy on timeline to delivery.

In the end, the right partner is hard to find. But once you do find them, they will be an integral part of your business growth and success for years to come. Got questions? Reach out to me directly—let’s discuss what you require and how to get there—we’re always here to help.

Getting Started with HatchWorks Is Easy

HatchWorks will work with you to perform a free initial assessment of the team composition you need based on your current team structure. They can work as an autonomous dedicated team or integrate with your own team to meet your needs. No matter what phase you are at in your software solution journey, HatchWorks can help you accelerate your path to success.

The post Solving the Enterprise Innovation Challenge appeared first on HatchWorks.

]]>
When technology expertise collides—and how to solve it https://hatchworks.com/blog/product-design/when-technology-expertise-collides-and-how-to-solve-it/ Fri, 12 Mar 2021 01:41:03 +0000 https://hatchworks.com/?p=5791 In a world where technology is always changing, our collective social fabric has become one that continually embraces the new, the shiny, the latest and the greatest. In fact, for many, the latest tech—whether hardware or apps—is linked to far more than just features and functionality: it’s a social status symbol that elevates people to […]

The post When technology expertise collides—and how to solve it appeared first on HatchWorks.

]]>

In a world where technology is always changing, our collective social fabric has become one that continually embraces the new, the shiny, the latest and the greatest. In fact, for many, the latest tech—whether hardware or apps—is linked to far more than just features and functionality: it’s a social status symbol that elevates people to the top of their proverbial social food chain.

Those same bright and shiny new objects tend to affect more than the user. For very new apps or devices, user expectations grow—far too often affecting industry segments that have little or nothing to do with the device or new app acquired by the end-user. For instance, if a multi-national coffee brand releases a new customer-facing app that delivers some mind-blowing experience, suddenly that same experience is being demanded of car companies, real-estate developers, and more. A far cry from selling coffee, but habits are habits, and end-users develop new habits fast.

This is where companies begin to panic, while simultaneously seeing opportunity. But, like any modern business opportunity that relates to technology, it often comes down to the old saying, “Easier said than done.”

In almost every case, new end-user expectations and the ability to deliver on them fall solely on brand new technological advancements and architectures. However, in the world of enterprise business, the ability to rapidly pivot technology and embrace new systems is simply not an option—at least not without help.

You see, legacy systems and architectures are often tied to the entirety of the business and, more than likely, also representative of billions of dollars in current revenue streams. As such, injecting new technology into that legacy environment is an impact that is not likely to be embraced by anyone.

This is often where the notions of expertise collide. For the folks who have been managing the legacy architectures for years, the new and highly verticalized expertise necessary for new business initiatives is simply not there. For example, why would a datacenter professional with 40+ years experience who is responsible for billions of transactions a day have the time, energy or desire to become a cloud application expert? Because they are simply too busy doing their current, extremely important job.

Conversely, why would a rock-star cloud architect who spends 50+ hours a week creating and maintaining the latest in customer-facing applications and modern experience have a desire to learn anything about legacy infrastructure? Again, because they are simply too busy doing their current, extremely important job.

The reality, however, is that those two roles and expertise types must somehow seamlessly work together to meet evolving business expectations and goals, while simultaneously not disrupting an already-billion-dollar successful business model.

It’s this new reality of technological “collision” that has brought about a brand new industry—experts in developing modern digital business initiatives that speak the two proverbial languages of new and legacy. These experts bridge the gap between them, all while enabling the enterprise to use and merge current and upcoming digital technologies to propel themselves forward.

For any enterprise, this becomes the modern recipe for success. Of course, having expertise in the current infrastructure is imperative—after all, these are the people who keep the mission-critical wheels turning to ensure the current success of the business is maintained. Simultaneously, enterprise entities MUST engage with external experts to introduce new methodologies, help eliminate technical debt associated with aging architectures, solve bandwidth and expertise challenges, and help create new cloud-based solutions to meet all of those aforementioned expectations.

There is room for all expertise types to work seamlessly together, and be highly successful at doing so. Finding the right partner will make both groups become one, and success a quick and painless reality. And it’s only a phone call away.

Getting Started with HatchWorks Is Easy

HatchWorks will work with you to perform a free initial assessment of the team composition you need based on your current team structure. They can work as an autonomous dedicated team or integrate with your own team to meet your needs. No matter what phase you are at in your software solution journey, HatchWorks can help you accelerate your path to success.

The post When technology expertise collides—and how to solve it appeared first on HatchWorks.

]]>