Tag Archives: something

Windows 7 sunset gives PC market a boost in 2019

Analysts reported this month that the global PC market did something in 2019 it had not accomplished in seven years: It grew.

The figures differ as to how much — IDC reported a 2.7% year-over-year growth in global shipments, while Gartner cited a 0.6% increase — but experts agree that the Windows 7 sunset helped to prompt a hardware refresh for the enterprise. Per Gartner, Lenovo, HP and Dell shipped the most PCs in 2019, seeing growth of 8%, 3% and 5%, respectively.

Whether the boost in growth will be a one-year blip is debatable, but there is consensus that, for the enterprise at least, the PC is here to stay.

Windows 7 sunset gives PCs a boost

Linn Huang, research vice president at IDC, attributed the increase to a confluence of factors. Companies found themselves in a unique position of having to migrate to a new OS amid the growing tensions of a trade war with China, where PC components are commonly manufactured.

“For starters, the January 2020 [end of support] of Windows 7 means businesses — large and small alike — [were] either completing or accelerating their Windows 10 migrations,” he said.

Huang also mentioned shortages and tariff issues may have affected the market as well. Intel faced CPU supply issues that eased during the course of 2019 and, in December, President Trump tweeted that “penalty tariffs” would “not be charged,” thanks to a new agreement with China.

Linn Huang, research vice president at IDCLinn Huang

Mikako Kitagawa, senior principal analyst at Gartner, said the shipment boost was not because of any renewed interest in using the PC, but almost solely because of the Windows 7 sunset, which occurred Jan. 14.

Mikako Kitagawa, senior principal analyst at GartnerMikako Kitagawa

Forrester Research analyst Andrew Hewitt acknowledged the effect of the Windows 7 sunset, but said it was only part of the story.

“I also believe that the PC is becoming more important as organizations try to improve employee experience,” he said. “We know from research that if people can’t make progress every day at work, they’re vulnerable to burnout and can contribute to higher attrition. The PC sits at the heart of productivity, so organizations see it as an important driver of [employee experience].”

Yev Pusin, director of strategy at data storage firm Backblaze, said the business’ clients — especially on the enterprise side — indeed had a need for something that could contribute more to productivity than a smartphone or tablet.

“I think a lot more folks … realized that, for the multi-tasking and flexibility they want, they need an actual computer — a Mac or PC,” he said.

Will PC market growth continue?

Kitagawa expects to see shipments dip in 2020 and 2021 due to a weak consumer market, as the smartphone has largely subsumed the PC’s role in daily life. Smartphones have made inroads in the enterprise as well, especially among younger workers.

Andrew Hewitt, analyst, Forrester ResearchAndrew Hewitt

“People used to carry a laptop or tablet to do work. Now, smartphone screens are bigger, so they are able to handle some tasks as well,” she said. “On the mentality side, many young people feel their smartphone is their primary work device.”

This is not to say that the PC will be disappearing from the workspace anytime soon.

Yev Pusin, director of strategy at Backblaze Yev Pusin

“It’s not the case that the PC is going away,” Kitagawa said. “The PC is a very important business tool.”

Huang likewise expected a decline of PC sales in the next couple of years but said a shift in the market might accompany that trend.

“Consumers and commercial users alike are demanding better and better with each generation,” he said. “Consequently, we expect to ship fewer PCs [in] 2020 and beyond, but the market will continue to churn toward more premium ends.”

Pusin said he did see a continued appetite for PCs in the future but agreed that customers interested in buying computers might focus on the higher end of performance.

According to Hewitt, the PC will retain its central place in the business world, although the form factor may differ.

“Our research actually shows that 30% of the most important factors for improving employee experience are technology-related, and the PC is a big part of that,” he said.

Go to Original Article
Author:

For Sale – Dell XPS 15 9560 – i5, 8gb, 256gb ssd, 1050 4gb and 4k touchscreen

Lovely laptop, selling as I’m moving to something smaller.

