5 ms·
Ethan Herdrick (Biographicon): Running a startup on Scheme.
- gibsonf1 19y agoThanks for hosting this Justin.tv :)
- abstractbill 19y agoHope to see you here tomorrow Fred. Maybe you'll give us a talk some time?
- gibsonf1 19y agoCount me in :)
- mixmax 19y agoA question about using scheme ( or any other flavor of lisp)... To me (management type, with some tech knowledge) it seems as if there are some serious downsides to using not-so-mainstream languages, such as scheme. In my position I would be worried about the following: - hiring - will I be able to find talented people to work on the codebase? Especially if I am not located in a startup hub. - Scaling - I haven't seen many sites using scheme or other flavors of Lisp that are able to scale. As a management type I would want to see more than just 3 or 4 sites that have scaled well. - available libraries - the more traction a language has, the more libraries will be available for it. Can a (supposedly) better language make up for this? And yes - I have read Paul Graham's essays on the subject and find them insightful, but since I am sure that almost all hackers have and I see no large sites written in anything but mainstream languages I am not convinced. Disclaimer: I am in management, and I am merely curious - not bashing scheme or any other flavor of lisp. Just thinking that this is probably the right place to post this question.
- anamax 19y agoVery few sites actually need to scale all that much and the majority of the remainder scale in a very decoupled way (which makes in-language scaling irrelevant), so scaling is almost always a red herring. That said, why do you need more than one example of a large site written in Lisp to demonstrate that large sites can be written in Lisp? (Orbitz certainly counts as large, so I'm not sure how much weight I should put on "I see no large sites".) Common Lisp comes standard with many of the things that are found in libraries for other languages. More important, CL comes standard with many of the things that folks never bother to put into libraries but end up writing themselves, over and over again.
- gms 19y agohttp://discuss.fogcreek.com/joelonsoftware/default.asp?cmd=show&ixPost=31402 http://discuss.fogcreek.com/joelonsoftware/default.asp?cmd=s... Go there and see Daniel Weinreb's post (just search the page for "Weinreb").
- herdrick 19y ago> Scaling ... I would want to see more than just 3 or 4 sites that have scaled well. Three or four seems to prove the feasibility. > hiring - will I be able to find talented people to work on the codebase? Yes. The people you find who hack Scheme or Common Lisp tend to be very talented. If you want to ramp up to 1000 programmers quickly, yes, you would have trouble getting experienced people. But if you're doing a startup, no sweat. Or so I think so far; watch this space. > libraries PLT Scheme and Common Lisp actually have big libraries, though not as huge as Java's. In most cases, though, the equivalent library in Scheme (and CL, too, I imagine) is much better than it's Java counterpart. Find me something in Java that is half so good for parsing HTML as this: http://www.neilvandyke.org/htmlprag/ http://www.neilvandyke.org/htmlprag/ There are Scheme/Lisp hubs that aren't startup hubs. Salt Lake City would be one. More generally, if everyone in your town uses Java, move.
- pchristensen 19y agoI didn't know that about SLC. Good to know. The Scheme/Lisp hubs I know are NYC, Boston, and especially Montreal. Lots of research, open source, and startups using Scheme in Montreal. http://www.pchristensen.com/blog/lisp-companies/ http://www.pchristensen.com/blog/lisp-companies/
- herdrick 19y agoI've heard that about Montreal. Those French - ever tasteful, non? Salt Lake because of U of Utah: http://www.cs.utah.edu/plt/ http://www.cs.utah.edu/plt/
- Psyonic 19y agoMatthew Flatt is a professor at the University of Utah, and one of the main developers of PLT Scheme right now. I just finished his Programming Languages class, which is taught in Scheme, and am currently in his Functional Programming class. I've really started to enjoy Scheme, and functional programming in general.
- Tichy 19y agoWhile we are at it, I was really disappointed when I saw the hashtables in MzScheme. Sorry, but compared to Java they seem quite unelegant, there are not even iterators (though I guess it would be easy to provide them). Maybe there is no better way to do it without objects, I don't know (I am not so well versed in Scheme yet). I just wonder if there are better "collections" than that for MzScheme, somewhere. I know it is nitpicking, but ultimately it is about trust, while I am learning: do the implementors of MzScheme have a sense of good style, or not.... Maybe I am just spoiled by having lived in an object oriented world for too long, but it also seems to me that sometimes OO makes sense, simply as a way to structure the code. Also I think it is neat how in Java everything has a "toHashcode" method, so you can store everything in a hashmap - how does it even work in Scheme (haven't studied it very close yet, I admit)?
- Tichy 19y ago"- hiring - will I be able to find talented people to work on the codebase? Especially if I am not located in a startup hub." I think most talented people would be delighted to work with Scheme. Maybe (hopefully) it is still true that you can use LISP to identify the good programmers. Presumably most people from "Java School" would not bother to reply to a job ad asking for LISP knowledge.
- pchristensen 19y agohttp://theschemeway.blogspot.com/2007/07/recruiting-secret-weapon.html http://theschemeway.blogspot.com/2007/07/recruiting-secret-w... "Great programmers are not looking for jobs. They already have one. And they don't want to switch from one Java job to another, unless they are dissatisfied with other aspects of their job. But a fraction of them would easily consider another job if it involved Scheme, Lisp or Erlang programming (or other non-mainstream languages like OCaml, Prolog, Haskell, etc.). So I claim that it is easier to recruit Scheme, Lisp, or Erlang programmers, even in Montreal, than Java/C# programmers. Given that you use the right channels (Standout Jobs, or by advertising on group specific mailing lists/blogs). These languages are not only secret weapons for implementing new applications, but they are also secret weapons for finding new employees. I strongly advise new startups to consider these languages if they want to have an edge when looking for new employees. In Montreal, I am convinced that there is now a critical mass of Scheme/Lisp/Erlang developers to mitigate all the risks usually associated with the use of non-mainstream languages."
- gibsonf1 19y agoMy cofounder was an enterprise Java programmer and started learning Lisp for our startup. He is now a very big Lisp fan and very good Lisp coder and counting the days until he can leave Java behind permanently (He was a top notch Java coder as well). So for good coding talent, learning to use Lisp is probably not that big of a barrier.
- geebee 19y agoI don't think you're going to get a satisfactory answer to a question that involves convincing a management type of the benefits of using Lisp. The point (or at least the way I understand PG's point) is that you can't convince non-technical management types to use Lisp. This becomes a competitive advantage for a startup where management types don't make decisions. It's part of why small startups can beat larger, better funded competitors where managers force everyone to use Java. They get worse developers, less productivity, and take longer to build a worse product. In short, they lose, and the hackers win. You don't have buy into this view to agree that it is, at least, a terrific thesis, and I think YC was started in part to test this thesis. I should add at this point that I don't know how to code in Lisp. If you ask most programmers what languages they "know how to code in" (never mind if they're experts), Lisp will show up in only a tiny fraction of the answers. Interestingly, you can take this to support or detract from Lisp. You could say "if nobody's using it by now, it must not be any good." But that reminds me of the joke about the economist who tells his kid not to pick up the $20 bill on the sidewalk, because "if it were real, someone would have already picked it up." Mabye Lisp is the $20 that nobody (or at least very few) believes is real. Some day, I swear I'll get started. In college (as a math major) I remember talking to a buddy who was majoring in cog sci trying to convince me that Lisp was a great language, and that I really should take a look at it. I was dismissive. If it were so great, why were we using C++ in all my math classes... -- oh, another thing to add hiring - will I be able to find talented people to work on the codebase? A management type probably won't be able to. This option is only available to founders who 1) can do the work themselves, and/or 2) know people who can do the work. Especially if I am not located in a startup hub. Again, fairly unlikely. The idea is that the founders are already part of a community of good programmers, so they most likely live in a place where you can find more good programmers
- bayareaguy 19y agoIf it were so great, why were we using C++ in all my math classes... If MIT had released Macsyma under an open source license, I believe you probably would not have been.
- mixmax 19y agoI know the argument about noone but techies being able to see the advantages of using lisp, but I think it puts hackers on a piedestal where they don't belong. Basically the argument implies that management types won't use lisp because they don't understand it. Well they don't understand java either. Or C++. What they do understand though is finding the fastest and cheapest way to a product - that is what they do for a living. If lisp was so great then surely some smart manager would have noticed that "hey look over there, they have 3 guys working on something that we have 30 guys working on - and they are doing better" And management is all about getting the most value for the least resources. If you think of managers as the Dilbertesque pointy haired boss, then sure. But I think you (and PG) grossly underestimate the intelligence of management, and what it is that they do.