It’s winter. Time to curl up with a good…list of tech links :) (What I find interesting in tech January 2024)

500Wow. I have not posted any tech links since last September. Needless to say, I’ve been doing alot of reading on the usual topics, from architecture and cloud to hardware and software. I’ve included many of them in the lists below. There’s a special shout out to COBOL of all things. Is there something on DOOM! in here? Of course there is. Let’s take a look….

Architecture: A mixed bag here, with some focus on enterprise architecture.

Cloud: a number of links on cloud object storage, plus more….

COBOL: COBOL is hot these days. Trust me.

Hardware: mostly but not exclusively on the Raspberry Pi….

Mainframe/middleware: still doing mainframe stuff, but I added on some middleware links….

Linux/Windows: mostly Linux but some of the other OS….

Software: another mixed bag of links…

Misc.:  For all the things that don’t fit anywhere else….also the most fun links….

Thanks for reading this!

The benefits you get running Ubuntu/Linux on an old computer and why you should get one

I am a big fan of usable old computers. After you read this, you will be too.

Currently I have an old Lenovo M57p ThinkCentre M series that was made around 2007 that still works fine and is running Ubuntu 20.04 (the latest version is currently 22.04, so this is very current). Not only that, but it runs well. It never crashes, and I can download new software on it and it runs without a problem.

Here are some the benefits of having such a computer:

  • it can act as my backup computer if I have a problem with my main work one. I can read my email at Yahoo and Google. If I need to, I can use things like Google sheets to be productive. I can download software to do word processing on it too. I can attend online meetings. Most of my day to day work functions can be done if need be.
  • it can act as a test computer. I was writing a document on how to use a feature in IBM cloud, but I needed to test it out with a computer other than my work machine (which has special privileges). This old machine was perfect for that.
  • it can also act as a hobby computer. I like to do things with arduinos and Raspberry Pi computers and the Lenovo computer is great for that.
  • it can help me keep up my Unix skills. While I can get some of that by using my Mac, if I had a Windows machine for work I would especially want to have this machine for staying skilled up.
  • it can do batch processing for me. I wrote a Python program to run for days to scrape information from the Internet and I could just have this machine do that while I worked away. I didn’t need to do any fancy cloud programming to do this: I just ran the Python program and checked on it from time to time.
  • It has lots of old ports, including VGA and serial ports. Will I ever need them? Maybe! It also has a CD-ROM drive in case I need that.

As for the version of Linux, I tend to stay with Ubuntu. There’s lots of great Linux distros out there, but I like this one. Plus most times when I come across online Linux documentation, I will find it has explicit references to Ubuntu.

Now you can buy an old machine like this online from Amazon or eBay, but if I can do this on a 15 year old computer, you likely can ask around and get one for free. A free computer that can do all this? The only thing that should be stopping you is how to get started. For that, you will need these Ubuntu install instructions and a USB drive.

Good luck!

P.S. The software neofetch gave the output above. To install it, read this: How do I check my PC specs on Ubuntu 20.04.3 LTS?

What I find interesting in Mainframes and CI/CD (tech update June 2023)

I’ve so many good pieces on IT, I’ve got to break them down into subcategories. Last month I’ve shared things on cloud tech. This month the focus is on mainframes and CI/CD (things I’ve been working on over the last year or more).

Mainframes: I’ve been doing work on mainframe modernization, which has me focusing on tools around that, among other things.

z/D&T is one of those tools. Here’s a good overview of it. Here’s a piece on deploying IBM mainframe z/OS application on AWS with IBM z/D&T. This is a good IBM zDT Guide and Reference. More on zD&T there. I like it.

DBB is another tool in use. Here’s an intro. Here’s something on using it to migrate data sets.

Not all these tools are IBM related. Endevor is another tool to study. Here’s something on how Endevor software ‘s change manager bridges enterprise git. Here’s something on mapping strategies using endevor bridge for git. How to create a package in Endevor and how to review and approve a package in Endevor review approve package. Also something on on Endevor pricing and setup.

Linux is kinda a tool (I guess?) on mainframes. This is a good explainer on Linux on IBM Z. More on IBM z linux here.

