JulianLocals.com
Conform Not  Alt Tech  Hidden Art   This Is the Day They Give Pizza Away with Every Julian Baby #9pmMinute 

Answered Prayers  Coding Out Loud Blog  Bread  1st Millennium Genre  Purple Praise 

About  News  History  Newsletter  Give 

The Church in Julian  The Cwharantine Cafe  Missionary Marilyn '16  My Little Bible (2 inch) 
JulianLocals.com/92036

News (2023) - Holeman (Interlink Ministries)

Holeman (Interlink Ministries)

Archives

As the weeks and months go by, you can find our most current info here. Each update has a photo thumbnail (small picture links), tags (tiny round article category images), and text with links. The thumbnails expand either to a full size photo or to another page on the topic. The round tags help you quickly identify the scope of the article, so you can focus on the topic of most interest to you. The links within each article allow you to dive deeper if you want or just ignore them for a quick skim.

2023 - Updates


31Aug'23

I have been using Ratliff style braces for decades. I was first exposed to it in Software Tools which uses Ratfor over FORTRAN IV. In moving to Visual Studio Code Interactive Development Environment, I am working through the process of getting the reformatting feature to handle Ratliff style braces. It is not one of the out-of-the-box styles supported. I was able to use a regular expression to manually do the reformatting. I was working on making a VSCode extension to do this reformatting.

Ratliff style braces example:

int Foo(bool isBar) {
    if (isBar) {
        bar();
        return 1;
        }
    else
        return 0;
    }
        

When working through this process, I made an advance on this by moving the trailing braces to the end of the previous line. This improves the simple look by putting all of the braces to the far right. This makes all of the left side look like Python indents w/o any braces. This compacts the code and makes it look simpler.

Python style braces example:

int Foo(bool isBar) {
    if (isBar) {
        bar();
        return 1; }
    else
        return 0; }
        

With the handling of all of this by the IDE, and the improved compilers that catch errors that used to require more effort by the programmer, this piling of the braces on the end is not likely to make more errors pop up. Formally, the programmer needed to be able to easily match begin and end brace pairs. The formatting of the code by indenting and positioning of the braces was really important to help the programmer catch those errors. I had never even considered this formatting style.

Then I unexpectedly found that Astyle (formatting program) supports, what they call Python or Lisp style brace formatting.

I installed Astyle and it does the formatting! Then I found there is a VSCode extension for doing the formatting within VSCode. It works for C++ but not completely for CPP2 which is my current task. I do not know the path to making this work [prayer request].


31Jul'23

Created sub-system login & build scripts using Linux environment varibles (rather than the preferred logical names of VMS) for test Hellow World project for Herb Sutter's CPP2, new syntax for C++.

  • SRC - Source code for the project
  • IMP - Import from other projects (their EXP, exports)
  • TMP - Temporary content only in existence for the build, not accessable outside the project's build
  • EXP - Export artifacts available for other project's builds via IMP
  • TLS - Tools needed for the projects build

Directory structure:

TLS_CPPFRONT   /rose/ss/exp/cppfront
               └── cpp2util.h
               ~/work/hw
EXP_HW         ├── exp
               │   └── hw
SRC_HW         ├── src
               │   └── hw.cpp2
               ├── ssbuild.bash
               ├── sslogin.bash
TMP_HW         └── tmp
                   └── hw.cpp          
        


30Jun'23

In preperation for more code editting, I as setting up a Interactive Development Environment (IDE) using Microsoft's free Visual Studio Code, (VSCode).

VSCode uses a number of extensions to work with various lanugages and environments. I have installed these:


9May'23

I am moving down the path of using CPP2, new syntax for C++.

Can C++ be 10x Simpler & Safer? - Herb Sutter - CppCon 2022 video

Cppfront is an experimental compiler from a potential C++ 'syntax 2' (Cpp2) to today's 'syntax 1' (Cpp1), to learn some things, prove out some concepts, and share some ideas. This compiler is a work in progress and currently hilariously incomplete... basic functions work, classes will be next, then metaclasses and lightweight exceptions.

Herb has demonstrated that the new features reduce the bad bits of C++ by 90% to 98%. It allows the old code to coexist with the new. Here is a CPP2 hello world:

