How to handle technical challenges in work?
-
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
You get better at it over time, so long as you use the skill. For one, you have to know when to keep Googling, and when to take a different approach. If it's something somebody else has likely come across before, Google is your friend. Since most problems have been encountered by somebody else before, Google usually is your friend. Then if you don't have the immediate expertise to solve it quickly, you can ask some experts (e.g., here or on some other forum specific to whatever you're working with). Worst case, you end up digging in and having to solve it for yourself. If you do, be kind and post somewhere on the internet about it (to help others like yourself). However, when it comes to Google, your primary concern is to build more knowledge so that you know the right question to ask. If you don't know what something is called, you might Google for when it's used to see an example and hope somebody calls it by its name. Or if you have an error message, part of that can be Googled. And if there is a special sequence of words, you can put them in quotes to ensure they are searched for in that order. Sometimes, you come across similar terminology, but different problems. You can sometimes add more keywords to refine your search, or negate certain keywords that are unlikely to apply to your situation. When it comes to Google-fu, context is key. The more context you have, the better. And you can use Google to build up that context so that you can Google better. Just to try an example, say you are trying to figure out what
() => 5
is. You might Google it, but find that Google doesn't like to search special characters. So you could then try to search for the names of those characters (e.g., "equal greater than"). Maybe you get a bunch of irrelevant results, so you further refine it with "C#", since that's the language you saw it in. Still, results that don't help you. So you note it is used like a function, so you add "function" to your search. And you note that it differs from a normal function, so you use "function without declaration". Or maybe "short function". In reading a forum thread, you might see somebody mention "delegate", so you Google that. You might get lucky and read some documentation that mentions "lambda", or you might have to keep Googling. Maybe you Google "delegate without definition", or you could try "anonymous delegate". And you may note that this seems like a new feature, so you try "new type of anonymous delegate". In all, your search now looks some -
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
At work I'm considered a master at finding information; I don't know how I'd fare among this elite crowd, but I rarely fail to find a solution. It's difficult to express how I formulate searches, as I seem to have a knack for doing it that is automatic, not learned. But I would suggest that you start by typing your question in plain English. It's surprising how good Google is at locating relevant results from such an input. Then narrow the search by reducing the number of words in your query to reduce the result set; you can usually see what words should be removed by the highlighted terms in the results. Delete the ones that pop up often in irrelevant results, then re-run the query. Repeat the process until you have only a few thousand results, then scan the first page only. If it's not there, you probably won't find it in the following pages, and need to rephrase your question. But don't limit your searches to Google. Wikipedia can be corrupted, but it is often an excellent source of authoritative information. Wolfram Alpha is also an excellent source, if the question has anything to do with mathematics, physics, or algorithms. Don't waste your time on Bing, as it can't find Redmond more than 6 times out of 10 tries. Yahoo claims to be a search engine, but it's not; it's an index, and items found there have to be submitted to be returned to searchers. Google actively mines the Web for data, and as far as I know, is the only service that does so. My logs show that their bots have visited my machines often, and I assume that most people are just as easily searched if they don't actively block such operations. That makes Google the primary source for me, even though I occasionally get a message informing me that I don't have permission to enter when I follow a link presented by the service. Work on developing your Google-fu; it's only going to become more important as time passes.
Will Rogers never met me.
-
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
Unversity Library, Technical Manuals and bullet boards is where I sort out information before the times of the internet. Nowadays the answer is thrown at you and most people need little or no knowledge anymore before everything is spoonfed to you. It's always best to thoroughly research the information you seek for 2 reasons: 1. You'll remeber and learn from it. 2. You can verify its the best way to to it, most crap of the internet is wrong you have to look tghru the the crap to seek the little nuggets of wisdom.
Software Kinetics - Dependable Software news
-
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
Learn these[^] that might help with google searching. The other thing to do is to be able to recognise good results by skim reading the google results - I have as many results as I can on one page, and scroll quickly through waiting for something to catch my eye, When in the zone it's almost like magix; many times I have had people tell me they can't find some information and a few clicks later I have found exactly what they were looking for. Sometimes the '-' operator can be V useful to filter out the dross - especially when looking for something that conatains common words with several meanings - if the first 10 hits are from eBay, add '-ebay' to your search string, for example. the other side of things is to simply allow the junior peeps to go google the answer and appreciate that you are part of a team and not in competition with them. If you want the kudos, just make sure the customer hears you say "Oh, go google that for me, would you Tom?"
MVVM# - See how I did MVVM my way ___________________________________________ Man, you're a god. - walterhevedeich 26/05/2011 .\\axxx (That's an 'M')
-
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
As it turns out, google search engine is quite smart in understanding couple of good search query. How ever, i most of the time do not depend on it. Probably its because i love forums like codeproject, stackoverflow
-
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
You forgot to mention the best problem solver, the one that sits in your head. Books or searching in the internet only provide you with borrowed knowledge. Sure, you can't possibly know everything and then you must do some kind of research to get some answers. This is where you might make a big mistake. Quickly taking the results of your research as you found them and quickly moving on to the next problem may impress the managers, but this way you also lose your greatest personal profit. You have not learned much. Whatever solution you may have found, it naturally solves somebody else's problem, not yours. Take the time to understand the solution well enough to adapt it to your particular requirements. It will probably work better and you have gained some experience. Next time you encounter a similar problem you will not have to do any research at all. Over time you will have enough experience to convince your manager that you know everything and are afraid of nothing. That's when you get some nice title with the word 'senior' in it and hopefully a nice raise. And then you will be the the guy who younger colleagues come to when they are stuck. You just have to keep on grabbing every problem as an opportunity to learn.
-
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
I'd be lost without online reference material. I simply don't have the patience to methodically work everything out. It's simplest just to to put your technical issue/requirement straight into google in pidgin English. For example: "Username password authentication WCF" "NHibernate named query field alias Oracle" "Jquery form validation plugin" Aside from the manufacturers websites (MSDN, 3rd party library sites, codeplex etc.) More often than not I find what I need as an article on this site or as an answered, peer-reviewed question on StackOverflow. An important factor is accepting that what you're doing isn't rocket science and isn't so groundbreaking that nobody has done it before. The number of times I find my question has been more or less answered far exceeds the number of times I can't find an answer at all. That's where I can derive another benefit from using existing patterns - because it's an existing pattern, somebody has used it before which greatly increases my chances of finding the help I require and I don't needlessly reinvent the wheel, something I used to excel in.
-
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
Go to StackOverflow, Click on Ask a question. And type your question, but don't submit. You'll see your question has been asked a 1000 times, and it's been answered a 4000 times. And the next question you are going to ask in succession will also be there in the same thread. wait a minute, oops StackOverFlow :rolleyes: Just kidding, CP first always, but lately I referred a bunch of Q&As from StackOverflow. It was quite useful. And even Google lists them on Top. Don't know why CP forum messages are pushed down. And about typing the search key, Never do the girls way:
I Want to know how can I add multicast delegate in my C# sharp project
Go by the man's way:
Multicast delegate + C#
You get more returns.
Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy.
-
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
-
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
In short: intuition, experimentation, research (Google/books/asking around - whichever is likely to be quicker for the subject), followed by proof of concept prototyping. Add in a dose of dogged bloody mindedness and you're done. A couple of recent cases in point:
- I had to update a dev build of our Visual Lint[^] plug-in to support the Atmel Studio 6[^] IDE a couple of weeks ago, and although the Atmel IDE is based on Visual Studio, there are parts of the interface which are different, and of course it uses a custom project file format (which we have to parse to pull out preprocessor and include folder settings). None of that was documented, and it turned out to be far too esoteric to be being talked about on the web (in other words, my google-fu failed completely). I was able to get the plug-in bits going just by reference to our code, so that was nothing clever. The project file format however presented quite a challenge as the device settings and includes just aren't documented, so I had to reverse engineer them from the Atmel header files, and test my assumptions by building unit tests (I wrote those first using TDD) and analysing test projects to check that the results matched my assumptions.
- Visual Studio 2012 adds theming to the IDE, and as our code is generic (we integrate into both Visual Studio and Eclipse) and written in C++ using WTL, we can't use anything but plain Win32 to re-theme controls. Win32 UxTheme (i.e. XP style) controls do not support custom colour schemes (ever seen an XP style button in any colour other than OS default?), so we had to implement custom versions of every control we use in the main IDE, and to do that figure out how to draw UxTheme control parts with custom colours. The UxTheme API is poorly documented at the best of times, but *nobody* has described how to do this - I had to work it out from first principles (it involves a memory DC and colour transformations) and prove the concept. To cut a long story short, the proof worked and then the google-fu kicked in - find examples of custom controls of each type we need (button, combobox, list control, header control etc.) to use as references while designing WTL templates t
-
Go to StackOverflow, Click on Ask a question. And type your question, but don't submit. You'll see your question has been asked a 1000 times, and it's been answered a 4000 times. And the next question you are going to ask in succession will also be there in the same thread. wait a minute, oops StackOverFlow :rolleyes: Just kidding, CP first always, but lately I referred a bunch of Q&As from StackOverflow. It was quite useful. And even Google lists them on Top. Don't know why CP forum messages are pushed down. And about typing the search key, Never do the girls way:
I Want to know how can I add multicast delegate in my C# sharp project
Go by the man's way:
Multicast delegate + C#
You get more returns.
Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy.
-
Even better way RTFM, which very few people seem to do nowadays.
Software Kinetics - Dependable Software news
-
There are already a lot of good answers to your question, but you should also check out this article written by Christian Graus: How to Use Google and Other Tips for Finding Programming Help[^] Soren Madsen
I have to admit I didn't know about Christian's article. A big 5!
Anna :rose: Tech Blog | Visual Lint "Why would anyone prefer to wield a weapon that takes both hands at once, when they could use a lighter (and obviously superior) weapon that allows you to wield multiple ones at a time, and thus supports multi-paradigm carnage?"
-
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
-
Learn these[^] that might help with google searching. The other thing to do is to be able to recognise good results by skim reading the google results - I have as many results as I can on one page, and scroll quickly through waiting for something to catch my eye, When in the zone it's almost like magix; many times I have had people tell me they can't find some information and a few clicks later I have found exactly what they were looking for. Sometimes the '-' operator can be V useful to filter out the dross - especially when looking for something that conatains common words with several meanings - if the first 10 hits are from eBay, add '-ebay' to your search string, for example. the other side of things is to simply allow the junior peeps to go google the answer and appreciate that you are part of a team and not in competition with them. If you want the kudos, just make sure the customer hears you say "Oh, go google that for me, would you Tom?"
MVVM# - See how I did MVVM my way ___________________________________________ Man, you're a god. - walterhevedeich 26/05/2011 .\\axxx (That's an 'M')
Yes. Will learn this. Sounds useful.
-
As it turns out, google search engine is quite smart in understanding couple of good search query. How ever, i most of the time do not depend on it. Probably its because i love forums like codeproject, stackoverflow
Forum is good to ask questions, but once you post, you just do not when you will get an answer back. Google allow you to actively search for answer. At least you can tell your boss about that. :-D
-
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
Is this junior/senior as in time? Because, no disrespect intended, this doesn't sound like a very senior question! When you're given a requirement you should be able to mentally break it down into the rough steps you need to do in order to complete it. A lot of those will be simple stuff that you can Google if you're not familiar with the language/framework, e.g. file or database access, updating UI controls, simple aggregations or filtering of data. Possibly, buried right in the depths of the requirement, might be something where you actually have to think – but in my experience at least 95% of code is simple and has been done before. The skill is in translating a requirement into steps that you can look up if you don't already know how to do them (though, really, anyone in a senior position should know how to do most of the common ones already). When I'm searching I use the language or framework and the thing that I'm trying to work out how to do. For example I've been having some trouble caused by an OS upgrade lately so my search history is full of 'java character encoding' and 'ant character encoding' and the like. If you're partially familiar with the framework you might know where to look for inspiration; for example if there were a C# module involved I'd know to search for 'C# StreamReader' or 'C# TextReader' as a place to look to similar issues.
-
Dear all, I need a bit of help here. I feel like being surpassed by junior staff in the company. One day the client has a requirement. Both me and the junior staff do not know how to do it. I rely more on books or talk to other coworkers for hint. The junior staff, however, are very good at using Google. After a bit of time, he is able to crawl / find a good solution. I would like to ask what you do when you face a technical challenge. If you use Google, how would you get to the answer fast? In other words, how are you able to know what the keywords are to type in Google? (Of course, if it is related to some specific terms, just type that in. But from time to time, it seems like I have to type in a bit more than that. And I think I am not good at this.) Example would be welcome.
I focus my technical searches at StackOverflow and CodeProject - this works when I'm trying to answer questions like "How do I do XYZ using
foo
?" For example, figuring out how to implement sorting in a SilverlightDataGrid
is easily accomplished by Googling SO/CP for "silverlight datagrid sort" which should lead you to aCollectionViewSource
. Then, it's a simple matter of hacking together a small POC to determine how to use this class - MSDN comes in handy here, because you already know what class you should be using and are just searching for its properties and methods. Unfortunately, most of the time I'm trying to determine answers to more nebulous questions, like "What's the best/recommended way to design a large-scale JS app?" In this case, I'm not looking for a cookie cutter solution (there isn't any), but rather opinions from acknowledged authorities and people in the know. I find these in blogs, white papers and (sometimes), discussions on SO, and discuss my findings with others before arriving at a conclusion. Hope this helps. /raviMy new year resolution: 2048 x 1536 Home | Articles | My .NET bits | Freeware ravib(at)ravib(dot)com
-
Your question is too generic, your google-fu will have to improve, I'm not a native english speaker and some times I face problems to get the right information, but Google works always in a good way: it is fast and direct. Try and try it again is the only way to get it, some times if I don't know how to search for something then I come here and ask for advice. Let's say you are working in C++, putting the keyword C++ in your search will narrow your results... Good luck!
[www.tamautomation.com] Robots, CNC and PLC machines for grinding and polishing.
google-fu ... I like that.
Charlie Gilley You're going to tell me what I want to know, or I'm going to beat you to death in your own house. "Where liberty dwells, there is my country." B. Franklin, 1783 “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
-
Is this junior/senior as in time? Because, no disrespect intended, this doesn't sound like a very senior question! When you're given a requirement you should be able to mentally break it down into the rough steps you need to do in order to complete it. A lot of those will be simple stuff that you can Google if you're not familiar with the language/framework, e.g. file or database access, updating UI controls, simple aggregations or filtering of data. Possibly, buried right in the depths of the requirement, might be something where you actually have to think – but in my experience at least 95% of code is simple and has been done before. The skill is in translating a requirement into steps that you can look up if you don't already know how to do them (though, really, anyone in a senior position should know how to do most of the common ones already). When I'm searching I use the language or framework and the thing that I'm trying to work out how to do. For example I've been having some trouble caused by an OS upgrade lately so my search history is full of 'java character encoding' and 'ant character encoding' and the like. If you're partially familiar with the framework you might know where to look for inspiration; for example if there were a C# module involved I'd know to search for 'C# StreamReader' or 'C# TextReader' as a place to look to similar issues.
OK. I see your point. Let me go over the technical aspect. There is a sale system. There are about several hundreds of transactions in a day. The data is stored in a database. For each transaction, there is transaction header (usual stuff like customer id, transaction id, number of SKU involved, etc). There is also transaction detail (like item id, quantity of this item customer wants, etc). As you may see it, header to detail is a 1 to many relationship. One item we have to produce is an executable. This program will be run at end of each business day to output all transaction data to one XML file. This XML file is 3 level deep. It is similar to this:
<SalesRecord>
<VBAK SalesID="00001">
<AUART>SELL</AUART>
<SPART>GO</SPART>
<KUNNR>0000752134</KUNNR>
<BOTNK>2012071211085671S</BOTNK>
<VDATU>20120711</VDATU>
<VBAP item="10">
<MATNR>700911581</MATNR>
<KWMENG>3</KWMENG>
<UVKME>UC<UVKME>
</VBAP>
<VBAP item="20">
<MATNR>700912313</MATNR>
<KWMENG>4</KWMENG>
<UVKME>UC<UVKME>
</VBAP>
</VBAK>
<VBAK SalesID="00002">
...
</VBAK>
</SalesRecord>It looks simple at first. Without much experience in processing this kind of XML, I think we could just let the program to write the XML out using something like XMLWriter(). This basically output a database table to XML format. Well in the database, the header and detail of each transaction are stored in two different tables! Somehow the person suppose to help me out use another way. He write a stored procedure to output 3 tables. In the program, he use DataAdapter to hold 3 tables (da.TableMappings.Add()). He then set mapping type of certain DataColumn (to be MappingType.Attribute or Mapping.Hidden). Afterward, use XMLDocument.LoadXML() to write out the XML file. Well there you have it.