I have found the tools nload and iptraf to be very helpful when analyzing communications on my linux server. They can be installed in debian/derivatives using the packages bearing their names.

Strange delays running zsh

As a lot of fellow users of the Z-shell, I have oh-my-zsh installed to make installing plugins and themes easier. One issue I was having earlier today was every time I typed a command or pressed return, it would delay for a couple seconds while displaying ‘xcodebuild’ and then ‘git’ in the title bar. This was very frustrating, as it made quick work more difficult.

After a while, I thought manually updating the repository would be helpful. I went into ~/.oh-my-zsh and ran `git pull`. I then received a message saying similar to You must run as root to agree to the license. It hit me that I did an update of the Xcode command line tools earlier in the day. I ran `sudo xcodebuild` and followed the prompts to accept the license. This caused the delays to vanish. Thought I would share if anyone else had a similar problem.

Computer vision for controller-less robot control

It is legal (currently) to use computer vision of humans during autonomous mode to command a robot in FRC. This has been accomplished before by other teams, such as The Cheesy Poofs. We designed a different algorithm that allows for control of speed as well.
The Ratchet Rockers have designed two different methods to accomplish this control. The first one implemented resembles 254’s more directly as it is OpenCV. It searches for an object (via color threshold) and uses its position to determine the speed and direction of the robot. This has been tested to work reliably.
We also worked on a similar method later using skeleton tracking. One hand tracked works the same way as the previous solution. The other can be used to send specific action commands to, for example, launch a ball at the target. There are some irregularities that occur if the program has been running long, which we haven’t been able to overcome yet. This program is alternatively written in C#.NET using Microsoft’s own kinect libraries on windows. We don’t have confirmed results on the robot yet, but it uses the same protocol as the previous solution.
Even in the off season time of summer, our team 1706 continues productivity in vision and control solutions.

Security in the face of SSL vulnerabilites

Just yesterday, the news broke of a large exploit in popular software that powers the security of large parts of the internet. Within minutes of hearing about it for the first time, I took action to protect my website, even though it was midnight and I was super tired.

My website was secured well before some other large ones were. For extra security, I generated new security keys (my certificate was to expire in a week anyway). Hopefully an exploit of this magnitude will not occur again anytime soon.

Why Norton AntiVirus sucks

Today I attempted to download a game I wrote many years ago as a little kid to play again for a small dose of nostalgia. What do I find? Norton removed the file not because it contained a virus, but due to a “reputation” algorithm. I would never inject malicious code into my applications, however the multitude of users relying on such “Anti-virus” software would see the alert and forever remember me as a person attempting to cause harm to their computers. A simple “helpful” algorithm intended to prevent viruses leads to lost trust in applications developers and hurt feelings for game makers simply attempting to replay their past creations.

Helpful guide to “Big O” notation

Being the type of person who learns by examples, reading information on Wikipedia and given a synopsis by another person is not enough to totally understand a concept. There is a guide that, in my opinion, gives a nice overview of how this measure of function efficiency works. I recommend visiting A Beginner’s Guide to Big O Notation. It was very helpful for me, and I hope it can be useful to you.