PLEASE NOTE: Do not publicly post your answers on this Gist, please forward them to your recruiting contact instead ;-)
Each voter can vote in zero or more referenda. Each referendum has one or more questions, and each question is a yes/no vote. Write the simplest normalized schema to describe this in generic SQL statements or as an entity-relationship diagram. Point out where the indexes would be if you want to quickly know the results of a given referendum question, but you never expect to query a single voter's voting record. In what way does the nature of the application affect your design judgment about privacy, and what effect would that have on normalization considerations?
You're working on a cool branch of the foobar project, and your branch contains two commits A and B. The git lineage is:
X -- Y -- Z <-- master
\
A -- B <-- your-cool-branch
You want to contribute the code back to the master foobar repo, but you realize there is a really dumb typo in one of your source code comments in commit A. You'd still like to submit the pull request as two commits A' and B', where A' is the fixed version of A, and B' is the same exact diff as B. How do you rewrite git history to make this happen? Is B' the same hash as B? Why or why not?
In Laravel is possible to the following controller:
class MyController extends Controller
{
private $provider;
public function __construct(MyContentProvider $provider)
{
$this->provider = $provider;
}
public function getContent()
{
return view('index', [ 'content' => $this->provider->get() ]);
}
}
And when the MyController@getContent
action is triggered, a fresh instance of MyContentProvider
is passed to the controller automagically. How does Laravel know how to construct the MyController
? What if MyServiceProvider
has dependencies on its own? Or needs to be a singleton? Explain how this works.
New code was released to multi-tier production environment and now the site is SO slow. But it worked great on the single-server staging environment, which has only half the CPU and half the RAM of the production servers!
Here's the code that's behaving poorly:
class Post extends Model
{
public function comments()
{
$comment_ids = array_map(Comment::where("post_id", $this->id), function ($comment) { return $comment->id; });
return array_map($comment_ids, function ($comment_id) { Comment::find($comment_id); });
}
}
What's wrong? And why did it work well (enough) on the staging server?
Obviously the person who wrote this isn't a Laravel programmer. How would a Laravel programmer have written the code?
In one Unix command, find all of the files in /usr/local
whose contents contain the word "aardvark" (case-insensitive), and list them all in order from most-recently created to least-recently created.
Usage of the "!important" CSS declaration is often frowned upon by front-end developers. What does the "!important" CSS declaration do? Why do front-end developers suggest using it with caution? What are some cases in which it makes sense to use it?
Take a look at the following:
function *foo(x) {
while (x < 4) {
x += yield x;
}
return x;
}
var bar = foo(3);
console.log( bar.next(1) );
console.log( bar.next(1) );
console.log( bar.next(1) );
What is the output of this code snippet, and why does it behave in the way it does?