Sunday, December 30, 2018

Fixing a Bootlooping Nexus 5X

The Nexus 5X was a really great phone offered by Google back in 2015. My mother got one that year while I got a Nexus 6P. Both were pretty solid phones for a while. But, after a while, my phone's battery got so ridiculously sketchy that it wouldn't stay on for more than 15 minutes. There was a lawsuit about that, I think. There was also a lawsuit about the Nexus 5X bootlooping or simply not turning on. That's what my mother's phone was doing: not turning on. I recently tried to fix it using a combination of several methods I found on line. Did it work? Kind of.

Saturday, December 22, 2018

Make Something That Isn't A Computer A Computer - Episode 3: Broken IP Camera

This one has been sitting on my shelf for a while now. I've talked about these kinds of cameras before, and now we have the opportunity to see what they're made of - both inside and out - to see what makes them tick, and to see how safe, performant, and reliable they are. We'll look at the firmware to see what's going on inside of it, strip it of all of its camera bits, and make it a generic computer that's somewhat reliable.

Friday, November 30, 2018

Some FFMPEG Commands I Find Useful

This post is more for me than for you. I've been working with FFMPEG and AVCONV quite a bit recently, and I've had to reuse these commands quite a bit over that time. I'm putting them here so I don't lose them, and I also hope that someone finds them useful at some point in the future.  So, without further ado, here are some FFMPEG things I do a lot.

Tuesday, November 20, 2018

Building a Communications Standard from the Ground Up

Before you read this, just know that this is by no means a good way to do any of this. Hell, it's probably wrong. But it's how I'm doing it for a school project. There are probably many ways and standards in existence that do what I already want to do and do it better, but that's no fun, not a waste of time, and doesn't make for a very good blog post.

Wednesday, October 31, 2018

Deconstructing a Laptop To Make A Bunch Of Things - Episode 0: Teardown

I enjoy going to surplus stores. Sometimes you can find something really neat in the endless boxes of stuff. That happened the last time I went to my local store. I got a graphics card for my friend's RGB Windows XP build, a cool PCI audio interface card, and a Samsung NP300V5A-A0GUS laptop. It comes complete with a second generation Intel i7, so I figured I'd take this $10 computer and turn it into something. But what if we could turn it into multiple things? We could deconstruct it and make a bunch of things out of it. Sound cool? I think so. And guess what! It's another multi-part post!

Friday, October 19, 2018

State of the Blog - Year 3

Wow. Already three years. Time flies when you try to keep a cadence of two posts per month. Some of them are pretty good, some of them I'm not super proud of. But, self-awareness is a gift, so let's reflect on what this blog is actually about and what we can do to make it better.

Sunday, September 30, 2018

Simulating MapReduce in Mathematica

MapReduce is one of the most important algorithm types in big data. Perhaps its biggest draw is the fact that it can be massively distributed across commodity hardware to crunch massive amounts of data. This puts super computing in the hands of those without specialized parallel hardware. In a very basic example for a Hadoop class I did, I implemented a basic MapReduce simulator in Mathematica in order to illustrate how MapReduce works. I also got some extra credit for it, as well.

My High School Home Lab Is A Mess

I went home this weekend and I got a chance to work with my really janky homelab set up. Since I don't really have a whole lot to write about this month, I figured I'd take a anecdotal trip down memory lane for a blog post and document this this atrocity somewhere and begin to talk about how horrible this set up was.

Friday, August 31, 2018

Super Secret Spy Glasses

I got my hands on a triggered camera assembly that supposedly takes VGA video and 720p still pictures while still being exceptionally small. So, obviously, the next logical step would be to slap them onto a pair of shades, right? Snapchat has made glasses that take pictures so why can't I? Of course it won't be as high quality and it'll save to an SD card, not my phone, but we can only hope for so much, right? So, without further ado, let's get started.

Saturday, August 25, 2018

MacOS Screensavers Aren't That Hard

I recently had the chance to play around with a Macbook Pro and XCode 10. I'm not used to using these computers, but I do really like them. I've never been a big fan of the iPhone, but I've always loved Apple's beautiful, if underpowered computers. I wanted to try to make something relatively easy, so I figured I'd start with a screen saver. It wasn't as easy as I thought, but it certainly wasn't hard, either.

Tuesday, July 31, 2018

Generating Colorful Random Backgrounds in the Browser

This is a short one because I was working on too many things at once and I wasn't able to get any of them done. So i figured I'd talk about a small thing I made a while back for some of my web pages. It's a random blurred color generator that creates random backgrounds every time it's rendered. I'll take you through my process of how I started with a prototype on the server side and slowly made my way to the final client side product.

Friday, July 27, 2018

Journey Into The Home Automation Sinkhole

Home automation. There have been many products, ecosystems, and clouds pushed over the years that claim they are The Best™ at automating your home. Recently with the wave of IoT devices, companies big and small, foreign and domestic, real and fake have been clamoring to get into the home automation space. This leads to fragmented homes with multiple devices running across multiple apps on your phone. If you decide to lock yourself into an ecosystem, it's expensive to get out. Hell, it's expensive to stay in some ecosystems (*cough* nest *cough*). But, the real question here (at least for me)... could we build a better smart home out of 'dumb' electronics or make electronics that are smart and extensible. Of course we can. Companies don't because they wouldn't make money that way.

Saturday, June 30, 2018

How To Put A Custom ROM on a Verizon Samsung Fascinate (SCH-I500)

