We are here to achieve Market Monopoly! Apache Fineract aims to serve the
world's three billion underbank or unbanked which is statistically
significant. This also aligns with the vision and mission of World
Governments. This essentially suggests that we are all here to help the
world alleviate poverty and this by itself is no trivial task. We are
surrounded by governments, governing agencies, reserve banks, financial
institutions, regulatory bodies, security agencies etc.

Apache Fineract is in direct competition with similar product offerings
from a plethora of companies, one of the products that I came across
googling is from Oracle themselves and which also happens to be a
commercially paid product. So one might be tempted to ask what is the key
differentiator between Apache Fineract and Oracle? One is free to use and
the other is paid, so by default Apache Fineract wins? That would be at
best naive thinking, the customer is sane and has all the power and
required resources to choose from the market without affecting the end
customers. So Apache Fineract has no significant benefit as compared to any
other product when it comes to product adaption from the end customers.

So what is the biggest motivation for a customer to choose a product?
Having worked for commercial companies myself, the biggest differentiator
comes from how the genetic structure is of the organization. Most of the
commercial companies biggest moving force is its balance sheet. Less P/L
and so kill the product etc, and most of the people are lost to sloshing
management positions. Whereas Apache Fineract stands out in this respect.
Apache Fineract is meritocracy, meaning it credits merit and its aim is to
retain bright sparks just like ourselves, look at the life history of some
of the creators of Apache Software Foundation. But what use is having a
good brain without management? It is again a disaster waiting to happen.

Management is required, so that people are well aligned and are performing
to their fullest. Management has to be either horizontal or vertical or
both, but certainly not criss-cross or sloshing management.

What is volunteering without accountability? I depend on some of my peers
for good code and inessence my peers depend on my deliverables. Calling on
dependable people is what the management should facilitate and that is what
makes Apache Fineract, Apache Fineract.

DataStructures: Just yesterday I was working on this piece of code where
Collections are used, this comes to me as a surprise since Collections are
type safe but they are not structure safe. Meaning Collections can process
Set, Lists, Queues, Stacks etc. so if a Collection of type set is used in a
command operation then the database will have unique rows, but if the same
Collection uses type as list, though it will have unique primary keys but
duplicate database rows. This is a very big bug as the next programmer may
not know this nuance while coding, as he is only working with a subset of
the code as mentioned in his Jira ticket. And if there is no unique
constraint to the database column then we also have data integrity issues.

Algorithm: Correct usage of algorithms is paramount to achieve code quality
and effectiveness, one of the algorithms that I saw was used versus what
would have been used. Let's say there are colourless buckets and the user
has to put colored balls in the bucket such that all the coloured balls are
sorted, but the user cannot see inside the bucket, so user has to remember
the previous step (this also makes the data to be available as sorted and
so this algorithm will break if the original data is not sorted and sorting
cannot be done when there are many Ids with complex joins) as to what
bucket he placed his last ball so that if it is same it will be placed
inside the same bucket or next but the caveat here is that the user only
remembers his last ball and blind to the bucket, verses in a map (in a map
the data can be in any order and the key can collect a List or a Map) there
are coloured buckets and the user has to simply place the same coloured
balls into the same bucket this is irrespective of the flat data sorting
order?

Conclusion:
-

*Monthly Contributor Induction* – Onboarding sessions for new developers to
understand coding standards, architecture, and Fineract’s data model.
-

*Regular Technical Syncs* – Focused discussions on design choices,
algorithm selection, and performance optimization.
-

*Dedicated Requirements & Steering Separation* – Developers focus on clean
implementation, while steering handles roadmap direction.
-

*Milestone Recognition* – Celebrating major contributions (new features,
performance boosts, architectural refactors) to encourage long-term
commitment.
-


-

Thanks,
-

Kapil

On Tue, Sep 9, 2025 at 3:44 AM James Dailey <[email protected]> wrote:

> Kapil - in the future, please be aware that you are making a REQUEST.   We
> are volunteers here, not some service company that offers to keep the build
> working such that "we developers can work".  No such thing exists. You also
> could propose to fix things and create a PR.   "Fix it yourself" would have
> been a completely appropriate response from the listserv and in many
> other open source projects is exactly what you will get back.  I'm glad no
> one said that.
>
> I think you just joined the project, and there is a steep learning curve.
> It would be helpful if you could help the next person by documenting what
> you did that solved your problem.  Maybe suggest some documentation with a
> PR to our asciidocs, or open a Jira ticket with details if you find
> something specific that is broken.
>
> Is this you? inkedin.com/in/kapil-panchal
> <https://www.linkedin.com/in/kapil-panchal>
>
> I'm wondering what your project is about.  Are you involved in the DPI
> efforts?
>
> James
> PMC Chair
>
>
> On Sun, Sep 7, 2025 at 10:28 PM Kapil Panchal <
> [email protected]> wrote:
>
>> Gentleman, Ladies,
>>
>> The latest development branch is failing builds, it seems there is an
>> error with e2e tests. Please fix it so that we developers can work.
>>
>>

Reply via email to