All working spot on. Note, like a macbook, this has a US keyboard layout but can set to UK mode no problem.

all in great condition, really, really nice laptop.

Spec is

i5 7300hq
8gb ram (easy to upgrade if you wanted)
256gb ssd (again, easy to upgrade)
nvidia 1050 4gb gpu
4k touchscreen

comes with genuine charger

I’d like £630 delivered

Any questions – let me know

Go to Original Article
Author:

Wanted – iMac 27” 2013+

Hi all,

Having recently purchasing a a MacBook Pro and falling in love with it, I am looking for something a little more powerful.

i am looking for an iMac 27” which is 2013 or beyond. Hoping for it to come with a fusion drive (1tb) the Magic Mouse, keyboard, trackpad and boxed if possible.

Happy to collect to keep cost down. Let me know what you have

Go to Original Article
Author:

How to manage Server Core with PowerShell

After you first install Windows Server 2019 and reboot, you might find something unexpected: a command prompt.

While you’re sure you didn’t select the Server Core option, Microsoft now makes it the default Windows Server OS deployment for its smaller attack surface and lower system requirements. While you might remember DOS commands, those are only going to get you so far. To deploy and manage Server Core, you need to build your familiarity with PowerShell to operate this headless flavor of Windows Server.

To help you on your way, you will want to build your knowledge of PowerShell and might start with the PowerShell integrated scripting environment (ISE). PowerShell ISE offers a wealth of features for the novice PowerShell user, including auto complete of commands to context-colored commands to step you through the scripting process. The problem is PowerShell ISE requires a GUI or the “full” Windows Server. To manage Server Core, you have the command window and PowerShell in its raw form.

Start with the PowerShell basics

To start, type in powershell to get into the environment, denoted by the PS before the C: prompt. A few basic DOS commands will work, but PowerShell is a different language. Before you can add features and roles, you need to set your IP and domain. It can be done in PowerShell, but this is laborious and requires a fair amount of typing. Instead, we can take a shortcut and use sconfig to compete the setup. After that, we can use PowerShell for additional administrative work.

PowerShell uses a verb-noun format, called cmdlets, for its commands, such as Install-WindowsFeature or Get-Help. The verbs have predefined categories that are generally clear on their function. Some examples of PowerShell cmdlets are:

  • Install: Use this PowerShell verb to install software or some resource to a location or initialize an install process. This would typically be done to install a windows feature such as Dynamic Host Configuration Protocol (DHCP).
  • Set: This verb modifies existing settings in Windows resources, such as adjusting networking or other existing settings. It also works to create the resource if it did not already exist.
  • Add: Use this verb to add a resource or setting to an existing feature or role. For example, this could be used to add a scope onto the newly installed DHCP service.
  • Get: This is a resource retriever for data or contents of a resource. You could use Get to present the resolution of the display and then use Set to change it.

To install DHCP to a Server Core deployment with PowerShell, use the following commands.

Install the service:

Install-WindowsFeature –name 'dhcp'

Add a scope for DHCP:

Add-DhcpServerV4Scope –name "Office" –StartingRange 192.168.1.100 -EndRange 192.168.1.200 -SubnetMask 255.255.255.0

Set the lease time:

Set-DHCPSet-DhcpServerv4Scope -ScopeId 192.168.1.100 -LeaseDuration 1.00:00:00

Check the DHCP IPv4 scope:

Get-DhcpServerv4Scope

Additional pointers for PowerShell newcomers

Each command has a purpose and means you have to know the syntax, which is the hardest part of learning PowerShell. Not knowing what you’re looking for can be very frustrating, but there is help. The Get-Help displays the related commands for use with that function or role.

Part of the trouble for new PowerShell users is this can still be overwhelming to memorize all the commands, but there is a shortcut. As you start to type a command, the tab key auto-completes the PowerShell commands. For example, if you type Get-Help R and press the tab key, PowerShell will cycle through the commands, such as the command Remove-DHCPServerInDC, see Figure 1. When you find the command you want and hit enter, PowerShell presents additional information for using that command. Get-Help even supports wildcards, so you could type Get-Help *dhcp* to get results for commands that contain that phrase.