Finally, here’s a good article on mainframe modernization patterns. More on mainframe application modernization beyond banking from IBM. Still more on mainframe modernation. Also: using collaboration not migration to modernize your mainframe applications with the cloud.

CI/CD: I’ve also been focusing on work around CI/CD. So there’s been lots of work using Jenkins. Here’s a piece on how to create a ci/cd pipeline with kubernetes and jenkins. Also a tutorial for installing jenkins on IBM Cloud. Check out this tutorial on setting up a ci/cd pipeline with jenkins to deploy multi arch image on ocp on linuxone and x86. That was especially good.  Here’s something on  blue/green deployment with docker github and jenkins.

Here’s a side by side of github actions vs jenkins which should you consider. This helps if you want to know if you should use a jenkinsfile or not. Check out this good jenkins ci/cd review. More on Configuring a jenkins agent on openshift.  Here’s how to add z/OS to your jenkins build farm. This was a  good jenkins groovy tutorial.

Related to the Jenkins work is work around IBM’s Urbancode Deploy (UCD). Here’s A tutorial on ibm urbancode deploy. Another tutorial on how to build a pipeline with jenkins dependency based build on UCD. Something on how to integrate UCD with jenkins for continuous integration is here.

Lastly, here’s some things to consider re installing UCD. More on how integrate UCD and jenkins for ci/cd. Here’s what’s needed in terms of system requirements for UCD.

Finally, here’s some more on continuous testing in devops. More on ci/cd pipelines. And last, another mainframe tool for CI/CD:  Workflow.

 

 

 

 

 

Two additions to my github repositories: one for IBM Watson, one for monitoring Linux systems

I’ve recently added two repos to my github account:

The first one is some proof of concept code I wrote to demonstrate how to work with IBM Watson’s Tradeoff Analytics service using node.js

The second one is some sample code I have had for some time that does simple server monitoring of a Linux server.

There is no intellectual property involved in these repos: it is simple code based on documented code samples found in many places on the web.

For more details, see my Github landing page, here: blm849 (Bernie Michalik)

29 IT links to things I am working on or interested in: AI, Python, Netscaler, automation and more

