Skip to content

Instantly share code, notes, and snippets.

View greghelton's full-sized avatar

Greg Helton greghelton

View GitHub Profile
@greghelton
greghelton / Install-Java-Devkit-and-Tools-on-Mac
Created May 20, 2025 19:45
Install the Adoptium Temurin JDK and other tools for the Java developer environment via Homebrew
Install homebrew per the instructions here: https://brew.sh/
brew install --cask temurin
brew install --cask intellij-idea-ce
brew install maven
brew install kotlin
@greghelton
greghelton / MS-SQL-Server-setup.md
Last active May 13, 2025 23:49
Setting up MS SQL Server in Docker on Mac.

% docker run --platform linux/amd64 -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=your-password"
-p 1433:1433 --name sqlserver -d mcr.microsoft.com/mssql/server:2022-latest

% docker ps

% brew install --no-quarantine mssql-tools

% sqlcmd -S localhost -U sa -P 'your-password'

The Lost Decades

A friend claims that software design evolved as an engineering disipline due to the move from waterfall SDLC (systems development lifecycle) to the agile project management process. He claims that the move from waterfall SDLC to agile methodology is what propelled application design from monolithic style applications to modular code that works with unit testing frameworks.

The first reference to SDLC dates to a 1968 software conference (https://en.wikipedia.org/wiki/NATO_Software_Engineering_Conferences) and ironically, waterfall SDLC was not proposed as a methodology that would succeed but rather it was presented as the antithesis of a workable methodology. His thesis is that methodology impacted the design of application code, pushing it from monolithic to modular. I too am interested in how the style of application code evolved from monolithic programs to modular code. Was it a top down movement driven by methodology or did programmers develop new goals for the code they wrote, going

@greghelton
greghelton / gist:83190267e657146b98b9985b9ea9c06d
Created July 1, 2024 20:37
Installing The Client After Installing Postgres DB
;; Some helpful commands
sudo mkdir /etc/paths.d
brew install libpq
brew install graphviz
;; if necessary
export PATH=/opt/homebrew/Cellar/libpq/16.3/bin:$PATH
createdb -h localhost
psql -h localhost
@greghelton
greghelton / make_python_talk.md
Last active September 14, 2023 19:08
Conda commands used in the book Make Python Talk

What is Anaconda?
(from wikipedia) Anaconda is a cross-platform distribution of the Python and R programming languages
for scientific computing that aims to simplify package management and deployment.

Conda is Anaconda's package management system.

To install Anaconda, go to https://www.anaconda.com/products/individual/
then choose the graphical installer and follow the instructions

Conda Command to Update Conda

@greghelton
greghelton / HelloFX.java
Created June 19, 2022 14:21
JavaFX Command Line Compile
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.shape.Circle;
import javafx.stage.Stage;
public class HelloFX extends Application {
@Override
public void start(final Stage stage) throws Exception {
@greghelton
greghelton / snowflakes.c
Last active January 4, 2022 02:24
This is my first solution to the snowflake problem given in the book Algorithmic Thinking. I am not a C programmer so read or use with caution.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <stdbool.h>
const int SIZEOFFLAKESARRAY = 2000;
static int flakes[SIZEOFFLAKESARRAY][6];
void makeSnowflakes() {
time_t t;
@greghelton
greghelton / build.xml
Last active June 18, 2021 04:22
Use Ant to create, populate and verify a H2 database.
<project name="h2db" basedir="." default="echo">
<property name="sqldriver.jar" value="lib/h2-1.4.200.jar"/>
<property name="url" value="jdbc:h2:~/h2db"/>
<property name="driver" value="org.h2.Driver"/>
<property name="userid" value="root"/>
<property name="password" value="root"/>
<target name="echo">
<echo>The targets that can be run are: </echo>
package com.example;
import org.slf4j.*;
import java.sql.*;
import java.util.stream.Collectors;
import org.apache.commons.collections4.*;
import org.apache.commons.collections4.multimap.*;
import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.ResultSetExtractor;
import org.springframework.beans.factory.annotation.Autowired;
package com.example;
import org.slf4j.*;
import java.sql.*;
import java.util.stream.Collectors;
import org.apache.commons.collections4.*;
import org.apache.commons.collections4.multimap.*;
import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.ResultSetExtractor;
import org.springframework.beans.factory.annotation.Autowired;