Adventures & experiences in contemporary technology
Much of what you find here once got strewn around the LinkBlog and Data Science Directory pages because I have taken to trying out new computing languages. R, Python and Julia were among those that were new to me, and I am curious about Go too. My way of learning often involves trying out things and finding out possible approaches from the web. This collation comes from those ongoing efforts. More may follow them.
20:33 October 2, 2024
22:23 September 26, 2024
22:20 September 26, 2024
16:10 September 26, 2024
14:24 September 25, 2024
21:45 September 22, 2024
21:54 September 3, 2024
22:27 August 25, 2024
21:58 August 15, 2024
20:47 April 17, 2024
15:20 March 14, 2024
16:59 February 26, 2024
16:29 February 2, 2024
22:26 January 31, 2024
23:19 January 29, 2024
19:53 July 4, 2023
09:33 May 12, 2023
14:01 May 11, 2023
17:14 April 25, 2023
14:51 April 23, 2023
11:06 April 15, 2023
11:06 April 15, 2023
11:05 April 15, 2023
11:04 April 15, 2023
19:21 March 19, 2023
19:20 March 19, 2023
13:52 March 9, 2023
11:44 February 20, 2023
14:28 February 12, 2023
18:20 February 10, 2023
14:04 February 8, 2023
10:32 February 7, 2023
10:31 February 7, 2023
10:30 February 7, 2023
10:29 February 7, 2023
10:28 February 7, 2023
16:37 February 5, 2023
16:36 February 5, 2023
16:35 February 5, 2023
16:34 February 5, 2023
23:47 February 3, 2023
23:46 February 3, 2023
23:44 February 3, 2023
23:43 February 3, 2023
23:42 February 3, 2023
23:41 February 3, 2023
How to run command or code in parallel in bash shell under Linux or Unix
23:39 February 3, 2023
23:28 February 3, 2023
17:55 January 20, 2023
11:31 January 20, 2023
13:18 November 30, 2022
11:38 November 21, 2022
09:57 November 21, 2022
18:14 November 19, 2022
17:00 October 27, 2022
09:40 October 24, 2022
09:39 October 24, 2022
The JSON LIBNAME Engine: Real-World Applications Using Open APIs
09:37 October 21, 2022
09:35 October 21, 2022
09:25 October 14, 2022
LEAVE and CONTINUE: Two ways to control the flow in a SAS DO loop
11:57 October 12, 2022
14:04 October 3, 2022
14:03 October 3, 2022
14:03 October 3, 2022
09:38 October 1, 2022
09:37 October 1, 2022
Linux / UNIX: Bash Script Sleep or Delay a Specified Amount of Time
12:05 September 29, 2022
12:05 September 29, 2022
15:14 September 28, 2022
17:01 September 27, 2022
17:00 September 27, 2022
12:41 September 16, 2022
18:06 August 24, 2022
18:05 August 24, 2022
11:54 August 20, 2022
Using Pandas with Python Decimal for accurate currency arithmetic
13:10 August 18, 2022
12:56 August 13, 2022
15:34 July 29, 2022
15:33 July 29, 2022
15:33 July 29, 2022
18:33 July 21, 2022
15:54 July 8, 2022
09:02 July 1, 2022
16:23 June 16, 2022
16:22 June 16, 2022
16:22 June 16, 2022
16:21 June 16, 2022
14:35 June 15, 2022
14:55 April 27, 2022
10:21 April 4, 2022
10:20 April 4, 2022
19:30 March 27, 2022
20:59 March 18, 2022
15:13 March 9, 2022
15:24 March 8, 2022
14:35 March 7, 2022
07:55 February 28, 2022
09:15 February 24, 2022
11:07 February 21, 2022
11:06 February 21, 2022
16:33 February 18, 2022
11:06 February 18, 2022
10:39 February 18, 2022
15:48 February 16, 2022
09:30 February 8, 2022
22:06 January 29, 2022
22:05 January 29, 2022
22:05 January 29, 2022
22:03 January 29, 2022
22:03 January 29, 2022
15:19 January 22, 2022
21:09 January 16, 2022
14:22 January 16, 2022
14:13 January 16, 2022
14:01 January 16, 2022
5 Julia Projects for Beginners — Easy Ideas to Get Started Coding in Julia
13:58 January 16, 2022
17:52 January 14, 2022
18:22 January 13, 2022
15:45 January 12, 2022
09:02 January 12, 2022
13:16 January 11, 2022
12:15 January 10, 2022
12:08 January 10, 2022
Top 7 Best R Shiny Books and Courses That Are Completely Free
12:06 January 10, 2022
How renv restores packages from r-universe for reproducibility or production
12:04 January 10, 2022
13:58 January 8, 2022
13:18 January 8, 2022
09:49 January 8, 2022
New features in DataFrames.jl 1.3: Part 1
New features in DataFrames.jl 1.3: Part 2
New features in DataFrames.jl 1.3: Part 3
15:41 December 25, 2021
15:39 December 25, 2021
Tips to create beautiful, publication-quality plots in Julia
14:38 December 25, 2021
11:39 December 25, 2021
DTable – an early performance assessment of a new distributed table implementation
18:08 December 24, 2021
18:07 December 24, 2021
17:54 December 24, 2021
17:38 December 23, 2021
13:58 December 23, 2021
13:56 December 23, 2021
13:55 December 23, 2021
10:34 December 23, 2021
10:31 December 23, 2021
11:45 December 12, 2021
17:07 December 10, 2021
17:05 December 10, 2021
17:01 December 10, 2021
16:58 December 10, 2021
13:38 December 7, 2021
16:54 December 2, 2021
14:45 November 30, 2021
16:04 November 29, 2021
15:15 November 28, 2021
15:13 November 28, 2021
15:12 November 28, 2021
15:10 November 28, 2021
15:10 November 28, 2021
15:09 November 28, 2021
DataFrames.jl: why do we have both subset and filter functions?
15:08 November 28, 2021
15:08 November 28, 2021
15:07 November 28, 2021
15:06 November 28, 2021
15:05 November 28, 2021
15:04 November 28, 2021
15:03 November 28, 2021
15:02 November 28, 2021
08:58 November 26, 2021
08:57 November 26, 2021
08:57 November 26, 2021
11:55 November 25, 2021
16:14 November 18, 2021
16:12 November 18, 2021
08:13 November 18, 2021
14:53 November 17, 2021
12:18 November 10, 2021
08:55 November 2, 2021
How To Add Labels to Grouped Barplot with Bars Side-By-Side in R?
12:47 October 21, 2021
SAS Problem Note 31278: Table 1 node generated by PROC REPORT
18:24 October 5, 2021
14:14 October 5, 2021
19:20 October 1, 2021
12:44 September 30, 2021
13:27 September 29, 2021
13:36 September 27, 2021
19:10 September 26, 2021
09:13 September 22, 2021
14:24 September 20, 2021
14:03 August 26, 2021
Using SYSTASK and SAS macro loops for massively parallel processing
21:31 August 24, 2021
21:30 August 24, 2021
21:29 August 24, 2021
21:27 August 24, 2021
10:58 August 23, 2021
18:18 August 22, 2021
18:27 August 17, 2021
18:27 August 17, 2021
How to Sort Output of ‘ls’ Command By Last Modified Date and Time
12:45 August 16, 2021
11:17 August 16, 2021
10:31 August 13, 2021
10:47 August 9, 2021
14:10 August 4, 2021
SAS OnDemand for Academics: Working with Python, including Jupyter Notebook
09:02 August 4, 2021
09:02 August 4, 2021
JuMP | JuMP is a modeling language and supporting packages for mathematical optimization in Julia.
14:12 July 26, 2021
10:26 July 21, 2021
14:57 July 15, 2021
Get image size (width, height) with Python, OpenCV, Pillow (PIL)
14:56 July 15, 2021
09:32 July 15, 2021
09:31 July 15, 2021
09:15 July 15, 2021
How to conditionally stop SAS code execution and gracefully terminate SAS session
09:14 July 15, 2021
09:14 July 15, 2021
09:11 July 15, 2021
12:01 July 13, 2021
08:22 July 12, 2021
Adding lines or other geoms to a plot in ggplot by calling a custom function
12:36 July 11, 2021
12:34 July 11, 2021
09:27 July 11, 2021
09:26 July 11, 2021
4 tricks you should know to parse date columns with Pandas read_csv()
09:26 July 11, 2021
13:12 July 8, 2021
18:19 July 5, 2021
09:04 July 5, 2021
19:26 July 4, 2021
09:31 July 3, 2021
16:54 July 2, 2021
16:48 July 2, 2021
09:26 June 27, 2021
16:44 June 25, 2021
14:49 June 25, 2021
12:37 June 24, 2021
12:36 June 24, 2021
12:15 June 24, 2021
12:14 June 24, 2021
12:44 June 23, 2021
16:22 June 21, 2021
16:58 June 15, 2021
16:49 June 11, 2021
Problem Note 41684: RTF output appears truncated when a very long text string spans multiple pages
10:53 June 11, 2021
Adding a Column to a Pandas DataFrame Based on an If-Else Condition
11:37 June 9, 2021
16:37 June 3, 2021
13:57 June 3, 2021
09:10 June 3, 2021
09:10 June 3, 2021
09:09 June 3, 2021
11:25 May 28, 2021
11:23 May 28, 2021
11:22 May 28, 2021
11:18 May 28, 2021
11:17 May 28, 2021
11:16 May 28, 2021
11:15 May 28, 2021
11:13 May 28, 2021
11:12 May 28, 2021
11:11 May 28, 2021
11:10 May 28, 2021
11:09 May 28, 2021
11:08 May 28, 2021
11:06 May 28, 2021
11:05 May 28, 2021
11:05 May 28, 2021
11:04 May 28, 2021
11:01 May 28, 2021
10:52 May 28, 2021
10:33 May 28, 2021
Pandas Groupby: Summarising, Aggregating, Grouping in Python
10:17 May 28, 2021
10:16 May 28, 2021
Customize Dates on Time Series Plots in Python Using Matplotlib
10:15 May 28, 2021
10:09 May 28, 2021
10:08 May 28, 2021
10:07 May 28, 2021
10:07 May 28, 2021
10:06 May 28, 2021
10:05 May 28, 2021
10:04 May 28, 2021
10:03 May 28, 2021
09:50 May 28, 2021
09:49 May 28, 2021
09:03 May 27, 2021
Sample 24820: Creating a Directory Listing Using SAS for Windows
09:17 May 19, 2021
Python Data Wrangling Solutions — Dynamically Creating Variables When Slicing Data Frames
13:52 May 16, 2021
13:48 May 16, 2021
13:45 May 16, 2021
% Macro Core -- Production Ready Macros for SAS Application Developers
13:44 May 16, 2021
13:39 May 16, 2021
13:17 May 16, 2021
Create a nice looking table using R
17:02 May 13, 2021
15:43 May 13, 2021
15:25 May 13, 2021
15:24 May 13, 2021
11:22 May 12, 2021
11:17 May 12, 2021
11:16 May 12, 2021
11:15 May 12, 2021
11:08 May 12, 2021
11:07 May 12, 2021
11:07 May 12, 2021
11:05 May 12, 2021
11:03 May 12, 2021
11:01 May 12, 2021
10:50 May 12, 2021
10:48 May 12, 2021
How to Check if a File or a Directory exists in R, Python and Bash
10:46 May 12, 2021
10:42 May 12, 2021
10:42 May 12, 2021
17:02 May 11, 2021
17:02 May 11, 2021
17:01 May 11, 2021
How to fix common problems in output from SAS ODS Graphics procedures
17:12 May 10, 2021
17:05 May 10, 2021
09:43 May 5, 2021
09:14 April 2, 2021
14:14 March 12, 2021
Using SAS with Microsoft 365 (OneDrive, Teams, and SharePoint)
14:02 March 9, 2021
14:00 March 9, 2021
13:59 March 9, 2021
10:52 March 3, 2021
18:43 March 2, 2021
18:41 March 2, 2021
How to create stunning visualizations from scratch using Python
18:39 March 2, 2021
13:53 January 27, 2021
13:01 January 27, 2021
10:56 December 31, 2020
20:47 December 6, 2020
17:17 November 28, 2020
17:15 November 28, 2020
13:07 November 27, 2020
20:24 October 20, 2020
14:08 October 14, 2020
10:43 October 4, 2020
11:08 September 25, 2020
09:36 September 17, 2020
09:16 September 17, 2020
08:53 September 17, 2020
13:44 July 13, 2020
10:25 June 29, 2020
12:32 February 25, 2020
12:31 February 25, 2020
12:30 February 25, 2020
11:26 February 25, 2020
11:16 February 25, 2020
22:20 February 24, 2020
13:02 February 17, 2020
21:42 November 16, 2019
14:14 November 5, 2019
14:13 November 5, 2019
11:54 November 4, 2019
10:13 November 4, 2019
10:12 November 4, 2019
16:24 October 18, 2019
16:22 October 18, 2019
15:41 October 18, 2019
20:02 September 6, 2019
13:03 August 31, 2019
20:25 August 29, 2019
20:23 August 29, 2019
20:22 August 29, 2019
20:22 August 29, 2019
14:30 June 8, 2019
09:05 May 18, 2019
14:43 January 22, 2019
How to change your working directory for SAS with the DLGCDIR DATA step function
16:45 January 16, 2019
Working with Dates and Times Using the ISO 8601 Basic and Extended Notations
11:25 January 15, 2019
Have you created Scalable Vector Graphics with SAS?
Creating SVG (Scalable Vector Graphics) Files Using Universal Printing
14:19 December 20, 2018
18:58 December 10, 2018
15:19 October 4, 2018
15:28 October 2, 2018
Summary of SAS Macro Quoting Functions and the Characters They Mask
17:11 September 8, 2018
17:50 September 3, 2018
17:09 August 10, 2018
17:07 August 10, 2018
Five things you (probably) don’t know you can do with a hash table in SAS
22:37 June 28, 2018
Summary of SAS Macro Quoting Functions and the Characters They Mask
09:58 May 28, 2018
10:42 May 8, 2018
10:36 May 8, 2018
20:01 October 16, 2017
20:00 October 16, 2017
19:59 October 16, 2017
19:55 March 21, 2017
18:23 January 31, 2017
17:51 January 27, 2017
Sample 35864: Change line colors and styles for PROC SGPLOT output
11:23 November 14, 2016
19:06 September 22, 2016
22:20 March 1, 2016
10:38 February 10, 2016
SAS trick: get the LIBNAME statement to create folders for you
10:36 February 10, 2016
10:19 February 5, 2016
Usage Note 38339: SAS® file compatibility when upgrading from 32-bit to 64-bit Microsoft Windows
The top gotchas when moving to 64-bit SAS for Windows
Migrating from 32-bit SAS to 64-bit SAS
Migrating to a 64-bit operating system: Quick pointers
Converting SAS Formats from 32-Bit to 64-Bit
Excuse Me; But, Is That a 32-Bit or a 64-Bit SAS Catalog?
Handling SAS Formats Catalogs across Versions
Proc Migrate: How to Migrate Your Data and Know You’ve Done It Right!
20:41 January 30, 2016
12:14 November 30, 2015
11:15 July 24, 2015
09:24 June 12, 2015
Flag an item without associating a date
Excel import from Word: Extracting data from merged cells in a Word 2010 Table using VBA
01:55 March 5, 2015
17:06 December 9, 2014
LIBNAME Statement Syntax :: SAS/ACCESS 9.3 Interface to PC Files: Reference
15:17 November 14, 2014
19:14 November 8, 2014
There are times when I just need to share some links outside the fleeting environment of Twitter, and this is where they might appear. The practice is very much in the spirit of the original weblog idea when it was about link sharing and not about writing down one’s thoughts as it subsequently became before sharing of photos, videos and other multimedia content became a mainstay of (legal) sharing for some people.
22:22 September 26, 2024
21:46 September 22, 2024
21:43 September 22, 2024
22:32 September 13, 2024
22:47 September 12, 2024
23:18 September 11, 2024
23:39 August 29, 2024
18:03 August 27, 2024
18:02 August 27, 2024
20:34 August 26, 2024
Installing and Configuring LAMP on Ubuntu 22.04 with Ansible
20:33 August 26, 2024
18:08 August 26, 2024
21:46 August 25, 2024
21:45 August 25, 2024
21:44 August 25, 2024
21:42 August 25, 2024
11:59 August 14, 2024
15:08 August 8, 2024
17:34 January 21, 2024
17:32 January 21, 2024
17:33 January 16, 2024
17:59 January 15, 2024
17:58 January 15, 2024
17:58 January 15, 2024
13:23 January 15, 2024
18:44 January 14, 2024
22:33 January 8, 2024
22:20 January 6, 2024
13:32 January 5, 2024
21:47 December 23, 2023
How to stop websites from sending Bitdefender Safepay notifications
18:19 December 18, 2023
18:18 December 18, 2023
16:33 December 18, 2023
22:26 November 19, 2023
19:02 November 10, 2023
19:14 November 9, 2023
23:04 October 20, 2023
20:26 July 31, 2023
So you want to build your own open source ChatGPT-style chatbot…
16:42 July 31, 2023
16:37 July 31, 2023
16:33 July 31, 2023
19:52 July 4, 2023
09:32 May 12, 2023
16:30 March 17, 2023
13:42 March 15, 2023
19:35 March 14, 2023
13:15 March 10, 2023
Set Up SSH Two-Factor Authentication (2FA) on Debian 11 Server
13:51 March 9, 2023
10:25 March 6, 2023
WordPress 4.6 Admin Font Change Fix – How To Restore Open Sans Font?
10:24 March 6, 2023
20:14 February 24, 2023
20:11 February 24, 2023
14:35 February 24, 2023
01:31 February 20, 2023
01:31 February 20, 2023
Why is the Filter Gallery Greyed Out in Photoshop and How to Fix it
10:18 February 7, 2023
11:00 January 27, 2023
How to take a full-page screenshot with a hidden Chrome shortcut
14:53 January 23, 2023
15:52 January 19, 2023
10:15 January 12, 2023
10:12 January 12, 2023
18:08 January 10, 2023
18:08 January 10, 2023
18:07 January 10, 2023
18:06 January 10, 2023
17:12 January 10, 2023
Proton Mail Bridge Microsoft Outlook for Windows 2019 setup guide
08:07 January 4, 2023
22:39 December 4, 2022
10:50 December 2, 2022
21:48 November 22, 2022
10:00 November 21, 2022
09:59 November 21, 2022
14:29 November 18, 2022
14:08 November 14, 2022
15:17 November 1, 2022
19:51 October 29, 2022
How to Upload or Download Files/Directories Using sFTP in Linux
19:50 October 29, 2022
19:49 October 29, 2022
17:00 October 27, 2022
[FIX] Memory integrity due to Incompatible drivers cannot be enabled in Windows 11
19:20 October 25, 2022
How can I redirect and rewrite my URLs with a .htaccess file?
13:49 October 25, 2022
How to change the maximum number of IMAP connections in Mozilla Thunderbird
20:49 October 23, 2022
18:06 October 23, 2022
13:46 October 23, 2022
11:49 October 22, 2022
11:49 October 22, 2022
Secure Tutanota desktop clients for Linux, Windows and Mac OS
11:48 October 22, 2022
11:47 October 22, 2022
11:47 October 22, 2022
How to Access the Hidden Symbols on Your Android Phone’s Keyboard
08:43 October 22, 2022
10:31 October 13, 2022
Enable or Disable Automatic Sign-in at Startup in Windows 11
10:25 October 13, 2022
13:25 October 12, 2022
12:03 October 12, 2022
11:52 October 12, 2022
4 Ways to Embed User Privacy & Data Security in Your Business
11:48 October 12, 2022
11:47 October 12, 2022
11:47 October 12, 2022
11:47 October 12, 2022
11:46 October 12, 2022
11:45 October 12, 2022
11:45 October 12, 2022
11:44 October 12, 2022
11:44 October 12, 2022
11:43 October 12, 2022
11:42 October 12, 2022
11:40 October 12, 2022
11:40 October 12, 2022
11:39 October 12, 2022
11:38 October 12, 2022
11:37 October 12, 2022
11:37 October 12, 2022
11:36 October 12, 2022
11:33 October 12, 2022
09:46 October 12, 2022
09:30 October 12, 2022
Introducing Improvements to the Opt-Out Form Feature in Matomo
14:14 October 11, 2022
17:51 October 3, 2022
12:06 September 29, 2022
15:01 September 28, 2022
10:58 September 15, 2022
How to automatically decline meeting invites from specific people in Outlook
10:46 August 25, 2022
16:06 August 20, 2022
15:34 July 29, 2022
15:32 July 29, 2022
15:32 July 29, 2022
12:02 July 28, 2022
12:01 July 28, 2022
10:57 July 27, 2022
10:57 July 27, 2022
10:56 July 27, 2022
10:55 July 27, 2022
10:55 July 27, 2022
18:39 July 26, 2022
18:38 July 26, 2022
18:37 July 26, 2022
18:36 July 26, 2022
18:35 July 26, 2022
18:35 July 26, 2022
18:34 July 26, 2022
18:34 July 26, 2022
09:16 July 25, 2022
19:03 July 22, 2022
What is a Cloud-Native Application Protection Platform (CNAPP)?
17:43 July 21, 2022
17:40 July 21, 2022
14:20 July 21, 2022
17:47 July 20, 2022
How to set rsync speed limit from eating all bandwidth with ‐‐bwlimit option
17:47 July 20, 2022
09:20 July 14, 2022
09:03 July 11, 2022
09:05 July 1, 2022
09:00 July 1, 2022
14:05 June 29, 2022
14:05 June 29, 2022
11:05 June 29, 2022
16:43 June 26, 2022
13:26 June 26, 2022
How to Reduce Eric Jones Spam (and all the other Contact Form Spam)
12:43 June 26, 2022
12:42 June 26, 2022
12:41 June 26, 2022
12:40 June 26, 2022
19:36 June 25, 2022
17:13 June 24, 2022
15:32 June 20, 2022
14:13 June 14, 2022
Handling False Positives with the OWASP ModSecurity Core Rule Set
11:10 June 14, 2022
How To Use a Multimeter to Measure Voltage, Current and More
13:11 May 26, 2022
13:10 May 26, 2022
15:36 May 9, 2022
14:53 April 27, 2022
19:28 March 27, 2022
19:27 March 27, 2022
20:25 March 17, 2022
15:22 March 16, 2022
09:10 February 26, 2022
Show Amount Of Posts, Pages, Categories, Tags, Comments For WordPress Themes
09:09 February 26, 2022
How to Develop a WordPress Theme from Scratch – Beginners Guide
09:08 February 26, 2022
Count the number of posts in the custom post type in WordPress
09:41 February 23, 2022
09:41 February 23, 2022
20:59 February 22, 2022
18:54 February 22, 2022
10:19 February 22, 2022
21:24 February 21, 2022
21:24 February 21, 2022
18:52 February 18, 2022
18:51 February 18, 2022
18:51 February 18, 2022
18:50 February 18, 2022
How To Configure Apache HTTP with MPM Event and PHP-FPM on Ubuntu 18.04
16:45 February 18, 2022
Protecting WordPress with Open Source Web Application Firewall ModSecurity
14:35 February 16, 2022
14:35 February 16, 2022
09:32 February 16, 2022
09:26 February 15, 2022
18:56 February 14, 2022
How To Configure Nginx to Use Custom Error Pages on Ubuntu 14.04
09:24 February 14, 2022
19:42 February 13, 2022
19:42 February 13, 2022
19:41 February 13, 2022
13:02 February 13, 2022
08:55 February 13, 2022
08:54 February 13, 2022
08:53 February 13, 2022
How To Install Linux, Nginx, MySQL, PHP (LEMP Stack) on Ubuntu 18.04
09:03 February 11, 2022
09:03 February 11, 2022
09:02 February 9, 2022
20:35 February 8, 2022
20:34 February 8, 2022
20:33 February 8, 2022
10:02 February 8, 2022
09:59 February 8, 2022
09:57 February 8, 2022
09:57 February 8, 2022
09:56 February 8, 2022
09:55 February 8, 2022
09:54 February 8, 2022
09:54 February 8, 2022
09:53 February 8, 2022
Talkyard with Nginx as a reverse proxy and Letsencrypt for HTTPS
09:53 February 8, 2022
09:52 February 8, 2022
To Fix The Docker and UFW Security Flaw Without Disabling Iptables
09:51 February 8, 2022
09:47 February 8, 2022
09:47 February 8, 2022
09:46 February 8, 2022
09:46 February 8, 2022
Comments on a static website? That’s possible with utteranc.es!
09:39 February 8, 2022
09:37 February 8, 2022
09:35 February 8, 2022
09:29 February 8, 2022
09:29 February 8, 2022
15:35 February 5, 2022
15:34 February 5, 2022
Tutorial: How to Add Self-hosted Comments to Your Static Site
15:33 February 5, 2022
15:32 February 5, 2022
15:31 February 5, 2022
10:30 February 5, 2022
16:16 February 4, 2022
16:12 February 4, 2022
16:01 February 4, 2022
16:00 February 4, 2022
15:59 February 4, 2022
Build a Search Bar for Your Hugo Blog With a JSON Index and Some Vanilla JS
15:59 February 4, 2022
15:58 February 4, 2022
15:56 February 4, 2022
15:56 February 4, 2022
15:55 February 4, 2022
15:54 February 4, 2022
21:54 January 29, 2022
21:54 January 29, 2022
21:20 January 29, 2022
How the Bootstrap 4 Grid Works
This also helps with understanding Bootstrap 5 as well. That was something that I discovered while porting a website from WordPress to Hugo.
21:14 January 29, 2022
21:13 January 29, 2022
21:12 January 29, 2022
21:04 January 29, 2022
How to Open Link in New Tab with Hugo’s new Goldmark Markdown Renderer
21:04 January 29, 2022
21:03 January 29, 2022
21:02 January 29, 2022
21:02 January 29, 2022
21:01 January 29, 2022
21:00 January 29, 2022
Overview of the best commenting systems for your static website
11:55 January 27, 2022
11:54 January 27, 2022
11:52 January 27, 2022
11:50 January 27, 2022
11:49 January 27, 2022
11:49 January 27, 2022
11:48 January 27, 2022
11:48 January 27, 2022
11:47 January 27, 2022
09:00 January 24, 2022
18:16 January 23, 2022
18:16 January 23, 2022
18:15 January 23, 2022
18:14 January 23, 2022
08:36 January 23, 2022
How to upgrade Debian 10 to Debian 11 Bullseye using the CLI
08:32 January 23, 2022
15:51 January 22, 2022
15:17 January 22, 2022
11:13 January 22, 2022
11:12 January 22, 2022
11:12 January 22, 2022
11:11 January 22, 2022
11:11 January 22, 2022
11:06 January 22, 2022
11:05 January 22, 2022
10:48 January 22, 2022
11:07 January 20, 2022
13:00 January 19, 2022
15:14 January 18, 2022
13:55 January 16, 2022
18:22 January 13, 2022
13:17 January 8, 2022
18:12 January 2, 2022
18:12 January 2, 2022
18:11 January 2, 2022
17:59 December 24, 2021
17:04 December 10, 2021
16:56 December 10, 2021
10:07 December 9, 2021
10:05 December 9, 2021
13:47 December 7, 2021
11:36 December 2, 2021
15:11 November 30, 2021
14:44 November 30, 2021
18:55 November 29, 2021
[Postfix] – warning: mail_queue_enter: create file maildrop Permission denied
14:52 November 17, 2021
14:42 November 17, 2021
08:16 November 17, 2021
09:05 November 13, 2021
13:18 November 9, 2021
13:18 November 9, 2021
09:01 November 5, 2021
How to Enable clipboard and folder sharing in Qemu/KVM on Windows Guest
08:59 November 5, 2021
08:50 November 5, 2021
“Error 1067: The process terminated unexpectedly” on Windows 10, 7 & 8
16:38 November 4, 2021
Error: No CurrentVersion entry in Software/JavaSoft registry
10:00 November 4, 2021
20:40 November 2, 2021
20:38 November 2, 2021
20:37 November 2, 2021
20:37 November 2, 2021
13:43 November 2, 2021
How to Change the Default Browser in Windows 11, Even for Widgets and Search
How to Move the Taskbar to the Top in Windows 11
How to Replace the Start Menu in Windows 11
13:57 October 30, 2021
20:09 October 26, 2021
16:15 October 26, 2021
16:15 October 26, 2021
16:14 October 26, 2021
17:09 October 24, 2021
17:09 October 24, 2021
17:08 October 24, 2021
How To Convert VirtualBox Disk Image (VDI) and img to Qcow2 format
17:08 October 24, 2021
17:07 October 24, 2021
17:06 October 24, 2021
21:07 October 22, 2021
How to Enable HTTP/2 in Apache Web Server on Ubuntu and Debian
10:29 October 21, 2021
10:29 October 21, 2021
15:46 October 19, 2021
How to Run Windows 11 on a USB Drive (and Take it With You)
How to Bypass Windows 11’s TPM Requirement and Upgrade from Windows 10
13:12 October 12, 2021
15:31 October 8, 2021
15:30 October 8, 2021
15:29 October 8, 2021
Enable Virtualization-based Protection of Code Integrity in Microsoft Windows
15:28 October 8, 2021
18:25 October 5, 2021
17:05 October 5, 2021
11:47 October 2, 2021
11:46 October 2, 2021
19:21 October 1, 2021
13:26 September 29, 2021
14:48 September 28, 2021
15:14 September 25, 2021
Whitelist an IP using WAF -- ModSecurity Whitelisting IP addresses
10:59 September 25, 2021
14:56 September 24, 2021
14:56 September 24, 2021
09:03 September 24, 2021
09:03 September 24, 2021
09:02 September 24, 2021
09:02 September 24, 2021
13:07 September 23, 2021
13:06 September 23, 2021
13:06 September 23, 2021
09:10 September 23, 2021
09:09 September 23, 2021
17:09 September 22, 2021
17:08 September 22, 2021
17:07 September 22, 2021
17:07 September 22, 2021
09:12 September 22, 2021
16:22 September 21, 2021
08:35 September 20, 2021
Integrating AbuseIPDB with Fail2Ban -- Automatically Report Bad IPs
21:10 September 19, 2021
21:09 September 19, 2021
13:24 September 17, 2021
12:19 September 4, 2021
09:46 September 4, 2021
16:58 August 31, 2021
How to backup and load Cron Jobs from a File in Linux and UNIX? Crontab Command Example
16:58 August 31, 2021
14:19 August 27, 2021
14:19 August 27, 2021
08:46 August 18, 2021
18:26 August 17, 2021
18:26 August 17, 2021
18:25 August 17, 2021
Webmin: One big drawback to using this data centre management tool
10:32 August 13, 2021
18:09 August 12, 2021
18:05 August 12, 2021
How to prevent the “are you sure you want to leave this page?” prompt on Facebook?
18:05 August 12, 2021
Extending a Logical Volume on a Linux Virtual, Cloud or CloudNX server
11:41 August 11, 2021
11:41 August 11, 2021
11:40 August 11, 2021
18:00 July 27, 2021
17:59 July 27, 2021
17:59 July 27, 2021
19:07 July 24, 2021
11:03 July 23, 2021
Change user password in MySQL 5.7 with “plugin: auth_socket”
11:03 July 23, 2021
How to enable AMD Virtualization on the Aorus X570 Motherboard
09:30 July 15, 2021
08:04 July 15, 2021
18:09 July 13, 2021
08:16 July 13, 2021
13:58 July 11, 2021
08:36 July 8, 2021
08:35 July 8, 2021
15:40 July 6, 2021
09:28 July 3, 2021
09:06 July 2, 2021
10:13 July 1, 2021
How to install Windows 11 Insider preview on unsupported devices
14:55 June 28, 2021
13:30 June 24, 2021
23:47 June 5, 2021
16:38 June 3, 2021
13:27 June 3, 2021
10:02 June 1, 2021
11:00 May 28, 2021
10:59 May 28, 2021
10:58 May 28, 2021
10:58 May 28, 2021
10:57 May 28, 2021
dbxcli: A command line tool for Dropbox users and team admins
09:00 May 27, 2021
08:58 May 27, 2021
08:57 May 27, 2021
How to stop loading Microsoft Edge processes at startup on Windows 10
13:50 May 16, 2021
13:49 May 16, 2021
13:46 May 16, 2021
13:42 May 16, 2021
09:34 May 13, 2021
09:33 May 13, 2021
10:47 May 12, 2021
17:01 May 11, 2021
16:55 April 22, 2021
16:54 April 22, 2021
16:48 April 22, 2021
16:48 April 22, 2021
16:47 April 22, 2021
16:46 April 22, 2021
14:19 April 22, 2021
10:02 April 22, 2021
10:00 April 22, 2021
10:00 April 22, 2021
11:37 April 16, 2021
11:37 April 16, 2021
11:36 April 16, 2021
11:33 April 16, 2021
11:32 April 16, 2021
11:30 April 16, 2021
11:30 April 16, 2021
11:29 April 16, 2021
11:29 April 16, 2021
11:16 April 16, 2021
12:52 April 15, 2021
12:59 April 13, 2021
13:08 April 8, 2021
09:42 March 17, 2021
09:09 March 16, 2021
09:08 March 16, 2021
14:06 March 9, 2021
18:38 March 2, 2021
13:48 January 27, 2021
13:46 January 27, 2021
13:39 January 27, 2021
13:38 January 27, 2021
13:37 January 27, 2021
13:35 January 27, 2021
13:34 January 27, 2021
Connecting to Microsoft Exchange Calendar from Mozilla Thunderbird
13:03 January 27, 2021
11:10 January 10, 2021
11:09 January 10, 2021
11:08 January 10, 2021
11:07 January 10, 2021
11:07 January 10, 2021
09:26 January 7, 2021
09:41 December 17, 2020
Using mod_security2 with WordPress
WordPress – Mod_security problems with posts and comments fixed
17:59 December 14, 2020
17:46 December 12, 2020
20:54 December 6, 2020
20:53 December 6, 2020
14:51 November 23, 2020
How to force your computer to download the Windows 10 May 2020 Update
14:44 November 11, 2020
16:00 November 10, 2020
09:18 November 9, 2020
09:27 October 19, 2020
14:16 October 18, 2020
09:31 October 18, 2020
13:36 October 10, 2020
16:12 October 7, 2020
14:59 October 7, 2020
10:55 October 6, 2020
15:15 October 1, 2020
14:03 September 29, 2020
14:02 September 29, 2020
12:36 September 18, 2020
12:35 September 18, 2020
12:34 September 18, 2020
12:33 September 18, 2020
Everything you need to know about DNS -- Plus a list of free public DNS servers
12:27 September 18, 2020
Securing DNS across all of my devices with Pi-Hole + DNS-over-HTTPS + 1.1.1.1
10:47 September 18, 2020
16:11 September 17, 2020
17:04 September 11, 2020
Improve Firefox Performance on Linux by Turning WebRender On
16:46 September 9, 2020
How to Embed an External RSS Feed in WordPress Posts via Shortcode
13:43 July 31, 2020
19:03 July 18, 2020
13:43 July 13, 2020
17:51 July 4, 2020
09:33 June 16, 2020
Linux Mint 20 Blocks Snap App Installs, So Here’s the Workaround
09:30 June 16, 2020
08:11 June 10, 2020
09:31 June 4, 2020
13:48 March 8, 2020
17:11 March 2, 2020
14:27 February 29, 2020
17:05 February 26, 2020
14:55 February 23, 2020
14:51 February 23, 2020
10:35 February 20, 2020
Change User’s MySQL Password | Reset MySQL Root Password Guide
12:38 February 19, 2020
09:35 February 17, 2020
09:34 February 17, 2020
09:32 February 17, 2020
13:14 February 16, 2020
13:10 February 16, 2020
20:34 February 15, 2020
14:29 February 14, 2020
14:29 February 14, 2020
09:46 February 14, 2020
09:45 February 14, 2020
How to move docker data directory to another location on Ubuntu
09:45 February 14, 2020
The Complete Guide to “useradd” Command in Linux – 15 Practical Examples
09:43 February 14, 2020
09:42 February 14, 2020
20:30 February 12, 2020
How to Optimize and Compress JPEG or PNG Images in Linux Command Line
17:41 January 29, 2020
20:21 January 28, 2020
18:37 January 17, 2020
12:45 January 17, 2020
12:44 January 17, 2020
12:43 January 17, 2020
12:43 January 17, 2020
12:42 January 17, 2020
12:41 January 17, 2020
21:01 January 16, 2020
20:59 January 16, 2020
At the time of writing, this website uses an older version of TLS so you may see browser messages on visiting it. Hopefully, that will get sorted since it looks out for a security tool website.
20:57 January 16, 2020
12:19 January 15, 2020
12:17 January 15, 2020
The most important steps to take to make an Apache server more secure
12:17 January 15, 2020
How to Implement Security HTTP Headers to Prevent Vulnerabilities?
12:16 January 15, 2020
21:38 December 31, 2019
21:37 December 31, 2019
14:41 December 24, 2019
14:24 December 24, 2019
How To Protect an Apache Server with Fail2Ban on Ubuntu 14.04
This may refer to an older Ubuntu version but the advice contained in the article remains relevant to current ones. In fact, I have used it to harden some VPS systems that I have. Now, I only need to see what impact this action might have.
13:12 December 23, 2019
16:47 December 6, 2019
16:01 November 26, 2019
21:28 November 7, 2019
15:40 November 7, 2019
12:51 August 31, 2019
22:09 July 6, 2019
14:16 June 11, 2019
14:14 June 11, 2019
14:46 June 10, 2019
10:55 June 8, 2019
How to disable Sign-in screen acrylic (blur) background on Windows 10 May 2019 Update
11:47 May 22, 2019
11:39 January 30, 2019
Psensor – A Graphical Hardware Temperature Monitoring Tool for Linux
13:34 January 29, 2019
20:03 December 8, 2018
How to commit changes to a docker image
Five Ways to Slim Your Docker Images
09:59 December 8, 2018
09:58 December 8, 2018
14:04 December 6, 2018
15:53 December 5, 2018
Show the slide number and total number of slides on every PowerPoint slide
21:28 December 4, 2018
19:53 December 4, 2018
18:03 November 26, 2018
Configure Postfix to Send Mail Using Gmail and Google Apps on Debian or Ubuntu
18:02 November 26, 2018
Configure Postfix to Send Mail Using an External SMTP Server
18:01 November 26, 2018
18:01 November 26, 2018
18:00 November 26, 2018
11:09 November 26, 2018
11:07 November 26, 2018
How to Setup a Complete Mail Server (Postfix) using ‘SquirrelMail’ (Webmail) on Ubuntu/Debian
14:51 November 25, 2018
11:43 November 25, 2018
How to Configure WordPress to Use SMTP For Sending Emails Tutorial
11:42 November 25, 2018
11:41 November 25, 2018
11:41 November 25, 2018
11:39 November 25, 2018
11:38 November 25, 2018
11:38 November 25, 2018
11:37 November 25, 2018
10:51 November 25, 2018
10:45 November 25, 2018
20:31 November 24, 2018
20:30 November 24, 2018
17:44 November 24, 2018
17:37 November 24, 2018
Redirecting HTTP to HTTPS Using .htaccess File: Step by Step
21:45 November 22, 2018
21:43 November 22, 2018
12:10 November 17, 2018
12:08 November 17, 2018
apt-get install linux-image-extra getting “W: mdadm: /etc/mdadm/mdadm.conf defines no arrays.”
12:04 November 17, 2018
15:40 November 4, 2018
Here are the 13 most useful Mac shortcuts that will help you do everything faster
11:02 October 21, 2018
09:05 October 13, 2018
11:48 September 22, 2018
16:12 September 20, 2018
Use an Easy PowerShell Command to Search Files for Information
12:20 September 19, 2018
10:06 September 9, 2018
21:18 August 5, 2018
13:42 July 22, 2018
17:27 July 21, 2018
14:27 July 15, 2018
16:27 July 13, 2018
10:13 June 25, 2018
11:35 June 21, 2018
17:17 June 8, 2018
12:24 June 8, 2018
15:13 May 31, 2018
15:13 May 31, 2018
20:48 May 29, 2018
20:47 May 29, 2018
11:02 May 28, 2018
10:26 May 28, 2018
09:54 May 28, 2018
16:02 May 25, 2018
Performance optimizations you can apply today to load the Matomo JavaScript tracker faster
16:01 May 25, 2018
Different ways of embedding the Matomo tracking code for faster website performance
11:24 May 16, 2018
23:18 May 13, 2018
23:15 May 13, 2018
23:13 May 13, 2018
11:02 May 12, 2018
10:59 May 12, 2018
10:52 May 12, 2018
10:32 May 12, 2018
10:30 May 12, 2018
10:27 May 12, 2018
21:42 May 5, 2018
12:23 April 18, 2018
How to troubleshoot the error code “SEC_ERROR_UNKNOWN_ISSUER” on secure websites
09:34 April 15, 2018
10:08 April 14, 2018
22:25 April 13, 2018
18:20 April 10, 2018
Write your best resume in Word with help from LinkedIn in Resume Assistant
09:59 March 29, 2018
16:37 March 28, 2018
15:58 March 28, 2018
14:12 March 28, 2018
14:00 March 28, 2018
10:35 March 27, 2018
10:33 March 27, 2018
14:03 March 26, 2018
14:05 March 17, 2018
14:01 March 17, 2018
13:59 March 17, 2018
11:11 March 17, 2018
13:53 March 7, 2018
10:17 November 25, 2017
10:17 November 16, 2017
Diving Into the New Gutenberg WordPress Editor (Pros and Cons)
19:11 November 15, 2017
19:09 November 15, 2017
16:44 October 31, 2017
23:34 October 25, 2017
The care and feeding of software engineers (or, why engineers are grumpy)
23:32 October 25, 2017
23:31 October 25, 2017
19:20 October 24, 2017
19:19 October 24, 2017
19:18 October 24, 2017
23:37 October 22, 2017
23:36 October 22, 2017
23:32 October 22, 2017
23:31 October 22, 2017
23:30 October 22, 2017
23:29 October 22, 2017
23:25 October 22, 2017
10:19 October 14, 2017
17:03 October 7, 2017
17:01 October 7, 2017
Get rid of those extra TIFFs & PSDs in your Lightroom Library fast!
11:57 September 15, 2017
09:47 September 11, 2017
09:45 September 11, 2017
17:11 August 13, 2017
14:21 July 22, 2017
12:13 July 8, 2017
20:03 July 1, 2017
18:58 June 21, 2017
17:03 April 24, 2017
12:01 April 2, 2017
Windows 7: Windows 7 Not Updating
Windows Update error “0x80070002” or “0x80070003”
Fix Windows Update errors by using the DISM or System Update Readiness tool
18:17 March 22, 2017
23:25 March 12, 2017
22:08 March 7, 2017
Review: Evoluent Vertical Mouse 4 (and how to make it work in Ubuntu)
11:14 February 25, 2017
18:38 February 16, 2017
18:34 February 16, 2017
10:35 February 5, 2017
00:45 December 3, 2016
16:02 July 18, 2016
18:21 June 9, 2016
15:22 May 13, 2016
15:13 January 15, 2016
Get rid of the annoying formatting pop-up when you paste in Word
11:15 December 5, 2015
16:23 December 4, 2015
14:08 December 3, 2015
14:07 December 3, 2015
22:16 November 12, 2015
11:08 November 12, 2015
Fedora 23/22/21 nVidia Drivers Install Guide
09:56 October 30, 2015
20:15 October 29, 2015
20:10 October 29, 2015
20:06 October 29, 2015
21:01 October 2, 2015
22:02 September 28, 2015
11:28 August 7, 2015
16:14 July 27, 2015
11:18 July 24, 2015
18:40 July 10, 2015
15:16 July 9, 2015
18:41 July 6, 2015
07:24 July 2, 2015
The Command Prompt is Outdated: 2 Command Prompt Replacements for Windows
6 Great Windows 10 Features You Can Get Today on Windows 7 or 8
07:35 June 23, 2015
20:12 June 18, 2015
12:08 May 8, 2015
20:00 May 4, 2015
20:00 May 4, 2015
11:07 May 4, 2015
10:51 May 1, 2015
10:44 April 16, 2015
10:39 April 13, 2015
09:45 April 12, 2015
09:45 April 12, 2015
15:04 April 11, 2015
12:42 April 6, 2015
14:01 April 3, 2015
How to fix “System program problem detected” error on Ubuntu
19:27 March 28, 2015
11:34 March 27, 2015
11:21 March 27, 2015
11:04 March 27, 2015
16:51 March 26, 2015
16:53 March 18, 2015
04:00 March 7, 2015
02:39 March 5, 2015
Google Translate CLI Lets You Translate Text From The Command Line
01:51 March 5, 2015
23:19 February 21, 2015
14:25 February 19, 2015
11:56 February 16, 2015
22:29 February 9, 2015
15:45 February 5, 2015
Switch Windows by Hovering the Mouse Over a Window in Windows 7 or Vista
10:32 February 4, 2015
15:30 January 30, 2015
10:17 January 21, 2015
12:56 December 31, 2014
10:05 December 11, 2014
17:05 December 9, 2014
16:22 December 6, 2014
18:45 December 5, 2014
The crop tool is stuck in a fixed shape. How can I make it work properly?
14:55 November 26, 2014
22:12 November 18, 2014
How To Install MATE Desktop on Ubuntu 14.04 LTS
Cinnamon 2.4 Debuts With New Features, Here’s How To Install It In Ubuntu
FSF-Endorsed Linux Distro ‘Trisquel 7.0′ Released
19:53 November 11, 2014
21:54 November 4, 2014
21:52 November 4, 2014
22:30 October 30, 2014
21:34 June 11, 2014
18:57 January 24, 2014
Archive area of old releases of Java for those who need them.
Here is some desktop software that is either commonplace in the world of Linux or needs a bit more publicity, at least in my opinion. The list is sorted alphabetically, in case you are left wondering at its first entry. As with everything in this place, it may grow or contract, but change certainly is a feature of the world of Linux anyway. That’s never a bad thing, even if it upsets some from time to time.
This suite comes from the KDE project and includes office and graphical software. The latter includes Krita, which is described separately below, so this is an interesting collection of software.
Linux does have a choice of Twitter/X clients and this is one of them. It’s a KDE application that also supports Pump.IO, GNU Social and Friendica instances. There are others on the support list too, though Mastodon is a surprising absence given the recent furore surrounding Twitter/X.
The name is a play on that of Adobe’s Lightroom, and that gives you an idea of what it is about. This too allows non-destructive editing of images with the added information being kept in associated files with XMP extensions, one for each image. What the software does not have though is an image management interface like that of Lightroom or digiKam.
This is more than an organiser, and may be the KDE project’s counterpart to Adobe’s closed source Lightroom. Its photo organising doesn’t mean automated folder creation from EXIF information like F-Spot, Shotwell or Rapid Photo Downloader. It is for that reason that I combine digiKam with the last entry on the preceding list, since I jumped ship from Shotwell. The image processing part of the application is something that I have to explore.
Other IDE’s have taken over me these days, but this had a use for editing PHP scripts once upon a time. It is better known for what it offers Java developers, though.
A long-standing UNIX/Linux text editor that has been doing battle with Vi for longer than many can remember. Like the alternative, it has keyboard shortcuts that do anything but make concessions to Windows conventions, add needless steepening of any learning curve unless you find the appropriate option (CUA) that allows for some emulation of mainstream keyboard shortcuts. Nevertheless, there also is a GUI variant that makes life easier, and I have to concede that it has a history that is longer than even Microsoft itself. As if that weren’t enough compensation, it is a powerful piece of software whose functionality goes much further than text editing, whose surface I have only barely begun to scratch. The logic of the interface may differ from that to which many are accustomed, but it is consistent and well-thought-out nonetheless.
For a while, this was my photo organiser of choice, but it has not seen a new release since December 2010. Maybe that’s because it works well enough as it is, yet you cannot help thinking that a project with no new releases is a dead one, even if that sometime reflects how right they got things at the time.
Before my quest for added automation took over, this was my FTP client of choice, and its advent has made the need to buy such software extinct. That it works on both Windows and Linux is a bonus.
The ubiquitous Photoshop challenger is maturing nicely, though its interface may not please some.
This is very like ImageMagick (see below) with its main selling point being that it’s faster than its parent for the purpose of command line image editing; my own testing seems to support this so far. The commands that you use are similar to ImageMagick too, apart mainly from adding the gm command before the likes of convert and others. Speaking of convert, the GraphicsMagick version has yet to support the -annotate switch, so -draw needs to be used in its place.
Using a command line tool for image processing may seem counter-intuitive, but there are operations where you need not have much user intervention. Included among these is image resizing and conversion between file formats, and yours truly has done both. Processing many files at a stroke comes naturally to this very useful and talented piece of software, too.
Software media centres lie largely beyond my purview, but this seems to be one of the better known of the breed. It overlays the desktop when it is running and caters for consumption of music, movies, TV, photo slideshows and games. Controversially, there even is PVR capability for recording live broadcasts as well.
For those with a more artistic bent, this is a digital drawing and illustration package that will work not only on Linux but also on Windows or OS X. The results can be striking, so it looks as if your talent may be the only limitation with this tool.
Oracle’s takeover of Sun Microsystems meant that some feathers were ruffled in the open-source and free software community, and one example of a change coming from this is the forking of OpenOffice. It is that act that has brought LibreOffice into being, and it then gained so much ground that it eclipsed its parent.
Mozilla may promote their wares as bing privacy-friendly, yet others are not sure, so Firefox has been forked to give LibreWolf. This removes telemetry, adds a content blocker along with other enhancements.
There’s no way that I could not include what once was the de facto standard web browser for Linux, though there’s competition from Chrome/Chromium now too. There is also a mobile version for phones running the Android OS.
The original Mozilla suite still lives on, and this is what it’s called nowadays.
This has replaced Evolution on Linux systems that I use, and it comes close to eclipsing Microsoft Outlook everywhere else, too.
The main function of this piece of software is to record broadcast TV, hence that part of the name. It also has media playback capability, and that is what makes it more of a media centre than the digital video recording functionality may suggest.
UNIX/Linux offers plenty of text editors, so here’s another of the less well-known ones that I have encountered. Syntax highlighting is part of the offer and some menu customisation is possible too. In essence, it is a straightforward text editor that works with Windows keyboard shortcuts, but that can be no bad thing.
You cannot feature Eclipse in a software listing without having NetBeans too. In fact, it was NetBeans that I first encountered, and that was many moons ago. There is a PHP variant available, but that seemed very sluggish when I tried it and turned back to Eclipse, with which I have stuck ever since. That poor performance may have been caused by the variant of Java that was available to it, so I may give it another ago when I have the time.
Here, OBS stands for Open Broadcaster Software, and that somewhat says what it does. In essence, we are talking about video recording and live-streaming. With the increasing pervasiveness of video like what once was the case with photography, it is easy to see the use case for this kind of software.
Is this the office suite of choice for Linux? It certainly felt that way before Oracle bought Sun Microsystems and upset a few open-source developers. Now, the appearance of LibreOffice is going to make things look a little more interesting.
This is a far more user-friendly way to run Windows software on Linux, using the WINE libraries in the background. The name seems to originate from game playing, though web browsers like Internet Explorer and Safari are available too, along with a selection of other software. For the adventurous, there also is the possibility of installing something you have yourself.
Here’s the description from the website:
Privoxy is a non-caching web proxy with advanced filtering capabilities for enhancing privacy, modifying web page data and HTTP headers, controlling access, and removing ads and other obnoxious Internet junk.
It’s available for a number of platforms, including Linux and UNIX, and offers a way of blocking ads in Google Chrome, which is how I got to hear about it. Ubuntu users can snag a copy from the usual repositories too.
Configuration is by editing text files, but the default settings have sufficient so far. Setting a browser to use it means searching through settings for the means of making it use IP address 127.0.0.1 and port 8118 for ordinary and secure HTTP connections.
When Shotwell, started to fail to download photos from ever larger memory cards, it was time to look at something else and this became the replacement. You can use it to copy images from any card reader into the directory structure of your choosing. It does nothing more than downloading, and it does it so well that it merits a mention on here.
This was my photo library manager of choice until its limitations when it came to handling large data volumes came to light. It is written for the GNOME desktop environment and worked well for a few years before technology overtook it. Still, it also offers limited photo editing capabilities to go with its organising skills.
This reader and manipulator of raw digital camera image formats acts either alone or as a plugin. It can be used via the command line or using a GUI. That makes it flexible for those times when you need things to happen without much input from yourself.
All in all, this is an excellent piece of virtualisation software that makes you wonder why you’d pay for something like VMware Workstation. There is a closed source variant, but the open-source equivalent has what you’d want for personal use anyway. Windows 11 support took a while to come into place because of its TPM requirements, but that is steady these days.
Since the widely used VSCode is so available and appears to be open-source in nature, one does wonder why this project exists. Here is their take on that conundrum:
Microsoft’s VSCode source code is open source (MIT-licensed), but the product available for download (Visual Studio Code) is licensed under this not-FLOSS licence and contains telemetry/tracking. According to this comment from a Visual Studio Code maintainer:
When Microsoft builds Visual Studio Code, we do exactly this. They clone the VSCode repository, they lay down a customized product.json that has Microsoft-specific functionality (telemetry, gallery, logo, etc.), and then produce a build that we release under their licence.
When you clone and build from the VSCode repo, none of these endpoints are configured in the default product.json. Therefore, you generate a “clean” build, without the Microsoft customisations, which is by default licensed under the MIT licence.
The VSCodium project exists so that you don’t have to download and build from source. This project includes special build scripts that clone Microsoft’s VSCode repo, run the build commands, and upload the resulting binaries for you to GitHub releases. These binaries are licensed under the MIT licence. Telemetry is disabled.
If you want to build from source yourself, head over to Microsoft’s VSCode repo and follow their instructions. VSCodium exists to make it easier to get the latest version of MIT-licensed VS Code.
This is a fork of Firefox that claims to be faster and more private. From my brief test, it certainly feels faster, though I was not as able to test things on the privacy end.
While there is a LinkBlog on here, it has caught many different things, so I want to split off links to Data Science material and that is what you find here. Meanwhile, the world of GenAI has burst upon us, so you will find something from there in here too. There is so much happening, that just keeping up can become an effort all of its own. Even so, I will try to stop things getting lost in a growing pile.
15:49 October 25, 2024
15:43 October 25, 2024
15:41 October 25, 2024
20:35 October 2, 2024
20:35 October 2, 2024
15:21 March 14, 2024
15:20 March 14, 2024
20:01 January 22, 2024
Flight, DataFusion, Arrow, and Parquet: Using the FDAP Architecture to build InfluxDB 3.0
16:04 January 22, 2024
11:58 December 6, 2023
16:47 November 3, 2023
17:13 June 14, 2023
17:02 June 14, 2023
17:01 June 14, 2023
09:10 April 26, 2023
Shiny User Adoption Fails: 9 Reasons Why Nobody Uses Your App
15:26 March 19, 2023
01:30 February 25, 2023
10:13 January 12, 2023
16:27 November 30, 2022
What is Chebychev’s Theorem and How Does it Apply to Data Science?
18:22 November 19, 2022
14:50 November 19, 2022
22:46 November 18, 2022
22:34 November 18, 2022
14:58 October 26, 2022
14:57 October 26, 2022
09:12 October 26, 2022
09:25 October 24, 2022
15:51 October 21, 2022
11:57 October 12, 2022
How to reveal new connections in a knowledge graph with link prediction
11:52 October 12, 2022
11:43 October 12, 2022
11:42 October 12, 2022
11:41 October 12, 2022
09:39 October 1, 2022
15:09 September 28, 2022
17:02 September 27, 2022
09:16 September 15, 2022
How to Hide a Worksheet in Excel (that can not be unhidden easily)
13:49 September 8, 2022
16:54 August 17, 2022
17:50 July 21, 2022
15:54 July 8, 2022
14:32 April 28, 2022
14:31 April 28, 2022
14:56 April 27, 2022
14:54 April 27, 2022
14:54 April 27, 2022
15:30 February 21, 2022
21:14 February 10, 2022
22:02 January 29, 2022
22:02 January 29, 2022
08:54 January 24, 2022
21:09 January 16, 2022
21:03 January 16, 2022
Freeing the data scientist mind from the curse of vectoRization
14:15 January 16, 2022
14:12 January 16, 2022
14:07 January 16, 2022
The Future of Machine Learning and why it looks a lot like Julia
18:05 January 13, 2022
17:53 January 13, 2022
09:43 January 13, 2022
13:58 January 8, 2022
14:00 December 23, 2021
10:31 December 23, 2021
18:33 December 10, 2021
SAS Institute has shared a few COVID resources for data scientists and others so I have shared links to them here as well:
United States Covid 19 Vaccination Data
8 terms you need to understand when assessing COVID-19 data
Track the spread of the pandemic
Vaccine Efficacy, Clinical Trials, and SAS: Part 4 of Biostats in the Time of Coronavirus
13:38 December 7, 2021
13:37 December 7, 2021
16:46 December 2, 2021
16:49 October 21, 2021
16:21 October 9, 2021
No line in plot chart despite + geom_line()
5 Ways to Subset a Data Frame in R
Eclipse StatET: Tooling for the R language
My favourite R package for: summarising data
Formatted Summary Statistics and Data Summary Tables with qwraps2
How to Easily Create Descriptive Summary Statistics Tables in R Studio – By Group
Saving plots to a file with pdf(), jpeg() and png()
YaRrr! The Pirate’s Guide to R
Convert Data Frame Column to Vector in R (3 Examples)
ggplot does not work if it is inside a for loop although it works outside of it
strptime: Date-time Conversion Functions to and from Character
How to sum a variable by group in R?
How to write your own ggplot2 functions in R
Rename Data Frame Columns in R
Reordering Data Frame Columns in R
How to calculate a rolling average in R
Remove Element from List in R (7 Example Codes) | How to Delete a List Component
Journal of Statistical Software
ggplot2: Elegant Graphics for Data Analysis
Run system commands or shell scripts from an interactive R session
R Markdown: The Definitive Guide
Tables in R (And How to Export Them to Word)
How to Create Customized Tables in Displayr Using R
Create Awesome HTML Table with knitr::kable and kableExtra
How to Make Beautiful Tables in R
High Performance Computing in R
Speed Up Your Code: Parallel Processing with multidplyr
Using the {plyr} (1.2) package parallel processing backend with Windows
R Programming for Data Science
Remove grid and background from plot (ggplot2)
Download, Tidy and Visualize Covid-19 Related Data
Data Visualization: A practical introduction
The Mathematics and Statistics of Infectious Disease Outbreaks
16:56 September 29, 2021
Compare the default definitions for sample quantiles in SAS, R, and Python
14:47 September 28, 2021
10:34 September 28, 2021
10:44 September 23, 2021
GxP Compliance in Pharma Made Easier: Good Documentation Practices with R Markdown and {officedown}
17:09 September 22, 2021
20:32 September 13, 2021
12:19 September 11, 2021
Parallel Processing in Python – A Practical Guide with Examples
Multithreading in Python: Running Functions in Parallel
Python: run functions in parallel with a multiprocessing wrapper function
Python – Run same function in parallel with different parameters
Run Python Code In Parallel Using Multiprocessing
Asynchronous Parallel Programming in Python with Multiprocessing
Python Multithreading and Multiprocessing Tutorial
15:51 September 9, 2021
15:50 September 9, 2021
13:55 September 2, 2021
14:03 August 26, 2021
14:02 August 26, 2021
11:13 August 25, 2021
17:55 August 7, 2021
14:09 August 4, 2021
14:02 August 4, 2021
14:01 August 4, 2021
09:01 August 4, 2021
NumFOCUS: A Nonprofit Supporting Open Code for Better Science
09:03 July 5, 2021
09:19 June 30, 2021
Common Format and MIME Type for Comma-Separated Values (CSV) Files
12:44 June 23, 2021
10:11 June 23, 2021
16:21 June 21, 2021
11:03 May 28, 2021
5 Tips for Writing Clean R Code – Leave Your Code Reviewer Commentless
11:02 May 28, 2021
10:02 May 28, 2021
09:58 May 28, 2021
09:01 May 27, 2021
09:01 May 27, 2021
08:59 May 27, 2021
13:52 May 16, 2021
13:47 May 16, 2021
13:43 May 16, 2021
13:42 May 16, 2021
Pandas Split strings into two List/Columns using str.split()
13:41 May 16, 2021
11:02 May 12, 2021
10:53 May 12, 2021
10:52 May 12, 2021
10:50 May 12, 2021
10:49 May 12, 2021
10:47 May 12, 2021
10:45 May 12, 2021
17:12 May 10, 2021
17:06 May 10, 2021
17:05 May 10, 2021
17:02 May 10, 2021
17:02 May 10, 2021
17:01 May 10, 2021
12:48 April 15, 2021
10:49 April 9, 2021
18:42 March 2, 2021
13:52 January 27, 2021
13:51 January 27, 2021
Combine Data From Multiple Worksheets into a Single Worksheet in Excel
15:21 December 10, 2020
LET() assigns names to calculations in Excel
The big difference between what Excel shows and what Excel knows
Excel is getting better Conditional Formatting with much needed improvements
Many Ordinal RANK() options in Excel with joint, equal rankings, words and more
20:47 December 6, 2020
20:43 December 6, 2020
15:12 November 18, 2020
09:20 November 9, 2020
09:17 November 9, 2020
09:15 November 9, 2020
13:53 October 23, 2020
rOpenSci Packages: Development, Maintenance, and Peer Review
09:25 October 7, 2020
09:22 October 7, 2020
09:21 October 7, 2020
09:37 September 17, 2020
09:15 September 17, 2020
14:10 July 1, 2020
23 sources of data bias for Machine Learning and Deep Learning
16:46 June 8, 2020
Summary of SAS Macro Quoting Functions and the Characters That They Mask
20:23 March 4, 2020
20:22 March 4, 2020
20:22 March 4, 2020
17:38 November 25, 2019
14:54 November 9, 2019
16:54 October 31, 2019
09:19 October 31, 2019
22:02 October 23, 2019
What is eCOA and How Does it Improve Clinical Trial Data Quality?
16:23 October 18, 2019
15:08 October 1, 2019
15:56 December 5, 2018
A Second Look at the ODS Destination for PowerPoint
The Dynamic Duo: ODS Layout and the ODS Destination for PowerPoint
Square Peg, Square Hole—Getting Tables to Fit on Slides in the ODS Destination for PowerPoint
23:43 October 25, 2017
23:42 October 25, 2017
23:42 October 25, 2017
19:21 October 24, 2017
23:26 October 22, 2017
19:59 October 16, 2017
19:55 October 16, 2017
Here are a few SAS functions that are less well known to me:
10:21 October 14, 2017
13:51 October 4, 2017
Association for Computing Machinery
Visualizing and Understanding Convolutional Networks
10:27 August 30, 2017
Prevent a SAS Session from Connecting to a SQL Database Until Required
16:50 March 10, 2017
12:36 May 19, 2016
12:14 May 19, 2016
12:10 February 8, 2016
10:10 February 5, 2016
18:16 January 13, 2016
10:11 November 7, 2015
02:40 March 5, 2015
While I continue to use Spyder as my preferred Python code editor, I also tried out Visual Studio Code. Handily, this Integrated Development Environment also has facilities for working with R and Julia code as well as MarkDown text editing and adding the required extensions is enough for these applications; it helps that there is an unofficial Grammarly extension for content creation.
My Python code development makes use of the Pylance extension and it works a little differently from Spyder when it comes to including files using import statements. Spyder will look into the folder where the base script is located but the default behaviour of Pylance is that it looks in the root path of your workspace. This meant that any code that ran successfully in Spyder failed in Visual Studio Code.
The way around this was to add the required location using the python.analysis.extraPaths setting for the workspace. That meant opening Settings by navigating to File > Preferences > Settings in the menu system and entering python.analysis.extraPaths into the search box. That took me to the section that I needed and I then clicked on Add Item before entering the required path and clicking on the OK button. That was enough to fix the problem and all worked as it should after that.
There are times when I feel the need to share some snippets with a longer lifespan than a tweet. This is a place for those and some yet may even turn into longer articles themselves. That already has happened for one of them, so there is something of a digital scrapbook in operation here.
16:08 October 25, 2024
It is better to close Mac applications using the CMD + Q keyboard shortcut or clicking on the Quit entry in the application menu. Simply clicking on the red X icon risks losing a memory of anything that you have open in the application. That was what I found when closing Firefox that way, and it happened a few times before I finally took the hint. Restoring open tabs is not only a faff, but also is unreliable. Visual Studio Code behaves the same way, and I suspect that CotEditor does too. All in all, this seems to be a general macOS thing and a gotcha for anyone coming from Windows or Linux.
23:22 May 17, 2024
Now that I have a presence on Mastodon, I have begun to use a command line tool called toot to add missives on there. The web interface works as well, yet toot can be logged into more than one account at a time; switching between accounts is a fairly facile operation. For a command line tool, toot is well intuitive once you get used to it.
13:08 January 8, 2024
Now that ownCloud has been acquired by Kiteworks, there is some uncertainty about what happens next. So far, there is an offer for ownCloud and Nextcloud users to move to Kiteworks’ proprietary platform. Nextcloud itself has been busy making use of the uncertainty to promote their own product line.
19:15 November 19, 2023
The open-source section of the website got a lot of tweaking in the last few weeks. The recipient of the attention was the operating system subsection. That got a full reorganisation with all the listings seeing new entries too. The desktop software also got a bit of attention, and other areas could get altered yet.
11:35 January 20, 2023
Recently, I have been having trouble with Nvidia drivers following a kernel update in Linux Mint (21.1 is the version that I am using). The kernel version has been rolled back from 5.19.x to 5.15.x, and I installed an old AMD graphics card as well. Things still are not perfect, though, so I will be looking out for a way to make things smoother. For now, all is good enough for the moment.
10:30 February 12, 2022
Google Analytics appears to be losing favour in the EU, if Matomo is to be believed. First, Austria outlawed its usage and no France follows suit. This naturally suits Matomo, a self-hosted open-source alternative for collecting website metrics, so it should not be any surprise that they are forthcoming with these details.
16:20 October 9, 2021
Here is the sequence of commands to use when upgrading from OpenMediaVault 4.x to 5.x. All need to be executed with elevated access privileges:
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/installScript/raw/master/upgrade4to5 | sudo bash
reboot
Once your system has restarted and you have logged in again, then you execute these:
apt-get purge openmediavault-omvextrasorg resolvconf
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install | bash
apt-get update
apt-get dist-upgrade
omv-salt deploy run nginx
omv-salt deploy run phpfpm
apt-get install usrmerge
omv-confdbadm migrate conf 5.0.0
15:19 October 9, 2021
Here are some North American online emporia fro buying computers, their components or peripherals:
09:06 September 24, 2021
Here are boilerplate commands for banning and unbanning IP addresses using Fail2ban:
fail2ban-client set <JAIL> banip <IP>
fail2ban-client set <JAIL> unbanip <IP>
13:09 July 27, 2020
If you ever need to install Linux kernel headers on an openSUSE instance in order to install VirtualBox Guest Additions, the following command should be executed in order to do the needful:
sudo zypper in kernel-source
10:37 February 5, 2017
Here is a possible way of resetting the CSS definition for a HTML element, class or ID:
#reset-this-parent {
all: initial;
* {
all: unset;
}
}
Browser support for the above may vary though.
10:39 November 23, 2016
After seeing messages like “The authenticity of host ‘hostname’ can’t be established” during ssh connections, I decided to investigate more and came up with the following solution:
sudo chown -v $USER ~/.ssh/known_hosts
My known_hosts file had gained root ownership so i could not write to it so changing the ownership to that of my own user account sorted the problem. An alternative could be to change the group assignment using chgrp and setting permissions using chmod but what I did sufficed for my needs.
06:30 November 23, 2016
When I ran into trouble with accessing my own websites using my broadband, I found that the solution was to change DNS Lookup Service to what Google offers. This was done on the router side and the IP addresses used were 8.8.8.8 and 8.8.8.4.
22:33 June 4, 2016
Here’s a way to convert DNG files to JPEG ones:
find -type f | grep DNG | parallel mogrify -format jpg {}
10:51 September 16, 2015
Here is a way to recursively delete folders and their contents in PowerShell:
Remove-Item .\foldertodelete -Force -Recurse
The Force switch silences any messages that otherwise would appear and the Recurse switch is what gets directories removed.
23:38 August 18, 2015
Thomson Reuters is changing over Open Calais at the end of August.
11:05 July 29, 2015
Motorola now selling phones direct to the public through its own store. Customisation options are available for more expensive models like Moto X and Nexus 6 too.
10:18 April 12, 2015
Devuan (pronounced like dev-one) is a fork of Debian that does not use systemd as Debian, like so many other distros, is doing. Part of the name must come from a collective calling itself Veteran UNIX Admin (VUA). There is no actual release just but one is intended for around the same time as Debian 8.0 gets released and donations are being solicted via the website.
18:51 February 20, 2015
Here is a handy way to get PowerShell to show files larger than a certain size:
get-childitem | where-object {$_.length -gt 10000}
|ft fullname, length -auto
19:40 December 1, 2014
When a VirtualBox upgrade broke the networking on a Windows 8.1, it was time to look at System Restore to see what it would do. It reverted version 4.3.20 to 4.3.15 and the network disconnection stopped. For now, I will remain with that older version after the misstep with the latest one. Sometimes it is best to stick with what is known to work.
20:38 October 30, 2014
With my deciding to try doing about my waistline during the summer (a bike got put on a trainer and around 30 minutes is spent on it most evenings while I also catch up some reading; now, I feel fitter and incursions into the countryside have an added air of confidence about them), an interest in fitness monitors has developed and the Pulse Ox from Withings has taken my eye due its being price of around £100. That makes it less than alternatives and it isn’t the only health gadget that the company does either with there being a blood pressure monitor in its range too. The Pulse Ox monitors such things as heart rate, activity such as walking and running, sleeping and weight too. It should work with your smartphone as well, which is a bonus. It is one of several like it with Samsung and Apple going in for phone apps and Microsoft releasing their Band device as well. This appears to be a growing area where I never expected to see mainstream technology companies having a role for themselves.
12:44 October 30, 2014
Ergotech now have useful desktop stands for tablet computers. There is one for a full size iPad and another for any other type of tablet. A standalone one on wheels also is available though I cannot see myself ever needing such an item.
20:24 October 20, 2014
Here are some more specialist information sources with search facilities:
18:53 October 7, 2014
Here is the test for the “Shellshock” vulnerability in the bash shell:
env x='() { :;}; echo vulnerable’ bash -c “echo this is a test”
It should not return the following:
vulnerable
this is a test
This would be acceptable:
bash: warning: x: ignoring function definition attempt
bash: error importing function definition for `x’
this is a test
Also, just having this might be fine too:
this is a test
In case you need it, Redhat has more information on the bug that caused scare stories everywhere. Now, it is over to system administrators everywhere to do their bit now that bash has been patched.
21:36 August 24, 2014
Sometimes you need to create more than one directory level in a hierarchy at once and mkdir has the -p option for this purpose. That gets it to create any missing levels in a folder path and avoids warnings that would be issued otherwise.
16:18 August 21, 2014
Debian 8 is under development and has its first beta ready for download. XFCE is now the default desktop environment though it remains possible to install GNOME and GNOME Shell too. In fact, I successfully have given that a go in a VirtualBox installation and will keeping an eye on development so long as no system meltdowns occur. The version of the X Window system already is incompatible with VirtualBox 4.3.14 so we need to await a new version of the virtualisation software before we get access to advanced functions like full window desktop expansion. What we have at the moment works well enough to keep eye on development so we can wait for that full support.
18:31 August 6, 2014
Perfect Resize from onOne Software caught my eye for scaling up images after seeing it mentioned in a Outdoor Photography review of Avanquest PhotoZoom Professional. With a library of 6″ x 4″ prints, I am limited in how large I can make scanned images without they looking blurred and pixelated so that’s why my interest was aroused. There may be a free moment spent seeing what it might do in that situation yet.
16:24 August 2, 2014
Nvidia has a useful page on the difference between DVI-D and DVI-I. It came in handy when transitioning from VGA to DVI on my home PC’s. That made what appears on my Iiyama screen much sharper and allowed me to rid myself of a suspect VGA cable too.
21:42 June 11, 2014
Here are some interesting articles about EFI and UEFI that I uncovered during a recent episode of setting up dual booting of Windows 8.1 and Linux Mint 17 on a PC with EFI:
UEFI Dual-Boot -- Ubuntu 12.04.3 + Windows 8.1 (One GPT HDD)
11:53 May 3, 2014
In the U.K., BT allows you to divert your phone calls for a fee and I have made good use of it over the past year. The service is called Call Diversion and Eircom, Ireland’s counterpart to BT, offers Call Forwarding in Éire. Both are handy because redirecting a call to a mobile phone means that you know you are not missing any calls and that there is nothing lurking on an answering machine when you do get to your home or office. Landline telephony may seem less exciting these days than other forms of communication yet it still has its place and I would not get any nasty surprises along the path of life either. If only I had started doing this kind of thing earlier than I did…
20:12 April 4, 2014
Here’s a useful article about the ever useful locate command. Whether it is FreeBSD or Ubuntu that you are running, this article has a use and that especially when the locate database needs updating with the updatedb command.
20:54 March 12, 2014
A recent website redesign was well helped by modern.IE‘s collection of virtual machine appliances containing different versions of Windows and Internet Explorer. Depending on the host operating system that you are using, you have different options. For Linux, it is VirtualBox only while Windows gains VMware and Virtual PC too. It is a matter of just picking out what suits your situation from dropdown lists.
The first one that I picked was Vista with IE 7 and it was an interface that I had not seen for a while. For all the criticism, the operating system did work well though I wonder if it arrived before the computer hardware that it really needed in order to run smoothly. The dark theme cannot have helped its cause either, especially when compared with the much brighter Windows 7 or Windows 8.x. A Windows XP appliance with IE 6 was grabbed before it gets yanked and support for the elderly OS does finish in April. IE 6 probably is on its last legs so I probably can ignore it now but IE 7 might live longer yet. Window 7 appliances with IE 9 and IE 10 also were downloaded and confirmed that all was well in recent versions of IE when it came to the website. The Vista virtual machine allowed me to ensure that all looks acceptable on IE 7 too. The VM’s themselves contain evaluation versions of enterprise variants of Windows and have a limited lifespan though it is little trouble to reimport an appliance again to rest the clock if so required. In most cases, you extend the evaluation periods too through re-arming and there only are so many times that you can do that anyway. With Windows 8.x, it isn’t even a possibility anyway.
22:05 March 9, 2014
Today, I found an interesting article on CSS media queries and put it to some use for a website redesign that has been keeping me busy over the weekend. Twitter’s Bootstrap came in handy for this too. Now, it’s on to ridding the new design of any rough edges that remain in there. That can be an ongoing task and the site is here if you fancy a look to see what my efforts have produced.
16:20 February 26, 2014
Adding a new Zalman ZM450-GS power supply did little to sort the buzzing in my speakers but it has made the PC where it was installed so much quieter; a much larger fan spinning slower helps while still moving the required amount of air. It is 450W too and I am wondering if my main PC would benefit from a similar upgrade. That may be quieter than the other one was but the case was not a deluxe model so the change should do no harm. As for the speakers, moving them was the only way to get rid of the buzzing. Looking back on this now, it seems that one of them was far too close to a PC.
20:33 February 15, 2014
Currently, the spare PC appears to be causing buzzing on my main PC speakers and with my landline telephone when it is placed right under these. Removing it helps to cut it down but I fancy having a better fix and am wondering if a new power supply might help. Also, I am wondering if there are other sources too. In the meantime, I would like to share an article on the subject that I recently found: Kill Studio Hum and Buzz at the Source.
22:14 February 12, 2014
Applying latest set of updates to LMDE worked to get to Update 8 worked smoothly unlike some predecessors. This brought the latest version of Cinnamon so GNOME now is redundant. It will be interesting to see where things go next.
16:24 February 8, 2014
During the week, I discovered that Twitter is not a benign place to go ruminating. A sharp riposte in an unnecessary tone of voice was enough to bring on a sense of extra caution. Wherever you get humanity, you are likely to encounter and one had a go at me so some thoughts are going to be kept away from there from this point forward. Sometimes, you own website is a far better place to go ponder happenings in the world around you. After all, an ugly comment can be deleted and a rogue IP address blocked if things need to go that far. Of course. more civility would be best. Polite correction is the best course whenever it is warranted since we all are human and no one is beyond making mistakes.
16:15 February 8, 2014
On my outdoors website, I have been using a PHP script from Detect Mobile Browsers but this does not distinguish between Android running on a tablet and that running on a phone. Therefore, I have turned to another source of such scripting and that is working better so far. In fact, this offers more than just PHP but also Python, JavaScript and other scripting languages along with configuration files for web servers too. Apache, Nginx and IIS all have something for them. The logic essentially is based on Perl regular expression matching of user agent strings, not an infallible means but good enough for me along with a smattering of responsive design.
14:30 February 1, 2014
For anyone lost when faced with the changes Microsoft brought in with the launch of Windows 8 and largely retained in Windows 8.1, TechRadar has a useful article: 62 Windows 8 tips, tricks and secrets. What will prove especially interesting is where Microsoft goes next when many of their customers prefer the Windows 7 interface and are sticking with the elderly Windows XP. You only can get so far by telling your customers that they are wrong all of the time and the is competition in the form of Apple’s OS X and Google’s Chrome now.
14:23 February 1, 2014
TechRadar has a round-up of Best free photo editing software: 10 top image editors you should try. Usual options like GIMP, Paint.Net and IrfanView get a mention along with other less well known ones. Interestingly, Google’s Picasa is excluded from the list but that might be because it largely is an image file management tool even if it has some image editing capabilities too.
21:28 January 27, 2014
Late last week, I found out about the image file sorting tool PhotoSift via an article on the software. It looks interesting though I have yet to try it.
17:52 January 27, 2014
Here are some interesting reviews from TechRadar:
Best compact system camera 2014: the top models reviewed
Best tripod and camera support: 13 tested
The tripod heads review really caught my eye more than the others. After all, 2013 was the year that I got a CSC and a Manfrotto tripod has sat reproachingly in the corner far more often than it should.
19:41 January 16, 2014
Today, I spotted two interesting articles to which I want to retain links on here:
Managing the future of complex business and IT landscapes
Send large files to clients with these 8 free tools
Both of these ring bells for me for different reasons. The first is a reminder of a slow and painful system project with which I was involved and of an ineffective IT support service that pained us at the time. The second is ever present in my current job with its need to send data and output files to clients as well as receiving specifications from them.
19:36 January 4, 2014
In recent weeks, I have been having trouble with the onboard network controller on a spare PC that I have at home. It connects to the network fine for a few minutes and then struggles. Making use of an old PCI ethernet card that I had from another machine solved the problem. Does anyone know of issues with ASRock motherboards and onboard network ports at all? It isn’t something that I have seen before and this motherboard never had good networking capability as long as I have had it.
19:33 January 4, 2014
After Christmas, I took delivery of an HTC One mini mobile phone that I got free as part of a contract renewal with O2. It also is known as the M4 and I have been getting used to it since I got it. A lot is familiar and there are some little differences too. Some of these leave me asking why what worked well before got changed to something that is less smooth. Of course, that can be the course of things and it applies to buying a new car as much as getting a phone upgrade. All in all, the phone works well and battery life appears much improved over the HTC Desire S so far, never a bad thing to notice.
19:25 January 4, 2014
This morning, the hosting provider for this website had an outage that lasted over three hours. The provider was Fasthosts and the cause was a power failure. They usually are good so this thankfully does not happen too often. However, we have been getting a lot of stormy weather crossing Britain and Ireland this winter so I suspect that there should be little in the way of surprise when something like this happens. Weather is not due to settle during this month so there may be more power failures, hopefully elsewhere, before things settle down again.
17:20 January 3, 2014
On one WordPress website that I have, the refresh rate for RSS widgets wasn’t the quickest and the remedy was to add this line into the themes functions.php file:
add_filter( ‘wp_feed_cache_transient_lifetime’, create_function(‘$a’, ‘return 600;’) );
It creates a custom function that is attached to the widget and the refresh time is set to 600 seconds or 10 minutes. So far, this seems to be doing what I needed.
17:56 December 19, 2013
What I didn’t realise is that TRIM currently is not enabled in Ubuntu by default. That is set to change in Ubuntu 14.04 and here is some advice on the matter until then.
20:41 December 14, 2013
This weekend, I had visions of needing a new hard drive when all files on one in my main home PC (runs Ubuntu GNOME 13.10 64-bit) went read only. The cure was to re-seat the SATA cables and all was well again. Sometimes, inexpensive remedies are best and I need not to forget this one.
20:54 October 29, 2013
Here are two interesting articles that I spotted: the first is on new features in GNOME 3.10 and the second about getting DRM-protected Flash media playing on Ubuntu 13.10. For now, I am sticking with Ubuntu GNOME 13.04 in spite of a pop-up dialogue encouraging an upgrade to 13.10; the potential for even a little disruption is something that I am delaying for now.
20:34 October 16, 2013
While editing a file in Nano on an virtual Arch Linux web server that I have, I noticed that a file had DOS newline characters instead of UNIX ones so conversion using the dos2unix command was in order. There is more on this to be found on nixCraft and there are other options such as sed described in there too.
21:51 September 7, 2013
Following a look at Webmin, I have to say that it seems a worthy tool for remote management of servers. My trial so far has been on my Ubuntu virtual web server and it works on port 10000 without interfering with the operation of the actual web server. Being able to run system updates and deletion of MySQL databases without resorting to the command will seem a bonus for some. There’s more to it than these though and I have seen the possibility of managing virtual servers located within a real being mooted. It was an issue of Linux User & Developer than inspired me so my Linux magazine reading is seeing its uses.
20:30 September 4, 2013
Here are some interesting articles for anyone thinking about software development and its realities:
The care and feeding of software engineers (or, why engineers are grumpy)
Being an introvert as I am, this article really is something to which I can relate. Whenever I cannot get the space for undisturbed work, it takes from how I enjoy my job.
How designers and engineers can play nice (and still run with scissors)
We all have to work cross-functionally so you cannot have it all your own way…
Six reasons why the NHS National Programme for IT failed
Having been involved in system design, development and implementation myself, I have something to share that fits into the same topic area. Too many cooks can spoil a broth.
Queensland Government Bans IBM from IT Contracts
My past experiences of IBM have not been good and it wasn’t just where I worked either so this is not exactly a surprise. Service organisations need to ensure that they are sufficient responsive and flexible with empowered and enthusiastic staff who do the needful.
23:09 August 11, 2013
Vagrant and Puppet look like very interesting tools for working with virtual machines. They work with VirtualBox or VMware’s Fusion and Workstation so there’s a choice of virtualisation tool.
20:52 April 18, 2013
Crash reports have been appearing after logging into an Ubuntu session for /usr/share/hplip/config_usb_printer.py and it repeating has been reinstalling HPLIP software for my HP LaserJet 1018 printer too. Leaving the printer off until I need it would be one solution and saves some electricity too but it is best to try to sort an issue when you keep getting it. The first step was to download the latest HP software and install it. That wasn’t a complete solution so I altered the latest send_message function call in /usr/share/hplip/config_usb_printer.py from the following:
send_message( device_uri, printer_name, EVENT_DIAGNOSE_PRINTQUEUE, username, 0,”)
to:
send_message( device_uri, printer_name, EVENT_DIAGNOSE_PRINTQUEUE, ”, 0,”)
So far that alteration appears to have addressed the problem but I’ll be keeping an eye on things anyway. If you’re wondering, the inspiration came from a bug discussion on Launchpad and it was the queue clearing section of the Python script that I went and edited.
20:40 April 16, 2013
Recently, I have been having bother with WordPress Jetpack comment form submission. This was caused by the Bad Behaviour plugin and allowing cross site form submission sorted the problem. The setting to change is in Settings > Bad Behaviour on the Dashboard.
17:31 March 16, 2013
Here’s a quick way to make Faenza and Faience icons available to Ubuntu and maybe Linux Mint too:
sudo add-apt-repository ppa:tiheum/equinox
sudo apt-get update && sudo apt-get install faenza-icon-theme faience-*
20:53 February 19, 2013
During a look at a Fedora 18 Live DVD, I found a user name was needed to get to the desktop and root did the trick for me. What I didn’t notice was an install to hard drive option for the GNOME variant that I tried. Maybe it was hidden on the desktop and not displayed. If so, it looks like an oversight.
16:02 February 14, 2013
Here’s the way to find the version of PROC CDISC that came with the version of SAS that you are using:
proc cdisc version;
run;
14:00 February 14, 2013
Here’s robustness principal for software design that otherwise is known as Postel’s Law after TCP pioneer Jon Postel:
Be conservative in what you do, be liberal in what you accept from others
08:10 February 14, 2013
Here’s a command for removal of orphaned packages in Arch Linux and its derivatives (CinnArch and ArchBang come to mind but there may be others):
sudo pacman -Rns $(pacman -Qqtd)
15:11 January 26, 2013
Cinnarch looks very interesting. It’s based on Arch Linux so it’s a rolling distro but has Cinnamon as its desktop environment. Currently, it’s still in beta but I am tempted to give it a go in a virtual machine.
20:55 December 15, 2012
Having decided that my ever sluggish system needed a fresh operating system installation, I set to trying to get on Linux Mint 14. However, not remembering that the disk and not the partition needs specifying for GRUB installation cost me some time. Later, adding on GNOME Shell resulted in a system conflict between MDM and GDM so I now am running Ubuntu GNOME Remix instead. All feels fresher so far though a spot bother was had with the lock screen that caused me to turn off the feature. VMware Player installed without any of the trickery needed to get in its forbear and runs without a hitch so far too. Other bits and pieces need instating yet but the basis of a refreshed computing platform is in place now.
20:56 November 19, 2012
A look at Linux Mint 14 64-bit release candidate in a VirtualBox virtual machine confronted me with irritating mouse pointer behaviour. The pointer constantly darts to the left when you need it not to do that and it seriously affects usability. The final version will be awaited to see if there is an improvement because it’s not very usable as things stand. GNOME Shell can be installed in working order after a spot of fiddling. Installing the software from the Software Store doesn’t add gnome-session as well so the command line alternative remains best:
sudo apt-get install gnome-shell && sudo apt-get install gnome-session
These two really need packaging together as dependencies. Cinnamon is looking as nice as ever and in need of a plug-in that makes virtual desktops behave as they do in GNOME, even if that’s a minority interest now.
12:07 September 30, 2012
Here are commands for adding Cinnamon to Ubuntu:
sudo add-apt-repository ppa:gwendal-lebihan-dev/cinnamon-stable
sudo apt-get update
sudo apt-get install cinnamon
14:39 September 29, 2012
Had a look at GNOME 3.6 in Ubuntu GNOME Remix 12.10 Beta 1 release. Not all extensions are supported yet but GNOME 3.6 only launched officially yesterday anyway. Will take a little while for those extension developers to catch up with it. No hurry in moving from GNOME 3.4 until they do so.
20:24 September 22, 2012
Picked up Netgear ethernet switcher at PC World today. Working without a hitch so far. Some network reorganisation may follow suit.
20:14 September 22, 2012
Initially, I needed to use the command “modprobe vboxdrv” to get VirtualBox going on Sabayon 10. However, there seems to be a better remedy: adding the line ‘modules=”vboxdrv vboxnetflt vboxnetadp”‘ (removing the outer single quotes, by the way) to /etc/conf.d/modules and restarting the system. That seems to have done the trick though I wonder it wasn’t added for me automatically.
13:08 September 22, 2012
Until recently, I hadn’t realised that most if not all SSD’s come in 2.5″ form factor. An extra bracket is needed for installing into 3.5″ drive bays. While tempting, this remains a nice to have upgrade for me.
20:02 September 21, 2012
Found out why my proftpd daemon wasn’t working on Linux Mint. Needed to set it as standalone and not inetd operation. It’s the ServerType setting in /etc/proftpd/proftpd.conf.
21:53 September 18, 2012
Given the site a new appearance. The cause was getting microblogging going on this page. Clashes with zeeDisplay theme and Twitter Tools made for replacements that now power what you see here. Jetpack plugin added too. All looking good to my eyes so far. More tinkering may happen yet.
21:36 September 15, 2012
Here are a few places where you will find Linux version information stored: /etc/issue, /etc/issue.net, /etc/lsb-release.
17:30 September 15, 2012
Desktop swapping can be done in Ubuntu and here’s the command for Xubuntu:
sudo apt-get install xubuntu-desktop
17:22 September 15, 2012
Here’s a set of commands that I once used to get GNOME Shell going for a Sabayon 9 installation in a VirtualBox virtual machine:
su
equo install --ask linux-sources
cd /run/media/john/VBOXADDITIONS_4.1.16_78094
./VBoxLinuxAdditions.run
mv /usr/libexec/gnome-session-check-accelerated-helper /usr/libexec/gnome-session-check-accelerated-helper.bak
ln -s /bin/true /usr/libexec/gnome-session-check-accelerated-helper
Hope they have a use though VirtualBox has gone through a few versions since I discovered that these had the desired effect though the login screen behaved a little oddly. Otherwise, everything worked as it should.
14:16 September 15, 2012
Pondering purchase of NAS. QNAP TS-412 looking promising but need to think about my home networking set up first. Might need an ethernet switch but plan to look into it more first, especially with uplink capability needed.
14:11 September 15, 2012
Appearance of Sabayon 10 caused a bit of disturbance to my Sabayon installation that needed installation from a DVD to resolve. Tried GRUB repairs before the non-loading of an Nvidia kernel module caused bother. Went for old fashioned approach for sake of saving a little troubleshooting time.
13:52 September 15, 2012
This has been added using the Live Blogging plugin and it’s good for pages too, unlike Automattic’s own Liveblog plugin. Maybe they’ll add that sort of functionality in time.
Recently, I needed to inactivate blocks of code in a Perl script while doing some testing. This is something that I often do in other computing languages so I sought the same in Perl. To do that, I need to use the POD methodology. This meant enclosing the code as follows.
=start
<< Code to be inactivated by inclusion in a comment >>
=cut
The =start line could use any word after the equality sign but it seems that =cut is needed to close the multi-line comment. If this was actual programming documentation, then the comment block should include some meaningful text for use with perldoc but that was not a concern here since the commenting statements would be removed afterwards anyway and it is good practice not to leave commented code in a production script or program to avoid any later confusion.
In my case, this facility allowed me to isolate the code that I needed to alter and test before putting everything back as needed. It also saved time since I did not need to individually comment out every executable line because multiple lines could be inactivated at a time.
Here’s something that I would really appreciate: a book on code cutting for WordPress customisation and extension. Having the Codex is all very fine but having a dead tree compendium that you can peruse at your leisure is a definite bonus. If there was a way to get the Codex on PDF and print it all off for easier reading, that would be progress. I believe that a publisher did plan to bring to the market something like what I want but author and publisher parted company, a pity. It would be great to see something like Apress’ Pro Drupal Development for WordPress. What about it, Automattic folks?
Using hash objects in SAS data step code offers some great advantages from the speed point of view; having a set of data in memory rather than on disk makes things much faster. However, that means that you need to keep more of an eye on the amount of memory that’s being used. The first thing is to work out how much memory is available and it’s not necessarily the total amount installed on the system or, for that matter, the amount of memory per processor on a multi-processor system. What you really need is the number, in bytes, that is stored in the XMRLMEM system option and here’s a piece of code that’ll do just that:
data _null_;
mem=getoption('xmrlmem');
put mem;
run;
The XMRLMEM is itself an option that you can only declare in the system call that starts SAS up in the first place and there are advantages to keeping it under control, particularly on large multi-user servers. However, if your hash objects start to exceed what is available, here’s the sort of thing that you can expect to see:
ERROR: Hash object added 49136 items when memory failure occurred.
FATAL: Insufficient memory to execute data step program. Aborted during the EXECUTION phase.
NOTE: The SAS System stopped processing this step because of insufficient memory.
NOTE: SAS set option OBS=0 and will continue to check statements. This may cause NOTE: No observations in data set.
Those messages are a cue for you to learn to keep those hash objects and to only ever make them as large as your memory settings will allow. Another thing to note is that hash objects are best retained for rather fixed data volumes instead of ones that could outgrow their limits. There’s a certain amount of common sense in operation here but it may be that promoters of hash objects don’t mention their limitations as much as they should. If you want to find out more, SAS have a useful paper on their website and the their Knowledge Base has more on the error messages that you can get.
Here’s a possible bugbear with programming using the SAS Display Manager in UNIX, selecting sections of code and running them. In the installations that I have encountered, the mouse selection is not retained so the code selection cannot be run. There is a fix for this and it is not the most obvious. Going to the Preferences dialogue box (Tools > Options > Preferences… from the menu bar) and selecting the Editing tab brings up the screen below:
Ensuring that "Automatically store selection" is switched off, as shown above, will allow one to select and submit sections of code from a SAS program like what is normal practice with Windows SAS. It isn’t an obvious solution but it does the trick for me.