Post-511 Subscriber Thoughts


Well, my special “Programming The Matrix” video for celebrating 511 subscribers went really well. I was quite nervous at first, but there were viewers, and there were questions. At one point I had 33 concurrent viewers, so thanks to the actual 6 of you, and the 27 spam bots that were keen on learning how to re-program the matrix, for obvious reasons. By a strange coincidence, and just as I went live, one of my videos got dropped on Reddit, twice. This fortunate and pleasing event has provoked quite a jump in my subscriber count, which is already at 812 right now.

Retro Arcade Racing Game – Programming from Scratch (Quick and Simple C++) from programming

Code-It-Yourself! Retro Arcade Racing Game – Programming from Scratch (Quick and Simple C++) from coding

I see Reddit as the holy grail for this sort of stuff so long as you don’t post it yourself. Regardless, I don’t consider myself a subscriber chaser, but it’s rewarding to see people seem to be enjoying the videos.

So it won’t be much longer before we’re celebrating 0x3FF subscribers. I hoped I’d have some more time to prepare something. I’ve been hammering the videos this week to give me a bit of a buffer so I can get a couple of weekends off. In case you’re interested I usually spend about 10 hours coding and testing the program during the week, and film and edit it on Sunday, which can be another 10 hours. If I do no face-to-camera work, then I may record a video on a weekday evening. I’m also due to do a silly video, but I’ve not thought about this yet either.

Coding Live was quite a challenge, and in fact I missed a bit from my notes out 🙁 but I’m sure nobody will notice the difference between the video and the source.


511 Subscriber Live Stream Prep


So beyond my wildest expectations (I estimated about 50 subscribers by the end of 2017) I’ve hit 511. To celebrate I thought I’d do a live stream of some sort. I’ve done live streaming before with games on Twitch, but not on YouTube. Also I don’t expect anybody to watch on Twitch! But there’s a chance some regular channel viewers may come along and hang out.

This makes me quite nervous. I’m going to code something, live, on stream in front of the internet. I know what it is I’m coding, but I’ve not coded it yet! That is to say I’ve planned it, I know how to tackle the problem, but I’m unsure if the end result will be any good. Also, knowing just how many takes and edits go into the videos, I’ll be exposing all the mistakes I make! Then there’s the unexpected. Will I have technical difficulties? What if someone asks awkward questions? What if I get swatted? Well, I’ll be honest, I don’t anticipate more than a handful of viewers so it’ll all be OK, probably.

I’m more concerned that the subject matter just won’t be what people have come to expect from the channel. I’ve picked something reasonably quick and simple to do, as I’d like to get the whole thing done in an hour – that way it could still be used as a regular video.

511 seems a bit of an odd number to celebrate, but it’s a nerd thing. In binary its 0000000111111111. Its similar to watching a counter get to a nice round number, except its when the counter has a long uninterrupted string of ‘1’s in it.

Being new to the YouTube way of doing things, I expected that when I created the event that all of my subscribers would be notified. They were not. So I hurriedly put together a short teaser video to announce it, knowing that for some of the subscribers, they will be notified.

I liked this video. I only wanted to spend 10 minutes doing it, but then I wanted it to look and sound right. I particularly like the sound building up then cutting off just before the end.

It would seem the video has had the effect I wanted. Within 24 hours it had had 150 views. Being less than a minute long, I expect most watched it until the end. At the end, it delivers a link to the location where the live stream will take place, and lo and behold, people had left a few messages of support there.

I’m frequently humbled by the attention of my audience. It takes effort to say nice things to people on the internet, and the feeling of satisfaction from a nice comment never goes away.

Anyway, I’m live in 5 hours…



OneLoneCoder ManCave Layout

After a few, frankly odd, requests to know what gear I’m using, I thought I’d show it off. Up front – I earned this setup, and when my wife and I bought our home, this room was designed to accommodate a sophisticated digital creation space.

  1. Neewer Portable Soft Light (for when the window is not enough)
  2. Canon Legria HF G40 video camera. 2x Class10 64GB SD cards.
  3. Small Lamp with very warm bulb to balance the overhead lights
  4. Samsung Chronos Series 7 Laptop (for in the field video making/coding)
  5. Roland DM-2100 studio monitors (2.1, sub under desk)
  6. Roland QuadCapture USB Audio ADC/DAC
  7. Logitech G13 Single hand keyboard (video editing/gaming)
  8. The “Man Switch”. This is connected to 11 and switches everything on or off – saves power, no fire risk.
  9. Neewer NW-700 condenser mic with boom. For the price, i’m well impressed.
  10. SteelSeries APEX350 keyboard
  11. Power distribution – 4×6 socket extensions with individual on/off buttons mounted under desk to keep wires off floor leaving tangle free room for my legs – I’m 6’2″.
  12. 32-inch LG HDTV (primary screen)
  13. Microsoft LifeCam Studio HD webcam (with nice optics)
  14. Tea. Arguably the most important item. Twinings English Breakfast in a 1-pint mug.
  15. Anker USB3 4-port HUB. This thing is great, and connected directly to motherboard.
  16. Customised IKEA desk shelf thing.
  17. Anker Optical Vertical Mouse (wired)
  18. WACOM Intuos4 tablet. This is really nice.
  19. 21-inch HD Acer Monitor (secondary screen)
  20. 21-inch HD Acer Monitor (tertiary screen)
  21. Philips TV Computer  Monitor (16-inch CRT capable of component input) Used with old consoles and computers
  22. Sanyo 14-inch CRT used with old consoles
  23. Sony PlayStation 1
  24. Sony PlayStation 2
  25. Sony PlayStation 3
  26. Super Nintendo
  27. More customised IKEA shelves, with holes cut for cabling
  28. The Computer
    1. Intel Core i7-6700K @ 4GHz
    2. 32GB Corsair RAM
    3. 1TB HDD, 256GB SSD
    4. 2x nVidea Geforce GTX 980 Ti
    5. Windows 10 Home, 64-bit
    6. AverMedia Live Game Extreme Capture Card

There are also loads of other bits and pieces not on show, original NES is setup, mixing desk for audio hobbies, Roland 20XL Cube Amp, Marshall AS100D acoustic amp, Guitar FX pedals, and boxes and boxes and boxes of wires.

Also, and MOST IMPORTANTLY, only items 4 and 14 are required to code and learn…


Wavy Lines and Bendy Things


I really like splines. They can add a very natural feel to otherwise rigid environment. Therefore, I think all programmers should have an appreciation of splines.

You never know where you might need them. Graphics is the obvious choice, but then you can also consider UI, trajectories, function approximations, general curves, and plotting.

This video is part 1 where I introduce Catmull-Rom splines. Part 2 will show how to navigate splines in a consistent manner.