﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Ayende @ Rahien</title><link>http://ayende.com</link><description>Ayende @ Rahien</description><copyright>Copyright (C) Ayende Rahien  2004 - 2021 (c) 2026</copyright><ttl>60</ttl><item><title>Rik Hemsley commented on Hiring Questions&amp;ndash;The phone book</title><description>I'll hire Tim Wilde please. Most sensible answer by far.</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment32</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment32</guid><pubDate>Thu, 27 Oct 2011 14:24:59 GMT</pubDate></item><item><title>Tim Wilde commented on Hiring Questions&amp;ndash;The phone book</title><description>As much as I like writing code, my initial question would be "Can we use an existing system, rather than writing code that we'd then have to maintain?" and in this case, it's squarely in the sweet spot for an LDAP server which gives us a couple of _well documented_ APIs for "free" (the LDAP protocol and the System.DirectoryServices namespace.) AD LDS or OpenLDAP, perhaps?
If it turns out that the aim is specifically to see your code, rather than to see how you solve the problem more broadly, then I'd ask more specific questions and fire up an editor having considered these other options first :)</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment31</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment31</guid><pubDate>Tue, 04 Oct 2011 13:00:53 GMT</pubDate></item><item><title>andres commented on Hiring Questions&amp;ndash;The phone book</title><description>Ayende, What did you want to heard? Enlighten us!</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment30</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment30</guid><pubDate>Fri, 30 Sep 2011 13:17:57 GMT</pubDate></item><item><title>Matt Warren commented on Hiring Questions&amp;ndash;The phone book</title><description>Is using Munin (https://github.com/ravendb/raven.munin) an acceptable answer ;-)</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment29</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment29</guid><pubDate>Fri, 30 Sep 2011 09:46:45 GMT</pubDate></item><item><title>Bart Verkoeijen commented on Hiring Questions&amp;ndash;The phone book</title><description>Interesting mixed answers. Thanks for the hint Ayende, I'll use it in future interviews. :-)</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment28</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment28</guid><pubDate>Fri, 30 Sep 2011 06:03:36 GMT</pubDate></item><item><title>Jared Kells commented on Hiring Questions&amp;ndash;The phone book</title><description>hahaha bob +1 +1</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment27</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment27</guid><pubDate>Fri, 30 Sep 2011 04:58:58 GMT</pubDate></item><item><title>amiralles commented on Hiring Questions&amp;ndash;The phone book</title><description>I'll use ESE (esent.dll)
I had heard that @ayende uses it in Raven, so... ;) </description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment26</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment26</guid><pubDate>Fri, 30 Sep 2011 03:53:54 GMT</pubDate></item><item><title>Bob commented on Hiring Questions&amp;ndash;The phone book</title><description>Just make sure you don't make a mistake, or you will be the subject of a future blog post telling the world just how shit you are.</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment25</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment25</guid><pubDate>Thu, 29 Sep 2011 20:37:34 GMT</pubDate></item><item><title>Bartek Sarul commented on Hiring Questions&amp;ndash;The phone book</title><description>We all know Ayende would like to see this built on RavenDB ;-)</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment24</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment24</guid><pubDate>Thu, 29 Sep 2011 20:23:32 GMT</pubDate></item><item><title>Bartek Sarul commented on Hiring Questions&amp;ndash;The phone book</title><description>We all know that Ayende would like to see this built on RavenDB ;-)</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment23</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment23</guid><pubDate>Thu, 29 Sep 2011 20:22:27 GMT</pubDate></item><item><title>Robert O'Donnell commented on Hiring Questions&amp;ndash;The phone book</title><description>Is this a practical exersize where you want some code as the answer? or simply a detailed description of the proposed solution?</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment22</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment22</guid><pubDate>Thu, 29 Sep 2011 19:32:52 GMT</pubDate></item><item><title>Fred commented on Hiring Questions&amp;ndash;The phone book</title><description>Excel, baby!</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment21</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment21</guid><pubDate>Thu, 29 Sep 2011 19:03:02 GMT</pubDate></item><item><title>John commented on Hiring Questions&amp;ndash;The phone book</title><description>Mike, yes off course but I will still always suggest the simplest possible solution first. That tells you a lot about a candidate too.</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment20</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment20</guid><pubDate>Thu, 29 Sep 2011 15:48:46 GMT</pubDate></item><item><title>Mike McG commented on Hiring Questions&amp;ndash;The phone book</title><description>Guys, give up on the text formats. The problem clearly states text-based formats are not acceptable. Does anyone here really think he's looking for someone who just knows how to invoke the SQLite driver?

He spells out the requirements for a basic database engine with indexing. It's a multifaceted problem that can expose a lot about a candidate in their solution. Are concerns separated logically? How is performance addressed against disk I/O? How is code correctness validated (e.g. testing)? To submit a project that just wraps another database is disingenuous. He's looking for people that can solve problems head-on, not just pass the buck.</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment19</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment19</guid><pubDate>Thu, 29 Sep 2011 15:45:39 GMT</pubDate></item><item><title>tobi commented on Hiring Questions&amp;ndash;The phone book</title><description>That is a pretty nice idea. I am not sure if it can be applied to a company which does not have such an excessive amount of great applications available. It might cause good candidates to skip your company because it is too much (speculative) work.</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment18</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment18</guid><pubDate>Thu, 29 Sep 2011 15:09:32 GMT</pubDate></item><item><title>andres commented on Hiring Questions&amp;ndash;The phone book</title><description>.WAB files!
http://msdn.microsoft.com/en-us/library/ms629733.aspx
http://contacts.codeplex.com/</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment17</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment17</guid><pubDate>Thu, 29 Sep 2011 15:00:12 GMT</pubDate></item><item><title>andres commented on Hiring Questions&amp;ndash;The phone book</title><description>Access!!</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment16</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment16</guid><pubDate>Thu, 29 Sep 2011 14:56:12 GMT</pubDate></item><item><title>Tom commented on Hiring Questions&amp;ndash;The phone book</title><description>I would be surprised if there isn't already a "good" library available for download out there. Out-of-context questions are always a little odd. 
-What is this going to be integrated into? 
-What is the business reason for disallowing certain formats? I've run into those in the "real world", where a manager simply dislikes Technology X because he read an article 18 months ago that gave him a bad impression, which sometimes cannot be overcome with logic. 
-When you say "phone bookS for users" do you mean a single user may have multiple phone books? Are those user-managed? Is storage an issue such that a single contact should never be stored twice? 

