Full-time software engineer since 2016. UCLA Computer Science B.S. with Atmospheric and Oceanic Sciences minor, class of ‘16.
Image for post
Image for post
Eyes on the road. Photo by Samuele Errico Piccarini on Unsplash

Something I always enjoy looking at is my Google Maps Timeline. It’s fun to see all the places I’ve been, the sights I’ve seen, the miles I’ve driven; it’s like a digital time capsule of my life (and, of course, a ton of data that Google has on me).

Having said that, I knew that the stats for 2020 would be really different and really interesting. …

Image for post
Image for post
Original photo by ammiel jr on Unsplash; logo by Anchore; text by Tremaine Eto.

Anchore is a nice product available via open-source and an enterprise solution for identifying security vulnerabilities and flaws in container images. Through my day-to-day work, I’ve been able to become quite familiar with working with it; after all, its ability to be integrated into the software delivery lifecycle has made it pretty seamless.

Before we start, what does Anchore scan?

When you provide a Docker image to Anchore, it can return to you the security vulnerabilities pertaining to the associated application, operating system packages, secrets, passwords, third-party libraries, Dockerfile, and more.

Additionally, it has configuration for both blocklists and allowlists to fine-tune your deployment process; after all, you wouldn’t want a false positive security vulnerability that you’ve vetted to be a showstopper in your deployment pipeline. …

Image for post
Image for post
Original Photo by Tachina Lee on Unsplash; Java logo fair use; text by Tremaine Eto.

If you ever want to really bring the fun to a Zoom party, then you can quiz your friends on when you use length vs length() vs size() in Java. Admittedly, this kind of conversation would probably only go well in niche programmer friend circles, but alas.

But seriously: in school or on the job, it’s not always easy to remember which one to use when you simply want to get how long or how many elements are in something.

This may seem like an intro-to-programming concept, but honestly I wouldn’t be surprised if most of the people you ask don’t know exactly. After all, it’s mostly something developers’ IDEs would fill out or something they usually just Google — or even just guess by trial-and-error. …

Image for post
Image for post
Photo by Michael on Unsplash; logo by Lua (freely available); text by Tremaine Eto.

When it comes to programming in a certain language, one of the most important decisions — besides simply starting — is the editor or the Integrated Development Environment (IDE) to use.

The choice isn’t a one-time thing where you choose and are locked in, but choosing wisely can really lead to reduced headaches not only now but down the road. …

An after-school program to learn programming.

Image for post
Image for post
Photo by Annie Spratt on Unsplash. Text by Tremaine Eto.

At-home school has been challenging for parents across the world, but one of the aspects I don’t see discussed as much in the public sphere is the role that the lack of after-school activities has played in making things even more stressful.

Whether it’s after-school clubs or study halls or sports, there’s been a general void and a lack of transition from the classroom — virtual or not — to home.

Recently, I caught wind of the Los Angeles Public Library offering something to help with this, and it turns out that it’s something I’m passionate about: helping anyone who may be interested in programming given the chance. …

Image for post
Image for post
Original photo by Maxim Zhgulev on Unsplash; logos by Sectigo and Namecheap; illustration by Tremaine Eto.

If you’re looking to add SSL — in simple terms, getting that nice lock icon in visitors’ browsers and having your URL start with https — to your website, then Comodo PositiveSSL is one of the leading solutions on the market.

For one year, it goes for $8.88; this yearly rate progressively gets cheaper with every year that you pay for up front all the way down to $5.88/year if you commit to four years.

In this article, I’ll go over the process once you pay for the PositiveSSL certificate and check out; I recently did it for my personal website, https://tremaineeto.com, …

Image for post
Image for post
Original photo by Rubén Bagüés on Unsplash; logo by Docker; text by Tremaine Eto

Let’s say that you’re working on an application, sandbox/tremaine-test-app, on your local machine and you just made the image. When you run $ docker images, you are able to see the image amidst all the other images saved to your machine.

Now, you want to push it to your private Docker repository so that your friend across the country can pull it and then run and test it on their machine. …

Sometimes there’s a bug and you need to walk back your code to fix production

Roller coaster with Kubernetes logo on top
Roller coaster with Kubernetes logo on top
Original photo by Nastya Dulhiier on Unsplash. Text by Tremaine Eto.

We’ve all been there.

Maybe we added an environment variable that we shouldn’t have or we made a new deployment with a new image that just isn’t working.

In Kubernetes, though, this is not only OK but normal. Expected, even. There’s a quick way to remedy any issue you made with a revision without having to start over or make a new deployment altogether.

It’s called the rollout undo command.

The Command

The command is simple yet not exactly intuitive.

First of all, while it’s commonly said that we want to roll back a deployment, we actually use the command rollout with kubectl. …

Image for post
Image for post

If you’re here, then you probably were met with a Java stack trace that has lines similar to this in it:

package org.apache.commons.lang does not exist...static import only from classes and interfaces

I saw this in a few Spring Boot applications with Maven, and the good news is that the fix should be easy.

The fix

In your source code, do a global search for the following import prefix:

import static org.apache.commons.lang

Then, replace all instances of that with the following:

import static org.apache.commons.lang3


Let’s say a program has the following Commons Lang import statements:

import static org.apache.commons.lang.StringUtils.isBlank;
import static org.apache.commons.lang.StringUtils.isNotBlank; …

Image for post
Image for post

On eBay, you may run into buyers that you would rather not deal with due to either your own negative experience or others’ negative experiences.

In that case, you may want to blocklist certain usernames so that they cannot bid on or purchase your items.

Fortunately, eBay has functionality so that you can insert usernames to be blocked; they say that “[m]embers on that list will be unable to bid, buy or make an offer on any of your listings until you remove them from the list.”

eBay allows for up to 5,000 usernames to be added to this list — hopefully you don’t have a need for more. …

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store