Get-Help command
Figure 1. Use the Get-Help command to see the syntax used with a particular PowerShell cmdlet.

The tab function in PowerShell is a savior. While this approach is a little clumsy, it is a valuable asset in a pinch due to the sheer number of commands to remember. For example, a base install of Windows 10 includes Windows PowerShell 5.1 which features more than 1,500 cmdlets. As you install additional PowerShell modules, you make more cmdlets available.

There are many PowerShell books, but do you really need them? There are extensive libraries of PowerShell code that are free to manipulate and use. Even walking through a Microsoft wizard gives the option to create the PowerShell code for the wizard you just ran. As you learn where to find PowerShell code, it becomes less of a process to write a script from scratch but more of a modification of existing code. You don’t have to be an expert; you just need to know how to manipulate the proper fields and areas.

Outside of typos, the biggest stumbling block for most beginners is not reading the screen. PowerShell does a mixed job with its error messages. The type is red when something doesn’t work, and PowerShell will give the line and character where the error occurred.

In the example in Figure 2, PowerShell threw an error due to the extra letter s at the end of the command Get-WindowsFeature. The system didn’t recognize the command, so it tagged the entire command rather than the individual letter, which can be frustrating for beginners.

PowerShell error message
Figure 2. When working with PowerShell on the command line, you don’t get precise locations of where an error occurred if you have a typo in a cmdlet name.

The key is to review your code closely, then review it again. If the command doesn’t work, you have to fix it to move forward. It helps to stop and take a deep breath, then slowly reread the code. Copying and pasting a script from the web isn’t foolproof and can introduce an error. With some time and patience, and some fundamental PowerShell knowledge of the commands, you can get moving with it a lot quicker than you might have thought.

Go to Original Article
Author:

Experts say there’s still a long road ahead for the FHIR standard

A major issue hindering interoperability in healthcare is a lack of data standardization, something federal regulators are trying to change by pushing adoption of the Fast Healthcare Interoperability Resources standard.

FHIR is an interoperability standard developed by Health Level Seven International (HL7) for the electronic exchange of health data. The FHIR standard has gone through multiple iterations and taken five years to develop. It sets a consistent description for healthcare data formats and application programming interfaces that healthcare organizations can use to exchange electronic health records.

In a set of proposed rules for interoperability from the Office of the National Coordinator (ONC) for Health IT and the Centers for Medicare and Medicaid Services (CMS), the agencies would require healthcare organizations to use FHIR-enabled healthcare APIs that would allow patients to download their standardized electronic health information into a healthcare app on their smartphones.

During a panel discussion on the future of interoperability at ONC’s 3rd Interoperability Forum in Washington, D.C., Thursday, panelists including Kisha Hawthorne, CIO of Children’s Hospital of Philadelphia, focused on the reality of using the FHIR standard, and whether the standard will help achieve interoperability in healthcare.

The reality of FHIR standard use today

Will the FHIR standard be a key facilitator of interoperability in healthcare? Panelists agreed that it will — in time. Right now, though, the standard still needs work in the implementation department.

In the provider space there’s a ways to go. But we’re excited and we think it will take hold.
Kisha HawthorneCIO, Children’s Hospital of Philadelphia

Hawthorne said her team at Children’s Hospital of Philadelphia is looking to use the FHIR standard in the provider space to bridge the gaps between the different software vendors with which the organization works.

The hospital uses an Epic EHR, and Hawthorne said that while she thinks vendors like Epic are beginning to implement and use the FHIR standard, she hopes to see that work “fast forward” with Epic and other vendors to make it easier to gather and share, as well as use, data in the provider space. FHIR standard use is something that’s not quite there yet, she said.

