Welcome to JJK.ENGINEER
Welcome to JJK.ENGINEER
Welcome to jjk.engineer — part blog, part lab notebook, part playground for building my own damn tools instead of tolerating someone else’s.
Intro
Hi, I'm Justin and I'm on a mission.
The mission
- To write.
- To code.
Writing
It's been said, I'm sure, but don't know by whom, that writing is a form of thinking. I like thinking, you'd think I'd like writing. And I do, but finding a way to do it is a struggle. I've explored all the different writing forms. Word, Google Docs, Evernote, Notion, pen and paper, all of which were to some degree or another, satisfying, in a way, but by keeping them relatively private, there was never a real push to do it well. That lack of development always seemed to leave something to be desired. Eventually, I landed on Obsidian, which I still use. It's still all private, but, by it, I came to love writing with Markdown.
This new-found interest in writing with Markdown dovetailed nicely with my desire to get it out to the public to encourage me to write better, thereby thinking deeper. So I started tinkering with blogs online. I first turned to WordPress. If you just want to write, it's fine. But I've always itched for just a bit more than writing alone, and the clunkiness I felt with WordPress discouraged my writing and left me searching...
Coding
A long time ago, in a high school far, far away, I took a class on computer programming. It sparked a neverending curiosity to tinker. In that course, I remember learning Turbo Pascal in the first half of the year and the second we did Visual Basic. It was rather depressing though to think that the only way to code like this was gaining access to Visual Studio, which, at the time, was cost prohibitive (probably still is).
Years later, after having abandoned any of this coding stuff on account of the perceived barrier to entry, I went to college for engineering and learned a couple more languages; assembly, C++, Matlab, PLCs, etc. They were all interesting, but I still didn't know of a way to code for free, or at the very least, very low cost, as I was a poor college student.
My first job was in industrial automation and I got to tinker quite a bit with coding from a PLC standpoint, it was much more ladder logic and routines than raw coding in the way we might visualize, but I was exposed to an HMI platform called Ignition by Inductive Automation which is a browser-based HMI platform where I built the operator interface for a small plant in SETX along with the PLC control system it interacted with. Inductive Automation, being browser based, introduced me to HTML, as I could write raw HTML to create the objects on the screen if the drag and drop stuff didn't suit my fancy, and much didn't. I don't recall during this time if I ever branched away from the raw HTML.
This work with Ignition and HTML introduced me to w3schools, which I LOVE for it's easy to follow tutorials through the basics. From here I eventually branched into CSS, JavaScript, and more. I highly recommend it for anyone new to the world of coding, especially modern web development.
Sometime thereafter, I was trying to start a business with a college friend and we felt like we needed a website, since it was, by this time, a thing, so I took it upon myself to try and create one with HTML, since I knew of it after my experience with Ignition. This kept the interest alive, but the site I created was, how do I say it, dismal. Eventually, we spooled up a legit website using Wix. But, to me, it felt boring. If you want a clean website and have no interest in coding, though, Wix is worth a look.
We also had had a bit of experience in the corporate world and felt the need to systematize our business processes and were strained by the lack of tooling for doing so, and the best options were, yet again, cost prohibitive.
We were well into the internet age by this time and I just knew there had to be a way to solve these problems, when, per chance, I met a young college-age coder working at a gas station by my house. We hired him as an intern to build us a React website to tool us up with a custom-built website for our company's workflows that we had done our best to map out.
Then COVID hit. Then hurricane Laura hit and the whole thing fell apart. No rich uncles to float us through the hard times, you know, undercapitalized and what not.
During the next chapter in my life, I watched the organization I worked for fighting with the hell of endless spreadsheets, most of which were derived from applications so clunky and useless we just exported the data from the application to Excel and worked with it that way until someone had to put it back in the application. I watched as they built one Power App and Power BI visualization after another that never seemed to work right or get the user experience even close to right or usable. And then they replaced the one main clunky, useless app with yet another clunky, useless app (with better makeup on). So I got fed up with it and built my own little tool with the encouragement of one of my colleagues who happened to be a retired software developer. And that's where shit got real!
Sometimes the best way to fix broken systems is to stop waiting for someone else to fix them — and just start building.
That brings us here...and I'll do a tad bit of fast forwarding, lest I bore you with too many more details about Python, Django, JavaScript, TypeScript, Angular, Material, PrimeNG, Bootstrap, etc.
I built this website using Docusaurus.
The website is hosted on GitHub via GitHub Pages.
Docusaurus helped me scaffold up a usable blog/docs website that does not preclude me from tinkering with the coding stuff I also want to get into. GitHub and GitHub Pages allows me to host the site for free. The only thing I actually pay for is the custom domain name.
Docusaurus is a slight deviation from my original plan to build everything from scratch in Angular — which I still like and use for other projects. Docusaurus is built on React which is not completely foreign to me, but something new-ish.
Over time you will see new things coming out on the site that is the result of my tinkering with code, so stand by. Otherwise, you will see my writing coming out quicker because I'm not building any of that for myself, just writing.
Conclusion
In conclusion, here's what you can expect:
- snark
- sarcasm
- frustrations
- musings
- cerebral meanderings
- victory
My hope is that I'll continue to learn and grow and that you'll be encouraged to dive into writing and coding for yourself the way I did and watch how they change who you are the way they changed me.