Recent blog posts
set nocompatible " be iMproved, required
" set the runtime path to include Vundle and initialize
" let Vundle manage Vundle, required
" All of your Plugins must be added before the following line
While programming in the rest framework, I hit this error, intermittently, but over and over, along with others:
Could not resolve URL for hyperlinked relationship using view name "parseuser-detail". You may have failed to include the related model in your API, or incorrectly configured the `lookup_field` attribute on this field.
Being a noob, I hit the books (documentation) again, and again, and thought I had it right, or close. (Don't start out creating Django models for non-Django-managed tables. It's pretty hard. It's better to learn the vanilla Django way first, if possible.)
Here's a snippet of code that will make your PHP REST API work cross-domain, through the magic of CORS:
[I hesitate to post this, because it makes me look like I'm a slow learner... but, oh well. I hope someone finds this interesting.]
This is an unsafe version of the Model PHP Script example. It is more useful for learning PHP. An explanation follows, about what it does, and why it's unsafe.
I just whipped this script up to demonstrate some techniques for writing relatively safe web forms with PHP. This example doesn't strive to look nice or even be easy to understand. It should be a jumping off point for learning some PDO, some htmlspecialchars, some filter_var, and a functional style of composing pages. The last thing - not such a great idea, but it works for really short pages.
This script is written to try and avoid SQL injection attacks, and cross site scripting (XSS).
Code is attached, and below.
I was getting through the docker.io docs, and not quite getting it, and learned it was based on Linux Containers. Followed a link to a series of tutorials by one of the committers, and it's really good so far.
LXC is basically "chroot on steroids" with a isolated networking and processes in addition to isolated files. It allows you to create software within what looks like a lean Linux environment.
I had a disk failing, and had to remove it. The "right" way is to break the mirror or remove the disk from the plex, but it was preventing a boot for the third time, so I shut down and removed it.
The computer booted from the second disk (after selecting it with the F10 boot menu, then the Windows boot menu).
So I added the replacement disk, restarted, and then went to work on rebuilding the mirror.
The new disk was initialized as MBR.
The remaining disk in the RAID plex was working, but the plex was gone. When I tried to reactivate the volume, it said the plex was gone.
This is a big loss for net admins. The exemption was intended for programmers (and even that might be considered a loss).
So I'm reading this computer stuff, and come across:
"What separates a mixin from multiple inheritance? Is it just a matter of semantics?"
"Yes. The difference between a mixin and standard multiple inheritance is just a matter of semantics;"
What the heck did that mean? Different words, same meaning... or different words, different meaning? I am pretty sure they meant the former, but I had to double check, because "semantic" means "meaning", and in technical reading, I tend toward the literal interpretation over traditional or colloquial one.
Computer sound sucks.
There are three major contexts for computer-based sound: watching the computer like a TV, using it for video or audio phone, and using the computer as a multitrack recording studio or a multi-channel mixing board for a PA.
The problem is, the designers of Windows (and Linux, and Mac OS somewhat) have chosen to focus on enabling the usage on the right.
I was looking at some special logs we keep, and found these attempted SQL injection attacks.
A demo of how to incorporate SSH tunnels into a Python system administration script.
Like all sysadmins, I write scripts to automate routine operations. Lately, though, I have needed to write scripts that automate routine operations on a remote system, and we need the security barriers to be a little higher than in the "old days".
We're accessing our database through an SSH tunnel, rather than via a regular encrypted socket. (The SSH connection will eventually require key pairs, and disallow regular passwords.)
I was never one to think I *needed* two monitors after the HD monitors came out, but having used two for a couple months, I think it's totally worth it. I don't even have the second monitor on all the time, but when you're coding and testing interactively, it helps a lot.
I set it up to show four regions: editing, reference, interaction, and debugging. I keep a terminal underneath the editing window, too. Click the image to enlarge.