“In the provider space, there’s a ways to go,” Hawthorne said. “But we’re excited and we think it will take hold.”

The potential of the FHIR standard is exciting and it will “open a lot of doors,” but the reality is that the standard is immature, said Kristen Valdes, CEO of personal health app b.well Connected Health.

Valdes said that although she thinks the FHIR standard will create a push toward interoperability in healthcare, challenges associated with implementation of the FHIR standard are hindering progress.

A significant number of providers and organizations aren’t “using a fraction” of the implementation guidelines that have been made available for the FHIR standard, she said. While organizations are thinking about the operational impacts of using FHIR on behalf of users, she said there continues to be ongoing debate about the proper HIPAA rules to provide consumers access to their own data, which also hinder its implementation.

“We really have to think about the operational workflows and how it’s going to affect the people who are expected to implement and deploy FHIR,” she said.

The problem with the FHIR standard isn’t the technical aspects of the standard, but the process and people implementing it, said Vik Kheterpal, principal of interoperability product vendor CareEvolution.

As a technology standard, Kheterpal said it makes sense and has already seen relative success in the launch of programs such as CMS’ Blue Button 2.0 program. Blue Button 2.0 uses the FHIR standard for beneficiary data, such as drug prescriptions, primary care cost and treatment. Yet, the problem with the rest of healthcare often lies in misinterpretation of policy when it comes to sharing patient data.

Anil Jain, chief health informatics officer at IBM Watson Health, said he thinks the value of the FHIR standard is real, and organizations already need to think about what’s next once the standard matures.

As use of the FHIR standard grows among healthcare organizations, Jain said it’s important to create businesses cases and models for sharing data that will work using the standard. Otherwise, providers and patients will continue to lack trust in the data, something a standard like FHIR alone won’t give healthcare.

Go to Original Article
Author:

Pester tests help pinpoint infrastructure issues

Troubleshooting is a fact of life for the Windows administrator. Something is broken that prohibits an employee from doing important work, and it’s your job to find out what’s wrong and fix it fast.

There are many troubleshooting approaches. At one end, you have frenzied clicking around multiple tools desperately trying to spot something that can shed a clue. This hope-based approach is not the best. At the other end, you can employ a known set of tests that enable you to work methodically through the issues and get to the root of the problem. The advantage to the more methodical approach is that you get to the answer, but the downside is it requires multiple steps. The ideal approach combines the best of both worlds with an automated troubleshooting approach.

Enter the Pester module for PowerShell, which provides a testing framework for PowerShell code and infrastructure setups. The advantage of troubleshooting with Pester tests is that the tests always perform in a consistent manner, which means other members of the IT team can use them to run tests. One way to extend the concept is to add suggestions for possible remedies when a test fails to teach junior admins how to troubleshoot.

The anatomy of a common troubleshooting scenario

Consider a common troubleshooting scenario: A user can’t connect to a server. You might try several tests and hope to see the following results. First, test the user’s network card by testing the loopback address.

Test-Connection 127.0.0.1 -Quiet

Then, test the local machine’s IP address.

Test-Connection 10.10.54.5 -Quiet

Test the server’s address.

Test-Connection 10.10.54.30 -Quiet

Test the connection via the server’s name. This also tests the DNS resolution from the client.

Test-Connection W19FS01 -Quiet

Figure 1 shows the expected results.

Testing network connectivity
Figure 1. Testing the network connectivity to the server named W19FS01 returns the expected results.

How could we go about automating a suite of tests of this sort? One way is to use the PowerShell Pester module. Windows PowerShell v5.1 has Pester version v3.4 installed; you must upgrade the version of Pester if you use Windows PowerShell or install the latest version if you work with PowerShell Core.

On Windows PowerShell, use the following.

Install-Module -Name Pester -Force -SkipPublisherCheck

This will install the latest version of Pester even though there is a version preinstalled with the OS.

On PowerShell Core, use the following.

Install-Module -Name Pester -Scope AllUsers -Force