main: () = std::cout << "Hello, world\n";
Not only is the code cleaner and easier to write it prevetnts one from using numerous old C++ pitfalls.


11Apr'23

GPT Chatbot: Advanced AI Chat (ChatGPT) allows one to interact with the Google AI software.

ChatGPT is an artificial-intelligence (AI) chatbot developed by OpenAI and launched in November 2022. It is built on top of OpenAI's GPT-3.5 and GPT-4 families of large language models (LLMs) and has been fine-tuned (an approach to transfer learning) using both supervised and reinforcement learning techniques.

As with any software, people control what the program does. ChatGPT is a woke product of Google. Here is a simple example:

There is a real need for Christian based AI. I have limited knowledge here, so I am prodding the fundamentals of using of AI with C++23.


31Mar'23

Reviewed 93 episodes of Self-Hosted audio chat show targeted to those wanting to be cloud free in their software systems. This provided a significant collection of experience on the process of selecting, deploying, using and updating software from OSes to networking, applications and frameworks in addition to hardware.


10Feb'23

Modern Software Engineering: Doing What Works to Build Better Software Faster by David Farley

Before setting up developemnt environment, I wanted to get an update on software engineering ideas.

The book extends and solidifies the ideas in Scrum development which I have been using for a decade. In summary, the smaller the changes and the faster they are released to the user the quicker the feedback is available from the test and deployment steps which produce better software. They have data backing up this as producing better software than the older waterfall method of development.


30Jan'23

Changed Domain name registrar -- another step with Alt Tech, away from Big Tech.

Domain name registrar
  • Computers on the Internet have numerical addresses (IP Address) like 163.42.2.88 which work sort of like a phone for specifying who you want to connect with.
  • To make things easier, a Domain Name is used which get translated into the obtuse IP Address.
  • This introduces the issue of who manages these names. There are a number of authorized managers, Domain name registrar. One id dependent upon a registrar to get a name. You pay them an annual fee for this service.
  • The registrar ultimately controls each time a name is translated to the actual machine IP Adress which has been a simple technical process until recently, when some registars started adding politcal factors into the mix.
  • So, this now, is another dependency where a company can shut you down by the simple flip of bit in their systems.
Our case
  • Namecheap is the registar we have been using for years. We have had no technical issues with them until now.
  • In March of 2022 the head lines 'Namecheap ends service for Russian customers' got our attention. Regardless of our views on that war, Namecheap shows tht they will and are using their control to control customers.
  • Given Gab.com's experinces with political based shut downs imposed upon them then have a lot of practice at this process. So, we chose to follow them in their choice of registar, Epik.com.
Implementation details
  • To transfer ones doman name from one registar to another, there procedures that need to be followed.
  • The owner of the domain name must request a code from the existing registar which then must be given to the new registar to endable them to prove that the real owner of the domain name wants the transfer to happen.
  • The button on the namecheap was not easily found. I tried to make the request.
  • This process failed numberous times. The feedback was noot clear. There where several factors causing this. Though their system could catch the problems there was no explicit details given for my case.
  • They would simply send a long email that covered so many topics that one had to just poke and try. Several contact info field where fine for them until we wanted to to the transfer.
  • There was a lock on transfers which had to be unlocked which is not the same as an actual transfer request.
  • There was a privacy lock that also had to be released.
  • Again each of these step were hndled w/o explicit feedback a the error.
  • Emails and chats with their support people where polite on the surface but w/o useful content.
  • Finally after requesting seveal tinmes that a 'rush' be put on the tranfer and stumbling onto the nagic term needed fr the to put a live human on the phone, the transfer was done.
  • The process took weeks. There is no real positive for them when you transfer out, so that is to be expected.
Conform Not  Alt Tech  Hidden Art   This Is the Day They Give Pizza Away with Every Julian Baby #9pmMinute 

Answered Prayers  Coding Out Loud Blog  Bread  1st Millennium Genre  Purple Praise 

About  News  History  Newsletter  Give 

The Church in Julian  The Cwharantine Cafe  Missionary Marilyn '16  My Little Bible (2 inch) 
julianlocals.com/news-2023 Content updated: Tue, 20Aug'24 21:11pm EDT