Things I am interested in or working on these days: AI, WebSphere setup, Python, Twitter programming, development in general, configuring Netscalers, cool things IBM is doing, automation, among other things.

  1. If you have the AI bug and think you want to do some Prolog programming, you need this: What Prolog implementation to choose? What’s fastest? Compatibility?
  2. Deep Learning is hot in AI. If you want more info, this is good: Deep Learning Tutorials — DeepLearning 0.1 documentation
  3. Sigh. This debate never goes away in AI: Why AlphaGo Is Not AI – IEEE Spectrum
  4. More on the hysteria that AI brings: The founder of Evernote made a great point about why AI (probably) won’t kill us all – Vox
  5. Ignore most AI hysteria, but do read this: What does it mean for an algorithm to be fair? | Math ∩ Programming
  6. Want to whip up a quick mobile app? Consider: Mobile App Builder – new service now available – Bluemix Blog
  7. For power users, there’s: How to create an insane multiple monitor setup with three, four, or more displays | PCWorld
  8. Need virtual images? Take a look at this: Images | VirtualBoxes – Free VirtualBox® Images
  9. For hardcore WAS users, this is helpful: Installing optional Java 7.x on WebSphere Application Server 8.5 (Application Integration Middleware Support Blog)
  10. A classic. Anyone tuning WAS needs this: Case study: Tuning WebSphere Application Server V7 and V8 for performance
  11. Want to learn Python? Write your own Twitter client? Or do both? Then there’s this: How To Build a Twitter “Hello World” Web App in Python | ProgrammableWeb
  12. More on programming Twitter: How To Use The Twitter API To Find Events | ProgrammableWeb
  13. Nice little project to try, here: Create a mobile-friendly to-do list app with PHP, jQuery Mobile, and Google Tasks
  14. Creating Simple Responsive HTML5 and PHP Contact Form | Future Tutorials
  15. Setting up a Linux system? Then you want to read this: Most secure way to partition linux? – Information Security Stack Exchange
  16. Want to learn Linux? This is essential! IBM developerWorks : Technical library concerning Learning Linux
  17. If you are doing performance work on Unix, you will likely use vmstat. Even if you know vmstat, this is good to review: What to look for in vmstat – UNIX vmstat command
  18. Wow! OS/2 is still alive! OS/2: Blue Lion to be the next distro of the 28-year-old – Yahoo Finance
  19. Talk about old tech! This makes OS/2 seem fresh! It’s Insane that New York’s Subway Still Runs on This 80-Year-Old Switchboard | Motherboard
  20. I was doing some work on Netscaler and found this useful in comparing the set up of one Netscaler config with another: Export Netscaler Config – NetScaler Application Delivery – Discussions. This is also useful:  Netscaler 9 Cheat Sheet.doc – netscaler9cheatsheet.pdf
  21. I thought this was a good development for everyone interested in Node: IBM Buys StrongLoop To Add Node.js API Development To Its Cloud Platform | TechCrunch
  22. Alot has changed with IBM’s OpenPOWER. Forbes gets you up to date, here: IBM’s OpenPOWER: A Lot Has Changed In Two Years – Forbes
  23. Cool stuff here: Access your Docker-based Raspberry Pi at home from the internet · Docker Pirates ARMed with explosive stuff
  24. I was using Perl scripts on Linux to send me messages to my mobile device via Pushover. This was good for that: pushover Archives – Perl Hacks
  25. I was also using WinSCP for that and this helped: Scripting and Task Automation :: WinSCP
  26. For all those trying to succeed in IT but feeling you are running into ceiling, you should read this: Tech’s Enduring Great-Man Myth or this When It Comes to Age Bias, Tech Companies Don’t Even Bother to Lie | Dan Lyons | LinkedIn
  27. Linus Torvalds is always interesting, and this is especially good: Linux at 25: Q&A With Linus Torvalds – IEEE Spectrum
  28. Very cool! Particle | Build your Internet of Things
  29. And finally some links to good stuff on UML online: Multi-layered web architecture UML package diagram example, web layer depends on business layer, which depends on data access layer and data transfer objects.

How to Create Tarball & Compress to GZip Under Windows (.tar.gz) and why you should

If you are not familiar with Unix, then you might wonder why you would want to create tarballs and then gzip them. Recently I had a directory that was over 12 GB in size and I wanted to zip it up and send it to someone. By creating a tarball from it and then gzipping it, I was able to shrink it down to under 5 GB. That made it alot easier to send to the person.

Another reason to do this is you want to send a file from Windows to Unix. By compressing the file this way, you can be sure that the Unix user can uncompress it in a straightforward way.

For more on this, see:  How to Create Tarball & Compress to GZip Under Windows (.tar.gz) | Gettin’ Geek

A great little tutorial on MySQL that covers Windows, Mac OS X, and Ubuntu (Linux)…

…can be found at this link:

MySQL Tutorial – How to Install MySQL 5 (on Windows, Mac OS X, Ubuntu) and Get Started with SQL.

Even if you don’t know hardly anything about SQL or databases, you will find this helpful. It covers pretty much everything you need to know to get started, and it’s a great cheat sheet for people who have more experience but need to know a command format or get some other quick guidance.

Recommended.

P.S. It specifies Ubuntu, but if you are using other distros like CentOS you should still find it helpful.

VPN 101: what it is, how to set it up (quick links)

Here’s a collection of links on VPN, and VPN tunneling. Not authoritative, and not meant to endorse any one approach over another or even how to use the technology.

  1. Networking 101: Understanding Tunneling (obvious)
  2. Ensuring Network Security with a VPN (Virtual Private Network) – For Dummies
  3. VPN Tunnels Tutorial – Types of VPNS, Protocol & More (via About.com)
  4. What A VPN Tunnel Is & How To Set One Up (seems more oriented towards PCs than servers)
  5. How to Tunnel Web Traffic with SSH Secure Shell (oriented towards Linux servers)
  6. How to Set Up a Secure Web Tunnel | PCWorld (similar to #5)
  7. How to setup VPN server (PPTP on CentOS, RedHat and Ubuntu)? – Knowledgebase – PhotonVPS (if you want to set up a server)