181 karma · joined February 10, 2010
1) The 1st paragraph really annoys me. Quantum computers don't solve NP Complete problems by trying every solution. This is a common misconception. In fact, it's widely believed that quantum computers wouldn't solve NP-Complete problems in polynomial time, though they may get a moderate speedup over classical computers related to their superior searching capability.
2) The biological computer in the article also doesn't solve NP problems in polynomial time. Rather, it proposes a highly parallel machine that divides runtime by a very large constant. The real claim is to make a low-energy parallel processor that makes it easier to throw lots of processors at the problem. It does not alter the complexity classes. The linked PNAS article states, "it is inherent to combinatorial and NP-complete problems (assuming P != NP) that the exploration of the entire solution space requires the use of exponentially increasing amounts of some resource, such as time, space, or material. In the present case this fundamental requirement manifests itself in the number of agents needed, which grows exponentially with 2^N. Effectively we are trading the need of time for the need of molecular mass." Unfortunately, the experiment hasn't quite got this far, since "the error rates of this first device are too large for scaling up to problems containing more than ∼ 10 variables." It may constitute a step in the right direction, though.
3) The popular science article (as opposed to the original research it links to) is probably too focused on trying to make this about P vs. NP and misses the actual accomplishment: that the researchers can control a microbiological system outside of their own brains well enough to compute with it. This is pretty cool and may be valuable progress in nano/biotech even if it doesn't end up being a viable computer.
-Scala/Akka/Play/Liftweb/neo4j/Java
-Python w/ Django
-PHP, C/C++, Nvidia CUDA
-HTML5/CSS/Javascript
See here for more, including contact info: http://fearofc.com/?page_id=19
There are probably better ways to do this in most cases, but I thought it an interesting idea.
The technique in the article is relevant when one has the hashes and wants the plaintext (and according to some here, still easy to mitigate then) - if you're guessing a web login, different game.
For the latter, probably not. Assuming that for whatever reason I cannot write the patch myself, I do not have the time to start a new organization every time I encounter a new bug in some project. And I would guess that most ordinary consumers don't either.
This is not supposed to be a necessarily snarky response. Sometimes, an open source project exists, and it's not for everyone. The people behind the project should realize that every feature they choose not to include cause the software's value proposition to cease to exist for some users. It is up to them what to prioritize, and up to me whether using their software is worth the time of getting a patch committed.
Of course, my operating assumption here is that they want to hear about bugs/feature requests, and so it is worth something to them that I would bring it up in the 1st place. But I rarely ever make new feature requests. Usually this is in response to an evangelist telling me that I should switch to their platform, and my responding that it does not replace a current proprietary solution.
For the record, I have written a couple patches and released open source code before. I say this after years of trying to convince all my friends to switch to Linux, and finally coming to terms with the fact that even I still have to keep a Windows boot for certain occasions.
Furthermore, if the "confirmation" email winds up in a spam filter and the user never sees it, subsequent emails will still go out and probably be auto-marked as spam.
When I try to access the app, it tells me that my browser isn't supported and sends me to mozilla.com to download... Firefox 3.6.15
Version check bug?
I've been in a vaguely similar position. Don't freak out, and don't think of yourself as desperate. Don't settle. Don't rush things either. University is a great place to meet people who could become cofounders, so meet people.
We got over it.
We don't understand touchscreens well enough yet. We are using an old metaphor (the keyboard) and porting it completely literally. We might never replace the keyboard fully, but surely there is room to innovate.
I still plan to apply for this round but shall monitor the kind of startups YC funds in the future to determine how the probabilities change. It depends on how the selectors respond to changes in the applicant demographics.
With Facebook, I at least had a phone interview and could run post-mortem on what I might've messed up there. Google appeared to just toss my resume down a black hole.
I later decided that really, I didn't want to be a programmer, I wanted to found a startup. I was still in school and not 100% sure of myself at this point, so I applied to 1 programming job at a small place in Connecticut. I got a phone interview and then a rejection. I blamed my "failure" then on my lack of interest probably showing through.
Sadly, I had the same null feedback experience with many seed funders that spring. Most of the time it was a black hole. 2 (Lightspeed and IO Ventures) of them gave a brief explanation, which matches some (but not all) of my own post-mortem analysis. I think that given the high probability of rejection, rejection feedback significantly increases the value of applying.
While I don't think rejection from a place like Google is necessarily "random," I would certainly agree that it rarely provides actionable info.
When a company gets very large, it usually struggles to keep innovating under inertia. Trying to build in completely new directions becomes both necessary and difficult. Buying a startup is often cheap compared to trying to fork an existing team to build new things. Furthermore, the startup's business model is already partially proven by time of acquisition - so they are buying some certainty compared to assigning a team to generate new ideas.
Another hypothesis is that with the resources of a large company behind it, the startup may grow very fast. Adobe seems to be good at this. Other companies don't seem as good at managing post-acquisition.
I have never been in or acquired by a large company, however, so what I say should come with a grain of salt.
Also fascinating to me is how this links with OCD-like behavior. My memory has always been considered very good (though not like these people), and I had extremely mild OCD during my preteen years, which changed its form when I became a teenager until I stopped manifesting most symptoms.
I also wonder what would happen if these people were asked to gather days by an arbitrary filter. For example, on which days during 1999 did it rain? Would they have to step through day-by-day and check each day, or would they be able to instantly run through the rainy days? The latter seems almost too powerful.
You have to ask yourself if you couldn't gain better experience by a) working for a big company b) going to grad school c) founding your own startup. There might be cases in which the underpaying startup job really is the best next-stage career advancer. Even if this is true, read any non-compete agreement very carefully. I've had people shove non-competes in my face before telling me what the company actually did (so I could not compete with the entire industry? No thanks).
I would also not go in assuming that the company will be the next Facebook. Find out how the founders and investors plan to exit, and decide if that's acceptable to you. Furthermore, make sure you can deal with failure.
I think going in with realistic expectations and a clear head is just as important to the startup one wishes to join. I suppose there are some startups (many in NYC) whose goal is to suck in naive techies and dump them when they burn out, but most probably want to build a real team. If you sign something based on unwritten expectations, you are setting up for resentment and conflict when those expectations go unmet.
I probably sound overly pessimistic now, but I don't mean to be. Joining a startup can be a great opportunity in innumerable ways. I still intend to launch, even after some of the worst months of my life. Many of my friends who shared this sentiment no longer do. I think some had naive expectations about the lifestyle, how quickly we'd all be rolling in money, and what being an "entrepreneur" would look like to the rest of the world.
1.5) Also note that the concept of a "test bank" that is supposedly inaccessible to students is not entirely common knowledge. We don't know how easily accessible and/or clearly warned this information was.
2) I already said that the students were wrong not to mention that they'd seen the test.
The students probably messed up big time by not reporting that the test was publicly available first, but I think we're missing some important facts and only seeing one man's edited version of events here.
It's also a very elegant and beautiful language. At the end of the day, though, your customers care whether your product is beautiful, less so whether the code is beautiful.
I've never used CL.
That said, if this is a pure bug, it seems pretty pathetic. For one, it proves that the engine is not robust. For another, it probably means that someone spent hours upon hours tweaking the code with only the sunspider benchmark as test - analogous to over-fitting the training data. It's really tempting to do this, but it's also a common enough amateur mistake that Microsoft should have best practices to avoid it.
All this is speculative for now. Let's see what they say.
This is neither an a letter of apology nor an admission of wrongdoing, it's a statement of blame.
"Thank you to all our readers, thanks to all our advertisers and writers... and to everyone who has been supportive and who has been a part of Cooks Source. To one writer in particular, Monica Gaudio, I wish you had given me a chance."
The "one writer in particular" directly after referring to the magazine's writers almost implies that she thinks Monica is one of their writers. I wonder if she thinks that the entire Internet are her writers?
I don't think that violating copyright is incurring her the wrath of the Internet. Plenty of people distribute content that isn't theirs, and usually they get sympathy when the big bad RIAA comes in. It's the fact that every time she gets called out on a mistake, she insults the victim. You can get away with being wrong or with being nasty, but not both.
Know something I don't. Plenty of people seem to operate under a false dichotomy between code and business, where "not programming" gets treated as a business skill. I consider myself a hybrid hacker/businessman, but stronger on the hacker side for now. If I am to take a "business person" as a partner, I'm looking for that person to do things I couldn't learn easily from a day of reading. This could mean lots of things: truly understanding markets and pricing, being a professional member of a specialized target market, legal and accounting training, unlimited patience for customer support, etc.
I see some "business" people making the same mistakes they're supposed to prevent. The stereotype is of a programmer who builds and builds without testing the market, but how many non-programmers try to recruit techs to hack together a totally untested but "revolutionary" idea?
Another thing I've gotten wiser to is the use of vague terms, like "leadership" and "networking." To me this comes off as "I wanna be the boss and hang out." If you really are good at these things, try to give some specifics.
Finally, if I wanted to have a boss and live in a hole, I'd get a job at X big corporation. This is the point I expect the most disagreement on. I don't want a business founder who will "take over" all of the networking. By deciding to be a founder, I've already bet that I can manage myself better than someone else can manage me.
Laptop - Asus 8JS. Geforce 7700 graphics, 2Ghz Intel Core Duo, 2GB RAM, 120GB HD. 14" screen with 1440x900 resolution (looks photorealistic on some games).
OS - Ubuntu 10.10 as primary. Standard low-maintenance Linux, though occasionally I have to custom install something that has gone stale in the repositories. I also have mostly unused Windows XP and Vista boots.
Code editing - Eclipse or Gedit. I have rudimentary knowledge of VIM and painful memories of Emacs. I code in a whole slew of languages and generally find that I'm either okay with the really simple text editor (Gedit) or want code completion and automated testing (Eclipse). I also like to put SVN repos into a Dropbox. It's a free way to keep my code private but still have it backed up and synchronized between computers. I've used Git and Bazaar, never in a way that convinced me they were truly more advanced than SVN.
Web Browsing - Firefox. Tried Chrome and Opera, and I think I'm just more used to Firefox now and can understand its quirks. I was using Phoenix 0.4 back in high school, and people thought I was crazy.
Phone - was pretty uninterested in phones until Android came out. Now I have an HD2 (that's a WinMo phone) that I'm hacking to run Android.
Sound - anything I can salvage. People throw away tons of audio equipment. I have a huge pair of Tannoy speakers that look like they could power a rock concert. I think I have a usable amp for these, but I'm still figuring out how to wire everything.
I turned down an offer of admission from MIT. Granted, I had my reasons, and had I accepted, there's an inappropriately high probability I would've had to discontinue halfway through. I guess what I really regret is letting circumstances reach that point.
What I really regret is things I didn't do. The girls I should have asked out. The musical instrument I didn't learn to play. I honestly wish I'd made more clear mistakes in high school, instead of constantly playing it safe and thereby skipping important life lessons.
I regret spending so much of my life in front of the computer. Indeed, the hacking skills I developed will help me when launching, but the social skills I didn't develop will kill me. One of my worst fears is that I will get pigeonholed into a being a backroom programmer, and this fear influences everything from my cofounder search to my current distribution of time.
On the flip side, what I regret from the past might not be so regrettable when I consider that I'm not making the same mistakes right now. It goes back to my hypothesis that what I should regret are the mistakes that I didn't make when I was younger, because I may have to make them when the stakes are higher.
It would actually be more interesting to me if pg had some quantitative way of knowing that this post would reach the top (some function of the # of YC applicants now nervously refreshing), but if I had to guess, I'd say he just knew from experience or something.