Lately I've been looking into front end development because it is what I am currently engaged in at work. I mostly just know a little front end development from messing with MySpace back in the day, and playing with my own current website. I was thinking of getting into Vue.js for development but now it looks like angular1.7 is what i have to use at work and so with that im learning how to do angular which im meh about. I plan to make more changes to the homepage such as a long scrolling sectioned document instead of the floated panel that i currently have, and maybe include more images, we'll see. I also want to flesh out more of the leather working page as that will be my website staging place for my business. Don't even get my started on my consulting page, i don't even know what i'm going to be doing with that.
Speaking of my business, I happened to get a great deal and purchased a leather sewing machine so i can ramp up production and lower prices for my customers. I plan to do an unboxing video of it when it arrives, but i will be posting more (i hope) on my Business Youtube Page. I also have a podcast tonight with Brodie Robertson that will be uploaded to his podcast page Tech Over Tea So that should be a fun experience.
Lastly i had a lot of fun developing it when i found a template but im happy with how my terminal business card came out once CURL'd and if you'd like to curl it and see it you can run this command and see how it looks:
curl -sL bit.ly/2zvxUbd | sh
You can check out the video on the terminal business card [HERE]
This was a fun little project spurred on by my compulsive need to refresh my subscriber count on YouTube. Now i can thankfully just look at my status bar instead of having to open a browser to get the information. This was all accomplished but using curl to get the html of my YouTube channel page, then using grep to pull out the line with subscribers on it and then using awk a couple times to parse and pull out that specific value.
It was a fun quick project that allowed me to make another custom block, but it also was driven by a practical purpose. Constantly inspiring to see the crazy stuff that bash and the command line can accomplish.
When I found out about NewsBoat I was immediately interested in the possibilities it presented. I was never too familiar with RSS feeds or what they were but after seeing recommendations on the Art of Manliness blog, and seeing what could be done with NewsBoat I began to get hooked on the idea of minimalist web content consumption. Fast forward and almost a year into using this Arch Linux system, I am still learning a lot every day, but I dove in deeper into NewsBoat configuration and functionality and now I am really happy with where I'm at and where I see myself going with this.
Now in my NewsBoat url's file I have all my twitter feeds, sub reddits, YouTube channels, blogs, academic journals, you name it! I now have everything in NewsBoat and with some of the macros and the mappings I'm able to consume all my media through NewsBoat completely in the terminal and with minimal programs so that I don't have to rely on a web browser 100% of the time.
Through this process of growing into using NewsBoat for all of my media consumption, I found that I was actually being picky-er about what I invested my time in and that I didn't get trapped in the recommendation algorithms so much or get caught by click bait nearly as often. One thing I like is that with YouTube I managed to easily convert all of my subscriptions to NewsBoat subscriptions from a single exported XML document that I cleaned and formatted with several Vim macros. I made a whole video/post on this process which you can read/watch [HERE].
I have spent a good chunk of time messing with the NewsBoat configuration and I finally have things in a good place to just leave them alone and enjoy them for now with minor additions here and there. I do hope you'll check out the video on this topic which can be viewed on YouTube [HERE] and it will premier on May 6th 2020 at 0700.
Sun, 03 May 2020 21:54:28 -0700
Getting All YouTube Subscriptions Into Newsboat easily with Vim magic
In my video on getting YouTube subscription RSS links into NewsBoat (which can be found [HERE]) I show how I saved myself loads of time by simply taking advantage of built in Vim behavior (macros) to easily structure and format almost 200 RSS feed links in a way that would work to be pasted into the NewsBoat URLS file and be good to go upon refresh.
This whole idea came from my own struggle of trying to do this on my windows machine when I was preparing to transition fully to this Linux system. I was barely halfway through before giving up due to frustration. Now I can simply run a few macros and I'm all set. It literally took me only a few minutes to hammer out the necessary macros, format my posts and prepare everything for a simple cut/paste and then I was off to the races. I have been getting heavily into NewsBoat content and documentation lately and this was one of the big things that keeps me in the browser, watching YouTube videos. Now I can do it with NewsBoat and mpv, and I don't get sucked into the recommendations algorithm or see any ads.
Highly recommend moving entirely to NewsBoat, it will change your life and how to consume digital content, and hopefully the video will help make that transition all the easier.
The video will premier on Tuesday May 5th 2020 at 0700
I started using GHI for managing my GitHub issues a few days ago and already it's proving to be an invaluable tool. GHI will allow you to open, close, edit, comment, label, and more! GitHub issues from whatever GitHub repo you're currently in, inside your local file system. There is a little bit of configuration i.e. running a single command and not committing your ~/.gitconfig to version control, but once done it's all seamless. GHI is installed through a couple ways but I just did gem install ghi and that did the trick.
I recently had my fla.sh project reviewed by Brodie Robertson and the review yielded a lot of good feedback, so to make sure I got all the feedback down I started making new issues in the repo to follow up on when I had some time. To keep watching the video and make new issues in real time, I simply just opened a terminal window next to the browser and used ghi open to start a new issue. New issues open in you $EDITOR so Vim for me, and the first line would be the title of the issue, and the subsequent lines are the body of the issue and with this program you can still take advantage of GitHub flavor markdown to have most of the essential features of GitHub issues that you know and love.
Needless to say I am thoroughly enjoying this program and I intend to make heavy use of it in the days to come. It is now occupying a central place in my GitHub work flow.
You can check out my review of the tool [HERE] when it premiers on Monday May 3rd 2020 at 0700
Sun, 03 May 2020 15:02:59 -0700
Ligatures and Emoji in the Suckless Simple Terminal
I decided to finally mess around with the Suckless Simple Terminal ST, and add the latest work from luke smith to get color emoji support in ST. I forked Luke's repo, then installed the necessary dependency libxft-bgra for the emoji's and we were off to the races.
Next I sudo make install so I had the latest build of ST from Luke with the emoji support and then I made a branch on the repo to test out the ligatures before committing to the change. Next I manually did the patch as there was a diff made for the patch but knowing how much stuff Luke put into his build of ST I didn't want to deal with the headache of dealing with merge conflicts so I just manually added the code to the repo. I also had to install a new C library called harfbuzz and add that in.
With all these items added I ran sudo make install again and tested out the feature and lo and behold.... I didn't have ligatures.... WTH... So I remembered that I was using Inconsolata for my font and I needed a font with ligature support. This turned out to be FiraCode But I didn't like the serifs on FiraCode so what I did was install JetBrainsMono-Regular as my font of choice and I couldn't be happier with the result. So to finish it off I ran sudo make install one more time, tested, aaaaaand we have ligatures. I have ligatures in Vim too because Vim is in the terminal, and now that I have the font in as well and figured out installing fonts onto Linux, I now also have ligatures in VSCode and RStudio. It was a journey, but I'm happy with this new build of ST and with my manually added in patch for ligatures I decided to have my own repo put up Here.
Ultimately I think I will end up learning C and/or C++ for writing terminal things, for faster functions in R and just the new dimension of programming, when I do I'll probably look at ST's code for learning and so it will help me learn how to modify my terminal more.
This weekend i had planned to continue to read more data science research papers & journals but then I managed to wander into the RStudio website and watched some of the talks from RStudio::conf 2020. I went down a rabbit hole and picked through the last 4–5 years and was up until 3am watching talks about Rproject templates, LaTeX templates, parameterization of RMarkdown documents, and how academics are using this medium to automate and ease their lives. I also watched a few on shiny.
Now, I feel its worth stating that I've bounced around several languages over the years just hopping around and learning the basics caught in tutorial hell but mostly just curious about everything and how different layers of software work. Now i think i'm finally settling on where i want to really put my time, energy, and focus. I have absolutely fallen in love with R and data science. I'm absolutely in love with writing R code and using RStudio to create packages, documents, analyze my data set, etc. I love R for many reasons, one is that it managed to keep my interest long enough and deeply enough that ive managed to get an ok level of skill with it. I like writing R. The next major factor was that the amount of effort it takes to create a decent looking, and somewhat useful product with R/Rmarkdown is so minimal it floored me. RMarkdown is one of the greatest things in the world to me, I do everything with it.
Watching these RStudio::conf videos inspired me to continue on this path, i LOVE R and I've already spent hundreds of dollars on books about R and im subscribed to several news letters, i've followed #rstats on twitter, I even have my own package on CRAN now. All of this is so exciting to me because i want to be really good at R but i also want to be able to use it for a practical purpose; i want to be good at data science. In learning R, using the RMarkdown medium, watching Luke Smith's videos, and seeing everyone on #rstats with PhD's, It's been ongoing for almost a year, but i want to return to school now and learn more about statistics and data science, this inspiration even has me learning about calculus when in school i was just not very motivated and kind of did well, but only because i was trying to just get schooling over with and get to work. Now im inspired to take my learning to the next level and apply these skills to production environments and real life business use cases. Life is very exiciting for me right now and im so inspired to continue learning.
So today I finally sat down and got some of my backlogged TO-DO items done. One of these tasks was to create a new page on my website categorically listing out my 'works' both project based and those that I create with code i.e. software.
I went through most of my major or really useful projects and used what code I had on the site as it was and put together a fairly decent looking page. i also made some cosmetic changes to the home page and tidied a few things up.
Work has been super busy with a lot of new learning leaving me fairly tired and with little motivation to study, but I do plan to try to return to school this fall and apply my knowledge and experience to the academic process. I was dabbling with python a bit lately and even made a small sample project with it, but after reflecting on things and realizing my true interests, I think I'm going to continue deep diving into R and become the best R developer I can. I'm very interested in data science and statistics and want to continue my path into research. Currently I work as a Research Data Analyst II for my state agency, I want to continue performing research and learning everything I can about everything that interests me.
At work I have been refining my skills through application in several languages: R, CCL, & T-SQL I have several R books to read but also recently I made my first my first true R package complete with comprehensive documentation, semantic versioning changelog, 50+ unit tests, implemented with Travis CI, and most importantly; it got published to CRAN!. I'm very excited about R things these days and im even trying to push for it at work, but we'll see how that goes, but it is a language I really enjoy writing in, and I love the products it can easily produce. So hopefully more R content to come on my youtube channel!
If you'd like to try out my R package then simply run these commands: install.packages("runes") then library(runes) and finally: runes("hello world!"). Hope you all are well, and have a good night.
So i've had a lot of projects going on lately but im very excited about them. First i've been loading a lot of new content to youtube namely a lot of videos on RMarkdown, but now i have another new series coming out. My new series on youtube at this playlist: HERE. This playlist focuses on comprehensive reviewing of functionality as well as real applications of the functions in the packages so they can immediately be used.
Im very excited by these projects becase i LOVE talking about R and by teaching about the packages it acutally causes me to learn more so i understand the material being presented.
At work i've basically written a book with the R package Bookdown on a proprietary computer language we use, but beyond that project and some one off assignments i've mostly been devoting my time, resources, and money to learning more R. I have spent almost $200 on R books lately and im learning more about the language every day. I have even developed my own R package at work for use in our assignments. Complete with Roxygen2 documentation, testthat unit tests, and more. It has been a blast.
Lastly I got a bit obsessed with putting elder futhark nordic runes into my terminal emulator: ST. After figuring out that ST supports UTF–8 i changed my linux $PS1 variable to show my terminal prompt user and host name in elder futhark runes. Now, me knowing that this was possible didn't stop there. No, i wrote a shell script that can read standard input and even a whole file and with tests and a lot of piped sed regex functions i can convert whole files to runes. Now i can work on being able to read them as well as english haha. If this script and the project interest you or you want to check them out, you can do so At This Link Thats all the updates i have right now, keep your eyes on my youtube and github for content :)
So i absolute adore RMarkdown and recently i noticed a golden opportunity for me to contribute something to LARBS, this meta distribution of Arch Linux that i use and adore. I noticed that when compiling RMarkdown documents to pdf that the conversion through pandoc was very verbose and in Luke's compiler script that it simple runs an R function that renders the RMarkdown document that i looked into it and that function call in R has a quiet=TRUE option which reduced the verbose messaging from pandoc down to just 3 lines. I put in a pull request and these changes were merged into master within a few hours. it felt really good to actually be able to contribute something back to this system i use and love so much, as well as finally having a real code project where i was able to contribute code instead of just issues to a repo. I talk about this in my video HERE.
In some of my other videos i have shown myself launching applications in the terminal but shell scripts i wrote to launch and disown the parent processes from the terminal window. I had a youtube subscriber/person ask me why i didnt just use DMENU to launch the applications.... I didn't know you could do that... though i should have guessed... so i tried it, and it works for everything, i just activate DMENU and type the name of my program and it finds the executable nad run it. So much easier than my previous process.
Im actually learning to love the code snippet functionality of vim quite a lot.
The power of vim is that fingers are always on the keyboard and that the language of vim i.e. the thought that diw inside vim is delete inner word makes it powerful to incorporate these actions of text and word objects while simultaniously creating code snippets and modification of the code through these actions.
This really came in handy with inserting images in RMarkdown instead of using the markdown syntax for image insertion that i for some reason seem to have such trouble with.
So today marks the day when i decided to pretty much do a video series on RMarkdown. I love RMarkdown as the medium for a variety of things in my daily life namely:
Data Analysis (EDA) Documents
HTML Wiki Documents with the tabsets
A Flexible Jupyter like document with multi-lang support
LaTeX support without the bloat or learning curve
Bib file support for references when i cite sources
Great looking documents with minimal effort and code
The benefits go on and on. I cannot stop raving about RMarkdown I was using LaTeX to take some research notes on a viking burial and archeological site in York, but quickly just the syntax to make a bullet list is maddeningly long:
Thats just crazy right?! just to make a bullet list when in markdown type documents all you need is some dashes:
Im sure that once you reach the realm of complex thesis and dissertation writing, scientific journaling, or other high level, large volume publication type work that the specific skill set of LaTeX will become essential, but more most intents and purposes i find that RMarkdown can suffice for all my needs to not only GREAT looking documents, but can act like a jupyter notebook, can cite references with a bib file, and has limitless levels of customization and flexibility.
All of this fails to mention the R packages:
These packages allow you to create long documents, even whole books, with all the power and customization of RMarkdown. Sure there may be some niche areas and edge cases where LaTeX just cannot be beat, but RMarkdown also supports LaTeX sytax and math equations so until you reach the highest levels of technical need for LaTeX, RMarkdownREALLY can seem to do it all for you and take you very far with a lot less of a learning curve and more approachable and less overwhelming syntax and list of options.
Also this brings up the fact that many books on R and RMarkdown are free and open source online, and give a very user friendly approach into the world of RMarkdown.
For the video this post is related to, you can watch it HERE
So i've been watching some of Luke's videos on LaTeX and was writing some notes i was taking on a book about a viking excavation site and their findings exclusively in LaTeX. So this document is all about viking leather work and since i also run a leather working business and perform as a viking at local renaissance faires, i want my skit as a merchant to be time period correct leather work.
I Digress, i was writing all my pertinant findings in LaTeX and as far as i had gotten i liked it well enough, but Luke was right, it is a hefty install, and the learning curve is steep. There are a few things like macros in LaTeX i cant really imagine replicating at this point, but for most of my purposes, ill probably never need them.
So after watching more of Luke's LaTeX videos i re-watched his videos on RMarkdown. Now i LOVERMarkdown, it's one of my favorite things to use not only at work, but also at home, and were i to return, at school. RMarkdown make note taking, documentation, data analysis and reporting, and much more SO much easier. Once i saw Luke talking about how with pandoc-citeproc that the same power of a bib/bibber file for LaTeX can be replicated seamlessly in RMarkdown and pretty much all the benefits of LaTeX i figured there's really no reason to use anything else. So i moved my notes over to RMarkdown and i plan to use it for pretty much everything for ever.
Given my love for RMarkdown i planned to do some videos on it, and i finally got around to writing my ideas out on various topics i could cover on RMarkdown, and it turns out its like 16 ideas so far, so there will be a lot of RMarkdown vidos to come in the future.
Those that know me know that to keep my ADHD in check, i need/use a variety of task management strategies.
It used to be post it notes everywhere, and a bullet journal, and to a point a lot of these things were very effective for me and to some degree or in some form i still make use of them.
But what about a comprehensive task management system for complicated projects, or multiple projects, with timeframe, dependencies, notes on tasks, or links to additional resources, burndown reports, or other types of reports, and most of all, in the command line, using just text in the terminal, that is both user friendly, and in an exportable data format and not a proprietary one? Enter TaskWarrior. This program is a behemoth of complexity but can be used simply. There is a plethora of functionality and unlimited possibilities for workflows that you can do with task warrior and it is a Great tool for more complicated project management.
With taskwarrior you also have the option of having extentions added to the program to extend the functionality of the program and in my case one such program i use frquently is called taskopen i use this to change the notes on the tasks to open markdown documents as the annotations so that each task can include a whole page of notes or more, and beyond markdown if you set the annotation to a URL taskopen will open the link in our default browser. The combo of taskwarrior with taskopen was a game changer for me.
Now with all that firepower sometimes with that increased complexity comes increased distraction which is what happened in my case. Taskwarrior is great but it was a little much for my daily chore and errand list and what other little items i wanted to deal with. It would have been better suited for a work environment for me personally. A program that does however fit my more basic needs in this regard is taskell its a task management program written in haskell, and it provides the ability to manage your tasks in a way that i like best: Kanban. So taskell is an ncurses based terminal application that is driven by a single markdown document, (though it is possible to use trello as a back end, only to populate the board initially) and have your tasks displayed in the kanban swimlanes.
Using Vim keybindings you can move, delete, update, undo, etc. to each of your tasks. Tasks can have due dates, sub tasks, & descriptions. It's just a more visual way of displaying and managing the tasks and information i need to quickly process and complete.
So thats what i use primarily for my task managment day to day, Taskwarrior, and taskell, you can watch my video about these programs here: Task Management Video.
So my website has suddenly just come together this weekend, out of a mix of boredom, insomnia, and my hyper focus gone awry, so i now finally have a home page up, with the LB script i also finaly have a blogging system in place that is light weight enough to be managable and have me post regularly on it, and as the posts continue i can continue to play with my c3.js chart.
im highly enjoying the blog post writing with LB and intend to continue to use it more with my code discoveries, as well as my youtube videos and general blathering
So i found neomutt and in general all things command line/terminal/larbs/linux, through Luke Smith and i have come to adore neomutt.
Neomutt makes my email so much easier to manage while on the same point making its faster, and minimizing my distraction with it because its just a text based application in the terminal so i dont get slowed down by loading internet resources or tracking cookies, and im more likely to just write my email and get on with my life. It's a kind of forced simplicity through digital minimalism.
One thing i love most about neomutt is the Vim keybindings that work well with this whole system and realm of things, but also how easy it is to just pop into an email, open something, move something, delete something, etc. It's just another addition of efficiency in my life using text based terminal applications with Vim keybindings.
I do notice that i personally have issues opening images with neomutt, im not sure what the problem is with that yet, but thus far it hasn't really effected or bothered me too much because i dont do a lot of email image viewing. I have made a youtube video on neomutt, and you can find that here: Neomutt Video
Life is better in the terminal, and the more i use this system, the more i like it.
So i have a video coming out soon on youtube about the program tellico, and with this FOSS program, im able to keep collections of items like a collection of books and their details. This program being FOSS the data isnt held in a proprietary format and im even able to export it to HTML and with this i took what styling the default export format had on it, reverse engineered it into SASS code and changed the colors to fit my website theme and so now i have a filterable, sortable table of my books in my library all on my site now.
This is one of those hacky text based projects that once you work out the kinks, REALLY makes you appreciate Vim and general text editing tools. this just saved me a ton of time and manual work, and once i update my library in tellico i can just copy a paste a few lines of code over for the nav bar and some style sheet references and im good to go!
So i finally got around to looking into Luke's LB script for blogging on a custom website like his. I gotta say that it IS so much nicer to use that script than doing what i was doing before...
Before LB this was my process:
Write a draft post page
Add preview page to the blog roll
Add post to the blog index
Add post to the rss.xml document
and all of this occurred in any order, it was a hassle and a waste of brain processing power to keep having to think in so many directions with all the file interations.
I read the readme, and edited the shell script and this very first post is made with the LB shell script, and im already in love with it! i think i'll make a youtube video on it soon.
Sun, 08 Dec 2019 16:55:27 -0800
Rust, Clang, Python, Oh My!
It's been a bit, i promise that i was intending to post more often than this but i've had a lot going on, as im sure most do during the holidays. So i have been playing around with C, Rust, & Python...See More
Tue, 2019 Dec 3rd, 06:27 GMT-8
So ive decided to start a blog on this website, and talk about my various doings and interests. To start, what am i currently up to?...See More