General: Interview questions

Front End (JavaScript):
1) Difference between setTimeOut and setInterval. setTimeOut will call the function in order just once, setInterval will call it multiple times. The latest Firefox will only call once per second. Since what happens in the called function may take longer to execute than the next time interval, it is recommended to use setTimeOut and wait for the execution to finish in the following fashion:

(function loop(){
setTimeout(function(){
// logic here

// recurse
loop();
}, 1000);
})(); // This way you know loop() finish executing before it gets called again

2) Iterations, and array sorting (see Array Sorting for details. Very important.

3) There are recurring themes of the kind of teasers candidates are asked to complete. You  know you know your stuff, but you may be a bit nervous and not in the best position to think things through, so make sure you review the following:

– Write a program that determines if a string is a palindrome

– Write a program that tells you what is the fastest path down a binary tree

4) Memoization: it is simply keeping a cache of results inside functions that perform expensive calculations, so they don’t have to be repeated over and over again.

Memoization

Starting up a new website

1) Topic: What is the website about? Define it in a few words, including audience.

2) Keywords: What will be the keywords that would describe your site best, make a cloud of them.

3) Name and domain: get the best possible ever, based on keywords.

4) Hosting: setup hosting account.

5) Local development bed. Setup the testing site or local copy where you will do development.

6) Template: either wordpress or basic “coming soon” page with chosen technologies. Do this along with 5.

7) Tracking: install Google Analytics from the start

Note: if you will be using WordPress from the get go, take a look at this post: http://onsubject.com/knowledge/?p=657