I was recently (vibe)-coding some games with my kid, and we wanted some basic text-to-speech functionality. We tested Google's Gemini models in-browser, and they worked great, so we figured we'd add them to the app. Some fun learnings:
1. You can access those models via three APIs: the Gemini API (which it turns out is only for prototyping and returned errors 30% of the time), the Vertex API (much more stable but lacking in some functionality), and the TTS API (which performed very poorly despite offering the same models). They also have separate keys (at least, Gemini vs Vertex).
2. Each of those APIs supports different parameters (things like language, whether you can pass a style prompt separate from the words you want spoken, etc). None of them offered the full combination we wanted.
3. To learn this, you have to spend a couple hours reading API docs, or alternatively, just have Claude Code read the docs then try all different combinations and figure out what works and what doesn't (with the added risk that it might hallucinate something).
- The models perform differently when called via the API vs in the Gemini UI.
- The Gemini API will randomly fail about 1% of the time, retry logic is basically mandatory.
- API performance is heavily influenced by the whims of the Google we've observed spreads between 30 seconds and 4 minutes for the same query depending on how Google is feeling that day.
> The Gemini API will randomly fail about 1% of the time, retry logic is basically mandatory.
That is sadly true across the board for AI inference API providers. OpenAI and Anthropic API stability usually suffers around launch events. Azure OpenAI/Foundry serving regularly has 500 errors for certain time periods.
For any production feature with high uptime guarantees I would right now strongly advise for picking a model you can get from multiple providers and having failover between clouds.
Yeah at $WORK we use various LLM APIs to analyze text; it's not heavy usage in terms of tokens but maybe 10K calls per day. We've found that response times vary a lot, sometimes going over a minute for simple tasks, and random fails happen. Retry logic is definitely mandatory, and it's good to have multiple providers ready. We're abstracting calls across three different APIs (openai, gemini and mistral, btw we're getting pretty good results with mistral!) so we can switch workloads quickly if needed.
I've been impressed by ollama running locally for my work, involving grouping short text snippets by semantic meaning, using embeddings, as well as summarization tasks. Depending on your needs, a local GPU can sometimes beat the cloud. (I get no failures and consistent response times with no extra bill.) Obviously YMMV, and not ideal for scaling up unless you love hardware.
I had this last night from flash lite! My results were interspersed with random snippets of legible, non-gibberish English language. It was like my results had got jumbled with somenone else's.
I get this a lot too, have made most of the Gemini models essentially unusable for agent-esque tasks. I tested with 2.5 pro and it still sometimes devolved into random gibberish pretty frequently.
Also, usage and billing takes a DAY to update. On top of that, there are no billing caps or credit-based billing. They put the entire burden on users not to ensure that they don't have a mega bill.
4. If you read about a new Gemini model, you might want to use it - but are you using @google/genai, @google/generative-ai (wow finally deprecated) or @google-ai/generativelanguage? Silly mistake, but when nano banana dropped it was highly confusing image gen was available only through one of these.
5. Gemini supports video! But that video first has to be uploaded to "Google GenAI Drive" which will then splices it into 1 FPS images and feeds it to the LLM. No option to improve the FPS, so if you want anything properly done, you'll have to splice it yourself and upload it to generativelanguage.googleapis.com which is only accessible using their GenAI SDK. Don't ask which one, I'm still not sure.
6. Nice, it works. Let's try using live video. Open the docs, you get it mentioned a bunch of times but 0 documentation on how to actually do it. Only suggestions for using 3rd party services. When you actually find it in the docs, it says
"To see an example of how to use the Live API in a streaming audio and video format, run the "Live API - Get Started" file in the cookbooks repository".
Oh well, time to read badly written python.
7. How about we try generating a video - open up AI studio, see only Veo 2 available from the video models. But, open up "Build" section, and I can have Gemini 3 build me a video generation tool that will use Veo 3 via API by clicking on the example. But wait why cant we use Veo 3 in the AI studio with the same API key?
8. Every Veo 3 extended video has absolutely garbled sound and there is nothing you can do about it, or maybe there is, but by this point I'm out of willpower to chase down edgy edge cases in their docs.
9. Let's just mention one semi-related thing - some things in the Cloud come with default policies that are just absurdly limiting, which means you have to create a resource/account, update policies related to whatever you want to do, which then tells you these are _old policies_ and you want to edit new ones, but those are impossible to properly find.
10. Now that we've setup our accounts, our AI tooling, our permissions, we write the code which takes less than all of the previous actions in the list. Now, you want to test it on Android? Well, you can:
- A. Test it with your account by signing in into emulators, be it local or cloud, manually, which means passing 2FA every time if you want to automate this and constantly risking your account security/ban.
- B. Create a google account for testing which you will use, add it to Licensed Testers on the play store, invite it to internal testers, wait for 24-48 hours to be able to use it, then if you try to automate testing, struggle with having to mock a whole Google Account login process which every time uses some non-deterministic logic to show a random pop-up. Then, do the same thing for the purchase process, ending up with a giant script of clicking through the options
11. Congratulations, you made it this far and are able to deploy your app to Beta. Now, find 12 testers to actively use your app for free, continuously for 14 days to prove its not a bad app.
At this point, Google is actively preventing you from shipping at every step, causing more and more issues the deeper down the stack you go.
Trying to implement their gRPC api from their specs and protobufs for Live is an exercise in immense frustration and futility. I wanted to call it from Elixir, even with our strong AI I wasted days then gave up.
The odd thing about all of this (well, I guess it's not odd, just ironic), is that when Google AdWords started, one of the notable things about it was that anyone could start serving or buying ads. You just needed a credit-card. I think that bought Google a lot of credibility (along with the ads being text-only) as they entered an already disreputable space: ordinary users and small businesses felt they were getting the same treatment as more faceless, distant big businesses.
I have a friend that says Google's decline came when they bought DoubleClick in 2008 and suffered a reverse-takeover: their customers shifted from being Internet users and became other, matchingly-sized corporations.
I have had way too many arguments over the years with product and sales people at my job on the importance of instant self-signup. I want to be able to just pay and go, without having to talk to people or wait for things.
I know part of it is that sales wants to be able to price discriminate and wants to be able to use their sales skills on a customer, but I am never going to sign up for anything that makes me talk to someone before I can buy.
Parking apps don’t seem to care much for that. They know you’ll jump through their shoddy UIs and data collection because they have a local monopoly. Often with physical payment kiosks removed and replaced with “download our shitty app!” notices.
Plenty of people on here looking to disrupt a market with tech...c'mon guys, get on it
Edit: On second thought, there is a perverse incentive at work (and probably one of the "lowest friction" ways to get money), which is issuing government enforced fines.
Turn time wheel? How do you know in advance how long you stay? Where I live, you start and when you leave, you click stop. You also get reminders in case you forgot to stop.
Not GP, but I guess I'm using the same app. You guess (and then it gives you the price up front). 10 minutes before it expires it asks you if you want to extend it. There might also have been a detect if you drive away and stop feature (don't recall).
Mostly these days all paid parking has registration camera's, and it just starts and stops parking for you automatically. However, there are like 3 or so apps that compete here so you need a profile with all of them for this to work and you also need to enable this on all the apps.
(Shrug) No, I'll just park someplace else. I probably need a good walk anyway.
There's no such thing as a monopoly when it comes to parking. If there is -- if every single parking spot within walking distance is locked behind a shitty app -- then you need to spend some quality time at your next city council meeting making yourself a royal PIA.
You should read about the Chicago Parking Meters scandal. The City of Chicago leased all their meter rights to a private corporation on a 75 year lease for a bit over a billion dollars. The private company made it back in the first decade. The city even has to pay the parking company when they have to do construction or throw events that blocks the parking as revenue compensation.
Sometimes I think, it should be illegal for these government contracts to last beyond 5 years for exactly this reason. Who know what kind of deals are being made. Some administration could sign away the whole country on their last day.
It's straight up corruption, pure and simple. The UK is also full of this crap. The officials and executives who've facilitated and profited from this robbery should be jailed.
LOL. All the city parking spots around here are managed by PayByPhone, and pretty much all private parking spots are DiamondParking paid through ParkMobile.
I raised the issue with my local city council rep. She didn't care.
My previous company was like this, and it boggles the mind.
Sales is so focused on their experience that they completely discount what the customer wants. Senior management wants what's best for sales & the bottom line, so they go along with it. Meanwhile, as a prospective customer I would never spend a minute evaluating our product if it means having to call sales to get a demo & a price quote.
My team was focused on an effort to implement self-service onboarding -- that is, allowing users to demo our SaaS product (with various limitations in place) & buy it (if so desired) without the involvement in sales. We made a lot of progress in the year that I was there, but ultimately our team got shutdown & the company was ready to revert back to sales-led onboarding. Last I heard, the CEO "left" & 25% of the company was laid off; teams had been "pivoting" every which way in the year since I'd been let go, as senior management tried to figure out what might help them get more traction in their market.
> You say that as if it isn’t the entire reason why these interactions should be avoided at all costs. Dynamic pricing should be a crime.
Does segmentation also count as dynamic pricing?
--
The IT guy at Podunk Lutheran College has no money: Gratis.
The IT guy at a medium-sized real estate agency has some money: $500.
The IT guy at a Fortune 100 company has tons of money: $50,000.
The entire lab supply industry is disgusting in this respect. The funding (and recent grants) that a given professor or research lab has is generally publicly available information that vendors will buy in easily digestible formats from brokers and companies that scrape the websites of major granting agencies.
All of their products, however realistically commoditized, will require a drawn out engagement with a rep who knows how much money you’ve received recently and even has an outline what research you plan to do over the next few years since even the detailed applications often get published alongside funding allocations.
The exact same piece of equipment, consumables required to use it, and service agreements might be anywhere from X to 10X depending on what they (as a result of asymmetrically available knowledge) know you need and how much you could theoretically spend.
Certain purchases (like health insurance in my country) should be a conversation, because the options are fiendishly complex and the attributes people typically use for comparison are wrong. The consequences are lifelong.
I thought thees things were complex on purpose to make it hard for people to easily understand and compare so you have to speak to a sales person who can do the upselling
Nope. I built a calculator for that last year and ooooh boy. Now I pipe half the requests to a human because of all the possible mistakes a person can make. It's crazy complicated.
Finding that human is also hard because of the perverse incentives to sell more lucrative products.
That's my point, you need to be a specialist to understand it, but the specialists are incentivised to upsell you.
A simpler product would be better for consumers, but won't happen because there are industries (and a lot of lobbying) built up around keeping the money train rolling.
Pricing tiers are a form of dynamic pricing. Service free tiers basically couldn't exist without dynamic pricing, as they are subsidized by the paying tiers.
There will clearly be a gap in understanding, when their whole job is to talk to people, and you come to them to argue for clients to not do that.
As you point out it's not that black and white, most companies will have tiers of client they want to spend less or more time with etc. but sales wanting direct contact with clients is I think a fundamental bit.
Sure, and they should have that option. But in my experience business-folks ask techies to evaluate services all the time, and ideally we can just start out in the low-/no-touch tier to feel things out. If that tier isn't available, us techs might just try a different service.
The kind of products hidden behind sales calls are generally the sort where the opinion of IC-level tech staff is next to irrelevant. With these kinds of products, the purchase decision is being made at a group level, the contract sizes are large, and budgetary approvals are required. It’s a snowball the size of a house, and it started rolling down the mountain months (or years) before it got to your desk. Literally nobody cares if you buy a single license or not, and if you (personally) refuse to try it because it doesn’t have self-service, you’ll be ignored for being the bad stereotype of an “engineer”, or worse.
About the only time you’ll be asked to evaluate such a product as an IC is when someone wants an opinion about API support or something equivalent. And if you refuse to do it, the decision-makers will just find the next guy down the hall who won’t be so cranky.
I think this is true at larger organizations, but even a “small/medium” startup can easily sign contracts for single services for $100k+, and in my experience, salespeople really do care about commissions at those price points.
A lot of software gets a foothold in an org by starting with the ICs, and individuals, not groups, are often the ones that request or approve software.
Github and Slack are good examples of services who make very good use of their ability to self-serve their customers out of the gate, in spite of also supporting very large orgs.
In these conversations, I never ever see the buyers justifying or requesting a sales process involving people and meetings and opaque pricing.
It’s true that complicated software needs more talking, but there is a LOT of software that could be bought without a meeting. The sales department won’t stand for it though.
> A lot of software gets a foothold in an org by starting with the ICs, and individuals, not groups, are often the ones that request or approve software.
Not really. Even if we keep the conversation in the realm of startups (which are not representative of anything other than chaos), ICs have essentially no ability to take unilateral financial risk. The Github “direct to developer” sales model worked for Github at that place and time, but even they make most of their money on custom contracts now.
You’re basically picking the (very) few services that are most likely to be acquired directly by end users. Slack is like an org-wide bike-shedding exercise, and Github is a developer tool. But once the org gets big enough, the contracts are all mediated by sales.
Outside of these few examples, SaaS software is almost universally sold to non-technical business leaders. Engineers have this weird, massive blind spot for the importance of sales, even if their own paycheck depends on it.
If it's only pay and go why have Sales at all? At the very best you need only a slimmed down Sales Department, so being against pay and go is self preservation.
That's just a disqualification process. Many products don't want a <$40k/annual customer because they're a net drain. For those, "talk to sales" is a way to qualify whether you're worth it as a customer. Very common in B2B and makes sense. Depends entirely on the product, of course.
If a platform is designed in a way that users can sign up and go, it can work well.
If an application is complicated or it’s a tool that the whole business runs on, often times the company will discover their customers have more success with training and a point of contact/account manager to help with onboarding.
Instant self signup died with cryptocurrency and now AI: any "free" source of compute/storage/resources will be immediately abused until you put massive gates on account creation.
OP wanted "instant self signup". That doesn't work when malicious actors are trying to register accounts with stolen credentials. The verification flow is required because of the amount of pressure from malicious actors against both free and newly-created accounts.
"Give access now, cancel if validation fails" doesn't work either - so long as attackers can extract more than 0 value in that duration they'll flood you with bad accounts.
Well, then give me self-signup with a clearly outlined verification flow that I can follow from A to Z.
If you give me a form where I can upload my passport or enter a random number from a charge on my card, that counts as "instant" enough. On the other hand, if you really need to make me wait several days while you manually review my info, fine, just tell me upfront so I can stop wasting my time. And be consistent in your UI as to whether I'm verified yet. It's all about managing expectations.
Besides, Amazon hands out reasonable quotas to newly created accounts without much hassle, and they seem to be doing okay. I won't believe for a second that trillion-dollar companies like Google don't know how to keep abuse at a manageable level without making people run in circles.
That has definitely changed. Google AdWords today is one of the most unfriendly services to onboard I've ever encountered. Signing up is trivial, setting up your first ad is easy, then you instantly get banned. Appeals do nothing. You essentially have to hire a professional just to use it.
Yet it's still absolutely inundated with scams and occasionally links that directly download malware[1] that they don't action reports on. I don't think the process needs to be easier if they already can't keep up with moderation.
It might seem vindictive, but these are the ads that google shows people who block all of Googles tracking or are new/blank profiles. Hear me out...
When Google has a bad/empty profile of you, advertisers don't bid on you, so it goes to the bottom feeders. Average (typically tech illiterate) people wandering through the internet mostly get ads for Tide, Chevy, and [big brand], because they pay Google much more for those well profiled users. These scam advertisers really don't pay much, but are willing to be shown to mostly anyone. They are a bit like the advertiser of last resort.
All of that is to say, if you are getting malware/scam ads from Google, it's probably because (ironically) you know what you are doing.
The thing to understand about google services is that they see so much spam and abuse that it's easier for them to just assume you are a spammer rather than a legitimate customer, unless you go through other channels to establish yourself.
Also adding onto this, it is impossible to get human support!
One of my co-workers left with an active account and active card but no passwords noted. The company gave up and just had to cancel + create a new account for the next adwords specialist.
I wasted several hours this week going around in the exact same circles. We have a billing account, but kept hitting a gemini quota. Fine. But then on the quota page, every quota said 0% usage. And our bill was like $5. Some docs said check AI studio, but then the "import project from google cloud to AI studio" button kept silently failing. This was a requests per minute quota, which was set at 15 (not a whole lot...) but wouldn't reset for 24 hours. So then I kept making new projects so I could keep testing this thing I'm building, until eventually I ran out.
The only way we could get it resolved was to (somehow) get a real human at google on the phone because we're in some startup program or something and have some connection there. Then he put in a manual request to bump our quota up.
Google cloud is the most kafkaesque insane system I've ever had the misfortune of dealing with. Every time I use it I can tell the org chart is leaking.
For the last decade or so I get a second $0.85 monthly bill from google. Nobody at google knows why, but they recommend to leave it because who knows what could be disabled if I block those payments. Interesting detail here is that this is on a bank account that we stopped using in 2017, so the only reason we are keeping that account alive is for these stupid google payments. In the cloud environment there is an invoice for the amounts, but no way to change the billing info to our current account and also no way (not by us, not by google support) to figure out what these payments are actually for...
Calling it kafkaesque is giving it too much credit.
I recently got an email saying a project I got is at the risk of being disabled because my payment information is invalid. But the card I got registered for it is the same I've had the last two years, and it's still valid cause I used it yesterday. Also, there is no amount due as far as I can tell. I haven't done anything with the project for 6 month, it's just sitting there. No API usage, nothing.
So I got no idea what to do to address it. I feel my best option is wait for it to get disabled and try to address it afterwards.
Chargebacks or disputes will lock your account, so definitely stay away from that path.
But just closing the bank account will stop auto billing (it's considered a decline). So if you closed the account, it would just stop paying for whatever it is, and then cloud may lock the gcp account until it's paid. (I'm not 100% sure what cloud does with unpaid invoices).
I have been fighting the same bizarre quota demon. Scripts kept timing out due to quota limitations, but I haven't been able to find any indication of a limit in the console. Finally gave up and switched to Claude, since they at least have a sane interface for API keys and billing!
The trick here is that they describe internal loadshedding as quota limits.
There’s a quote for your general class of query, and there’s a quota for how many can be in flight on a given server. It’s not necessarily about you specifically.
Unfortunately Google's problem is the product is dictated by the architecture of the APIs and this is an issue for anything they do. At one point long ago every Google product was disjointed and Larry Page told everyone they needed to be unified under a single theme and login. Then over time with the scale of the company you become entirely dependent on the current workflows. To work around it, all of a sudden there's a new UI for a new product and it looks super clean right until you try do something with that login or roles or an API key that has to effectively jailbreak the flow you're in. Painful. It's why startups win. Small, nimble, none of that legacy cruft to deal with. Whoever is working hard to fix these problems at Google KUDOS TO YOU because it's not easy. It's not easy to wrangle these systems across hundreds of teams, products and infrastructure. The unification and seamless workflow at that scale is painfully hard to achieve and the issue is entirely about operating within the limitations of the system but for good reason.
I hope they figure out a lot of the issues but at the same time, I hope Gemini just disappears back into products rather than being at the forefront, because I think that's when Google does it's best work.
> The unification and seamless workflow at that scale is painfully hard to achieve
It does make you wonder, why not just be a lot smaller? It's not like most of these teams actually generate any revenue. It seems like a weird structural decision which maybe made sense when hoovering up available talent was its own defensive moat but now that strategy is no longer plausible should be rethought?
Two reasons. 1 - they print cash through Ads which means there's opportunity or desire to do more things, or even a feeling like you should or can. So new products emerge but also to try diversify the revenue stream. 2 - the continuous hiring and scale means churn, people get bored, they leave teams, they want to do something new, it all bifurcates. It keeps fragmenting and fragmenting until you have this multilayered fractal. It's how systems in nature operate so we shouldn't think corporation's will be any different. The only way to mitigate things like this is putting in places limits, rules and boundaries, but that also limits the upside and if you're a public company you can't do that. You have to grow grow grow and then cut cut cut and continue in that cycle forever or until you die.
> The “Set up billing” link kicked me out of Google AI Studio and into Google Cloud Console, and my heart sank. Every time I’ve logged into Google Cloud Console or AWS, I’ve wasted hours upon hours reading outdated documentation, gazing in despair at graphs that make no sense, going around in circles from dashboard to dashboard, and feeling a strong desire to attain freedom from this mortal coil.
Add me to the list of "saw nano banana pro, attempted to get an API key for like 5min, failed and gave up." Maybe I am a dummy (quite possible) but I have seen many smart people similarly flummoxed!
You can walk into a McDonalds without being able to read, write, or speak English, and the order touchscreen UI is so good (er, "good") that you can successfully order a hamburger in about 60 seconds. Why can't Google (of all companies) figure this out?
I tried at some point to sign up for whatever IBMs AI cloud was called. None of the documentation was up to date, when you clicked on things you ended up in circular loops that took you back where you started. Somehow there were several kinds of api keys you could make, most seemingly decoys and only one correct one. The whole experience was like one of those Mario castle levels where if you don’t follow the exact right pattern you just loop back to where you started.
It makes sense for IBM, seems like google is just reaching that stage?
I wonder if they actually see their current users as profit centers. The tech is still being built out, to some extent they just need users to find out how it gets used and to get experience in the space. The real appeal of this entire space is its future potential, so they just may not care that much about providing a good consumer-grade experience at this stage.
That docs page has a link in the first primary section on the page. Sure, it could be a huge CTA, but this is a docs page, so it's kinda nice that it's not gone through a marketing make over.
* besides sponsored result for AI Studio
(Maybe I misunderstood and all the complaints are about billing. I don't remember having issues when I added my card to GCP in the past, but maybe I did)
I've to this day never been able to pay for Gemini through the API, even though I've tried maybe 6-7 times
If you bring it up to Logan he'll just brush it off — I honestly don't know if they test these UX flows with their own personal accounts, or if something is buggy with my account.
This is my experience as well in my personal account, however at work given we were already paying for Google Cloud it was easy enough to connect a GCP account.
But somehow personally even though I'm a paying Google One subscriber and have a GCP billing account with a credit card, I get confusing errors when trying to use the Gemini API
Yes, I get the impression he has been fighting this fight internally since the day he arrived. He can’t exactly talk about how infuriating it must be, but I look forward to his memoir.
To Logan's credit though, his team made and drove a lot of good improvements in AI studio and Gemini in general since the early days.
I feel his team is really hitting a wall now in terms of improvements, because it involves Google teams/products outside of their control, or require deep collaboration.
Excuse me? If you mean AI Studio, are you talking about the product where you can’t even switch which logged in account you’re using without agreeing to its terms under whatever random account it selected, where the ability to turn off training on your data does not obviously exist, and where it’s extremely unclear how an organization is supposed to pay for it?
Yes, much like admin.google.com (the GSuite admin interface), which goes ahead and tries to two-factor your personal GMail account every single time you load it instead of asking you which of the actual GSuite accounts you're signed into you'd like to use...
Don't get me wrong, aistudio is pretty bad and full of issues, but getting an apikey was not hard or an issue itself. Using any auth method besides personal account oauth with gemini-cli never worked for me after hours of trying
I have a claude max subscription and a gemini pro sub and I exclusively use them on the cli. When I run out of claude max each week I switch over to gemini and the results have been pretty impressive -- I did not want to like it but credit where credit is due to google.
Like the OP others I didn't use the API for gemini and it was not obvious how to do that -- that said it's not cost effective to develop without a Sub vs on API pay-as-you-go, so i do no know why you would? Sure you need API for any applications with built-in LLM features, but not for developing in the LLM assisted CLI tools.
I think the issue with cli tools for many is you need to be competent with cli like a an actual nix user not Mac first user etc. Personally I have over 30 years of daily shell use and a sysadmin and developer. I started with korn and csh and then every one you can think of since.
For me any sort of a GUI slows me down so much it's not feasible. To say nothing of the physical aliments associated with excessive mousing.
Having put approaching thousands of hours working with LLM coding tools so far, for me claude-code is the best, gemini is very close and might have a better interface, and codex is unusable and fights me the whole time.
> it's not cost effective to develop without a Sub vs on API pay-as-you-go, so i do no know why you would
My spend is lower, so I conclude otherwise
> I think the issue with cli tools for many is...
Came from that world, vim, nvim, my dev box is remote, homelab
The issue is not that it is a CLI, it's that you are trying to develop software through the limited portal of a CLI. How do you look at multiple files at the same time? How do you scroll through that file
1. You cannot through a tool like gemini-cli
2. You are using another tool to look at files / diffs
3. You aren't looking at the code and vibe coding your way to future regret
> or me any sort of a GUI slows me down so much it's not feasible.
vim is a "gui" (tui), vs code has keyboard shortcuts, associating GUI with mouse work
> Having put approaching thousands of hours working with LLM coding tools so far, for me claude-code is the best, gemini is very close and might have a better interface, and codex is unusable and fights me the whole time.
Anecdotal "vibe" opinions are not useful. We need to do some real evals because people are telling stories like they do about their stock wins, i.e. they don't tell you about the losses.
Thousands of hours sounds like your into the vibe coding / churning / outsourcing paradigm. There are better ways to leverage these tools. Also, if you have 1000+ hours of LLM time, how have you not gone below the prepackaged experience Big AI is selling you?
Python is the primary implementation, Java is there, Go is relatively new and aiming for parity. They could have contributed the Typescript implementation and built on common, solid foundation, but alas, the hydra's heads are not communicating well
These other "frameworks" are (1) built by people who need to sell something, so they are often tied to their current thinking and paid features (2) sit at the wrong level. ADK gives me building blocks for generalized agents, whereas most of these frameworks are tied to coding and some peculiarities you see there (like forcing you to deal with studio, no thanks). They also have too much abstraction and I want to be able to control the lower level knobs and levers
ADK is the closest to what I've been looking for, an analog to kubernetes in the agentic space. Deal with the bs, give me great abstractions and building blocks to set me free. So many of the other frameworks want to box you into how they do things, today, given current understanding. ADK is minimal and easy to adjust as we learn things
Every aspect is at least partially broken several times a day, and even when there isn't a temporary outage of something somewhere, there are nonsensical "blocks" for things that ought to just work.
I've been using the AI Studio with my personal Workspace account. I can generate an API key. That worked for a while, but now Gemini CLI won't accept it. Why? No clue. It just says that I'm "not allowed" to use Gemini Pro 3 with the CLI tool. No reason given, no recourse, just a hand in your face flatly rejecting access to something I am paying for and can use elsewhere.
Simultaneously, I'm trying to convince my company to pay for a corporate account of some sort so that I can use API keys with custom tools and run up a bill of potentially thousands of dollars that we can charge back to the customer.
My manager tried to follow the instructions and... followed the wrong ones. They all look the same. They all talk about "Gemini" and "Enterprise". He ended up signing up for Google's equivalent of Copilot for business use, not something that provides API keys to developers. Bzzt... start over from the beginning!
I did eventually find the instructions by (ironically) asking Gemini Pro, which provided the convenient 27 step process for signing up to three different services in a chain before you can do anything. Oh, and if any of them trigger any kind of heuristic, again, you get a hand in face telling you firmly and not-so-politely to take a hike.
PS: Azure's whatever-it-is-called-today is just as bad if not worse. We have a corporate account and can't access GPT 5 because... I dunno. We just can't. Not worthy enough for access to Sam Altman's baby, apparently.
I did this same thing and this was my first result too. I am just not seeing how the author ended up where they did, unless knowing how to use Google search is not a core skill.
Read the full post. Partway down you will see they agree with you that getting an API key is not hard.
Paying is hard. And it is confusing how to set it up: you have to create a Vertex billing account and go through a cumbersome process to then connect your AIStudio to it and bring over a "project" which then disconnects all the time and which you have to re-select to use Nano Banana Pro or Gemini 3. It's a very bad process.
It's easy to miss this because they are very generous with the free tier, but Gemini 3 is not free.
I did notice in their post instead of searching for answers, they asked Gemini how to do things, and when that didn't work, they asked Claude.
I often see coworkers offload their work of critical thinking to an AI to give them answers instead doing the grunt work nessecary to find their answers on their own.
This rhetoric worries me. If you insist on degrading others at least fix it to something like:
> [They seemingly] can't think on their own without an AI [moderating]
They _literally_ can think on their own, and they _literally_ did think up a handful of prompts.
A more constructive way to make what I assume to be your point would be highlighting why this shift is meaningful and leaving the appeal to ego for yourself.
I agree with your assessment, I am in the wrong here. It's easy to be extra judgmental to anonymous figures on a blog you'll never meet. Thank you for reminding me to give people the benefit of doubt and not jump to worst case assumptions.
Low energy afternoons you might be able to come up with a prompt but not the actual solution.
There are people offloading all thoughts into prompts instead of doing the research themselves and some have reached a point where they lost the ability to do something because of over AI use.
The author apparently found himself on a much more difficult path, one designed for enterprises who are already on google cloud, already have billing set up, etc. The fact that an individuals experience with an enterprise platform isn't great is predictable... That's why there are individual/consumer plans for this stuff.
The url you sent, when signing up, just sends me to my homepage where I get a overview of my subscription at one.google.com, I can't see where to access a api key
Hi if the Gemini API team is reading this can you please be more transparent about 'The specified schema produces a constraint that has too many states for serving. ...' when using Structured Outputs.
I assume it has something to do with the underlying constraint grammar/token masks becoming too long/taking too long to compute. But as end users we have no way of figuring out what the actual limits are.
Other than that, good work! I love how fast the Gemini models are. The current API is significantly less of a shitshow compared to last year with property ordering etc.
I complained about this on HN recently and Logan responded and asked me to email him with feedback on how I'd like the experience to work (I didn't, sorry Logan, been busy :)) - Logan, to his credit, is very active everywhere reading and soliciting feedback. I think they're going to be giving it a pretty big bump on ux/ui of AI studio next month. It's easy to see he's a super smart guy trying to build something complex within a massive machine - given how focused on the product he appears to be, I have high hopes.
I don't know, he announced on Bluesky that they are dropping a big vibe coding update to aistudio next year
1. cart out in front of the horse a bit on this one, lame hype building at best
2. Not at all what I want the team focusing on, they don't seem to have a clear mission
Generally Google PMs and leaders have not been impressive or in touch for many years, since about the time all the good ones cashed out and started their own companies
I always wondered how something like AWS or GCP Cloud Console admin UIs get shipped. How could someone deliver a product like these and be satisfied, rewarded, promoted, etc. How can Google leadership look at this stuff and be like... "yup, people love this".
In defense of AWS consoles, they are derivative of AWS APIs, as such they are really just a convenience layer that will only occasionally string 2+ AWS APIs together for convenience purposes that can be considered distinct feature on the console.
That is wholly unlike the problem here where the console and API somehow behaves completely differently.
Along with the public APIs, An AWS service can also have Console APIs that are specifically for the console. These APIs do not have the same constraints as the public api.
holy hell google cloud is so confusing i just ended up using (a much more expensive) digital ocean droplet instead for a little project. I guess they only really care about enterprise customers who can burn tons of money figuring it out, but it made me never want to use it again.
Same with google ads - super fuckin shit UI/UX, super confusing to understand what is going on.
companies like digital ocean, supabase, etc can make money (from people like me) because they just circumvent the bullshit or wrap the dogshit experience (aws) into a much better experience. bless supabase.
How is their managed Kubernetes product nowadays? I've realized all I really use on GCP and AWS is managed Kubernetes and Postgres, and I feel like I must be overpaying particularly for GPU instances.
I’m literally afraid of the cloud console dashboards from the big providers. That’s especially true with the quagmire that is AWS.
It’s so easy to leave a resource turned on that you are no longer using, and so hard to tell which resource belongs to which project, or have high confidence you set up permissions correctly. They have multiple products whose only job is to monitor and configure your AWS accounts. Multiple. That’s not a brag. That’s an admonition.
Digital Ocean, Hetzner, Render, etc, seem to have figured out how to rent millions of dollars of computers and services out every month without requiring you to become “certified” on their platform.
The really fun part was after getting billing finally set up in the cloud console trying to find what model name you actually have to use to call it via the API.
Conflicting information? Sure! Gemini cloud help being useless? Naturally.
Oh and don’t forget that error message being returned when you try to call the API is because you didn’t give your project the proper permissions in google cloud console. What permissions do you need? ¯\_(ツ)_/¯
Google Cloud Console feels like being stuck in the seventh circle of hell.
Baring them using specific marketing terms (so you have EC2 for what are basically virtual machines), for which both the docs and the portal itself provide helpful information, what do you mean? I find GCP's console and whole set up to be slightly better, but both it and AWS are fine.
Now Azure, or anything made by VMware, you just know they hate you.
I agree that Google's console is slightly better, but a few of my gripes with AWS specifically:
1. input fields that lack basic validation so you do some action and then get an error message that is cryptic when simple "if this value selected in drop down, you can't do X". Another example of this is needing to get quota increase for your AWS account for an instance type, but nothing on the frontend tells you that, and you have to go through 3 or 4 weirdly linked support ticket/pages to figure out how to make a request for an instance.
2. As another commenter said, billing - so many pages and ways to cut the data but somehow it still seems complicated to find "which instance is attached to resource X that is costing me $Y per month"
3. Documentation not matching UI - so many PMs/TPMs over the years making resources that you find a blog/post that is a walk through, but then you find they redesigned or moved a button and that makes it difficult to follow.
4. I worked at Amazon for a bit and the internal tools feel like they were built in the early 2000s and I think I have PTSD from that which I still ascribe bad feelings towards AWS as there are similarities
I think as you use it, you start to understand the gotchas and the flows you need to do to get something working. I also appreciate there is a ton of stuff they are empowering users to do and the scale is incomprehensible, but just frustrated the UX is so poor.
I just started using Azure for another project and my goodness, I can't even login to that vs the microsoft ads account w/ the same email because of some weird MS365 permissions issue - by far the worst.
I love how people think Azure is somehow worse than AWS when the latter isn't even a single portal, it's many, each of which shows just one product in one region. Oh, you needed a VM with a network and some storage, including access to blobs somewhere else in the world? Just open up a dozen tabs and join the randomly generated gibberish resource identifiers yourself manually like a savage!
Although Azure just randomly fails, and then it turns out it actually worked but the UI had failed. But then the next step throws an obscure error message, but you get around that on a different screen, so on so forth…
> I love how people think Azure is somehow worse than AWS when the latter isn't even a single portal, it's many, each of which shows just one product in one region
Yep, which means that even an entire AWS region being down has no impact on anything else. Unlike Azure where a single DC in Texas being out meant no auth for anyone, anywhere in the world.
And aren't Azure and O365 infamous for having a convoluted web or multiple portals to such an extent that there are multiple websites trying to help you navigate them with direct links?
And in any case, Azure is not a serious cloud provider and anyone picking it is at best not paying attention, at worst negligent at their job (yeah I know, Azure is the cloud your bosses' boss picks after some golfing and a nice dinner). They have a ~quarterly critical, trivial to exploit, usually cross-tenant, vulnerability. Often with Microsoft having no mitigation and having the the faintest idea if it was exploited. And stalling the security researchers for weeks if not months.
The security posture of Azure is so appalling it's clear nobody at that org who has any power cares about security in the slightest. And it has been obvious for a few years now. Search Wiz's blog just for their collection of ~10 Azure CVEs. For the latest horrific one, cf: https://www.cve.org/CVERecord?id=CVE-2025-55241
Using metaphors is dangerous, but I would dare to say that big tech AI is like cement suppliers. It's too low level of a service. In civil engineering you have the option to contract value added suppliers that will give you prefabricated pieces in concrete or steel you could be using to build your construction.
I'm seeing a lot of AI firms building value added services on top of big tech "foundational" AI offerings. Value addition can start very early at a clear plans/billing structure, going through rate limiting, documentation and extra features that will bring stability or consistency to our AI enhanced products.
Going the other way around (I tried) and building things on top of big tech AI is challenging starting at the fundamentals as the OP described well.
Openrouter is roughly at that level of value-add. With plenty of competition now, since being able to charge 5% on your AI spend just for having sane billing, spending controls (actually enforced per-api-token budget limits!) and easy sign-up is an insanely profitable business proposition
On the other hand I think it's fair to criticize the model hosts for not offering the same
(I work at OpenRouter) Certainly for individual developers / hobby projects that's the primary value prop; super easy access to all of the models.
But there's a lot more functionality that becomes relevant when building in production. We do automatic fallbacks, route between providers based on data policies, syndicate your data to agent observability tools / your logging platform of choice, user-level and api-key-level budget management and model allow/block lists, programmatic API key management, etc, etc. More good stuff shipping all the time!
Yeah can't figure out WTH is going on in google's AI ecosystem either.
They absolutely deserve credit for their free tier API keys though. That's unheard of in big cloud - an actual you can't shoot yourself in the foot with a life ruining bill thing. Can't recall what part of their product maze I got it from but it seems to do what it says on tin
You can sum it up as: Gemini from AI Studio and Gemini from Vertex AI Studio have independent rate limits.
-
And I guess to add some context, it's because Google seemingly realized that Google Cloud moves so glacially slow, and has so much baggage, that they could no longer compete with scrappier startups like OpenAI and Anthropic on developer mindshare.
So there's a separate product org that owns AI Studio, which tries to be more nimble, and probably 50x'd Gemini adoption by using API Keys instead of Service Accounts and JSON certs that take mapping out the 9th circle of hell to deploy in some environments. (although iirc Vertex now has those)
They definitely do ship faster than Google Cloud, but their offerings actually end up feeling like a product team with fewer resources than OpenAI or Anthropic (like shipping purple tailwind-slop UIs as real features), which is just nuts.
Seems like the real problem is something about his account or credit card tripped some fraud detectors and he got stuck in a part of the system designed to prevent credit card fraud rather than facilitate legitimate use. I can certainly imagine that Google gets a lot of chargebacks from people who had their credit card numbers stolen to mine bitcoin or whatever on Google Cloud.
Having moved from one country to another, I tripped all kinda of anti fraud systems and the only way out was to share my ID with every other company. It’s annoying but one common thing is that anti fraud systems seem to require humans in the loop, so it’s better to give up and get back to it next day.
The most annoying company I dealt with was Blizzard. I just wanted to play a game but it took days of back and forth, meanwhile I started to play something else and lost interest.
I work with GCP regularly. Once you’re familiar with their approach, it’s straightforward enough. But the situation with Gemini is on a whole different level.
I had to warm up a Gemini API project worth a few thousand hours during weeks so that I could get to the tier that allowed me to carry out the workload.
How can you have any tokens if you haven’t finished your tokens?!
I'm using it fine through both aistudio and vertex ai, direct API calls
It's not at all hard generally, the core of this issue is centered around gemini-cli which is a hot pile of trash. The inability to get keys or account credentials (like why even use an API key, Google is top notch in auto-auth/WIF)
Insanity to me how gemini-cli is so bad at the basics with so many great Google packages in open source that handle all this transparently. All I need to do is have my gcloud authd with the right account/project. I sarcastically assume his is because they vibe coded gemini-cli and it implemented everything from scratch, missing out on reusing those great packages
If you mean Antigravity then.. how? Their docs say you can't do this.
If you mean Gemini then I personally haven't had issues but haven't tried to productionize a Gemini app. The OPs account seems to reflect other comments here.
I suspect Antigravity to be a big flop like gemini-cli. They are so bad in this area they couldn't even write an extension or fork oss-code, instead spending $2B to pork an open source project with someone else's branding
A few months ago, I had a frustrating experience with the Gemini API while building an AI chat app as a side project. I registered through AI Studio and set up billing via Google Cloud Console, which offered a free trial with $200 in credits or 3 months of API usage. After deploying the Gemini API for my project, I navigated through the numerous settings in Google Cloud Console but forgot to set a billing limit. That month, I was charged over $250 on my credit card, well beyond the free trial allowance. It was entirely my fault for not setting a limit and not reviewing the free trial terms more carefully.
That said, while setting up the Gemini API through AI Studio is remarkably straightforward for small side projects, transitioning to production with proper billing requires navigating the labyrinth that is Google Cloud Console. The contrast between AI Studio's simplicity and the complexity of production billing setup is jarring, it's easy to miss critical settings when you're trying to figure out where everything is.
It seems that billing here (and elsewhere) for cloud is intentionally opaque. Nearly every client (at scale) is having (one of) a service provider to help manage/audit these usage.
Variable costs are great, scale with the business; but visibility is a big (intentional?) challenge.
Adding another layer on top of Google's own APIs adds latency, lowers reliability, and (AFAIK) doesn't allow batch mode - but if that's tolerable, it avoids the mess that is Google Service Account JSON and Cloud Billing.
(I work at OpenRouter) We add about 15ms of latency once the cache is warm (e.g. on subsequent requests) -- and if there are reliability problems, please let us know! OpenRouter should be more reliable as we will load balance and fall back between different Gemini endpoints.
- Google cloud is setup for big organizations. Not for individuals. All cloud providers are pretty much confusing in a similar way.
- India has specific rules re cybersecurity and financial regulations that Google has to comply. (mandatory id verification and kyc compliance). Others have asked for an id check too.
From what confused me, if OP wanted to use a model, the easier way would have been to pay cursor/windsurf etc. and select that model. Usually that is how people try out a new model. Trying out a specific way means going through the norms every country imposes, and bloat in case of legacy products.
AWS and Azure have come up with their own models. If their future versions hit close to sota and people want to use it, many would end up in a similar loop (and woudl be easier to just use it from the aggregators).
Gemini API keys are an absolute delight compared to VertexAI. It’s like Google decided the most important part of competing with AWS was a horrific console.
The underlying issue here is that 3.0 is still in preview. Once it’s a GA model, you can just use your $20 consumer Ai pro sub and skip all the GCP stuff…
Interesting perspective. I've mainly felt like i have 'American privilege' regarding the ease with which i open accounts of basically any sort on a whim, usually with little friction.
Oh no, this is just a Google thing. I've done the same verification bs for four different companies now, multiple times for each of them. I just keep an image of my license on my computer so I can upload it on demand. Google's payment verification is byzantine.
It'll trigger when you sign up.
It'll trigger if you create an Android developer account.
It'll trigger if you get a new phone.
It'll trigger if your card expires.
It'll trigger the month before your card expires. Why? Fuck you, that's why.
Try to get a Google Vertex API key working locally. It's even more complicated. Took me literally one full day to get the whole toolchain working (had to do some pauses out of frustration).
I only went through it because I got once 300 USD for free to spend on my Google Workspace account I/my business owns.
OpenAI API usage is so much easier.
Btw Google: Fix Google Console API usage dashboard... why is there a delay of 2+ days? Why cannot I see (and block!) the usage of the current day?
There is a lot of fraud with UPI, specifically social engineering to obtain UPI OTP codes.
Since the card and the account haven't been previously associated, that's probably a risk model saying a human needs to verify the account before activation.
Indian cards also (I believe) have a mandatory 24 notice period prior to money being pulled - giving fraudsters a 24 hour starting gun to spend like crazy. That makes merchants that provide variable cost service on credit products twitchy.
I went through similar song and dance using a paid Gemini code assist “standard” level subscription. I finally got Gemini 3 working in my terminal in my repository. I assigned it a task that Claude code Opus 4.5 would quickly knock out, and Gemini 3 did a reasonably similar job. I had opus 4.5 evaluate the work and it was complimentary of Gemini 3S work. Then I check the usage and I’d used 10% of the daily token usage limit, about 1.5M tokens on that one task. So I can only get about 10 tasks before I’m rate limited. Meanwhile with Claude code $200 max plan, I can run 10 of those same caliber of tasks in parallel, even with opus 4.5 model, and barely register the usage meter. The only thing the Gemini code assist “standard” plan will be good for with these limits are just double checking the plans that opus 4.5 makes. Until the usage limits are increased, it’s pretty useless compared to Claude code max plan. But there doesn’t seem to be any similar plan offering from Google.
Yeah, then try adding more quotas to scale your usage; you will feel the pain!
But, to be fair, it is way easier than the AWS Bedrock or Microsoft Azure!
I recently had the distinct displeasure of being the first to set up a service in Azure on a new tenant at Microsoft.
Of course I first had to faff about adding the company credit card, which took five tries and two days. Then I found I had to create the appropriate resource group, before I could set up a service. Fair enough, it might make sense later to have costs divided up like that. After I got the resource group, I then thought to start simple and spin up a single VM.
This gave me an error message saying that my request exceeded the quota. Which quota? The built-in copilot in Azure chewed on the raw error in its JSONness, and helpfully told me I could find the Azure quota page by searching for it in the Azure portal.
Once I entered the quota page, I was greeted with a message saying that I was now in the new quota experience in public preview mode. After many clicks I found the appropriate line for the desired VM SKU in the desired region, where it said I had used 0 of the quota of 30. So why didn't it work? I tried to request an increased quota, just in case. That process spent five minutes on "please wait", then failed with a generic error message.
At that point I started googling around, and eventually in some forum thread I found the missing piece: my resource group did not yet have a subscription. After more faffing about, I got a subscription associated with my resource group. What is a subscription, you ask, and what is the relation between a tenant, a subscription and a resource group? I haven't the foggiest, but I've clicked enough buttons to make the errors go away. Por ahora.
I remember multiple waiting periods, and multiple requirements to cross spend thresholds to increase in tiers. I remember at one point spamming the OpenAI API with garbage just to consume credits in order to get to the next tier to increase rate limits.
More recently (couple months ago) I tried using a 3rd party client for ChatGPT which needed a OpenAI API key. I gave up after 20 mins.
I'd say Bedrock is the easiest since you just log into your AWS account, get an AWS credential in the same way you would for any other service (if you're on EC2 it's even easier) and call the endpoints from the SDK. Azure though...
Yea, I went through this exact fiasco a few months ago trying to do the same thing. Or rather, I went through the first two-thirds of it and then gave up.
I got a Gemini API key once. I was overcharged £350, took me ages to find a way to file a complain, and at the end they refunded me only the google charges and not the VAT.
The difficult process is on purpose. You're too small. You're just going to waste their customer support resources and only give them maybe a couple hundred dollars. They're hoping you give up and go away.
We're a reasonably sized company. Recently we needed to change our google cloud payment details.
Finance users had changed in the meantime, so I navigate and create an iam user, ok, billing administrator is a thing, great.
Oh, they said it didn't work? alright, there seems to be a project billing administrator as well as an organisation billing administrator? weird, ok let's try that.
Hmm... it still didn't work? let's look around a little more. Ok, within the billing account (that they're a billing administrator to) and within the organisation (that they're a billing administrator to) there is a tab called "payment users". This seems to be _separate_ from their IAM users, and the person needs to be added there (as well as? instead of? who knows) and _then_ they can change the card details.
UX is especially crap here (for google cloud billing).
Let's not even get started on the whole vertex vs. aistudio stuff. Also when one of the gemini's came out their python library worked while their curl docs, and their ruby client didn't so we had to read the source of the python library to figure out what it actually did under the hood to test it out. (this was a while ago, I think they might've gotten better since but the documentation/devex was really bad at at the time)
I went through the same nightmare a couple of months ago; in frustration I sent a not very nice email to support. They did respond a week later, saying everything was "fixed". But by that time I had moved on, and will probably never come back.
But I wonder how it can happen that a bunch of obviously extremely smart people can create such absurd Rube Goldberg machines -- without the fun part.
Leadership roles, especially in large corporations, often favor people who are opportunistic. They don’t care about the product, they want that promo.
And to win that promo you have to ship big and ship fast. So often times what you see is people delivering vaporware that has the appearance of high quality (lots of promises, looks amazing in the slides deck, carefully selected data shows great numbers, etc). It’s a gamble, and sometimes it pays off.
By the time people accept that it’s hot garbage, the leaders have already moved on to the next opportunity. And it’s not that they were able to fool their managers, because their managers are playing the same game on an even larger scale, so they care even less.
Of course, this is not always the case. But there is a bias, and it tends to show up more in large organizations (government, large corporations, etc.)
The experience feels fragmented because Google has multiple overlapping developer consoles and product boundaries. Gemini just exposes that underlying fragmentation more clearly than other APIs.
I also tried to make Gemini work with opencode and after spending about an hour in various panels, billing settings, setting up access groups, project groups, and other paraphernalia, gave up. There is Google Cloud, Vertex AI, Oauth which works or does not depending on whatever, all the "groups" and other crap I don't need, overall I just failed.
Google is the most political, extractive and dysfunctional cloud from a customer point of view.
1. Startup credits require multiple follow-ups, meetings, etc. And these reps have weird incentive structures (so they are trying to bypass each other to meet their quotas or whatever).
2. Billing is opaque, you get charged for things you haven't used
3. Support is outsourced - and it takes 4-5 exchanges with this external vendor come to the central issue (by then usually people just give up I guess)
4. Overall behavior from various Google staff has been high-handed - to say the least
Every other cloud provider has done better than Google in our experience - AWS, Azure, Digital Ocean, OVH - all of them are better to deal with.
I like to tell my team there are two G's in our life: (1) Google and (2) Government, and these days the second G often does better than first :)
>Startup credits require multiple follow-ups, meetings, etc. And these reps have weird incentive structures (so they are trying to bypass each other to meet their quotas or whatever).
Man, I tried going for the credits. I've organised meetups and conferences for Google, gave talks, been a part of Google Startup campus for years now, have been invited to participate in GDE program, and as I'm making a GenAI startup I decided "well, maybe time to try getting those 300k cloud credits, I've given them so much I'll surely get it".
Well, the first person I talked to, said I'm denied, because they didn't even check the websites I added in the description. They said oh I need to add it to another field for their team to see, told me to update it, but there is no way to update it. Then we had a second call, they said it's okay I can ignore that and pointed me to another person who will be my "account manager".
That person was absolutely uninterested into what we're doing, what we want and what we plan to do. They did not even care about helping us much until we reached 15k monthly spend or so, giving a holier-than-thou attitude and sounding like they're making lunch during the call. I'd rather have the call with an LLM at this point.
Then even though our website says our product relies on AI, it is impossible without AI and I explained to him how and why we train custom models and use their GenAI products - the person decided we are not an AI company and can only get 2k in Cloud credits.
The interaction left such a sour taste in my mouth that I will _never_ use Google Cloud in our product, as I do not want to have to deal with the Account Manager.
Gosh, this story resonates so much with me... I had the exact same experience few days ago, desperately trying to get a small agent prototype working for a quick demo. I spent an good hour dealing with that pile of nonsense. Online payments and accounts management have been mastered for 20 years now, why do we still have to endure such things? It just kills me. The same goes with Azure (and all MS online-related services), if not even worse.
I had a similar experience. However I gave up before being able to pay. Repeated the story two or three times. This was work for a medium sized Corp and in the end we didn't even give gemini a chance because of this (performance was sufficiently good with competing providers) . Really hope they up their UX.
I have that Gemini AI plan thing, and it's great. But I absolutely will not plug my credit card into Google cloud services, no way.. I know I can put guardrails up, but I just am terrified that I'll get a gigantic bill that I cannot afford.
Nope sorry no way. I want a simple $X per month sub.
Google's interface, UX and information flow is complete spaghetti. You never know what you will find and where. There is no one you can call either. I suspect they abandon their products because 50% of potential customers abandon their cart due to the workflow.
This is so true! But the adventure doesn't end there. I have 2 billing accounts from the past when I was building projects on AppEngine. Annual exercise to keep them alive (even if no action is needed in the end) is of similar complexity. Why do I need these accounts? Because I want to use Google services for which I don't pay.
I think they are trying too much to have you jump on GCP. Having a simpler UI with a credit limit (maybe even at a different rate) would actually get more people to use it imo.
This is exactly my experience with gemini, and exactly why I bounced on the stupid thing. I just don’t have hours to waste on Google’s stupid processes.
Is that even possible? Last time I checked it wasn't, while it was possible with OpenAI. Since that moment(early this year) - OpenAI has removed that option and their "Project budget" feature turned from being a hard limit into an email notification.
I think now the Google One AI Pro subscription directly works for raising limits on the CLI? But otherwise, there is an Individual subscription. The problem is it doesn’t work out of the box. You have to create a whole Google Cloud project and attach the API to it to get it to work. Otherwise the CLI would stop logging you in, which it did when the account was free. The worst part is if that cloud project had any code in it, CLI will use it as context on every prompt.
Just wait until you find out that Tier 1 only gives you up to 250 requests a day, and if you want more than that you'll have had to have spent over $250 in Google Cloud spend, and your first payment has to be more than 30 days ago. I was going to build my side project using Gemini 3 Pro, but gave up after that.
Congrats, you have sampled the life of android developer. I've been avoiding touching Gemini exactly for the reason "Your account is in good standing. For now". When it's not, enjoy your ban for life
I use OpenAI and Anthropic APIs every day for work. I have never used google Gemini precisely because there seems to be a whole different set of friction involved in getting an account. First I don’t want to tie anything to my google account, especially any form of payment (no idea if I actually need to do this). Second I don’t want AI studio or whatever, I just want a similar api to the others I can hit.
I admit I’m completely ignorant about what’s really involved, I have never tried and am just going on vague things I’ve heard but stories like this definitely reinforce my perception. I even have a mistral account, grok, etc, but google feels like a whole other level of complication.
I feel you on not wanting to tie anything additional to your Google account. Will I somehow do something “naughty” (say spam an emoji during a livestream) that gets me permanently banned for life from all services?
Google really needs to evaluate separating service bans. I cannot be the only one who would rather go to a competitor than risk angering the black box and destroying my digital life.
Agreed, only thing that kinda makes up for the huge number of steps is that the GCP build in Ai assistant is actually great at telling you what to do via CLI
I think they're just too focused on enterprise billing. Someone at google doesn't get that individuals trying it out is how they go their work and recommend this stuff.
Googlers tend to exist in an isolated bubble. In the corporate world, Azure is the default and they have Azure OpenAI. Why would someone bother with Gemini? Unless the devs at companies have a good experience with it of course.
Googlers are awesome/mean well, if only enough of them lurked here :)
Developer experience matters. This is what Vercel figured out and why their admin screens are sooooooo much better than anything AWS or Google creates.
"Developer experience matters" and "Vercel" being the example is something I never thought I would see together.
I actually do agree that Vercel's admin screens are quite good compared to the other usual suspects. But I don't consider that to be on the development side of things. It's done decently well because it is geared towards the business folks who are paying the bills.
Developers writing code on top of the development solutions produced by Vercel have been completely forsaken.
None of those are development tasks. IT tasks, I'd buy, but anyone deeply entrenched in IT are more likely going to want more powerful tools (even if harder to use). Vercel is geared towards the small groups where there are some developers on staff, but the budget makers are playing double-duty in IT roles.
In my personal experience, OpenRouter makes it easy to call Gemini 3 Pro Preview and other frontier LLMs with very little setup. It’s great for projects where you want to compare different LLMs or have the flexibility to switch. It charges a 5.5% fee on top of the base API price so at scale you would want to switch to directly calling the provider.
I had the same experience. Plus you never know what's the best way to use eg. Nano Banana -- it works better in AI Studio versus their regular Gemini chat.
I had even worse experience with Microsoft Azure. In the middle of the path I realized a third-party sales “ultra real Microsoft support, certified” is dealing with me in order to sell me overpriced options.
As a former employee, the engineering culture at Google gives me old-school hacker vibes, so users are very much expected to “figure it out” and that’s somewhat accepted (and I say this with fond memories). It’s no surprise the company struggles with good UX.
Just a note that you can use opencode with their API gateway (they call it "zen") to get access to all the most popular models using a single account, including gemini. (Although this wouldn't have helped the author, since they wanted to try the Gemini CLI specifically).
I am from India, Have had similar experience. After billing they mentioned models which ai was looking were not launched in india ( Veo3 and nano banana )
I use replicate, fal for all api and for LLM openrouter
ahah I'm really vibing with this post, I went through the same idea as the OP - wanted to try gemini 3 and/or nano banana - and as soon as I was thrown into the billing management panel of Google Cloud and their whole linking process I bailed.
The same billing experience applies to the Google programmable search api. Easy to get a key, but a Byzantine maze to pay for more than the free version.
I had issues too, I wanted to use my free Google API credits with Roo Code, but I could never get it to work.
I eventually got Gemini Cli and now Antigravity to work.
I knew I never want to use another Google service as soon as I got rclone running with my Google Drive:
https://rclone.org/drive/
I rather not waste my time with such abominations. And I don't mean rclone.
I don't care about the "history" of that API, or any API. It's like strangers telling you their live's story at the first meeting. Awkward.
I didn't even need to read the article to upvote, and doing so just confirmed my assumption that somebody finally wrote down their frustration with Gemini.
My fucking god, how has Google not flagged the failure of onboarding devs like Claude / Codex?
3 days ago I was literally thinking, I want to throw 20$ to try out Gemini alongside my Claude and Codex subs.
It took me a few minutes to realize its just not worth my time to figure out how.
Had the same problem, wanted to use gemini but wanted to setup a speeding limit, turns out Google would prefer you to risk bankruptcy for a mistake, no spending limit available from what I understood, ended up going with openrouter and using gemini through them instead
It's so terrible. I cannot tell you the hours I've wasted trying to find a way to see all the Gemini API keys generated in my organization and I have been unsuccessful. I've tried AI Studio, GCP, and Google Admin.
We've reverted to everyone at the company just using the API key I created because I can't figure out a way to give anyone else visibility into keys and usage.
Wait until you see Azure. Apparently you need to create either an "Azure OpenAI" or a "Microsoft Foundry", where AFAIK (got an email last week) Foundry now includes everything AI including "Azure OpenAI", the former "Cognitive Services" (for speech, computer vision and other stuff) and inference on non-OpenAI models. But wait, because once you create that, you are told to go to another portal (ai.azure.com) where you get an "old" foundry experience and anew one that can't be enabled for every project. Oh, wait, did I mention there apparently used to be a "Foundry" and a "Foundry Project"? Oh, and all those apparently work with a single API key, unless (I guess) you set up authentication with the Azure SDK, which makes you go back to Azure Portal (or maybe Entra ID?).
All of that while trying to explain to your non-technical boss how he can browse the voices available at "the Azure thingy" to pick his favourites to then pick and use in the project due relatively soon. Since, of course, you told him the original Cognitive Speech Services (or Speech Services, or Cognitive Services-Speech, or whatever they decided to call it on that specific page) semi-public URL where he could browse the gallery was "speech.microsoft.com" which is now semi-dead with awful loading times that seem some server issue and has been happenning for a few months now. Or tell them to go to the "new foundry" where he might not be able to find the resource or might not have stuff in the regions you were using up until then, or whatever crap this 3.56 trillion-dollar company decides to throw at you to prevent you from using their services.
And all of this is the exploration phase, where you just use the GUIs and copy things around until they work. Then you need to figure out what you did (and more importantly, where) to be able to write some Terraform/OpenTofu or Bicep or similars to try and keep the environment replicable to avoid the excruciating pain of repeating every single step you followed to get it on a working state.
At the very least, Google was nice enough to launch Vertex AI inside GCP for enterprises that have figured that out, and then Google AI Studio as an almost completely separate thing that only is bound to Google Cloud for billing purposes, similar to how Firebase is integrated too.
I see this, a hot take form my side as someone who is bought in to GCP i quite like being able to put everything on the same billing account / handle it easily through service accounts.
Won't be adding them then. Not worth the struggle from what I read here. You think it's plug-n-play just swap a model id and endpoint, nope, Chuck Testa.
What's really fun is how inconsistent they are with "request" limits, at least with the embedding API. The documentation says "X requests per minute" but what they really mean is "X documents per minute". But their reporting shows requests per minute. So if you are embedding multiple documents per request, you will start getting 429s but the usage dashboard will look like you are nowhere near the limit. Super fun.
Not just gemini, my sense is that many of google's products are collapsing in terms of confusing features and quality. I use to be a fanboy but I've been painfully extracting myself from their ecosystem, more because of the constant churn of product issues than because of any political issues. I suspect it's an instance of conway's law where the org chart has become a disaster after all the layoffs and reorgs.
You should be able to create an API account with a classic noscript/basic (x)html browser (optionally with an email, and that could be an IPv[46] literal email address, you know, self-hosted & DNS free, which is stronger than SPF...).
Then to pay for, I should be able to redeem a code bought at my local and physical monetary terminals (no credit card info input on an internet able computer, even if elf/linux and lean classic noscript/basic (x)html web browsers) that to add credits on my account. Like steam. In my country, we even have codes for age verification only (you have physical age verification like when you buy alcohol from a [bottle] shop), much easier to crack down on abuse.
Another thing could be a public "anonymous", severely rate limited, API key for 'testing purpose' or very rare usage, or a noscript/basic (x)html web site (namely a real and honest web site) with ads (text/image/videos[<video>])... and with solid handling of HTTP refresh?
My main usage for AI would be coding. I am craving at mass porting C++ to a plain and simple subset of C code (it seems some people are getting reasonably good results, and it seems rust has a brain damaged syntax on the scale of c++), and assembly coding with very specialized code snippet.
I can’t tell if you might be joking. If you are, the rest of this comment is irrelevant.
That general idiom is old and fairly widely used. There was a Seinfeld episode in 1997 in which Elaine talked about “…not lurching around like a caveman.”
If you’re objecting to criticism of writing code by hand, the phrase is almost invariably used in a self-deprecating way, acknowledging some inefficiency or old-fashioned behavior with comic hyperbole. It’s not criticizing people who write code by hand as such - the author is criticizing themselves for doing something the hard way.
So you don't like writing "the boring code". What do you expect from writing a CRUD? What would you like to write? What "interesting problems" would you like to focus on? Great sadness will fall upon the industry when the last graybeard dies, who had this arcane knowledge of "writing code". I have bad Player Piano vibes nowdays.
Around me devs are beginning to warm up to the idea, that they are not coders (and neither should I be), but "prompt engineers". When I take too much time on a task, when I can't solve a problem with a push of a button, when I muse about copilot hallucinations in my PR - someone usually comes helpfully to tell me, I need better prompting skills. Have you tried this expression? Have you tried more context? Have you tried with this copy pasted magical formula?
No creative worker in human history was so overjoyed to devalue his or her work and knowledge in such haste.
I do not think that all LLMs are evil; they are valid tools, but it's not a hammer with meta glasses attached to render everything into a nail. I also find it very useful in certain situations - but not in all situations.
Two more things. Bad code (in work, in reality, not in a hobby project) is rarely converted into good code. And the last one: in my twenty plus years of being a dev, this is the first year job offers simply just dried up. With bad code being good enough (hey, it compiles! it mostly works!), hopefully you and I will be the lucky few to still be in the business five years later.
1. You can access those models via three APIs: the Gemini API (which it turns out is only for prototyping and returned errors 30% of the time), the Vertex API (much more stable but lacking in some functionality), and the TTS API (which performed very poorly despite offering the same models). They also have separate keys (at least, Gemini vs Vertex).
2. Each of those APIs supports different parameters (things like language, whether you can pass a style prompt separate from the words you want spoken, etc). None of them offered the full combination we wanted.
3. To learn this, you have to spend a couple hours reading API docs, or alternatively, just have Claude Code read the docs then try all different combinations and figure out what works and what doesn't (with the added risk that it might hallucinate something).
reply