Once you’ve installed Pester from the gallery, you can update it on any version of PowerShell with the following.

Update-Module -Name Pester -Force

PowerShell Core v6.2 has a problem of installing modules from the gallery into the C:UsersDocumentsPowerShellModules folder by default. When you use Install -Module, you can override this behavior using the AllUsers scope. Update-Module doesn’t have a Scope parameter, so the new version of the module ends up in the user area rather than the C:Program FilesPowerShellModules folder. You should keep modules there to make them accessible to all users on the system. Until the PowerShell team resolves this issue, it may be best on PowerShell Core to delete old versions of the module and reinstall into the AllUsers scope rather than using Update-Module.

Building Pester tests with Windows PowerShell

In the following example, I use Windows PowerShell for the more polished version of Test-Connection and easier access to other modules. You can use the Windows Compatibility module for PowerShell Core to use the required modules.

Let’s create the first test, pinging the loopback adapter.

## test loopback adapter
Describe 'Loopback Adapter' {
It 'Loop back adapter should be pingable' {
Test-Connection -ComputerName 127.0.0.1 -Quiet -Count 1 |
Should Be $true
}
}

The Describe keyword creates the test container with a name, analogous to defining and supplying a name to a function. The It keyword creates a test. The text following It gets echoed back when displaying the results. You can have multiple tests in a single container; for this article, I will restrict tests to one per container.

Within the It block, the syntax reduces to the following.

 | Should 

Our example is a test.

Test-Connection -ComputerName 127.0.0.1 -Quiet -Count 1

And here is a desired result.

Should Be $true

Most of the tests you’ll design for troubleshooting purposes will have the following result.

Should Be 

The Pester documentation (about_Pester and about_should) explains how to create other tests.

When you run the test, you should see these results.

Describing Loopback Adapter
[+] Loop back adapter should be pingable 1.04s

The first line echoes the container name and then each test in the container is run — with success shown by [+] or a failure by [-]. The text from the It statement is echoed back with the time taken to run the test.

Let’s add some more tests.

## test local adapter
Describe 'Local Adapter' {
It 'Local adapter should be pingable' {
Test-Connection -ComputerName 10.10.54.5 -Quiet -Count 1 |
Should Be $true
}
}
## test server adapter
Describe 'Server Adapter' {
It 'Server adapter should be pingable' {
Test-Connection -ComputerName W19FS01 -Quiet -Count 1 |
Should Be $true
}
}

The first test is for the local adapter, and the second test is for the server adapter. You’d probably want to test the default gateway in between the two tests, but my test lab doesn’t have one.

Running the three tests gives these results.

Describing Loopback Adapter
[+] Loop back adapter should be pingable 82ms

Describing Local Adapter
[+] Local adapter should be pingable 74ms

Describing Server Adapter
[-] Server adapter should be pingable 3.07s
Expected $true, but got $false.
20: Should Be $true

The first two tests passed, but pinging the server adapter failed. Notice the results included the expected result and the actual result.

The test that pings the server adapter actually performs two tests. It tests the resolution of the name of the server to an IP address and then pings that IP address. You should only test one thing at a time to determine the problem more accurately.

The tests should be changed to the following.

## test loopback adapter
Describe 'Loopback Adapter' {
It 'Loop back adapter should be pingable' {
Test-Connection -ComputerName 127.0.0.1 -Quiet -Count 1 |
Should Be $true
}
}

## test local adapter
Describe 'Local Adapter' {
It 'Local adapter should be pingable' {
Test-Connection -ComputerName 10.10.54.5 -Quiet -Count 1 |
Should Be $true
}
}

## test server IP address
Describe 'Server IP address' {
It 'Server IP address should be pingable' {
Test-Connection -ComputerName 10.10.54.30 -Quiet -Count 1 |
Should Be $true
}
}

## test server name
Describe 'Server Name' {
It 'Server name should be pingable' {
Test-Connection -ComputerName W19FS01 -Quiet -Count 1 |
Should Be $true
}
}

