[PC Hardware for Linux Developers] OfficerJimLahey:
I would go for a once-mid-to-high-end laptop of about six years old (newer run but still holding the Windows 7 stickers), from a vendor I noted before. It does not guarantee complete compatibility so you would still want to cross reference the model number.

I am not a fan of "chiclet" keyboards (I have enough difficulty typing on laptop keyboards) and have fond memories of the IBM ThinkPads (I used to own the popular 600X) that I maintain one of the final bastions before Lenovo took design tips from Apple (by the way, I hear MacBooks can have reasonable compatibility as well, though there would be an extra premium there).

For a laptop longevity perspective (the second thing to look for), a "flagship" laptop from a vendor (especially from Apple or Lenovo) means better access to (and thus generally less expensive) spare parts. To identify this on the Lenovo side, it would mean part of the "T" or "X" lineup (both are business grade; the X models just have a smaller footprint). For what it's worth, business-grade HP laptops are the "ProBook" series.

From what I understand, the learning curve is not that difficult. There have been people who knew nothing about computers that learned Linux quite easily. The challenge for a Windows user trying Linux becomes "un-learning" specific workflow to make way for new ways of doing things. Apologies I can only be general - me trying to share my experience with the learning curve is difficult since that transition was about two decades ago and Microsoft drastically changed the typical user's workflow three times between the early 1990's of my first computer and the year 2000 (MS-DOS -> Windows 3.1 -> Windows 95 -> NT5) that makes the transition from Windows 7 to 8 to 10 look like a food fight. The first year I was quite reliant on a guru (I was in the expectation to accelerate my knowledge for an upcoming project) until I was directed to not use that as a crutch. A bit sad to say, that moment I was told to "RTFM" for a simple problem was when I really started to learn.

But I would definitely not dive into the deep end (as they say) by wiping your main computer for Linux. For starters, even with decent backups (which you should be doing anyway), your data can be inaccessible (installing Linux on a fully set up PC means losing all your personal files there, and if your backup tool to other media is done by a Windows program, Linux may not support restoring that data).

It is also a quick way to become frustrated when hitting even a small roadblock. I would not use "confused" as asked above for this phenomenon. When you combine the impact of the problem with the time in which you would need it resolved by, it can create a sort of desperation on a forum when the answer could have been glaring back without realizing it. Depending on how well documented the issue's solution is (and when a problem that prevents the achievement of a deadline occours on short notice, blind spots tend to happen to even the best of us), would-be readers get frustrated as well and may criticize the lack of research. An exaggerated XDA example of this is when someone flashes a ROM on their daily driver, without any backups first, without wiping anything, and then frantic that their only phone has app force closures every five seconds - and the plane for their two week trip leaves in six hours. In short, a dedicated device to play on means

you

set the pace on how you want to learn.

A dedicated laptop would be the better way to go. For a no-cost (no additional hardware to buy) demo of Linux, can try a live CD (will also determine how your hardware can interact with Linux) or maintain a persistent instance through an install in Oracle VirtualBox or VMWare (which Linux will work even if your hardware does not play with Linux). Much further away from recommended territory we have the "cold turkey" method (gripes noted in previous two paragraphs), and finally - for a reason - dual-boot (which has to opportunity to hose one or both operating systems at any given moment - including your data - for as something as simple as a Windows Update).

This turned out to be longer than expected, but I hope this helps.