Superuser is a great site, there are lots of kind, enthusiastic people here willing to help others who are in need. But I wonder how do I go about solving computer problems on my own and become a super user who will be able to contribute answers to others in need? Top contributors here must have learned it somewhere, perhaps from some kind of Windows manual?

For example, I wanted to know how to make my laptop into a wireless hot spot so I googled, and I found this great article that shows me step by step how to configure Windows, (enter netsh wlan show driver in the cmd to determine if my wireless card supports it... etc etc). But how did the writer of this article know this much?

I realize experience plays an important role, but I think experience alone will not lead me to enter netsh wlan show drivers in the cmd if I did not know it existed in the first place. How does one know netsh existed in in the first place?

I understand the internet and superuser.com made it much more convenient to search for common computer problems. Granted, a lot of questions have been answered. But what if I have a new problem that not many people have encountered before (and its solution was not yet available on Google)? I could in theory make a thread on this site and hope someone else have an answer. But what if I want to be that person who can figure out the answer? what do I need to be able to solve that problem independently? Thanks!

share
8  
I think this would belong on [meta]. But it's a great question, and I think it deserves to be discussed. –  Marcus Chan Feb 3 '13 at 6:03
9  
Mostly it's experience and curiosity. Play with your computer. –  Mark Allen Feb 3 '13 at 6:05
    
@MarkAllen I understand, but experience will not lead you to type in netsh wlan show driver if you did not know it existed in the first place, I think I'm asking if there's some kind of a manual for windows that people can go to or how people become that proficient (as the writer of that article) in understanding Windows, its hardware to that capacity –  user22105 Feb 3 '13 at 6:06
1  
What do you mean, "solve problems on your own"? When I think of that, I include searching for other people with the same problem as part of solving it myself (searching, as opposed to actually asking). Are you asking how to do that, or how anyone learns this in the first place? Because they have different answers. –  cpast Feb 3 '13 at 6:11
5  
And there is no manual to Windows (or anything of similar complexity). There are official help pages that cover a lot of stuff, and help functions for some command line functions, but no full, complete manual. No one can fully understand everything in Windows, and no book could ever contain it. –  cpast Feb 3 '13 at 6:13
    
@cpast the internet and superuser.com made it much more convenient to search for common computer problems. I guess I'm asking what if I have a problem that not many people have encountered (say its solution is not yet available on google). I could in theory make a thread on this site and hope someone else have an answer. But what if I want to be that person who can figure out the solution? what do I need to be able to solve that problem independently? –  user22105 Feb 3 '13 at 6:16
11  
You want the real answer on how superusers do their magic, it is by doing this –  Scott Chamberlain Feb 3 '13 at 7:31
    
Go to school, get a Technology related degree. –  Zoredache Feb 3 '13 at 8:55
5  
I used to try answering every question I could possibly answer, for example by doing the research the OP had missed to do. Often—unfortunately?—answering questions just boils down to knowing how to use a web search. At some point you run into a dead end though, because simply researching things from online resources only gets you this far. You will have to try for yourself. –  slhck Feb 3 '13 at 14:01
2  
Must read: blog.superuser.com/2011/04/07/solving-problems –  Tom Wijsman Feb 4 '13 at 21:39
    
@TomWijsman: Interesting. Wonder why How do I troubleshoot when I have no clue where to start? wasn't moved to meta, just like this one was? –  Karan Feb 5 '13 at 4:46
2  
@Karan I think the line "...become a super user who will be able to contribute answers to others in need?" is what pushes it over the edge to make it a meta question. The other question is how do I solve problems in general where this question is asking about how to get good at solving problems on this site. –  Scott Chamberlain Feb 5 '13 at 7:59
    
Speaking as a 10K+ user...I'm completely self-trained. So, there goes that! –  Shinrai Feb 5 '13 at 15:28
2  
One learns by asking questions, like you are doing here. There will always be someone who knows more than you, and there will always be someone who knows less. Ask of the first group, and help the second. The second group will consider you a superuser if you help them once. –  Michael Blaustein Feb 5 '13 at 16:28
    
@ScottChamberlain: All right, but still, doesn't the question as stated ("I am not seeking answers to my current problem, but rather where and how to start on tackling such problems") "solicit debate, arguments, polling, or extended discussion"? –  Karan Feb 5 '13 at 19:34
show 5 more comments

migrated from superuser.com Feb 3 '13 at 9:07

This question came from our site for computer enthusiasts and power users.

