Skip to main content

Adventures with a Google Python Client API

I've been screwing around with Google's Sheets API client library. I've finally produced something barely accomplishing: a Python script that reads the values from a spreadsheet I'm using as the temporary machine learning training and testing data source for The Companions Project.


The sheet that will house companion training data
Success in the PyCharm console

Sure, I don't know any practical information on how to implement machine learning, but I'll get there. I at least know the basic process: get data, format data/create labels, train model, test model, and repeat training and testing until model is sufficient for job.

In other news, I contacted my likely computer science teacher for next year, Mr. Burton, about the club I'll have to make. Obviously, he didn't respond as it's the weekend, but I'm awaiting his response.

Today, I've finally figured out why The Companions Project's deployment to Google App Engine showed GET errors when going to the site. Turns out a small tag was the cause: secure: always. In an app deployed to GAE, the app.yaml file tells GAE how to handle requests. The "always" part of the tag means that the server will force HTTPS to serve static resources, something I am still in the process of setting up. In fact, that's what I spent four hours trying to do today before I gave up. It turns out GAE doesn't automatically provision HTTPS certificates for your custom domain, so I had to search website after website to find a guide that told me how to manually create the certificates with certbot.
Site note: I find it odd Firebase Hosting automatically provisions HTTPS certificates while Google App Engine doesn't even provide that option. Perhaps it's because Firebase is supposed to be a fully integrated platform for developers and Google Cloud Platform is sort of WYSIWYG. I thought Google really wanted to encrypt the web, so automatically issuing HTTPS certificates for App Engine apps would really help with that goal.

I should really finish my homework now, but I suppose today's troubles are tomorrow's history.

Comments

Popular posts from this blog

Countdown to I/O

This is going to be the second year I've witnessed I/O live(streamed), from school, nonetheless. While I'm hoping Google announces some bombshell that is going to give them some massive monopoly, I, containing bouts of cynicism inside, expect a bit less. Firebase, Firebase When Google announced Firebase last year, I shook and shivered with excitement. I thought, "An integrated mobile and web development backend I could use to make anything? Sign me up." Of course, Firebase got better with new features like Cloud Functions, but I don't think Google is done with it - they're not even close. While I know just as much as anyone not at Google about the announcements to take place in less than five to six hours, I'm sure Google is going to announce more integration with their Cloud Platform. Cloud Functions was the beginning of Firebase adding functionality to a "consumerized" cloud, if you will. The rest of Google Cloud Platform will be for anyon...

What's a TSI Test?

I took the TSI test on Wednesday, but I wasn't the first one in the lab to finish. I blame my proctor's slowness at informing me on some prerequisites that Administration didn't inform me about and my own apathy to a test that didn't seem to put up much of a fight. Three other people beat me to the punch, but I still managed to finish before the end of third period. Since this test doesn't involve a non-disclosure agreement that people really don't care about anyway , I'll talk about the contents of the test. There's nothing too interesting about the test. I likely could have gotten a perfect score if I tried, and that's not just me being cocky. There was no advanced math on the test (nothing higher than algebra), but the reading sections are slightly more comprehensive than the STAAR test's. I literally mean slightly more comprehensive; the STAAR test is more fiction-oriented while the TSI's reading (I think) only consists of nonfiction pas...

Summer Break 2017, Day 5: How Hard is it to Upload a Photo to Firebase?

God help you if you ever decide to implement camera functionality in Android. I didn't have much planned today, but thank goodness I didn't. The Setup Here's the dilemma: I wanted to make a very simple app that will let me take a photo of text and have it read out to me. Using the Google Cloud Vision API ,  I can essentially scan documents and listen to their contents instead of having to use my eyes and scan the thing. It will be great for accessibility and so on, but the thing is I can't have the Cloud Vision API scan documents that I haven't taken. I want to do processing in the cloud to model common app architecture and to reduce strain on the client app. Here's the service flow: Client app takes photo Client app uploads photo to Cloud Storage for Firebase Cloud Functions scans the document for text Cloud Functions updates Firebase Database with scanned text Client app intercepts database update Client app speaks text from database The Co...