Monday, January 29, 2018

Another Series of Unfortunate Events

Good Morning!

Its Monday Morning here in the lab, and this weekend has been something of an adventure in Operating Systems.

As an old-school developer, I take a bit of pride in taking care of my own tools.  My primary development work happens upon two dual-monitor Linux desktops that are linked together at the hip... and I've configured and maintain these machines myself.

There are two windows machines as well, but they are definitely special-purpose machines.

So, a seriously Snicket-y "Series of Unfortunate Events" took place early Sunday morning...  A sleepless night, a power outage, and an Ubuntu Linux OS update, in sequence.  I can handle that... not a problem!

I have overpowered battery backups on all my machines, so the power outage was easily handled... although it did break my concentration on development coding I was doing at the time...

So, I wasn't working when the update popped up.  I figured, why not.

so after the update, I also upgraded the Nvidia proprietary drivers for my linux machines, as well.  I mean, why not, right?

No.  Don't.  always check the interwebs before doing anything third-party on Linux.  The universe is inherently evil, and when it comes to freeware operating systems, explicitly so.

So, after all this and a friendly reboot... I got nothing.  Nuttin... Zero, Nada, Dead boxes.  Single blinky cursor with no response to keyboard input.  Dead in the water.  (I'm trying to express the frustration I was feeling... How my Do'in?)

After considerable lost energy and time, I called on an expert.  I don't care who you are, someone out there knows more about a particular thing than you do.  When you get stuck, call for help.  If you are any good at what you do, you are they person they call, so its only fair!!

It took Joshua 45 minutes to restore my boxes.  He knew about bypass tricks that I had never heard of.

So... thanks to Joshua Bisiaux.  I appreciate your help, and you'll be getting something special in your mailbox soon.

And for the audience... Remember... take care of your tools, and keep your speed-dial handy, and populated with folks who know more than you do!

Saturday, January 27, 2018

Epiphany and Impact

Developer Diary Number 1

So, I'm working on several ideas, concurrently. An old client/friend of mine needs a new HTML5 complaint document management system, and there are lots of new options out there. Another one needs a CRM platform. Also, I'm looking at Edge Technology as a way to overcome the start-up costs of a new project, because I want to go into subscription software, rather than just code-for-hire.

I've finally discovered that code-for-hire is a trap. By the time you're done building testing and deploying the project you contracted for, made up the bills you incurred since the last project, and bridged until the next one, all the money you made is gone. You are just going from one project to the next, perpetually starving over the long term.

This time, I want to do it differently. I'm eating the time it takes to build the application myself, but then I'm going to subscribe it out. if you use it, you pay. every month. That way, I make some scratch, every month, and I'll know what projects need love, and what can be ignored.

The goal here would be to eventually be able to get enough subscription dollars to support myself and my family, and get to live the life I've always wanted... Building what I want, how I want to.

Anyway, the realization that hit me is that all these different project ideas I have all merge into one big project. Document Management and CRM simply become different departments, and a subscriber can create and configure as many of these as he wants.

All I need to do is monitor resource consumption. Users, and storage space. Do, with the help of my trusty business partner and sidekick, we've morphed all the various projects into one super-project, chock full of options, features, and capabilities, with a rather low startup costs, and a "Pay as you Go" subscription paradigm. Some serious refactoring has triggered a momentary halt in development, as the ramifications of this change become manifest.

As I build this monstrosity out, I want to use this blog space as an opportunity to share the thought process. Some entries will be about particular programming problems, others will be philosophical and theoretical. Maybe even a plug-in review every once in a while.

I'm also going to experiment with videotaping these, for posting on YouTube. So for all you TL;DR people, I'll read it to you!

Comments are welcome, and we'll gladly answer questions in the following blog post.

Setup to Succeed

I've worked for both good and bad companies in my career.  Some companies treated their customers well, but treated their employees poor...