I know I'm probably overthinking a plate of beans and this is simply an exercise where I should ignore the business/integration stuff, but I hate not knowing that other stuff. </description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment15</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment15</guid><pubDate>Thu, 29 Sep 2011 14:17:57 GMT</pubDate></item><item><title>andres commented on Hiring Questions&amp;ndash;The phone book</title><description>Firebird Embedded, MS SQL Express, MS SQL Compact, SQL Lite, etc</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment14</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment14</guid><pubDate>Thu, 29 Sep 2011 12:51:34 GMT</pubDate></item><item><title>Bart commented on Hiring Questions&amp;ndash;The phone book</title><description>Use sql lite, it still uses a file!</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment13</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment13</guid><pubDate>Thu, 29 Sep 2011 12:38:18 GMT</pubDate></item><item><title>Martincho commented on Hiring Questions&amp;ndash;The phone book</title><description>API:Linq to XML calls</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment12</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment12</guid><pubDate>Thu, 29 Sep 2011 12:36:52 GMT</pubDate></item><item><title>configurator commented on Hiring Questions&amp;ndash;The phone book</title><description>"text based format such as XML or Json has been ruled out" - that's not something I could easily accept. You can't really suggest an alternative without asking why.</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment11</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment11</guid><pubDate>Thu, 29 Sep 2011 12:13:25 GMT</pubDate></item><item><title>Ryan Heath commented on Hiring Questions&amp;ndash;The phone book</title><description>Here's my take. Viewed from the actual usage point. The internals are leftout. ;)

// Ryan

enum EntryType
{
 Work,
 Cellphone,
 Home
}

class PhoneEntry
{
 public string FirstName {get;set}
 public string LastName {get;set}
 public EntryType EntryType {get;set}
 public string PhoneNumber {get;set}
}

class PhoneEntryValidator
{
 public bool IsValid(PhoneEntry entry);
}

enum SortBy
{
 FirstName,
 LastName,
}

class PhoneBook
{
 public PhoneBook(string phoneBookFilename);

 public void Save(PhoneEntry entry);
 public void Delete(PhoneEntry entry);

 public IEnumerable&lt;PhoneEntry&gt; Entries(SortBy sortBy);
}</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment10</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment10</guid><pubDate>Thu, 29 Sep 2011 11:38:29 GMT</pubDate></item><item><title>Frank Quednau commented on Hiring Questions&amp;ndash;The phone book</title><description>Do you ask here for an actual implementation or rather an overview of the work involved, decisions taken, etc.?</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment9</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment9</guid><pubDate>Thu, 29 Sep 2011 11:25:09 GMT</pubDate></item><item><title>Ryan Heath commented on Hiring Questions&amp;ndash;The phone book</title><description>Ok guys, submit your API :)

// Ryan</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment8</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment8</guid><pubDate>Thu, 29 Sep 2011 11:18:46 GMT</pubDate></item><item><title>Simon Skov Boisen commented on Hiring Questions&amp;ndash;The phone book</title><description>James, your probably right and I would have asked for an elaboration for that decision had I've been at an actual job interview. My question was more meant as a clarification as to what other types of storage he imagined would be suitable, maybe I had missed something or misunderstood the phrasing of the question.</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment7</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment7</guid><pubDate>Thu, 29 Sep 2011 10:59:44 GMT</pubDate></item><item><title>James commented on Hiring Questions&amp;ndash;The phone book</title><description>Simon - I believe the fact that he specifically says XML and JSON have been ruled out is to see what kind of developer you are.

You blindly accepted the specification. I expect the kind of candidate Ayende is looking for, he wants you to ask him, question him and explain why XML and JSON would be the way to go</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment6</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment6</guid><pubDate>Thu, 29 Sep 2011 10:23:29 GMT</pubDate></item><item><title>Trevor Pilley commented on Hiring Questions&amp;ndash;The phone book</title><description>Would RavenDB be acceptable for the persistence?</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment5</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment5</guid><pubDate>Thu, 29 Sep 2011 10:19:13 GMT</pubDate></item><item><title>Matt Davey commented on Hiring Questions&amp;ndash;The phone book</title><description>BSON seems like the obvious choice :)</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment4</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment4</guid><pubDate>Thu, 29 Sep 2011 09:35:25 GMT</pubDate></item><item><title>Marcel Popescu commented on Hiring Questions&amp;ndash;The phone book</title><description>Are all text based formats rejected, including CSV and fixed-width?</description><link>http://ayende.com/104449/hiring-questions-the-phone-book#comment3</link><guid>http://ayende.com/104449/hiring-questions-the-phone-book#comment3</guid><pubDate>Thu, 29 Sep 2011 09:25:38 GMT</pubDate></item></channel></rss>