Forum Discussion

RayKelly's avatar
RayKelly
New Contributor
2 years ago

Visual Basic or CSharp

We are still in the development stage of our OneStream implementation.  We are currently running 7.4.  When v8.0 came out, I started doing some research on .NET6 (and 7).  It appears that Microsoft is more focused on CSharp than they are on Visual Basic.  I believe, eventually, Visual Basic will be deprecated.  With this in mind, and since we are still in development, I was thinking about converting our VB business rules to CSharp and using that language going forward.

I would like the feedback of the OneStream Community before I take this project on.

 

Thank you.

  • chul's avatar
    chul
    Contributor III

    At this point, my opinion is that this decision is purely customer driven as they will be responsible for maintaining the rules and member formulas post go-live. I would guess that there are currently far more OneStream consultants with VB.net experience than C# experience so that may be a factor in your decision, but I also know that free online converters could help in those situations.

    The deprecation of VB.net may or may not happen and when/if it does, will it be in three, five, ten years? We went through the deprecation of Silverlight in 2021 and we successfully navigated that change with our customers.

  • JackLacava's avatar
    JackLacava
    Honored Contributor

    As chul said, there isn't a single answer. I would add that

    • Vb.Net currently works in every corner of the product (Member Formulas, Complex Expressions, etc), so standardizing on that will likely pay dividends in unexpected places right away; whereas C# is limited to Business Rules namespaces at the moment, and it might be a while before it gets in all places where VB is.
    • VB also tends to be easier for non-IT folks (accountants etc) to understand.
    • C# is definitely more popular in the IT world, so recruiting for integration roles will probably be easier with that; whereas VB is more popular in the traditional EPM world, so recruiting for more finance-oriented roles will probably be easier with VB.
    • The lifetime of a Onestream application can be hard to predict; a business will probably want it working YESTERDAY, so whichever language makes you more productive right away is more likely to result in immediate success, with all that entails. Premature optimization is the root of all evils, Knuth would say...