1,539 karma · joined April 24, 2010
Here's a hint: If the prisoners cannot communicate after deciding on the strategy, is it possible there's any benefit of prisoners performing different strategies?
Beyond that, try to consider the different ways to select 50 boxes. They are randomized, so picking any 50 boxes at once will give you a 50% success rate, which with 100 ppl is unacceptably low. What other ways are there to select boxes? Are there any ways to pick boxes using information that's given?
The catch is: once the prisoners decide on a strategy, they are not permitted to communicate anymore.
As far language blunders go, I don't see this as unforgivable, especially since it only appears when you're treating a string as an integer (a dumb idea, anyway) from within the for construct.
My guess is that the main threat would be an off course rocket, or debris from an explosion, and that the probability of damage is acceptably low 3 miles away.
Different languages have different features. I've been coding PHP for years, and I've never encountered this feature before. I suspect that's true because I don't usually treat strings like integers. However, now that I know it's possible, I might actually use it to generate random strings or do something useful. I don't see it as something that is incorrect, I see it as how the language is implemented.
If you define fairness as the average user-wait, I think fastest first is actually optimal. This is still the case with one-queue systems: If you let the 10-minute person go first, you'll have blocked 1/10th of throughput for everyone behind him, and thus increase their wait time. Fastest job first is generally not a bad way to handle queues; it works great for things where "jobs completed per unit of time" is of importance, like chores or fixing bugs (of equal or similar priority).
Besides average user-wait, you could start inventing your own units for fairness depending on the problem. Maybe its average user-wait per processing minute, or something like that, in which case the solution might be more complicated (or might not be, I'm not too concerned with it).
As per your offer, I probably wouldn't pay because I don't believe it's possible to offer such a service, without it missing some jobs I might really want, or without it not working. Some examples:
* Some jobs are exclusive to recruiters, and the only way to apply to them is through that agency.
* Duplicate jobs which have different descriptions. How could you handle that without making me think or do work?
* I don't believe you could offer better and/or wider reaching results than Indeed.com or other job search engines whose sole purpose is to find job postings.
* The job search market is already so full of middle-men that I don't trust half the posts and prefer applying to companies with job postings on their website, and via direct e-mail. In other words, you'd have to do a heck of a lot to earn my trust.
The analogy should work both ways, though. I'm pretty sure Kasparov couldn't add 100 billion numbers together inside of a second, either. Nor is there any amortization of the cost of his currently 23-watt brain; how about the energy expended during years of development of his brain, whereas the computer could be produced with relatively low energy cost?
It should be of no surprise that humans are efficient at calculating things of survival importance, like emotion, decisions, etc. Over the span of billions of years, across tens of millions of square kilometers, under an algorithm where failure means permanent termination, our brains have evolved out of necessity to be that efficient. To me, it is far more freakish how efficient computers are at doing what they do. In under a second, billions of computations can occur in my several year old machine, all in some exact order, and without error. With that in mind, it's even more freakish that it often takes so much time to open Firefox.
One thing that stood out to me was how late all the videos were in the application process. About 75% of the videos were submitted within 48 hours of the deadline. It seems that submitting just a week earlier than the deadline would gain a huge advantage in terms of how much time the YC folks are able to commit to your application.
If I had to sift through this many videos in a short amount of time, I wouldn't even finish most of them. Whereas, if I received a video for the first time in a few days, I'd probably watch the whole thing regardless, and even try out the demo.
The problem is that I'm very good at building things, but not so good at branding/marketing/selling them. It's my job to engineer things, not sell them. And, for some reason, I always feel uncomfortable selling myself. I don't really enjoy boasting.
Check out my profile. I've made things, I've shown them to HN. I built, probably, the most powerful bookmarklet to date. But the splash page sucks, and it's confusing, so I'm scrapping it. My website similarity search engine is doing pretty well, with traffic growing 15% a week for the last 7 weeks.
But, I don't have a personal website, or a blog, or a twitter account, etc. I don't care for starting flame wars about "Why you should[n't] do X" or "How I did some amazing thing in some short amount of time". It's really not my thing. While I completely agree it'd make it easier to get a job, and is probably the optimal approach, it's not an option right now. It would take a large amount of time to suddenly build a brand/identity.
On the other hand, optimizing my approach to the current systems of job postings is probably a better use of my time. This is the type of advice I'm looking for.
I like your proactive approach very much, but the search space (all companies in my region) seems rather large. With job listings, I at least know they are hiring, what technologies they use, and what's expected of the role. I'd be down to do it your way if there were an easy way to browse through interesting tech-related companies in NYC, that I know are hiring.
The founders themselves are said to be what yc invests in, primarily, and not the idea. We'd probably need to know a bit more or see a video to give you any sort of sensible answerhatTIehat being said, if I were you, I'd apply if it seemed that yc was a good fit. If anything, the application process helps you learn and internalize things about yourselves and what you have to offer.
One last thing about the "big idea" and monitization aspect. Most yc funded things tend to be quite niche, and the vast majority aren't making money when they apply. It's my personal take that determining an audience, how to best pitch to them, and how to profit, are some of the core things that yc offers, in addition to all that fund raising stuff. If your company lacks these things, it seems like a good idea to apply. And demo day couldn't hurt, either ;)
Congrats and good luck! Keep us all updated.
I launched a "toolbar" (it's actually a bookmarklet) two weeks ago and although anybody I show it to in person thinks it's great, everyone else just gets confused. I put a lot of work into it, an unhealthy amount really, and as a result have found its lack of adoption frustrating to the point of just giving up. I use this thing every day, to bookmark and to search, yet I cannot adequately explain it much less motivate people to understand what it does. It feels awful.
At any rate, the URL is http://dashler.com/toolbar if you want to take a look. I'm not even sure the idea is a good one, anymore. Of about 1000 visitors, only about 2 use it regularly. I'm ready to scrap the whole thing. I would very much appreciate any advice you could offer pass along. I'm looking to ditch the video and use a slideshow of screenshots, but I'm not even sure where to begin.
http://news.ycombinator.com/item?id=1783632. Is the HN submission of it.
I'd be grateful for any advice! Thank you.
I see it as an analogy: YC is to Angels & VCs as <this thing> is to Companies that are Hiring. If you get into YC, you are definitely a noteworthy team. Furthermore, YC is able to prune down 1,000+ applicants to under 40 in a short amount of time. They probably turn down 75% of all applicants in 20 minutes or less per applicant. If it's your job to discern, you're going to figure out how to do it efficiently. They also attract very good applicants.
Why can't there be something like this for brilliant people seeking jobs just like YC is for brilliant people seeking to start companies?
You're right, though, about building connections with companies. Though, in this case the "connection" has more to do with reputation of "offers only Google quality candidates, via a rigorous screening process" than "hey, they are hit or miss but have provided some good hires in the past".
If you could have a screening process that was on par with, say, Google's, and became notorious for such a thing, I think you'd be in a position of extraordinary value. You'd be offering Google Quality Engineers who are actively seeking jobs. I think that's huge! You'd attract business that are willing to pay for the best, and you'd attract talent that wants the best pay.
The main goal here is to establish yourself as having a rigorous and "industry best" screening process. You only attract and accept awesome developers. You do all of the work in the technical screening, and you front your reputation on that. You only deal directly with candidates, and on the other end, with people in the position to hire.
Of course, there is a chicken and egg problem here. So you'd need a lot of publicity out the gate, a decent pool of acceptable candidates, or a decent set of job availabilities.
I'm tired of being asked if I know what a join is, the pros/cons of indexing, the difference between by reference and by value, various OO questions (What's an abstract class do?), design patterns, what memcached does, etc. And I'm sure places are tired of candidates that don't know these things. Solve both of our problems.
"Before you know it, people will automatically know to come to you when nothing else works."
And then what? Ask for a raise? In the environment he is describing, it is likely his extra effort will not go unnoticed, but rather, unrewarded. What's worse, this extra effort may even become expected of him, without his receiving any additional compensation besides making his boss look good.
While I do find great satisfaction in making myself indispensable and particularly useful, and in the whole process of learning and implementing new things, I also find extreme irritation if it only works to set a new standard for what's expected of me. That's just my personal experience and personality. Perhaps there are more altruistic types that enjoy feeling like a more efficient cog, but for me, it sucks to feel like a cog at all.
That's not to say all is lost. Certainly being an achiever and an innovator are awesome qualities. Think of your current job as a framework to discover and deploy these things. I neglected to do this at my last job, but keep a list of all of the projects you took the initiative on, what new skills you had to acquire to achieve them, and the net benefit to the company. Myself, I always figured I'd remember all the awesome additional effort / personal touches I put on things, but I didn't, and for me, interview season is right around the corner.
Bottom line, if you're not progressing and learning from your coworkers on a regular basis, it's time to look for new options. In the meantime, give your best effort and take note of your triumphs.