The first and second tests remain the same, while I split the third test to check the server’s IP address and then the resolution and ping. Running these tests produced the following results.

Describing Loopback Adapter
[+] Loop back adapter should be pingable 104ms

Describing Local Adapter
[+] Local adapter should be pingable 87ms

Describing Server IP address
[-] Server IP address should be pingable 3.65s
Expected $true, but got $false.
21: Should Be $true

Describing Server Name
[-] Server name should be pingable 3.66s
Expected $true, but got $false.
29: Should Be $true

The first two tests passed, but both the third and fourth tests failed.

How to fine-tune troubleshooting with Pester tests

Windows troubleshooting is often an iterative process; you find one issue and resolve it, only to uncover another issue.

Windows troubleshooting is often an iterative process; you find one issue and resolve it, only to uncover another issue. In our example, you’d ideally want the tests to stop after the first failure. The tests on the server failed because it’s switched off. If you discover that you can’t ping the server, then the next step would be to check if it’s running.

If you run a file containing Pester tests, all the tests in the file will run even if some of the tests fail. To stop after the first failure, you must run the tests individually, which requires you to call the tests from another script.

Save the pester tests as PingTests.ps1 to a folder called TroubleShooting. The files containing the tests are in a subfolder called Tests.

Make a second script called Test-ServerPing.ps1 in the Troubleshooting folder with the following.

$tests = 'Loopback Adapter', 'Local Adapter', 'Server IP address', 'Server Name'

$data = foreach ($test in $tests) {
$result = $null
$result = Invoke-Pester -Script @{Path = 'C:ScriptsTroubleShootingTestsPingTests.ps1'} -PassThru -TestName "$test" -Show None

$props = [ordered]@{
'Test' = $result.TestResult.Name
'Result' = $result.TestResult.Result
'Failure Message' = $result.TestResult.FailureMessage
}
New-Object -TypeName PSObject -Property $props

if ($result.FailedCount -gt 0) {break}
}

$data | Format-Table -AutoSize -Wrap

These tests are from each of the Describe statements shown earlier. We use a foreach loop to run each test from the PingTests.ps1 file. The results from each test create an output object. If a failure occurs, the testing stops so you can see where the first failure occurred without spending time on further irrelevant — at this stage — testing.

 Running Test-ServerPing.ps1 produces these results.

Test                                 Result Failure  Message                 
---- ------ ------- -------
Loop back adapter should be pingable Passed
Local adapter should be pingable Passed
Server IP address should be pingable Failed Expected $true, but got $false.

Currently, the IP addresses and server name are hardcoded. Hardcoding the loopback adapter address is acceptable because it’s always 127.0.0.1. The other tests must be made generic. The easiest way to change that is to create a variable in Test-PingServer.ps1 that stores the required information. That variable will be accessible by the Pester tests because they run in a child scope of Test-PingServer.ps1, which becomes the following.

param (
[string]$ServerToTest
)

function Get-NetworkInformation {
param (
[string]$server
)

$nic = Get-NetAdapter -Name LAN

$ip = Get-NetIPAddress -AddressFamily IPv4 -InterfaceAlias LAN

$dg = Get-NetIPConfiguration -InterfaceAlias LAN

$props = [ordered]@{
iIndex = $nic.InterfaceIndex
iAlias = $nic.InterfaceAlias
Status = if ($nic.InterfaceOperationalStatus -eq 1){'Up'}else{'Down'}
IPAddress = $ip.IPAddress
PrefixLength = $ip.PrefixLength
DefaultGateway = $dg.IPv4DefaultGateway | select -ExpandProperty NextHop
DNSserver = ($dg.DNSServer).serverAddresses
Server = $server
ServerIP = Resolve-DnsName -Name $server | select -ExpandProperty IPAddress
}
New-Object -TypeName PSobject -Property $props
}
$netinfo = Get-NetworkInformation -server $ServerToTest
$path = 'C:ScriptsTroubleShootingTestsPingTests.ps1'

