If there’s anything I prefer to do as a mentor to people coming up in our field, it’s that I prefer to teach them how to fish rather than give them the fish.   While I can give them a fish, once they’re out on their own, I won’t be there to constantly supply fish.  So I want to make sure they know how to source their fish.  Note: No fish – carnival or otherwise – were harmed in this post.

Navigating the Search Engines

One of the things that works in my favor is that I’m old – I drop Trumpet Winsock when I want to end an age conversation with my younger peers, but I can go back further with my older peers.  I can remember life before web browsers and search engines.  This means that I also had to figure out how search engines worked once they came out.

In the early days, I would research things through Metacrawler, Altavista, Yahoo, Lycos, Infoseek, and Excite.  Depending on the topic, I found different search engines to give me different results.  If I wanted to find answers to a tech question, Altavista almost always got me what I was looking for in a short amount of time.  Now if I was looking up some of my classmates, I would use Yahoo.  The more I tried searches across the multiple search engines, the more I learned how to tailor my searches.

If you’re searching for a phrase such as referential integrity, group it in quotes so “referential integrity”. If you want your search results to include a term, then use the + before the term.  If you want your search results to  exclude a term, then use the – before the term.  So if I want to see referential integrity as it applies to MySQL and not SQL Server, I’d search for “referential integrity” +MySQL -“SQL Server”.  You can learn more about search engines and operators here.

Identifying the Right Resources

Sometimes, you get search results that are uncertain.  Before you copy-and-paste code you find online, make sure you understand what that code does.  When it comes to learning more about a language, I am constantly looking up tutorials for the language name (Java, C#, JavaScript, Groovy, etc.).  I like to play with a language to learn about it, and tutorials get me into playing.

Some people prefer articles on specific topics.  So if I as a web developer want to touch on web application security, I may want to find articles on OWASP’s Top 10 Risks.

If it’s a quick solution, StackOverflow or the MSDN Forums are two great sources for programming solutions.  On the SQL Server side, SQLServerCentral is also a great source.

Intellisense/IDE Cues, Help Files, JavaDocs, and More

If you’re using an IDE and have questions about code, you may find Intellisense or some other IDE hinting cues built in to offer some guidance.  Help files and language documentation such as JavaDocs are also good sources for answers if you know how to decipher them.  Of course, there’s also the old school way of solving things (besides trying things and seeing how they work) – books!  Whether you want eBooks or are a fan of printed books, books can also be a great place for finding help with coding questions.

User Groups, Conferences, and Meetups

If you’re looking for other people to talk tech, user groups, conferences, and meetups are the way to go.  Whether you’re job hunting, looking for help with a problem, or just looking for common minds, networking at these gatherings can open a variety of opportunities that you wouldn’t find otherwise.  Some of my favorite mentors are people I’ve met at user groups, conferences, and meetups.  So how do we find these gatherings?  Do a search for your locale tech user groups or even your locale dev conference to get started.  Meetup.com is great for finding meetups – group gatherings over a common interest, tech or otherwise.  Also, tech event aggregators such as Community Megaphone and Cleveland Tech Events  can also help.