Experienced programmers come in...

screw3d

Diamond Member
Nov 6, 2001
6,906
1
76
I do it very often, and I'm not sure if that's a good or bad thing?

At one point in school, I was simultaneously working on a few projects using PHP, Perl, Java and JavaScript, not to mention HTML and CSS with their own share of compatibility problems.

There's just no way for me to keep track of all the idiosyncrasies of each language other than by constantly referring to documentations, like for syntax, parameters etc etc.. (I'm not talking about if statements and for loops here)

I'm asking this because I'll be applying for some web dev jobs, and I want to know how experienced programmers usually work
 

beyonddc

Senior member
May 17, 2001
910
0
76
Books are my friend. I use it all the time for reference, especially when referring to C++ standard template library. For Java, I always read the API documentation online to make sure the meaning of each parameters and to ensure thread safety.

In fact, my company will reimburse all money you spend on programming books as long as it is work related.
 

dighn

Lifer
Aug 12, 2001
22,820
4
81
I refer to documentation all the time. with so many programming languages, platforms, APIs, frameworks etc etc. it's just too much to memorize. I would even say it's a waste of mental resources to even try

syntax completion tools like microsoft's intellisense are great for looking up info on the fly. all you need to do is the approximate/likely name of whatever you are trying to use and you get the information right away. google likewise is often faster than looking up static references in my experience
 

PorscheMaD911

Member
Feb 7, 2005
128
0
71
All the time, the IT environment I develop for is pretty complex, so for me it's the only way to get things done.
 

DaveSimmons

Elite Member
Aug 12, 2001
40,730
670
126
I never install Visual Studio on a new machine without the MSDN online docs. I work with too many libraries and APIs to have them all memorized. I also use books, google, MSDN online and CodeProject.com.

Unless you do the exact same thing day in day out, you need documentation (preferably from multiple sources) to learn the new functions and technologies for your new projects.
 

xtknight

Elite Member
Oct 15, 2004
12,974
0
71
I rarely need help with syntax, but I refer to documentation all the time to look up function prototypes, parameters, and return values.

I never use books though. Google is just so much better. It's faster, you can copy-and-paste, and it returns the most up-to-date info. And it returns 50x more information.
 

EagleKeeper

Discussion Club Moderator<br>Elite Member
Staff member
Oct 30, 2000
42,589
5
0
Each to their own posion; however, any decent developer worth their salt will use some type of documenteation if available. It can be a waste of time to struggle when the answers are readly available for the question.
 

beyonddc

Senior member
May 17, 2001
910
0
76
Originally posted by: EagleKeeper
Each to their own posion; however, any decent developer worth their salt will use some type of documenteation if available. It can be a waste of time to struggle when the answers are readly available for the question.

Good example would be algorithm. I wouldn't know how to write a bubble sort or quick sort on top of my head. I just know the differences between them and when to use them. If applicable, I will copy the logic from the book and use it in work project.
 

mundane

Diamond Member
Jun 7, 2002
5,603
8
81
Originally posted by: beyonddc
Originally posted by: EagleKeeper
Each to their own posion; however, any decent developer worth their salt will use some type of documenteation if available. It can be a waste of time to struggle when the answers are readly available for the question.

Good example would be algorithm. I wouldn't know how to write a bubble sort or quick sort on top of my head. I just know the differences between them and when to use them. If applicable, I will copy the logic from the book and use it in work project.

In this case, I open the API docs on Collections.sort() and see what options I have. But I believe there's just a single sort with nlog(n).

I count API docs as part of "documentation" - I use them daily, they are an integral part of my programming process.
 

xtknight

Elite Member
Oct 15, 2004
12,974
0
71
Originally posted by: beyonddc
Originally posted by: EagleKeeper
Each to their own posion; however, any decent developer worth their salt will use some type of documenteation if available. It can be a waste of time to struggle when the answers are readly available for the question.

Good example would be algorithm. I wouldn't know how to write a bubble sort or quick sort on top of my head. I just know the differences between them and when to use them. If applicable, I will copy the logic from the book and use it in work project.

Which brings me to this site: http://www.codecodex.com/wiki/index.php?title=Main_Page
 

aceO07

Diamond Member
Nov 6, 2000
4,491
0
76
I use books, online sites/references, api docs, pick coworkers' brains, ask on forums.. whatever it takes to get the task done.
 

beyonddc

Senior member
May 17, 2001
910
0
76
Originally posted by: xtknight
Originally posted by: beyonddc
Originally posted by: EagleKeeper
Each to their own posion; however, any decent developer worth their salt will use some type of documenteation if available. It can be a waste of time to struggle when the answers are readly available for the question.

Good example would be algorithm. I wouldn't know how to write a bubble sort or quick sort on top of my head. I just know the differences between them and when to use them. If applicable, I will copy the logic from the book and use it in work project.

Which brings me to this site: http://www.codecodex.com/wiki/index.php?title=Main_Page

Also, http://www.krugle.com
 

Patt

