NHacker Next
  • new
  • past
  • show
  • ask
  • show
  • jobs
  • submit
Show HN: HCB Mobile – financial app built by 17 y/o, processing $6M/month (hackclub.com)
KenSF 4 hours ago [-]
HCB is an amazing Rails 8 app. It is the Rails app that is processing $6M/month.

https://github.com/hackclub/hcb

Excellent work on the mobile app though I would wonder, since HCB runs on Hotwire, why it was not written as a Hotwire Native app which would leverage the existing Rails Hotwire app and not require a complete rewrite?

mohamad08 48 minutes ago [-]
Hotwire Native tbh wouldn't have been a bad choice at all to use tbh. Especially if you wanna maintain 1:1 parity with the website. It combines both being a "web app" and native features we could still use like Tap to Pay and Push Provisioning. The downsides of it is that it isn't a cross platform framework like React so all changes would have to be pushed to both an iOS app repo and an Android app repo. Another downside is that it isn't a "write once run anywhere" type application as you're integrating Hotwire into the native code so you have to be comfortable with both Kotlin and Swift (however if you're writing native modules in React Native same applies).

Both are 2 completely valid and separate paths you could take when building an app and I'd actually be curious what'd HCB Mobile look like if we did use Hotwire Native.

sailfast 6 hours ago [-]
The OP built the React Native mobile app - not the entire platform / company. Some folks commenting like they built the company. Just a point of clarification.

Great work! Keep building OP!

indigodaddy 5 hours ago [-]
The OP title seems a bit misleading notwithstanding this caveat.
Neywiny 12 minutes ago [-]
I think there's ambiguity. An app built for a platform that does xyz. Does the app do xyz, the platform, or both? If I build an app that takes you straight to idk a Treasury department website, have I built an app for a platform that transacts trillions of dollars?
kbar13 26 minutes ago [-]
seems like this is par for course for hustler “founders” nowadays to say half truths to seem groundbreaking to get attention
skylurk 7 hours ago [-]
I am surprised you managed to get those entitlements at all!

Did it help to be a non-profit?

mohamad08 26 minutes ago [-]
Tbh not at all, the process is tedious but pretty straightforward if you understand the requirements. Apple is did throw at me a huge checklist to finish which did take a while to complete, but after you successfully build the feature and submit test case videos to them its only a matter of time until you receive access to it. For Tap to Pay on iPhone, its very easy to achieve development status if you're just curious about the technology and its applications. Its more the production entitlement in which you must complete the specifications I mentioned before.
mrb 5 hours ago [-]
That's awesome, and impressive you were able to build that. As an angel investor, my first question would be: how do you deal with financial fraud? Like users exploiting your app for money laundering via donations then spending... Any system that lets money get in and out is eventually used as a channel by launderers.
brahbrahbat 3 hours ago [-]
This is very helpful to the community. Great work.
riffic 7 hours ago [-]
I really wish something like Hack Club existed while growing up, how empowering! great work.
rahimnathwani 6 hours ago [-]
This is great!

I'm curious whether you were able to build the app using backend APIs that were already built, or whether building this app created new requirements for those APIs?

mohamad08 1 hours ago [-]
Hi! Thank you so much for your kinds work :)

I actually did have to end up creating most of the backend APIs myself too or with the help of fellow engineers at HCB! What I like about HCB Mobile is that I'm not only creating a mobile app but also expanding our API infrastructure to allow for future integration with our platform.

rahimnathwani 56 minutes ago [-]
Wow that's great experience.

My son is 9yo and loves to make little animations in Scratch. He recently started to learn a bit of Python (just the syntax so far, no projects).

I wonder whether you can share anything about your journey, especially if you have any tips for the stage my son is at.

mohamad08 31 minutes ago [-]
That's great to hear your son is starting at such a young age! From my personal experience I would recommend focusing more on the concepts (which Python helps with as the syntax is easy to navigate!). Project-based coding is my ideal way of learning as you build things you are truly proud of. I remember when I was young and made my very first Python turtle drawings. Once he turns 13, I highly recommend him join the Hack Club community. Hack Club is our parent organization and its dedicated mission is to help teenagers interested in coding. I believe I wouldn't be where I am today without it. It truly helped me become a better programmer and Hack Club even offers free prizes that help you learn even more such as a Raspberry Pi for those who submit their incredible projects :) Hope that helps! Always down to help if you have anymore questions
cirrus3 4 hours ago [-]
What is this page of transactions for? https://hcb.hackclub.com/hq/transactions

