Greetings, especially to everyone who got a busniess card from me this week!
If you are here, then it means my campaign was a success! As I may have stated, I haven't been updating this site isn't updated as it used to be, but it will be in the near future. The reason: Python!
If you haven't heard by now, Python 2 is going away so that we can finally get on the same page with Python 3. This site will eventually run Flask.
"But Jason? I though you wanted to use Node.js and Angular?"
I'd like to. I want to. But my webhost will only do that at a premium.
Oh, Dreamhost. Why?!
What I can use: Flask. There's Python 3 here. So it's time too say goodbye to PHP. But here are the real reasons we want to do Python.
There are still two versions of Angular: version 1.x and (as of this post) version 6.0.5. There's a good chance your boss is still bragging about using a MEAN stack that still uses v1.x. If he's not good, but don't hold your breath.
TypeScript, as much as it is better than JavaScript, is not JavaScript. Older programmers may remember when Microsoft tried to subvert the existence of ECMAScript (the official JavaScript) with their version of JavaScript, JScript? Because Microsoft's JScript wanted to be "special" we now have JQuery which adds a lot of overhead and thousands of lines of JavaScript that is intended to make Internet Explorer and Edge work with the JavaScript that all other browsers use! What if TypeScript is really JScript all over again? Until ECMAScript (ES6+) takes on the features that TypeScript has, we should take it with a grain of salt.
Do you really want to React in the first place what with all the controversy going on at Facebook? And what if React really is the next JQuery? It relies on Babel to get the most recent ECMAScript and TypeScript things working. To a greater extent, what if this library is really just a way to get Facebook to aggrigate date from users? What if Angular is doing the same thing for Google? Didn't you want to make an app in Node.js? So why do you need all this other stuff to use it.
Python: It only does EVERYTHING! If I mentioned this before, Python 2 had SimpleHTTPServer to test HTML code in the browser with simple HTTP request handling. Python 3 simply has http.server to do the same thing. What better way to learn Python than to implement it? And yes, you shouldn't use these in production. Which is why Flask is the better choice.
"What about Django?" Django is great, if you looking to do full-stack web development for a large and complex web application. Flask is more sutable considering this website is likely in the boondocks of the Internet. I just need to operate a simple web application on this website, so why not use something that fits the size of this website?
There's also some stuff that I'd like to do which involves using LaTeX, Graphviz, GhostScript, and extended form of Markdown. Apps like Zettlr and Typora do something like this with Markdown documents that include code editing and diagram creation. Markdown is easily tearing down barriers to entry to content creation for the web. Although, table construction is still one of its flaws. To fix this, I recommend doing table creation with LaTeX instead of Markdown.
Whatever it takes to get the job done is what this website should implement.
Social media platforms have defintely sucked the air out of the room in terms of genuine content creation. It's why this site does not use Wordpress. It's why there is no analytics or tracking. And it's why I still use meta tags for SEO. When I start making money to afford better webhosting, then we can talk about full-stack development.
For now, I keep the "stack" small.
A few activities I plan to do this winter:
Fix this website up some more. (Obviously.)
Salesforce Trailhead - Yes, I can write my own code, but there's still that crowd of people who still think using Salesforce is better. Nevermind that this $143 billion company with its own building in downtown San Francisco can't release an app for iOS as well as Android at the same time. (Android users will and should never gonna live this down!) The days of releasting an app just for iOS but not Android are over, especially if you're a huge company. It would be like if Disney released Disney+ for AppleTV only but didn't launch on Roku, Amazon Fire, or Google Chromecast at the same time.
Complete SoloLearn Apps - If you haven't heard of these guys, now you know them. These guys make some great apps for quickly learning programming languages. You can learn on their website with a PC or download their apps for iOS or Android.
LaunchCode - Yes, I already have a BSCS, but my Node.js skills are still rusty. Alternatively, I could teach (assuming they didn't need me to be a Teaching Assitant or get some degree in Education first). It should be no different from teaching kids in a Boy Scout Merit Badge Course for Computing or Electronics. It's not like I'm teaching at Washington University or something.
A.I./M.L. stuff. - I found a couple of books on it for Python 3. I tried taking a course through some online Harvard class, but the data in that was from 2010, and involved way too much partial derivative calculus statistics. As much as I am a math geek. Learning these subject shouldn't require that much math. Clearly the course was designed to impose barriers to entry. Ones I would like to obliterate.
Learn How to Use GNS3 - I sunk two years and a very pretty penny to take CCNA only to stumble in the fourth course and in the security class. What's more, everywhere I've been lately that has a server cabnet in the building is using a server that doesn't have a Cisco logo on it. And considering, Cisco shuffled around their CCNA material again recently, this means having to start over with them from the very beginning. So why not do this the right way this time through GNS3 Academy?
Re-Learn C++ - If and when I finish learning Python, I want to go back and learn C++. Next year (2020), C++2020 should be released and standardized. And while after all these years C++ still doesn't have its own garbage collection, there is no denying its importance. Sure, there are some folks who would suggest learning Java, C#, or Kotlin, but C++ is where I got started back in college. It's time to revisit some stuff.
Run ArchLinux from USB thumbdrive. - This one's been on my ToDo list for some time. While ArchLinuxARM is probably one of the best advanced Linux distributions for Raspberry Pi, there is much desired. The best way to experience Linux is on a 64-bit system with either an Intel or AMD processor. Until there is an ARM processor that can run full 64-bit Linux for cheap, I guess I'll table ArchLinuxARM for now.
There are a few other things I'd like to do but I don't want to post them online.
Stay tuned for updates.
Slow Change
August 6, 2019
I'll admit, progress here has been a lot slower than anticipated. Namely because most of the activity this site used to have has shifted from here to sites like my Medium blog, my Codepen, and now HackerNoon.
Given the fact that I have spent a lot more time at those three websites, the likelihood that changes to this site will be coming soon is like 90%.
What set me back on posting anything new was that a few months ago, one of the Raspberry Pis that I was using to back up this site died. It took me a while to think of how to recover the backup, and with fingers crossed, a new JRCharney.com should be in the near future.
But what about tis page? It worked so well as a boilerplate to advertise that this site is not dead yet. I might move it to another page like "about.php", or given that I can use Python here (which I'll admit isn't as great as say using Node.js in some Express.js app or whatever React or Vue thing that is popular right now), I should consider moving to Python.
I won't get too much into the details here, but I did want to push an update especially if you came to this website from the Reverse Job Fair in Belleville, Illinois on August 8, 2019.
PHP was this site's language, but the time to evolve and use something else is nigh. And Python will be that something else.
Stay tuned for change!
UNDER RE-CONSTRUCTION!
October 20, 2018
That's right! I'm starting over! If you are wondering where all the old stuff is, I've moved it to a subdomain, OLD.JRCharney.com. I've probably broke a bunch of stuff moving the old stuff, but I'll fix it shortly so I works like it used to.
I'm hoping that I can do some reactive development here, either in React or Vue. (Supposedly that doesn't play well with Apache. So I'm either going to ask my webhost to drop Apache on the main domain or set up another subdomain for Node.js stuff.)
But don't be a stranger! I'm online through other means. I've been busy while this site was in limbo.
Follow and checkout the various Github projects I've been doing on my Github profile espeically my Hacktop and PLUSHES projects.
If you're looking for a guy who knows code in the St. Louis Area, why not visit my LinkedIn profile. (I'm pretty serious about still being in the St. Louis Area. So unless your plans to try to get me to move to another city in another state include like $50,000 up front for moving and living expenses and what not, I'm not interested.)
My blogging operations, which used to be this website's reason for being, have since moved to Medium where a bunch of other geeks have been doing it lately.
There's probably a few other things I haven't mentioned, like I'm trying to get my Cisco Certified Networking Academy certification at St. Louis Community College, I had been hanging out at Venture Cafe on Thursdays at Cortex now that there's the Metrolink stop there, and I'm kind of a regular at TREX downtown.
But most importantly right now, I need MONEY!.
This website is not a business. I would have loved to have monetized it years ago to make is a business with ads and sponsored content of things that I'm interested in years ago, but for the most part this website is just a passion, a "hobby". And while a lot of people choose to venture out and dive into filling out the LLC paperwork and registering as a business, I bought my first domain back in 2003 just because I though it would be cool to have my own website. Later, I replaced the domain name with my own name, because I wanted to let everyone know who I was, promote my skills, and hopefully lure the attention of someone interested in hiring me for those skills. Not everyone does there research to start their own website, find an affordable webhosting company, then write all the code by hand.
These days, a lot of people buy a website from a company that has the code prepared for them in cookie cutter fashion (i.e. SquareSpace), then hires some guy who barely do any work to fill the website with content. At least when they do it, they are being paid like $200 per hour for doing something that is the computer programming equivalent of just mowing someone's lawn.
While I do run this website all on my own, and it cost me about $20 per month to run it, the primary reason it exists is to flag down so tech company folks to say "I am here and I want to work for you!"
However, I'm at the point where I need to say "OK, if you're not going to hire me, could you at least chip in a couple of bucks to support my interests?" Which is why I have the ribbon and this button on my temporary home page.
I mean, six years a college shouldn't be followed by nearly a decade of bad luck which included two crappy job where at least one boss didn't pay me all my wages. Nobody who is highly educated, should be doing what this guy in this photo is doing to get a job in the United States.
It's all funny until you realize it is real.
Yes, that is what is happening in this country! It's not a joke anymore! There are folks out in the street or taking crappy jobs because people don't look at resumes, cover letter, letters of recommendation, or even websites. They look at networking and connections. People who go to the events, the hackathons, and the weekly get-togethers.
That's why this website needs to be renovated. Not to be a place where I shoot the breese on things I'm passionate about. But to show people how dedicated I am to wanting to get that job I worked so hard to obtain, even if my skillset isn't 10 years of whatever really old software product nobody has ever used or practiced with during their academic, vocational, or professional training.
I use the open source stuff, not because of a dislike of Microsoft, Apple, or whatever big tech company is out there raking in the billions of dollars, but because I simply don't have $3000 to pay for a computer and it is so unplesant to have your computer serviced by other people when I can do something to fix it myself. Could you believe I was turned down for a job once because I didn't own a Mac?! That's like someone at Burger King saying you can't work for them because you didn't eat a Whopper everyday.
Besides, do some research on the hardware specs of any Apple Product compared to any PC on the market, espeically component. If it wasn't for all these Bitcoin bozos, graphics cards wouldn't cost more than the rest of the computer components that you can buy and build your own PC (which I've done twice but had to settle for a mother board with on-boad graphics. Well, three times if you count my hacktop.).
The hottest thing is the industry right now is Node.js which is really a C++ program that interprets Javascript as computer code because Javascript is easy to learn much like Python.
But then things get complex with a whole bunch of business jargon like the following:
"unit testing" — Basically code debugging or refactoring, ideally before putting a product into production, but is never really done until the programmer tells his manager "I told you you should have let us test this out before you sold it, now enjoy paying for patching or worse an expensive product recall", but someone just made some software to make them feel special.
"business logic" — Writing the code that does some SQL database stuff. Could you believe I took a class on how to write programs for businesses and for some reason or another those two words never were in the same sentence together until I had an "uh-oh" moment when someone had to explaind to me what that term meant. Of cours that was over a decade ago, and I know now what it means.
"machine learning" and "artifical intellegence" — You would probably think with that second term "oh, robots, cool." In reality, it's stuff that has been theorized for almost a century, implemented a few decades ago on some really expensive hardware or published in some overpriced Elsiver publishing book that the late Aaron Swartz litterally had to pirate from JSTOR so that everyone could finally learn what it is, and dumbed down to a consumer level because people are afraid of "big scary robots" marching down the street enslaving humanity. (If you look at history and see how humans have treated each other, who needs robots to enslave humanity when humans do a pretty good job of doing that themselves. So I for one welcome our robot overlords.) These two are quite possibly the biggest braggadacio programming trend right now. (I included a link to what "braggadacio" means so that nobody thinks it's a curse word. And I got called into an office once for using the word "default" in a sentence.) So let's clear the air here about what these two terms are. First, "machine learning" is basically all that vector calculus stuff from high-school calculus combined with a little bit of statistical probablity that you could probably have learned on your own if your school could ever find a guy to translate any of it from Nerd to English, but because they don't hire guys like me to do that, they just cut that out and spend the money they should be using to do some science thing that is life enriching for some million-dollar track the athletic department never requested. The other term, "artificial intelligence" is basically applied machine learning, which really isn't being applied to anything practical which is why the only thing my Google Home Mini is good at is toggling the lights in my bedroom, assuming it heard me the first time, and doing several other things that an alarm clock radio used to do.
At any rate, this was supposed to b a short notice of things being moved around. Instead it is turning into another blog post. (I probably should move this stuff to my Medium blog later.)