10

I am a new developer, who just got hired at a big company. I don't know how but I guess they are desperate. However, I am well-versed with HTML5/CSS3 though things change and new things are released and I keep up with as much as I can. But this job required me to hand-code Javascript, know Jquery and Ajax. I have been exposed to this a bit but I am not sure if I can hand-code Javascript.

My question is, is it necessary to memorize all there is about Javascript or are there a few key things that I should know how to hand-code because looking at javascript code it seems there are lots of lines code!

Please point me in the right direction.

Robert Harvey
  • 200,592
AAA
  • 323

8 Answers8

33

Today, in our work as in our life, it is more important know how to find information rather than know the information itself. I mean that a good developer is a person able to find documentation, network, and that share with an open mind.

I am an experienced .NET developer and, believe me, for every project I work on I have to learn new things about the language and development environment. Our work is always more intricate so do not worry. Point your attention at problem solving and then look for help. All the solutions already exist; we must be able to find them.

Jalayn
  • 9,827
Angelo Badellino
  • 714
  • 4
  • 13
9

After working with something for some time you'll learn/know the important things automatically.

There is no need to know all APIs, function parameter lists, etc. There are docs for things like that. Generally spoken, you need to know things or where to find them.

For example, let's take the $.ajax() function of jQuery. I know what it does and the commonly used options such as url, type, data, etc. If I need something non-standard, I open the docs and check them.

When looking up stuff you need to be sure that your sources are trustworthy and up to date. For example, MDN is while w3schools isn't.

ThiefMaster
  • 1,305
3

I wouldn't make any specific effort to memorize everything you do. It's best to just learn as you go. If you find yourself looking something up 3+ times, it's time to memorize.

Exceptions to this rule:

  • Core items in your code
  • Framework shortcuts
SomeKittens
  • 4,210
3

The most important thing you need to memorize is HOW to solve a problem and not WHAT to write. If you know how to solve problems, you can apply that knowledge in any language and technology.

I think memorizing code is just waste of time. You will forget it anyway if you don't use it properly. What comes to the essential things, as ThiefMaster said, with time you will memorize and use them automatically.

Its like that story about the fisher who can either give a single fish to a hungry man or teach him fishing. I think its definitely better to learn fishing.

superM
  • 7,373
2

First, don't put yourself down. Unless you completely misrepresented your skillset and lied in the interview, you have something that they deem of value. You impressed them enough to get the job, and that's no small feat these days.

Second, I would concentrate on learning programming structures primarily, and how they would be implemented in javascript. A for next loop is a for next loop is a for next loop, etc. the only different is whether it's for x := 1 to 30, or for (i = 0; i < 30, i++) or some other thing.

Once you know the core concepts, you can apply those in just about any programming language with a little bit of tweaking, and you will start learning how to apply shortcuts, more esoteric solutions.

Then, somewhere down the line the company will say "We need someone to do X", and you can say "I can do that."

JohnP
  • 524
  • 6
  • 14
1

What do you mean "required to hand code"? Are they going to not allow you to run Eclipse or any myriad of tools that groks these languages? Or are they just trying to judge your basic understanding of them? I work with a number of languages daily (C++, Java, JavaScript, Php), so I often forget the exact syntax for what I want to do. Say I want to get the part of a string after the first space in Java. I use indexof(" ") to find the position, then substring() to get the rest of the string. I don't recall if it's indexOf, but it's asinine to not use Eclipse and save a few minutes of wading through the docs.

doug

1

I've been working on my current project for several years and have surprised myself as to how much of the database I've memorized. Obviously, this information is readily available to lookup, but when you get so familiar with something, you can't help but remember it. My boss asked me an ad hoc question, and I pounded out a query as he shockingly peered over my shoulder. It's nice to be recognized; enjoy it while you can.

Normally, this isn't true for me at all. I use lots of tools to keep track of things and to search for code samples. I'm guessing if I work on something else, some of this will go away.

If your job requires you to work on various projects using different tools, you're not going to become completely fluent in many of them. The capacity to grasp concepts and learn new things will be more important in the long-run because much will change. At some point you shouldn't have to search for the syntax of if/then/else in your language of choice 5 times a day.

JeffO
  • 36,956
0

As far as I know, you don't have to memorize all the code that you use. You will automatically get used to those codes which are important in your field, which comes repeatedly in your task. But the main important thing you need to understand is what you are going to do ,after that you can use google to know how you can do that, I am not saying that you will get your whole code in google but you can use its reference.