Windows 10 is getting closer and closer to the Linux world every day, and it’s hecking exciting.

One thing I needed to do recently was to send some files from an Ubuntu machine over to a Windows 10 machine. In the past, I would either install Cygwin or install an Ubuntu instance using WSL. This time, I wanted to see how “native” I could go, and boy, was it a lightweight experience!

The steps here are nothing profound, but I wanted to share how I did it. …


I recently started a Django project that used django-allauth to perform authentication based on Google accounts. One problem I encountered was how to limit who can actually log into the site. I didn’t want anyone with a Google account to be able to log in!

Google’s API does have provisions to limit only certain users from passing the authentication, but it only works during the testing phase of your API. The feature wasn’t meant for production, and is limited to 100 users. On top of that, I wanted my Google API to be a set-and-forget experience. …


Microsoft Word has tons of little built-in helper functions that we take for granted every day (other than the obvious spelling auto-correct): smart quotes, em/en dashes, and widow fixes.

As much as people like to hate on Microsoft products, life would be much uglier if it weren’t for them. Microsoft Word, in particular, has many subtle “beautification” functions that are constantly making adjustments to your document. We’ve gotten so used to seeing the end result of those tweaks that they’re completely invisible to us now.

Spelling auto-correct is an easy one to recognize and I believe people actively appreciate the…


On May 8, 2018, a new top-level domain (TLD) .app joins the Internet. I put in bids to get 4 of them.. and managed to score one of them!

Edit: I had planned to post this on May 8, but GoDaddy was so slow to put my last domain name through the auction that I didn’t get the results until this morning (May 9), so this post is a day late!

Edit 2: Apparently I did manage to snag purr.app! See the end of this article for the update.

Google bought the rights to the .app TLD back in 2015…


Amazon’s raising the cost of Prime by 20%… am I even getting $120 worth of value from it? (TL;DR — No, I’m not, but I’m keeping Prime anyway.)

With the recent news that Amazon is upping their Prime membership fee from $99 to $119, several tech articles have come out discussing whether Prime is still worth it.

I decided to take analyze my own personal purchases to help me decide.

In the year 2017, I made 32 Amazon purchases. …


Unlike English, smartphone keyboards are not well-optimized for Chinese input. “Swiping” was a new invention that made writing English words bearable, but for Chinese, it’s less than ideal.

For starters, Chinese “words” are too short and too similar for swiping to accurately decode. Try swiping “the cow intently squints at your rice” in Chinese (母牛努力瞇你米 — muniu nuli mi nimi).

Furthermore, the frequency of letters used in Chinese is very different than English. The above example contains a disproportionate number of “i” and “u” letters compared to “a”, “e”, and “o”.

Of course, my little example above is a little…


What happens when a server gets hacked? How do servers store username/password combinations?

All too frequently these days, we read a news article or receive an email saying so-and-so has been hacked and X amount of user/passwords have been stolen (among other things like birthdays, security questions, and even social security numbers…).

So what exactly do hackers get when they steal a bunch of data from servers? Well, hopefully they didn’t get your passwords in plain text (looking at you, Sony). What they usually get is something like this:

That second column of incomprehensible text is called a hash…


https://xkcd.com/936/

Ah, the stressful art of creating a password… something “secure” but “easy to remember”.

XKCD did a pretty good job presenting a good, user-friendly method. I more or less follow that pattern now, but with a slight twist. While correcthorsebatterystaple is a very long password, it’s technically only composed of 4 dictionary words. Dictionary attacks are slightly more cumbersome than straight-up brute forcing, but not as difficult as one would assume. …


This is Part 2 of my “block chain social network” series of posts. Check out the previous post on this topic: Part 1 — An open discussion about a Facebook alternative based on blockchain technology

The hardest part of overcoming the behemoth that is Facebook is having enough features to satisfy the social network needs of the user.

It’s helpful to look at a general evolution of how Facebook became the platform it is today:

  • 2004: Facebook begins

Facebook starts with as a simple idea — be an online phonebook for your peers at school. Early Facebook let you upload…


So… this is a bit different from the usual “tech sketches”, but I wanted to document the information that I have so it can help others.

For my home security setup, I have a number of IP cameras connected to Blue Iris software. I was first attracted to the D-Link DCS8000LH because of its cute little form factor — I thought it would look less imposing and integrate better into a normal household setup.

Unfortunately, the DCS8000LH is not an officially supported IP cam for Blue Iris. However, I managed to get it to work through a combination of information…

Albert Liang

Tech junkie, entrepreneur dreamer, practical engineer

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