#+SETUPFILE: ../../../template/level-2.org
#+TITLE: Another Refactoring
#+DATE: <2021-08-28 Sat 13:17>
#+AUTHOR: vaeringjar
#+EMAIL: vaeringjar@land
#+DESCRIPTION: A brain dump and some plans.
#+KEYWORDS: blog ssg


* Professionalism in Software Engineering

I actually started writing this post several weeks ago. I wanted to
write something about professionalism in software engineering, compare
and contrast Uncle Bob with Jim Coplien, discuss convenient agism
against programmers at any age whenever it suits the agressor, and
where professional software engineering actually sits on the steam
specturm. I've watched and read much about these two over the years. I
think these three videos sum up most of their points.

Jim Coplien and Bob Martin Debate TDD
circa 2007
https://www.youtube.com/watch?v=KtHQGs3zFAM

What went wrong with the IT-industry? - James Coplien
circa 2017
https://www.youtube.com/watch?v=gPP7Bleg214

The Future of Programming Languages at the Confluence of Paradigms
circa 2020
https://www.youtube.com/watch?v=ya1xDCCMh7g


* Blog refactoring

I started working on a new ssg. Although I like using org to build my
blog, I decided I wanted something compatible with the existing
markdown-based websites I steward. So I started working on
fenrisg[fn:fenrisg] which uses pandoc instead or org-mode. I still
plan on using org format, though, fenrisg works with both.


* Snippets

In other news, I've decided to consolidate all my stale repositories
into my_experiments[fn:my_experiments]. I also plan on moving all my
snippets in there, but for now, I'll make it a habit of holding on to
them and pasting them into my blog posts as I go along.


** sorting in emacs

Sometimes it gets old mucking around with the variables. I started
looking this one up, but I haven't actually added it to my
dotfiles. [fn:sorting-in-emacs]

#+BEGIN_SRC lisp
(defun sort-lines-nocase ()
  (interactive)
  (defvar sort-fold-case)
  (let ((sort-fold-case t))
    (call-interactively 'sort-lines)))
#+END_SRC


** ignoring noise in irssi

#+BEGIN_SRC text
/ignore -channels #channel * JOINS PARTS QUITS NICKS
#+END_SRC


** turn off "word wrap"

#+BEGIN_SRC text
toggle-truncate-lines
#+END_SRC


** colour in bash

I come back to this all the time. [fn:colour-in-bash]

The tput option works great, but on remotes when running scripts,
sometimes one will get the error:

tput: No value for $TERM and no -T specified


** bash here-docs

Writing CLIs in Python with argparse and automatically generating
usage/help prompts puts getopts to shame.

https://tldp.org/LDP/abs/html/here-docs.html


* Footnotes
  :PROPERTIES:
  :CUSTOM_ID: footnotes
  :CLASS: unnumbered
  :END:

[fn:fenrisg] [[https://notabug.org/vaeringjar/fenrisg][fenrisg]]
[fn:my_experiments] [[https://notabug.org/vaeringjar/my_experiments][my_experiments]]
[fn:sorting-in-emacs] [[https://stackoverflow.com/questions/20967818/emacs-function-to-case-insensitive-sort-lines][sorting-in-emacs]]
[fn:colour-in-bash] [[https://stackoverflow.com/questions/5947742/how-to-change-the-output-color-of-echo-in-linux][colour-in-bash]]
