About Anthony Mattson

If you want to know more, read my About section.

Ever Evolving

Something I try my best to embrace and keeping looking towards is to constantly evolve. While have loose ideas about what I want to document, I’ve been constantly changing my mind and making tweaks to this sight.

Well, it’s time to evolve once again. While I have been continuing to try and define myself as a programmer/developer, I’ve been finalizing what elements I want to focus on. Technology is ever expanding, but if I can’t find some amount of focus, I’ll have a much more difficult time finding my place.

On that note, I am planning to focus my attention towards C#, .NET, HTML5/CSS, SQL, and GIT. While quite a nice spread of tech, all of these work hand-in-hand. Not required, but all things I’m already familiar with, but lacking expertise. With this, I plan on updating this blog once again to help track my individual projects.

Just a quick teaser, one of these projects is I’m working on my own Discord bot written in C#. Also mulling the idea of my own site I build from scratch using ASP.NET Core Bazor.

VS Code, the Ultimate Open Source Editor

Between work and school at the moment, my progress through the HTML5/CSS3 learning course in YouTube has been slow, but I’m making progress. While most of what I’ve learned is what I already know, there have been some new concepts I have not touched yet such as HTML Forms. However, one item I’ve been learning a lot more about has nothing to do with HTML5 or CSS3. It is Visual Studio Code.

Now, I’ve been technically using Visual Studio Code for a few years now, just never to the extent of how I’m now using to write my web code for the HTML5/CSS3 course. I’ve used it somewhat for helping write SQL queries and saving a local copy of a C# class/method I’m working on. However, this is the first time I’ve really started using it with extensions beyond the language support. A few great extensions that I’m using for web design, but I’ve started using for my C#, are Bracket Pair Colorizer 2 and indent-rainbow. I can’t say how often I’ve spent more time trying to match brackets and fix mismatch indents then actually writing code. For web design, I’m also using Highlight Matching Tag, Live Server, and Prettier – Code formatter. Live Server is honestly extremely simple, but a heck of a time saver when making page edits and not having to constantly reload pages. Prettier isn’t exactly necessary as I do feel getting into a better formatting habit is more ideal, I’m not perfect and overlook indents from time to time. Just nice to make sure I have a more consistent format without to much fuss. Although none of these are necessary, they make coding so much nicer.

My latest fun with VS Code has to do with Microsoft finally bringing it to Raspberry Pi. I’ve been sitting on a Raspberry Pi 3 for a while now not really knowing what to do with it. With my decision to start focusing on web development, I figured why not use as a lightweight web server. Now, I can use VS Code on my Raspberry Pi to help work on site code. Set it up with SSH, VNC, VS Code, and Apache2. Not sure what kind of site I’ll try to build first, but now I’ve got a perfect lightweight Linux testing environment to play around with. If I don’t want to VNC into the Pi, I just found out that I can use VS Code on my desktop to remote into my Pi’s file system to also edit files over SSH with the Remote Development extension. Granted, I don’t think you need the entire Remote Development extension as you can get the individual components, but I figured why not. Just need to play around with it more, but I’ve already setup a connection and it really nice. Side note, I kept getting this error when trying to connect initially: Resolver error: The process tried to write to a nonexistent pipe. Found a nice fix on Stack Overflow that worked perfect for me.

In all, I really feel that Visual Studio Code really is the ultimate open source editor. It’s free and has one heck of an extension library. Also, you can get it across Windows, OSX, and Linux. If you are looking for a good editor that you can also use for code development, I strongly recommend giving Visual Studio Code a shot.

2021 New Years Resolution

I’m a little late on this, but better late than never. For 2021, my goal is make sure I’m practicing my programming skills. Either by taking some training courses or just fiddling with personal projects. Noticed with 2020, I was dealing with depression which was really impacting my motivation. Still dealing with depression, but wasting my time isn’t doing me any favors. As another personal project, I finally started to learn how to play the guitar. Nothing to do with development, but I realized how much learning how to play the guitar was helping me feel more motivated.

Taking that same idea, I remember seeing a 100 Days of Code challenge on Twitter last year. Not going to necessarily commit to 100 days of coding specifically; but I’m going to work on fitting in some coding each week whenever I find myself just wasting time (which is quite a bit of time at the moment still). Something I did happen to catch while reading some of the posts was a link to Learn HTML5 and CSS3 From Scratch – Full Course YouTube training course shared via freeCodeCamp.org. I know I said I’m going to focus on C#; but considering I want to do web development, I need to also make sure I have a solid grasp of HTML and CSS for that front-end development. Won’t do me any good if I’m proficient in the back-end development if I don’t actually have a site to showcase anything.

The video is 11 hours and 30 minutes, so not going to blow through in one sitting. Just going to break it up into smaller sessions. Fortunately, the video itself is from a course that was originally broken up into small parts, and the the first pinned comment breaks up the timestamp for each section start. Will most of this is all a refresher so far, never hurts to re-review the basics to make sure I have them down. Made it through the first 15 parts today so far. I might watch more tonight; but if not, there is tomorrow. Just as long as I’m working on them consistently.

Final Year of School and Finding My Groove

Well, after way to many years, I’m finally look at my last year of college. Barring any major hiccups, I’ll finally have my bachelor’s by next December. It has been a long and slow road, but glad I’m finally seeing the light at the end of the tunnel. As for next steps, it’s time for me to start figuring out what I really want to do.

To be honest, the degree I picked, Web Development and Administration, was originally because that was the degree I was closest to getting without having to retake any classes. What I didn’t expect, was that I would like the field quite as much as I did. I also figured out that I’m stretching myself way to thin. There is so much I want to play with and so much I want to do, I have so many ideas, I have no idea where to start. I seemed to have forgotten a lesson I learned when I was first working towards my degree. Learning to program at its core isn’t about master one or two languages. There’s nothing wrong if you do though. Ultimately, at least for me, it is about understanding what programming is at its core. The ability to break down complex tasks into simple to follow instruction sets, and then translate them in such a way a computer can understand them. Sure, I’m over simplifying it a bit, but it helps remind me that there is no point in overloading myself.

Ultimately, every program language accomplishes the same thing. Tells a computer what you want it to do. The big difference is the syntax between each language. It all comes down statements, loops, functions/methods, variables, arrays, etc.. Just depending on the language, dictates how you write it out or go about it. In Python, you just name your variables and use them. No need to specify what they are. Java, C++, C# you declare what your variable are when you create them (yes, yes, C# has var which can be anything, but you still have to include it when defining it). Also, some languages work better then others for certain tasks. You can write a video game in Python or C#; but it isn’t uncommon for major studios to use C++. Why, C++ gives you some added flexibility with optimizing your code to maximize the games performance. In turn, C++ can be more difficult to grasp. Python on the other hand was made to be easier to understand then C++ and more approachable. Does that mean if you learn one, you can’t learn the other? If you understand programming is all the same at it’s core, no. Just means you have to rethink how to accomplish certain tasks. Like declaring your variable types (something that constantly throws me off with Python).

So while I’m trying to learn them all, I’m not dedicating the time to really learn any of them. So, going forward, I’m going to focus on C# as my go to language. I can use it for .NET web applications and desktop applications, like video game. Then, if I ever need to switch gears, just need to remember that I know how to program. I just need to understand the new syntax and remember to be flexible in my way of thinking.