I'd be really interested in hearing more details about your experience.
HN user
shankys
Support for mixed Scala/Java projects improved a lot in Scala 2.7.2, which was released in late 2008, so there aren't problems mixing Scala/Java anymore.
Here's a description of what was added since this article was written:
"The compiler can now parse (but not translate) Java source files. This makes it possible to have mixed Java/Scala projects with recursive dependencies between them. In such a project, you can submit first all the Java and Scala sources to the Scala compiler. In a second step, the Java sources are compiled using the Scala generated .class files and the Scala sources are compiled again using the Java generated .class files."
I don't know Tony personally, but I'm very familiar with his work. He's a brilliant programmer.
HN is the only reason I learned about Tony's suicidal message on IRC within an hour of it being sent. Hopefully someone who personally knows him seeing this will be able to help.
Being able to write a "hello, world" in Haskell certainly doesn't make you a good programmer. However, I would say that anyone who has already written a sizable Haskell program (5K+ LOC) is almost certainly a good programmer.
The reason is that it's more work to grok Haskell than almost any other existing language, and the job market for Haskell hackers is practically nonexistent. You have to really love programming to become a proficient Haskell hacker.
I think you meant "not over 40".
Version control is indeed always a good idea. However, I'd strongly advise choosing Git over SVN.
SVN's branching capability is a joke compared to Git, and you'll wonder how you ever lived without easy branching once you get used to having it. This is important even if you're the only developer on the project.
I know both Lisp and Haskell, and I'm pretty sure that Haskell for most people is much harder to learn.
The two biggest stumbling blocks people encounter when learning Haskell are monads and the (powerful but complex) type system.
In my experience, Solaris zones and VMWare's virtualization offerings are the most solid and reliable virtualization solutions available (VMWare is quite pricey though). Zones are the best game in town when you need OS level virtualization.
There are plenty of things that suck about Solaris -- zones aren't one of them.
Zones, ZFS, and DTrace are the main differentiating technical advantages for Solaris.
What are the major flaws in Buzzword? I find it vastly superior to all its competitors.
I'm now very curious -- what is Facebook using Erlang for?
Scala has some very nice features for making Java's libraries much nicer to deal with. The most useful are probably implicit definitions and parameters, operators (any method may be used as an infix or postfix operator), and target typing. You can often "Scalify" a library using these features. See [1] and [2] to see what I mean. These features are also great for creating DSLs.
The recent Scala 2.6 compiler brought some other niceties like structural types (imagine duck typing with a static type system), existential types, and lazy values.
All in all, I've been thoroughly impressed with Scala.
[1] Pimp my Library: http://www.artima.com/weblogs/viewpost.jsp?thread=179766
[2] Simplifying JDBC: http://scala.sygneca.com/code/simplifying-jdbc
Interestingly enough, we actually live off something very similar for our startup. However, what we do requires less work than pg's setup for the lazy ones among you.
Buy a rice cooker and large quantities of white rice. Then buy 6-packs of various pre-made packages at TastyBite (http://www.tastybite.com). This sounds like an ad for TastyBite, but their product seriously is amazing for startup founders.
Once your rice is done, just open up your TastyBite and put it over the rice. The packages last a year unrefrigerated, taste good (and are reasonably good for you), and only cost two dollars a package. There's a pretty wide variety of things you can buy from TastyBite (all of them go well with rice), so you won't be eating the same thing again and again.
I consider it one of the smartest things we've ever done at our startup.
I didn't know Reddit switched away from web.py. Do you know what they switched to?
Assembly, Bash, C, Dylan, Emacs Lisp, F#, Groovy, Haskell, Icon, Java, K, Lua, Mathematica, Nemerle, Oz, Perl, Qi, R, Scheme, Tcl, UnrealScript, VRML, Whitespace, XQuery, Yorick, Z++
(I tried to pick different PLs than russ if I could think of one, though I admit I didn't know of Yorick or Z++)
Are they using Seaside or rolling their own framework (I'm assuming they're doing a webapp)?