$tests = Get-Content -Path $path |
Select-String -Pattern 'Describe' |
foreach {
(($_ -split 'Describe')[1]).Trim('{').Trim().Trim("'")
}

$data = foreach ($test in $tests) {
$result = $null
$result = Invoke-Pester -Script @{Path = $path} -PassThru -TestName "$test" -Show None

$props = [ordered]@{
'Test' = $result.TestResult.Name
'Result' = $result.TestResult.Result
'Failure Message' = $result.TestResult.FailureMessage
}
New-Object -TypeName PSObject -Property $props

if ($result.FailedCount -gt 0) {break}
}

$data | Format-Table -AutoSize -Wrap

The script takes a parameter ServerToTest, which you use to input the server name. The function Get-NetworkInformation discovers the information required to run the tests using the Get-NetAdapter, Get-NetIPAddress and Get-NetIPConfiguration cmdlets. My network adapters have the name LAN to make access easier. You should name your adapters something easy for you to access, especially if you have multiple adapters in a system. Resolve-Dnsname gets the server’s IP address from the name. The Get-NetworkInformation function populates the $netinfo variable.

The list of tests is automatically generated from the PingTests.ps1 file by using Get-Content to read the file and Select-String to find the lines with the Describe keyword.

An additional test checks if the DNS server is available, which also illustrates how $netinfo is used.

## test DNS server
Describe 'DNSServer' {
It 'DNS server should be available' {
Test-Connection -ComputerName $netinfo.DNSserver -Quiet -Count 1 |
Should Be $true

}
}

Run the script with the server name as a parameter.

.Test-ServerPing.ps1 -ServerToTest W19FS01

The results are shown in Figure 2.

server ping test
Figure 2. When we run Test-ServerPing.ps1, the testing stops when a failure occurs.

You can add other tests, such as testing the default gateway.

The final versions of the code used for this article are available at this link. A further example of using Pester for troubleshooting — this time for troubleshooting the configuration of PowerShell remoting — is also available in the same repository. In the Test-Remoting.zip file, the RemotingTests.ps1 file contains the Pester tests, and the Test-Remoting.ps1 file contains the code to run the tests and stop when a problem is detected. The code assumes Windows PowerShell but can work in PowerShell Core with some modifications.

Why troubleshooting is still an important skill

Monitoring products, such as System Center Operations Manager, can report if a server or service goes offline and may remove the need for some of the troubleshooting scenarios, but there are many scenarios where this ability is still needed. Some of these include the following:

  • There isn’t a monitoring tool in place.
  • The monitoring tool doesn’t oversee the technology at the root of the problem.
  • Distributed environments have complicated networks that may not be monitored.
  • The issue is related to a configuration problem, which is outside the scope of any monitoring product.

If you adopt this troubleshooting approach, I recommend using the Test-X naming convention for the code that runs the tests. You could convert the Test-X scripts to a module that could utilize single copies of functions, such as Get-NetworkInformation, as hidden helper functions.

Go to Original Article
Author:

Wanted – Good spec Laptop for £200 tops Essex area

Looking for a Laptop for the family so i can retire my old Win Xp Toshiba.

Would like something thats able to run games like Roblox and Fortnite for my son and run all the obvious Microsoft applications with ease.

Would rather cash on collection in and around the Herts essex area

£200 is my budget

Thanks

Location: Harlow essex

______________________________________________________
This message is automatically inserted in all classifieds forum threads.
By replying to this thread you agree to abide by the trading rules detailed here.
Please be advised, all buyers and sellers should satisfy themselves that the other party is genuine by providing the following via private conversation to each other after negotiations are complete and prior to dispatching goods and making payment:

  • Landline telephone number. Make a call to check out the area code and number are correct, too
  • Name and address including postcode
  • Valid e-mail address