Old Android phones are really neat. They still have a decent amount of computing power and a multitude of neat hardware (sensors, cameras, WiFi connectivity and Bluetooth all in one). But with so much bloatware and carrier restriction, these devices are almost useless. A great way to get around this is to put an entirely new Android ROM onto the device. This blog outlines my adventures in trying to root the Verizon edition Samsung Fascinate (Galaxy S SCH-I500) so you can do it too. Heads up, I probably made it harder than it needs to be.

Monday, June 25, 2018

Live Streaming Headless Processes To YouTube

The use cases are endless but useless all the same. In a hell-bent effort to waste Google's resources, I'm going to design a Docker image that allows you to stream a graphical process in the background. Sound interesting? Great, because this is a very short and straightforward blog post and I'm running out of things to write before the fold.

Thursday, May 31, 2018

Make A Slackbot From a Google Spreadsheet

In this episode of "probably useless", I'll quickly write about how to make a SlackBot that runs in the cloud using data from a Google Sheet. The example I'll be using was made by me and my friends to handle commuting to and from school, but I've generalized it to many carpooling situations. Because I don't have a lot of time to work on projects right now, I'll be explaining briefly how this works and how you can apply it to your own Slack (or otherwise) bot and maybe pick up some neat tricks for code like this along the way.

Wednesday, May 30, 2018

Some Comments on Comments

Code comments. You probably have an opinion on when, how, or if they should be used. To me, this debate is as heated as "tabs or spaces." Except, this is probably a more important discussion to have, since comments are visible and there are no automated tools to convert from one to the other (bad comments to good comments, there are some that can remove comments completely if that's your thing). I'd like to set forth my own opinion here for the record.

Monday, April 30, 2018

One Weird Motherboard and its Three Friends

A while ago I picked up a very interesting looking motherboard. I had never seen something with its configuration. It has many USB ports - some of which are pointing up from the board, two ethernet ports, and its form factor was pretty small. The most interesting part of the board: it has no labeling. What is this thing?

Sunday, April 29, 2018

Making a Smart Speaker - Part 5

Calvin is coming together. The software is moving along slowly, but I think it's time to assemble Calvin so there's only a single cable coming from him. The power cable. Everything else is optional, the way smart speakers should be. We'll add neato features like lights and working in its own microphone. Let's get to it!

Thursday, March 29, 2018

An Interesting Laptop Makes A Good Emulation Station

I'm all about breathing new life into devices that just sit on a shelf and wait for the day they'll get recycled. I'm not trying to personify these devices, but recycling these components seems to take more effort for minimal gain compared to reuse. Reuse makes a lot of sense to me, and it's the reason I have a lot of computer parts laying around my room. Even old hardware, like a Gateway Laptop I picked up from a surplus shop for a few bucks, has use to me. If it were just any laptop, I would have passed on it. But this one had an interesting feature that made me jump to the "Emulation Station" idea.

Monday, March 5, 2018

Designing and Building a File Vault Part Two: My Turn

So I built my parent's file vault/media center a few months ago and it was a big hit. UPS was pretty rough with shipping it, but a little super glue and hope brought it back and it worked beautifully. I don't think my parents were totally up front and honest with me at first when they said they loved it, but now there's no question in my mind. My father has never been into binge watching shows, but now I'm pretty sure he'll get into some of the shows I've been recommending for years. He's already rewatched the Newsroom from both inside and outside the house thanks to Plex, and I've already trained him on how to add his own music. My mother loves it because all of the family photos are now much more secure (thanks to RAID) and we've watched a few movies on the TV thanks to Kodi. However, the system wasn't without its bugs, and we'll try to address them with the one I'll be making for myself, and I'll try to apply the software fixes remotely. Let's get into it!

Tuesday, February 27, 2018

Toggle Switch to Pulse Conversion Circuit

For my next computer build - my filevault and media server - I wanted to take a less microcontrollery way to turn the computer on and off. My parents' build required a microcontroller because I didn't have the parts for this when I built it, so I had to make do. But, as I said before, I don't like cutting sandwiches with chainsaws. It seems wasteful to me to use a whole microcontroller to do one simple task and sleep the rest of the time. So I designed a specialized circuit to do it. I'm by no means a electrical engineer, so this may be a poor design. But stay with me to the end, because this simple thing works (and it's a very short post because it's so simple).

Wednesday, February 14, 2018

Does RGB Make Any PC Look Cool?

In today's episode of "I just want this crap out of my room so let's build you a computer," we'll be looking at building my friend a gaming computer that would have been an amazing system to have back in 2006. My friend already has a decent laptop that's more than capable of playing modern games, but some games don't really work on newer software frameworks or on backwards-incompatible hardware. As we saw in my very similar build for that incomplete-and-stagnant game console project, sometimes you need older hardware and software to play older games. That's fine, I have parts laying around my room that can make a whole computer and if he wants a computer out of them then by all means, it works for me.

Did I mention it'll also feature RGB LEDs? Not everything has to be 2000-and-late.

Tuesday, January 30, 2018

Irons in the Fire

Hey there. It's me. I don't have a second project this month. Things with school have been busy and whatnot - I just haven't had much time to make any meaningful progress on anything. It's sad, I know, but I'm fairly close on several projects. I just wanted to write an update about all of my concurrent projects going on and write where I am on them - perhaps more for me than for you.

Monday, January 8, 2018

A File System Using Google Docs As The Disk

In today's episode of "Why the hell would you even want to do this?", I'd like to show off a software-only file system I wrote in Google Apps Script that uses a Google Doc as its disk. That's right. This is one of those "because I was bored and because I can" type projects. It has no real purpose and probably isn't a good file system implementation. But what can I say? I'm not a file system engineer and making a file system to be written to a Google Doc is stupid.