Skip to main content

The curious case of MTA Fare and birth of "MTABonus"

Finally yesterday my 11th Firefox OS App got published in the marketplace. With a salt of surprise as well. Instead of taking weeks to get approved it took only a day to get approved. But then again I am not complaining, I get lucky like this time to times (but why didn't I get this lucky for the DVLUP submission.....but that's a story for some other day) and quite a lot of time hit roadblocks too.

So without further ado this is finally how the "App" managed to look like


History: When I arrived New York almost three months back apart from the amazing city what amazed and delighted me was the transportation. Unlike most cities in United States New York City (there is a reason for that italics) has a very comprehensive and functional Public Transport system. And one that people use extensively. The famous NYC Metro and the Buses are run by the Metro Transport Authority. The idea is you buy a "MetroCard" and refill it (or have unlimited monthly/weekly ride) with certain amount. Every rife you avail will deduct the ride amount from the card. Not much different from what I had before in DART (Dallas Area Rapid Transport). But this happens with a twist, they award certain bonus (http://web.mta.info/nyct/fare/FaresatAGlance.htm). After a couple of recharges this got me thinking. And it was an easy calculation to figure out how much and how many recharges I need to get a free ride (bonsu amount equivalent to one. But then again whats the fun of doing that? So one night being high on "Pure water from Genté Springs" quickly jotted down my calculations into this app (Yeah I am too laxy hence just wen ahead and used the FxOSstub).

Hence it was born.
So why suddenly this blog? I never really blogged about in of my other apps, not even about V.Translator which passed a 14K download mark this week. Well you say effect of spring water and to vent out how easy it is to build openwebapp. Really, it is so easy that I sometimes get worried that quite some amount of poorly written/optimized apps will make their way into the marketplace. Just like this one, if it had more functionality.
Also a reminder to myself that I should not cut corners next time. This was different than my most other app publications, most of which were fueled by either ego(why I can't do it)/api experimentation/app porting. This time though it was different.

So the confession where did I cut corners?
  • You see the upper left menu button? That actually doesn't do anything. I disabled (read commented out) the whole menu, but out of sheer laziness left that part. Mental Poke 1: Never do that again
  • See how there isn't any landscape screenshots? Because I disabled it. Not because I couldn't handle it. The app template itself is perfectly responsive and suitable for all sizes, but I didn't want to deal with scroll, hence...
  • See in the second screenshot how the Feedback is marginally overlapping the text? Well it's just a minor css overlap which is negligible if the user could scroll. But the user can't, hence and annoying ux fail which i have to fix later *sigh*
Finally if you want to test drive the app


Comments

Popular posts from this blog

Racecraft (Project Koru) · Prologue — The Origin Story

Racecraft · Prologue , The Origin Story It Started With a Wine List and a Question About Racing How a happy-hour conversation in the Bay Area turned into a trustable AI race coach , and then into a second version that runs entirely on a phone, on the NPU. This is the prologue to a five-part series. Two years ago(1st November, 2024) I was in the Bay Area for a GDE Summit. If you've never been: it's a couple of days of talks among Google Developer Experts, the kind of people who get unreasonably excited about a new on-device runtime, and then , mercifully , a happy hour where everyone stops performing and just eats. We ended up at a restaurant(Puesto Santa Clara), a long table of GDEs, and I was doing the most important engineering of the evening: trying to decide which wine to order. Across the table was Ajeet Mirwani . I don't even remember how the wine talk turned into racing talk , these things drift , but the moment the word "racing" ...

The Throughput Trap: Benchmarking vLLM on OpenXLA and the Reality of Production LLM Serving

vLLM Systems · DevLab 2026, Deep Dive I was recently invited by the Google TPU team to speak at the OpenXLA Summer DevLab 2026 . This post breaks down our deep-dive evaluation of the matured vLLM + OpenXLA stack, the fundamental engineering mismatches between CUDA and XLA serving paths, and why traditional capacity metrics are lying to you. If you are operating large language models at enterprise scale right now, your platform architecture team is likely staring at a massive infrastructure crossroads: Should we migrate our core serving workloads from GPUs to TPUs? Historically, NVIDIA's CUDA ecosystem was the only serious option for user-facing, low-latency LLM generation. But here in 2026, the economics and infrastructure options have transformed. Google TPUs are highly available, cheaper per chip, and the open-source serving stack built around vLLM and OpenXLA has officially achieved absolute production readiness. Yet, when our infrast...

A Split‑Brain Neuro‑Symbolic Training Method for High‑Velocity Autonomous Coaching from Telemetry

 Author: Rabimba Karanjai Scope: Problem statement + data methodology + model training (no deployment discussion) Abstract Real‑time coaching in motorsport is a safety‑critical learning problem : a system must map noisy, high‑frequency telemetry to short, actionable guidance that remains physically consistent and avoids hazardous recommendations . This paper proposes a “Split‑Brain” training formulation that separates (i) a semantic coaching target (what action/critique should be expressed) from (ii) a reflexive interface (how actions are represented as compact, verifiable tokens). The approach trains a Small Language Model (SLM) in the Gemma family [1] using QLoRA fine‑tuning [2] , and introduces a telemetry tokenizer plus teacher‑student synthesis pipeline to generate instruction‑action pairs at scale. Core contribution: a reproducible method to convert “ golden lap ” differential tel...