10 Answers

Its a little bit zen, but one dosen't get 'mad skills' by wanting 'mad skills'. One achieves a higher level of skills by actually making use of the skills you have. I started off with pretty pathetic reputation, and got better with time.

First of all, most high rep folk tend to specialise. Two of the high rep users here tend to be OS X users mostly. I'm a hardware nut (who's an accidental generalist). There's windows specialists as well. They use these OSes and have a knowledge of how things work, roughly. You primarily learn by solving your own problems. This is often a combination of the very scientific process known as poking stuff with a stick (primary sources), and finding, and combining stuff other people found by poking with a stick. Knowledge very rarely is a vacuum, when it comes to computers. We're always cribbing notes from each other, and sharing knowledge.

As men of science, we do not simply poke things with a stick blindly. We have specific ways of poking things with a stick. A good computer guy has a process, a way of poking at things with a stick to get answers. He reads up on better ways of poking, and new and improved poking tools. He eventually finds his perfect poker.

Working out questions where you know part of the answer is a good way to hone your skills to, especially if its an unfamiliar scenario. Its also useful to post a 'good' answer, and not be afraid to make it better. My most highly voted (and now CWed) answer was edited multiple times as I refined it. The original question was not in my usual problem domain, but it was fun to solve.

In short, don't be afraid to experiment, and to read and learn. ;p

share
2  
All very true. There's no point trying to be knowledgeable in all the things (although I'm sure there are some exceptions to that rule, even here). Trying to solve everything with half-baked approaches is often the wrong way to go about it—most people who are new take time to study and learn from others, then apply their new-found knowledge. It's all an iterative process of improving what's already there. –  slhck Feb 3 '13 at 13:47
    
eheehee poking tools –  Luke Feb 5 '13 at 11:40
1  
I think the 3rd paragraph is the real key. Super users don't know everything, but experience helps them ask the right questions. In the net example of the OP, I doubt the author knew to use net, but they asked the question "How can I verify that my hardware will allow for bridging?" Getting better at asking the questions (and directly related, researching the answers), is how I find myself improving my skills. This applies to all things, not just technical skills. –  ernie Feb 6 '13 at 23:55
    
do IT certifications like Cisco networking certifications provide a systematic way of learning say computer networking? A certification resource would provide an overview of the tools (eg. netsh) that are available on a computer. This was an troubleshooter becomes aware of what resources are available to them. I think this way is better for someone who wants to become an avid troubleshooter or superuser –  user22105 Mar 5 '13 at 0:27
add comment

You ask yourself, "How did that person know to use netsh?". Yet, you just learned about netsh yourself.

The difference is if you start looking into netsh yourself now, so that you can learn what else can be achieved with it. Maybe you'll find out that you can also set your IP configurations to DHCP or set up static addresses. Maybe you'll find out how to manipulate the Windows firewall through it or any of the other tasks that can be handled through netsh.

So, the next time a networking related question about Windows comes up, you can pull from that knowledge and possibly utilize it.

You never settle for the knowledge you just received, you should build onto it and extend it.

share
2  
'You ask yourself, "How did that person know to use netsh?". Yet, you just learned about netsh yourself.'. Wonderful point! Nobody is guessing all this stuff. You read it somewhere, and you use it yourself the next time. And when you accomplish something new and useful, you publish it. –  TFM Feb 3 '13 at 13:46
    
do IT certifications like Cisco networking certifications provide a systematic way of learning say computer networking? A certification resource would provide an overview of the tools (eg. netsh) that are available on a computer. This was an troubleshooter becomes aware of what resources are available to them. I think this way is better for someone who wants to become an avid troubleshooter or superuser –  user22105 Mar 5 '13 at 0:25
add comment

I think it is mostly experience. I imagine most people don't memorize everything Windows or some program can do. But they've been using the OS long enough to have encountered much of what it has to offer, and know that it's really not that different from the previous version.

For example with netsh, most people probably don't just type the exact command they want at will, but they know that they can append /? or help to a command to learn more.

Maybe the author of that article did something like:

netsh help
netsh wlan help
netsh wlan show help

in order to accomplish what he had in mind.

If you don't really have a familiarity with the OS, just keep exploring it. It's pretty hard to break things. Or look into some of the Microsoft Press Self-Paced Training Kits, they will help get you there.

share
    
how did the author knew netsh is a valid command? –  user22105 Feb 3 '13 at 6:18
    
