java

SystemD devops run and restart services

Getting an app to redeploy as fixes and upgrades are uploaded to a linux server For most webapps I oversee it is desirable to have a mechanism in place not only for having them start when the server reboots, but also to restart the app when I need to deploy an update or (most recently) a fix to the application.1 This process requires sudo access2 and five files for a full redeployment system3:

use different java version on your system

Some of my Clojure deployments are using our old deployment method, which uses immutant, but it’s deprecated and fails due to an old dependency requiring java 8-. So switch to java 18 like (assuming it’s installed) like this: sudo update-alternatives --config java Resources

Major Java-interop in Clojure

This project was for a class in which we submitted java. I wrote this Clojure code to produce a Java class that could be run according to their specifications. So here is some of the first Clojure I ever wrote, long ago in grad school, utilizing the OpenCV system for computer vision. Notice the heavy use of obscure (non-Clojurey) APIs on objexts, marked by all the (.XYZ ...) lines. (ns com.

Clojure app setup for Auto-deploy with raw systemd

REPLACED [2022-11-11 Fri] The below is hopefully informative, but it actually only causes a thing to deploy once and then to re-deploy on system restart. For instructions that ACTUALLY auto-deploy, see https://tech.toryanderson.com/2022/11/11/systemd-devops-run-and-restart-services/ Updated [2022-09-19 Mon] Fixed error in deploy script that occurred if trying to restart but nothing was in the docket Updated [2022-07-13 Wed] Enhanced the server-side deploy script to operate more transparently if files are missing.

Excellent thread: java vs c# for developer productivity

A classic thread that gives a mature and responsible consideration of such things as ecosystem and tooling. In particular appreciate Mikera’s answer respecting Java’s extensibility as the more open of the two, which has led to things like Groovy, Scala, and Clojure (though Clojure also has a CLR version, it’s being hosted on the JVM is one of its super-powers). https://softwareengineering.stackexchange.com/questions/51887/java-vs-c-productivity-perspective