Is my technology stack suitable for a startup

vitaminchik 486 Reputation points
2025-01-29T19:45:17.5233333+00:00

I have developed a startup. My technology stack: C#, WPF, Postgresql, Dapper. Is this stack optimal for a startup? I listened to the opinions of previous developers and now I doubt it. Perhaps the problem is that the program does not work on other operating systems, then there may be a switch to net.maui?

Windows Presentation Foundation
Windows Presentation Foundation
A part of the .NET Framework that provides a unified programming model for building line-of-business desktop applications on Windows.
2,823 questions
C#
C#
An object-oriented and type-safe programming language that has its roots in the C family of languages and includes support for component-oriented programming.
11,279 questions
Startups
Startups
Companies that are in their initial stages of business and typically developing a business model and seeking financing.
4 questions
{count} votes

2 answers

Sort by: Most helpful
  1. Jack J Jun 24,641 Reputation points Microsoft Vendor
    2025-01-30T05:53:05.0233333+00:00

    @vitaminchik, Welcome to Microsoft Q&A,

    Your current technology stack of C#, WPF, PostgreSQL, and Dapper is quite solid and has its advantages, especially if you are targeting Windows environments. However, there are some considerations to keep in mind:

    PostgreSQL: PostgreSQL is a robust and flexible database that runs on all major operating systems, including Linux, UNIX, and Windows. It has strong community support, advanced security features, and excellent scalability. This makes it a good choice for startups looking for a reliable and scalable database solution.

    WPF: WPF is a powerful framework for building Windows desktop applications. However, it is limited to Windows, which could be a drawback if you plan to support other operating systems in the future.

    C# and .NET: Using C# and .NET is a great choice for startups. .NET is known for its performance, security, and extensive libraries. It is also well-suited for building web APIs and backend services.

    Dapper: Dapper is a lightweight ORM that works well with PostgreSQL and provides fast data access. It is a good choice for applications that require high performance.

    If cross-platform compatibility is a concern, switching to .NET MAUI could be a viable option. .NET MAUI (Multi-platform App UI) is a cross-platform framework that allows you to create native mobile and desktop apps with C# and XAML. It supports Android, iOS, macOS, and Windows from a single shared codebase. This would enable your application to run on multiple operating systems without significant changes to your codebase.

    Recommendations

    • Evaluate Your Target Audience: If your primary users are on Windows, your current stack is optimal. However, if you need to support multiple operating systems, consider transitioning to .NET MAUI.
    • Performance and Scalability: PostgreSQL and Dapper are excellent choices for performance and scalability. Ensure that your database design and queries are optimized.
    • Community and Support: Both PostgreSQL and .NET have strong community support, which can be beneficial for troubleshooting and finding resources.Your current technology stack of C#, WPF, PostgreSQL, and Dapper is quite solid and has its advantages, especially if you are targeting Windows environments. However, there are some considerations to keep in mind:
      1. PostgreSQL: PostgreSQL is a robust and flexible database that runs on all major operating systems, including Linux, UNIX, and Windows. It has strong community support, advanced security features, and excellent scalability. This makes it a good choice for startups looking for a reliable and scalable database solution.
      2. WPF: WPF is a powerful framework for building Windows desktop applications. However, it is limited to Windows, which could be a drawback if you plan to support other operating systems in the future.
      3. C# and .NET: Using C# and .NET is a great choice for startups. .NET is known for its performance, security, and extensive libraries. It is also well-suited for building web APIs and backend services.
      4. Dapper: Dapper is a lightweight ORM that works well with PostgreSQL and provides fast data access. It is a good choice for applications that require high performance.
      If cross-platform compatibility is a concern, switching to .NET MAUI could be a viable option. .NET MAUI (Multi-platform App UI) is a cross-platform framework that allows you to create native mobile and desktop apps with C# and XAML. It supports Android, iOS, macOS, and Windows from a single shared codebase. This would enable your application to run on multiple operating systems without significant changes to your codebase. Recommendations
      • Evaluate Your Target Audience: If your primary users are on Windows, your current stack is optimal. However, if you need to support multiple operating systems, consider transitioning to .NET MAUI.
      • Performance and Scalability: PostgreSQL and Dapper are excellent choices for performance and scalability. Ensure that your database design and queries are optimized.
      • Community and Support: Both PostgreSQL and .NET have strong community support, which can be beneficial for troubleshooting and finding resources.

    Hope my advice could help you.

    Best Regards,

    Jack


    If the answer is the right solution, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment". Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    0 comments No comments

  2. Bruce (SqlWork.com) 71,101 Reputation points
    2025-01-30T16:35:04.69+00:00

    Without knowing your deployment requirements we can not evaluate your stack. Your choice works for building windows desktop applications that access a shared local server hosting the database.

    This seems an odd choice for a startup. A cloud application with browser and mobile clients seems more typical.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.