I get that you want to be "open", but is everyone involved in these transactions ok with them being shared? Even if they are, this doesn't seem like a good idea security wise. I see partial account numbers and other IDs/numbers that I assume you'd prefer not be public, regardless of how insensitive they may seem now.

EXPENSIFY, INC. VALIDATION XXXXXX5987 THE HACK FOUNDATION +$0.89

FRONTING $10,000 TO CHRIS WALKER FOR GITHUB GRANTS MADE FROM PERSONAL ACCOUNT -$10,000.00

CHECK TO LACHLAN CAMPBELL +$800.00

Transfer to Emma's Earnings -$1,923.08

garyhtou 1 hours ago [-]
Hi @cirrus3,

You've found an optional feature called Transparency Mode!

I admit, this is A LOT of information being made accessible. We at Hack Club (the nonprofit organization behind HCB, and the owner of the transactions above) have chosen to make our finances publicly available on the internet. You can read more about it here: https://blog.hcb.hackclub.com/posts/transparent-finances-opt...

That link (https://hcb.hackclub.com/hq/transactions) shows our donations and spending down to the cent since we believe donors deserve to know what their contributions are funding. As a nonprofit, you can talk about what you’re spending money on, but transparency in every transaction builds trust for supporters. This level of transparency is definitely atypical, and I can see why it may raise concerns.

Other organizations using HCB (such as Reboot) can choose to enable this feature too (it's off by default), and they're briefed on the potential risks and level of exposure to decide whether it's right for their organization/team. HCB supports 6.5k nonprofits, and roughly 64% of organizations have chosen to enable this feature.

> I see partial account numbers and other IDs/numbers that I assume you'd prefer not be public, regardless of how insensitive they may seem now.

> EXPENSIFY, INC. VALIDATION XXXXXX5987 THE HACK FOUNDATION +$0.89

Good catch! Thanks for flagging that verification deposit. I've pushed a fix here: https://github.com/hackclub/hcb/pull/12336

As for the account numbers (e.g. XXXXXX5987) visible in some transactions, these are our own defunct operating accounts, and we're aware they're out there on the internet. We have a new way of managing account numbers via Column.com, so these older transactions are less of a concern for me.

I very much appreciate you bringing these to my attention! We're always looking to improve, so I'd love to hear if you find anything else.

yangikan 2 hours ago [-]
Not just for hack club - but transactions for another organization that is using their software is public. https://hcb.hackclub.com/reboot/transactions?page=13

Not sure if all the organizations using their software know this.

luke-stanley 3 hours ago [-]
galaxy_gas 3 hours ago [-]
Please look at this @mohamad08

The numbers and amounts used for account validations and adding it to be able to pull or push money . Should not be shown public..

daredoes 6 hours ago [-]
Was just looking at this the other day for personal reasons. Great work!
3 days ago [-]
miroljub 7 hours ago [-]
Why does it matter how old is the author?

We should judge software by the quality, not by authors age.

dang 3 hours ago [-]
It's an age-old convention, a way of supporting and encouraging kids, and harmless.
NaOH 2 hours ago [-]
>It's an age-old convention....

Bonus points for the wordplay.

pinkmuffinere 6 hours ago [-]
HN isn't a judge of software; it's a place to learn and be curious. So people are often interested in projects that do a novel thing in a normal way, or a normal thing in a novel way. Eg, stories fascinate us because something was built by a very lean team, or a group with no money, or somebody who is an industry outsider, or a parapalegic, etc. Overcoming these limitations is a sort of 'hacking'.
trollbridge 6 hours ago [-]
There is a new trend in Silicon Valley of bragging about how young founders are, etc. along with the rather bizarre trend of bragging about dropping out of high school to "found a startup".
rvz 5 hours ago [-]
Always has been.

It is a deliberate advertisement to VCs to find "the next Mark Zuckerberg" which the entire point is that there is only one.

For every 1,000+ startups there is exactly only *one* exceptional founder.

recursive 4 hours ago [-]
It's quite remarkable that such a loosely quantified pool of startups (1000+) yields precisely one exceptional founder.
Cyao 6 hours ago [-]
Totally agree. Even if I'm a teen myself I never post my age unless someone asks explicitly. Saying your age is just trying to find excuses to justify a sub-par software imo (Not saying this project is sub-par)
debo_ 3 hours ago [-]
Maybe they are rightfully proud that they did this at such a young age?
LoganDark 6 hours ago [-]
> I adopted the idea of “over the air updates” using Expo’s EAS update service.

Be careful with this. If Apple finds out for instance, your app will still be taken down.

rahimnathwani 5 hours ago [-]
Many developers do this, and it's explicitly allowed under Apple's Developer Agreement (section 3.3.1).

  Interpreted code may be downloaded to an Application but only so long as such code: (a) does not change the primary purpose of the Application by providing features or functionality that are inconsistent with the intended and advertised purpose of the Application (b) does not bypass signing, sandbox, or other security features of the OS; and (c) for Applications distributed on the App Store, does not create a store or storefront for other Applications.
The app store review guidelines (section 2.5.1) seem more narrow, but I think the above is what's enforced.
LoganDark 4 hours ago [-]
Weird, because Apple took down Fortnite for enabling a direct buy-button (bypassing IAP) after review completed. Just because an offending feature wasn't enabled at the time of review absolutely does not mean you're in the clear to turn it on after the review is complete. Whereas before you'd get the opportunity to fix anything like that during the review process, by sidestepping the review process you'd better be confident you don't ever ship anything that wouldn't pass.
constantcrying 7 hours ago [-]
It is clear that you put a lot of effort into this, but I do not believe that a 17 year old is capable to realize what he is sacrificing for this or what his responsibilities are.

I do actually believe that zero teenagers should make banking apps or run non-profits.

E-Reverance 7 hours ago [-]
> I do actually believe that zero teenagers should make banking apps or run non-profits.

That sounds like a lot of fun and should be a pretty social experience.

Also I'm going to assume his parents are proud, which should put his family at ease.

simonw 7 hours ago [-]
The parent non-profit organization Hack Club isn't run by teenagers. https://hackclub.com/team/
webdevver 6 hours ago [-]
oh my goodness, ofcourse they flag the op. holy reddit! so incredibly lame.

its the controvertial takes that bring readership...

lagniappe 6 hours ago [-]
There is a vouching system for comments that are flagged.

Click the date on the post, and if you have a button saying "vouch", click that.

brailsafe 5 hours ago [-]
It's the lowest cost time to take risks like that, and it's a hell of a lot more constructive than fighting in a world war like 17 y.o men of the past.
webdevver 6 hours ago [-]
[flagged]
supportengineer 53 minutes ago [-]
Imagine all of the well connected and wealthy parents behind the scenes that enable this to happen.

The average person like you or me would never get the approvals rammed through at Google.

mohamad08 41 minutes ago [-]
My parents nor did any parent step in to help me on this application or the approval processes. Furthermore, the approvals didn't get "rammed through". It took me quite a bit to actually acquire their entitlements and app review approval. I dislike when people assume just because I live in "Silicon Valley" I automatically have everything handed to me. If you would like to learn more about how the processes that I took to achieve this feel free to ask!
throwaway5465 3 hours ago [-]
In accounting, finance, M stands for 'mille' aka 'thousand'. So the headline reads $6000/month.

Given how famed HN is for its pedantry I thought you may find this useful as sooner or later someone in your industry might make a judgement on it.

MM is million, BTW.

airstrike 2 hours ago [-]
Hardly. I was an M&A banker for a decade in New York and we used `M` for millions across the board. A few people would use `MM` but on every deck I signed off we used `M` for millions, `B` for billions

Some people do use `MM` but it's far from a standard.

esafak 2 hours ago [-]
I think being programmers we'd expect K and M. Save the mm for your financial report.
enronmusk 2 hours ago [-]
Humanity has moved on from roman numerals 1000+ years ago. Talk about tech debt.

> In accounting

Only in America.

2 hours ago [-]
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
Rendered at 03:14:29 GMT+0000 (Coordinated Universal Time) with Vercel.