Diamond Member
Jan 30, 2000
5,288
2
81
I always use documentation, online or otherwise if I have something on hand.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
Originally posted by: xtknight
I rarely need help with syntax, but I refer to documentation all the time to look up function prototypes, parameters, and return values.

I never use books though. Google is just so much better. It's faster, you can copy-and-paste, and it returns the most up-to-date info. And it returns 50x more information.

Yeah, syntax isn't the issue. But anyone developing for a modern platform who says they don't benefit from a fast, searchable API/Class Library reference is either lying, or has a photographic memory and nothing else to put in it. ;)
 

mAdMaLuDaWg

Platinum Member
Feb 15, 2003
2,437
1
0
Well, OP, any decent interviewer would not ask you for exact syntax. They ARE, however, going to ask you some general questions.

The idea over here is awareness and understanding... in most cases, you can not google on how to best approach a project but you can google on syntax. They may ask you for pseudocode of some sort just to see if you know how to program. They may also ask you how you would do something in a particular language, as long as you have done it before and are able to answer with an understanding then you will be fine. A big tip here is that you should NOT list programming languages that you only have a basic familiarity with. I listed atleast 10 languages on my resume (taking a C++ class in college does NOT count as experience in the language) and the interviewer hammered my on languages that I wasn't that familiar with and completely overlooked the ones that I was familiar with. If you really must, then add something like "Work experience in JAVA, C++" and "Class room training in .NET".

For example, they may ask you how to specify a connection string in a Server side programming language. If you say that you specify the database name, instance name, user id, password, authentication type etc... you should be fine. They are only looking to see if you know the mechanics of how things work... of course, it doesn't hurt to know the exact syntax but those are just for bonus points.

 

screw3d

Diamond Member
Nov 6, 2001
6,906
1
76
Originally posted by: mAdMaLuDaWg
Well, OP, any decent interviewer would not ask you for exact syntax. They ARE, however, going to ask you some general questions.

The idea over here is awareness and understanding... in most cases, you can not google on how to best approach a project but you can google on syntax. They may ask you for pseudocode of some sort just to see if you know how to program. They may also ask you how you would do something in a particular language, as long as you have done it before and are able to answer with an understanding then you will be fine. A big tip here is that you should NOT list programming languages that you only have a basic familiarity with. I listed atleast 10 languages on my resume (taking a C++ class in college does NOT count as experience in the language) and the interviewer hammered my on languages that I wasn't that familiar with and completely overlooked the ones that I was familiar with. If you really must, then add something like "Work experience in JAVA, C++" and "Class room training in .NET".

For example, they may ask you how to specify a connection string in a Server side programming language. If you say that you specify the database name, instance name, user id, password, authentication type etc... you should be fine. They are only looking to see if you know the mechanics of how things work... of course, it doesn't hurt to know the exact syntax but those are just for bonus points.

... in which case I should be fine then :) Thanks!

In my resume is have:
Extensive experience: in blah blah blah
Less experience in: blah blah blah

so I have that covered too
 

PhatoseAlpha

Platinum Member
Apr 10, 2005
2,131
21
81
All the time. Trying to remember everything is a pain. And when you get something that can only be described as obtuse - like say, .NET printing, you wouldn't even want to remember it.
 

Matthias99

Diamond Member
Oct 7, 2003
8,808
0
0
Documentation is your friend.

When I was working on things using the C++ STL, AWT/Swing, or (shudder) the Windows API SDKs, I was *constantly* looking things up (but those are very large, complex APIs).

For the day-to-day stuff I do at work, I'm mostly using internal APIs to our products, half of which I wrote or updated in the last year. Those I don't usually have to look up, but I use them constantly and there aren't that many of them.

I would not expect to grill someone on much more than basic language syntax in an interview (unless you're applying for a job where part of the qualifications are to know some particular API cold). As an interviewer, I'm much more concerned with your problem-solving skills and knowledge of different topics in CS. You can be taught to use an API. You can't teach someone to not be an idiot (or, at least, it takes a lot longer.) :p
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
or (shudder) the Windows API SDKs, I was *constantly* looking things up (but those are very large, complex APIs).

MSDN was such a revolution when it first came out, just because you had for the first time all those APIs right at your fingertips, without having to drag out Richter or Petzold and peruse the well-thumbed and ragged pages.
 
Sep 29, 2004
18,656
68
91
I do Java and documentation (mostly the API) is used frequently.

Alot of open source projects simply have bad APIs .... and to an extent ... it's just trial and error. Welcome to the real world!

Try learning to use Batik ...... it's not as easy as it should be unless you want to render one (just one) image and not to big. Use it to render SVG thousands of times in one rendering .... then you get fun memmory issues unless you treat it like a renderer.
 
Sep 29, 2004
18,656
68
91
Originally posted by: beyonddc
Originally posted by: EagleKeeper
Each to their own posion; however, any decent developer worth their salt will use some type of documenteation if available. It can be a waste of time to struggle when the answers are readly available for the question.

Good example would be algorithm. I wouldn't know how to write a bubble sort or quick sort on top of my head. I just know the differences between them and when to use them. If applicable, I will copy the logic from the book and use it in work project.

I hope that is just an example....