I was actually about to say this in a comment, but it really does belong as an answer. Also, note: Much of this is applying things you know in new ways. For example, you'd think something like "I know netsh wlan does wireless networking stuff, maybe that's related". –  cpast Feb 3 '13 at 6:19
5  
@user22105: Books, Internet, etc. He may have learned it in a class. He might have googled something in the past and seen netsh. There are many ways to learn this stuff. –  cpast Feb 3 '13 at 6:20
3  
@user22105 Like cpast said, there are a million ways to have come across netsh (which has been part of Windows for the last five versions). I'm sure if you worked your way through a book about configuring Windows, it'd be something you used a few times too. –  Louis Feb 3 '13 at 6:26
2  
@user22105 You do know that a valid command is usually just a program file located somewhere in C:\Windows? I have discovered some commands by browsing C:\Windows and C:\Windows\System32 and trying some of those programs with the /? flag to find out what they do. –  BenjiWiebe Feb 4 '13 at 17:32
1  
I learnt DOS Trying all the commands vfrazee.com/ms-dos/6.22/help there is a microsoft book on windows commands and a website listing them all. Any techie knows of netsh, including you @user22105 apparently, simply because there are a few problems that are solved by it that one has run into. Though it's a powerful command that few know how to use fully but techies can look up a specific thing if need be. netsh winsock reset was a classic and I posted about it superuser.com/questions/163150/… –  barlop Feb 11 '13 at 17:04
add comment