DO NOT proceed with a deal until you are completely satisfied with all details being correct. It’s in your best interest to check out these details yourself.

For Trade – Corsair 900D tower for trade

I’m looking to trade my 900D for something a bit smaller, a bit more discrete but still a full ATX case.

My tower will come boxed, it has ALL the fans that came with it the day i purchased it and they’re all brand new ( i swapped them straight away)

The case is in excellent condition, i would say very close to being mint if it wasn’t for a couple of tiny marks on the front (picture makes them stand out more than they do)

I would consider selling but since it still looks to be about £360 new, i’d be asking for £200

I’m happy to deliver if need be and since i enjoy driving, i don’t mind a reasonable distance if buyer is happy to contribute to fuel costs.

Corsair Obsidian 900D Super Tower Case (CC-9011022-WW)

Price and currency: £200
Delivery: Goods must be exchanged in person
Payment method: Cash on collection or delivery
Location: Lincoln
Advertised elsewhere?: Not advertised elsewhere
Prefer goods collected?: I prefer the goods to be collected

______________________________________________________
This message is automatically inserted in all classifieds forum threads.
By replying to this thread you agree to abide by the trading rules detailed here.
Please be advised, all buyers and sellers should satisfy themselves that the other party is genuine by providing the following via private conversation to each other after negotiations are complete and prior to dispatching goods and making payment:

  • Landline telephone number. Make a call to check out the area code and number are correct, too
  • Name and address including postcode
  • Valid e-mail address

DO NOT proceed with a deal until you are completely satisfied with all details being correct. It’s in your best interest to check out these details yourself.

Wanted – Good spec Laptop for £200 tops Essex area

Looking for a Laptop for the family so i can retire my old Win Xp Toshiba.

Would like something thats able to run games like Roblox and Fortnite for my son and run all the obvious Microsoft applications with ease.

Would rather cash on collection in and around the Herts essex area

£200 is my budget

Thanks

Location: Harlow essex

______________________________________________________
This message is automatically inserted in all classifieds forum threads.
By replying to this thread you agree to abide by the trading rules detailed here.
Please be advised, all buyers and sellers should satisfy themselves that the other party is genuine by providing the following via private conversation to each other after negotiations are complete and prior to dispatching goods and making payment:

  • Landline telephone number. Make a call to check out the area code and number are correct, too
  • Name and address including postcode
  • Valid e-mail address

DO NOT proceed with a deal until you are completely satisfied with all details being correct. It’s in your best interest to check out these details yourself.

For Trade – Corsair 900D tower for trade

I’m looking to trade my 900D for something a bit smaller, a bit more discrete but still a full ATX case.

My tower will come boxed, it has ALL the fans that came with it the day i purchased it and they’re all brand new ( i swapped them straight away)

The case is in excellent condition, i would say very close to being mint if it wasn’t for a couple of tiny marks on the front (picture makes them stand out more than they do)

I would consider selling but since it still looks to be about £360 new, i’d be asking for £200

I’m happy to deliver if need be and since i enjoy driving, i don’t mind a reasonable distance if buyer is happy to contribute to fuel costs.

Corsair Obsidian 900D Super Tower Case (CC-9011022-WW)

Price and currency: £200
Delivery: Goods must be exchanged in person
Payment method: Cash on collection or delivery
Location: Lincoln
Advertised elsewhere?: Not advertised elsewhere
Prefer goods collected?: I prefer the goods to be collected

______________________________________________________
This message is automatically inserted in all classifieds forum threads.
By replying to this thread you agree to abide by the trading rules detailed here.
Please be advised, all buyers and sellers should satisfy themselves that the other party is genuine by providing the following via private conversation to each other after negotiations are complete and prior to dispatching goods and making payment:

  • Landline telephone number. Make a call to check out the area code and number are correct, too
  • Name and address including postcode
  • Valid e-mail address

DO NOT proceed with a deal until you are completely satisfied with all details being correct. It’s in your best interest to check out these details yourself.