now on substack
First issue of The Grumpy Engineer is live. No hype, no mercy. Subscribe if you like your tech unfiltered. https://thegrumpyengineer.substack.com
First issue of The Grumpy Engineer is live. No hype, no mercy. Subscribe if you like your tech unfiltered. https://thegrumpyengineer.substack.com
From a Web Developer’s Perspective I am primarily an iOS user, but at home, I also use Android devices (such as tablets, Fire TV, and some WearOS & Smart home devices). Recently, I developed a simple, free, and ad-free Android app. My goal was to learn something new while creating a free app that could benefit others. However, the … Read more
Recently, I was reviewing the API calls of DeepSeek. Right away, I noticed that everything aligns directly with OpenAI counterparts. Interestingly, even the Python library is based on OpenAI’s library. All you need to do is modify the endpoint and api_key to get started. This makes the transition incredibly straightforward for anyone looking to switch. … Read more
I’m pleased to introduce a small project I’ve been working on—a Chrome extension that lets you quickly check Bitcoin prices right from your toolbar. The idea is to provide a convenient way to track Bitcoin’s current value without the need to switch tabs or open extra apps. Features Why I Created It I wanted a … Read more
I’ve been moving away from Google, Yandex, and DuckDuckGo lately. Perplexity not only provides better answers most of the time, but it also saves me time. So, how can we add this search engine to our browser? To add Perplexity AI as your default search engine in Microsoft Edge, follow these steps:Open Microsoft Edge on … Read more
Just released the first public version of my Icinga Chrome Extension (ICE). In the beginning I developed it for my own needs. Now it can work with any icinga & chrome installation. http://bit.ly/icingaplugin You can test it with official icinga demo page: https://www.icinga.com/demo/authentication/login user: demo pass: demo Feel free to test it and report bugs … Read more
#!/usr/bin/perl use strict; use Data::Dumper; sub swap{ @_[ 0, 1 ] = @_[ 1, 0 ]; } sub bsort{ my (@a) = @_; for my $j (0 .. $#a){ for my $i (0 .. $#a – 1 – $j ){ … Read more
$stopingServices=Get-Service | Where-Object {$_.status -eq “stoping”} $startingServices=Get-Service | Where-Object {$_.status -eq “starting”} $runningServices=Get-Service | Where-Object {$_.status -eq “running”} $stoppedServices=Get-Service | Where-Object {$_.status -eq “stopped”} if($startingServices){ Write-Host “`nStarting Services: $startingServices” } if($stopingServices){ Write-Host “`nStoping Services: $stopingServices” } if($runningServices){ Write-Host “`nRunning Services: $runningServices” } if($stoppedServices){ Write-Host “`nStopped Services: $stoppedServices” }
Get-ItemProperty -Path Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
Open Powershell as an Administrator on the web server, then run: $apmem= gwmi -ComputerName localhost -NS ‘root\WebAdministration’ -class ‘WorkerProcess’ | select PSComputerName, AppPoolName,ProcessId , @{n=’RAM’;e={ [math]::round((Get-Process -Id $_.ProcessId -ComputerName $_.PSComputerName).WorkingSet / 1Mb) }} | sort RAM -Descending | ft -AutoSize echo $apmem You should see something like: PS C:\Windows\system32> C:\scripts\appool.ps1 PSComputerName AppPoolName ProcessId RAM ————– … Read more