In my personal opinion (and I'm sure others will have different ways of looking at it), the thing that drives me to know a bunch of stuff about computers is the drive to understand them deeply. Reading sites like AnandTech that strive to explain how the products they review actually work, browsing articles on Wikipedia, reading forums, and so on and so forth, gives me a knowledge base that informs how I use everything electronic. For example, if you know about how wireless cards communicate with each other, and are given numerical addresses like 192.168.1.132 by your router, you'll be able to understand how firewalls and port forwarding work, and eventually be able to try out port forwarding yourself if you run a game server or something. Just be curious, and recognize that you won't understand everything in a day or a week or a month or a decade. The more interested you get, the more crazy things you'll want to try (Ubuntu virtual machine, anyone?), the more questions you'll ask, and the more you'll understand. Just keep at it.

But what if I want to be that person who can figure out the solution? what do I need to be able to solve that problem independently?

In a lot of cases, people coming up with their own answers boils down to deep knowledge, trial-and-error, and luck. For example, if a user was having problems with their keyboard inserting unusual characters, I would think of checking their language options out, since I know that language settings can hijack keyboard input (that answer got me my first SU upvote, iirc, even though I've never used the system the guy had). And knowing things about the system you run makes you more confident about trying new things, and you can come up with new things that way, too.

share
add comment

I'm not sure if one of the answers here already covered this, but it's very important to work on your analytical skills.

Computers, like most man-made artifacts, are divided up into a finite number of separate components. Unlike the natural world, where everything in nature is infinitely divisible, computer systems were designed piece by piece by human beings who can only do a limited number of things at a time.

In order to become proficient at diagnosing problems, you need to:

  • Learn about sources of reference information, and how to use these sources of information. Most correct use of these reference sources involves understanding the terminology (words) that these references use; once you are using the same words as the reference, you can usually execute a very precise search to get the result you want. Example sources of reference information include Google, MSDN, TechNet, tldp.org, etc.
  • Learn the skill of how to break a problem down into smaller, easier sub-problems. Most problems that people have can be split up or divided into simpler problems. Now, one amazing fact about computers is that simpler problems are much more likely to have already been solved by somebody else before. The reason is that complex problems are, by their nature, more specialized to a particular situation. A problem involving a very simple set of variables is more likely to have been solved before; you can probably find the answer readily available (or adaptable) from a source of reference information.
  • Learn the skill of how to recognize clues about what might be wrong. This includes interpreting error messages, trying various configurations (for example, compare the output of the program with and without some environment variable set), replacing layers in a componentized system (for example, try your broken SQL query on another database or a different version), and so on.
  • Learn the skill of how to build a mental model of a software "stack". Almost all pieces of software are built on a "stack", which means that there is software layered on top of software, and it ranges from the general functionality (software infrastructure that supports a very broad range of functionality), to specific functionality (application software that does some specific job for a real-world use case). An iconic example is the networking stack, which ranges from the physical layer, to the link layer, to the protocol layer, to the application layer (and sometimes a few layers in between). Understanding the layering of the software you're trying to learn about or diagnose will help you gain insight into where the problem is.
  • Remember everything. If you have a poor memory, you are less likely to remember terminology, error messages, software stack designs, reference information, and so on. If your memory is poor, it will take you much longer to solve problems, because you will have to go back to the more basic troubleshooting steps every time, rather than leveraging past experience. You might work with games that test your memory so that you can learn to hold large amounts of data in your mind for long periods of time without losing it. It's either that, or be really good at searching Google (but even that requires a degree of strong memory skills to input the right search terms).
share
add comment

Well most of the knowledge of top contributors comes from personal experience. Although I'm not very active here but I do contribute on many tech forums

Most my knowledge is from my own experience or from Google(when one asks about hardware performance its easier and convinient to redirect people to a website with benchmarks etc )

Well about the Wireless article well there are many similar articles written years before that. I'm not saying he plagiarized or anything but one reads such articles to gain knowledge etc

share
add comment

If you are truly looking for the "manual" for windows that would be the book Windows Internals. They are currently on 6th edition (Windows 7/Server 2008 R2), and they release a new edition with each OS release (The one for Windows 8/Server 2012 is in the process of being written, it takes about a year for the book to come out each OS release).

This book gets down in to the real nitty gritty of windows. Stuff like your netsh example is considered simple by this book's standards. This book is more likely going to show you what netsh is doing to the OS under the hood.

Here is a sample chapter from the book the book.

Here is the book's summary from its technet page.

Windows Internals, 6th edition covers the internals of the core kernel components of the Windows 7 and Windows Server 2008 R2 operating systems. This classic book will help you:

  • Understand how the core system and management mechanisms work—from the object manager to services to the registry
  • Explore internal system data structures using tools like the kernel debugger
  • Grasp the scheduler’s priority and CPU placement algorithms
  • Go inside the Windows security model to see how it authorizes access to data
  • Understand how Windows manages physical and virtual memory
  • Tour the Windows networking stack from top to bottom—including APIs, protocol drivers, and network adapter drivers
  • Troubleshoot file-system access problems and system boot problems
  • Learn how to analyze crashes

Sixth in the series, this edition was again written by Mark Russinovich, a Technical Fellow in Microsoft’s Azure Group, David Solomon, an operating systems expert and Windows internals teacher, and Alex Ionescu, Chief Architect at CrowdStrike and specializing in OS internals and security. Besides updates for changes in Windows, there are many new experiments and examples that highlight the use of both existing and new Sysinternals tools.

share
add comment

Netsh is a tool. How do you first learn about any tool? You typically learn from somebody that knows how the tool works and, more importantly, knows what the tool is useful for.

Over the last ten years, search engines like Google and Q&A forums like Superuser have facilitated encounters between people who need the knowledge and people who have the knowledge. You've already commented on this.

Back in the stone age (which always ended about ten years ago), there was face-to-face Q&A, presentations and lectures, and tutorial documentation. There are probably some excellent tutorials out there that introduce the Windows user to networks, and many of them probably bring netsh into the discussion. These vehicles reached a comparatively limited audience.

Here's the good news: over the course of your life time, you can expect to add considerably to the array of tools and techniques you can draw on in any given situation that calls for diagnosis and repair.

Here's the bad news: Over time, you can expect much of your knowledge base to become obsolete.

Here's more bad news: while you are expanding your knowledge base, the total knowledge base is expanding at a much, much faster clip.

So, over time, you can expect to become absolutely more knowledgeable, but relatively more ignorant.

Welcome to the club!

share
add comment

It just comes with time i'm not really good with every thing but after a while you just learn form messing around for enough time.

share
    
It does not "just come with time". Actually getting better generally takes deliberate practice. See for example Teach Yourself Programming in Ten Years. –  Michael Kjörling Feb 7 '13 at 13:51
add comment

For example, I wanted to know how to make my laptop into a wireless hot spot so I googled, and I found this great article that shows me step by step how to configure Windows, (enter netsh wlan show driver in the cmd to determine if my wireless card supports it... etc etc). But how did the writer of this article know this much?

He or she did what you did, only more often, and then used those hints to expand on them on their own.

For example, now you know that netsh exists, you could briefly skim whatever documentation you find and make a mental note of the area this tool is used for. Next time you have a problem that might be in that area, you might have what you need to fix the problem yourself, and now you are ready to share that new knowledge.

Also, it is important to read comics like this one.

share
add comment

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .