7 ms·
On how Jet.com chose F#
- untog 11y agoThe post seems to be a discussion of C# vs F# without considering any other alternatives. It also mentions being surprised at user groups for Scala and Clojure being larger - I'm surprised that it would be surprising. It seems like the verdict was to go to with F# because it's functional - a good reason, but I'd love to have read why not Scala/Clojure/etc. Odd thing is that at no point does it mention the cost of running ASP.NET servers - are they using F# with Mono? If not, the cost of licensing etc. is a valid concern - though I know MS provides incentives for startups. Less competition over top developers can only mean good things for Jet. Ehhh... yes and no? If your overall pool of potential developers is much smaller that's definitely a potential issue.
- karanbhangui 11y agoAs per their job listings, looks like they're running on Azure.
- runT1ME 11y agoI know quite a few developers that are only interested in working at companies that have bought in to functional programming. The fact that they're willing to invest in a less popular language says a lot of good things about their engineering culture too.
- jackfoxy 11y agoFor an operation the size of Jet the licensing of Windows servers is trivial. Without looking very hard I found a Microsoft Windows Server 2012 R2 Standard - 64-bit License for $574.94. That's a one-time cost. There are ways to get it even cheaper. Maybe expensive for a hobbyist, but not much of a consideration for a company in production. Companies with a lot of MS licenses have different options available, but this gives you an idea of the scale of the cost.
- mehrdada 11y agoSecuring Windows Server licenses might be trivial, but believe me, automatically managing an infrastructure consisting a cluster of Windows servers is a pain in the ass compared to its Linux/FreeBSD counterparts (Azure might have helped here a little bit, I don't know, but I still suspect it would be easier to run a UNIX infrastructure.)
- skuhn 11y agoSoftware that is licensed per-server has a higher burden than just the license's purchase price: you have to actually keep track of those licenses so that you can plan and optimize license capacity (even if you have a site license) along with real things like server and network capacity. To me, as someone who works exclusively in open source environments, that is a heavy burden and I don't buy software that is licensed per-machine. To get an idea of the difference in overhead costs I think it's helpful to look at Amazon's pricing between un-licensed Linux and licensed Windows instances. An m3.2xlarge instance with Linux is $0.532/hr whereas the same instance with Windows is $1.036/hr. That is a pretty big difference. I'm not certain, but I'm guessing the difference boils down to two costs for Amazon: 1. The cost from Microsoft of a license of Windows 2. The cost of dealing with licensing Windows 3. The cost of support from Microsoft 52% cost overhead does seem a bit high, and I bet you could do better than that yourself, but I also don't think it is trivial. Just looking around to figure out the cost of licensing things for this comment was draining.
- sokoloff 11y agoThe cost spread also no doubt has some "because we can" spread built in as well. (Which is entirely proper, IMO. Their customers are getting benefit from the freedom to elect Windows and are paying for the benefit.)
- NDizzle 11y agoWhat about licenses for developers to develop software to run on that server? What about licenses for things like deployment software and Microsoft-centric VCS? What kind of database are you going to run? MS-SQL? To paraphrase the toy story meme at the bottom of the article - SOFTWARE LICENSES. SOFTWARE LICENSES EVERYWHERE.
- Sanddancer 11y agoLicensing for Windows isn't as expensive as some people believe. Going in with their licensing plans, their cheapest server level with support comes to about $300/year. Redhat, for support, starts at $350. Yes, it can be $500+/server if you're buy it retail off the shelf, but any sort of internet related business, you're almost certainly not going to be going that way.
- UK-AL 11y agoThere probably more .net or Java companies then any other stack. In most cities they're usually the highest paid to. It's mostly startups where it is not used, for the percieved barrer to entry.
- Delmania 11y ago> a good reason, but I'd love to have read why not Scala/Clojure/etc. The CTO is familiar with .NET, and realized it's good enough to get the job done. The goal is to deliver a product or service, not argue over which technology stack is better.
- amelius 11y ago> Jet is the shopping cart membership that gets you club price savings on just about anything you buy. Pricing should be completely transparent for a competitive market. We need less of this.
- toomuchtodo 11y agoWaiting for someone to make something like Tracktor for Jet. It shows you pricing data for Amazon products using an extension. https://thetracktor.com/ https://thetracktor.com/
- chrisacree 11y agoFrom what I've seen, it wouldn't work, because they adjust your pricing based on the other items you've recently bought. More items/$ gets bigger discounts. Never used it though, so not 100% on how it's calculated.
- WaxProlix 11y agoBut - Won't the market sort it out?
- amelius 11y agoAssume there are is a small number of big players. They want to artificially keep the prices high. They could make an agreement, but that would be illegal. Assume it would not be illegal. Now apply your logic: "Would the market sort it out?" No, of course not. So why would the market sort it out in other cases of anti-competitive behavior?
- WaxProlix 11y agoNot very obvious but it was a joke. There's a sense (somewhat more common on HN than in Real Life) that the Free Market will result in an ideal equilibrium and egalitarian society, and it's funny to me, because (as you point out) it's so obviously not the case. But someone always brings it up in these contexts, so I was trying to get a jump on it with some mild sarcasm.
- morgante 11y agoA more accurate title would be "Why Jet didn't choose C#" as they don't seem to pay any attention to the non-Windows stacks available. I'm still no closer to understanding why they would build a startup on a MS stack, a question I've been pondering for the past year and a half.
- bsdpython 11y agoA lot of the NYC area financial firms use Microsoft technologies. If you are a developer at one of these firms and looking to leave to join a startup then there's your chance to jump. At least that is the way they've explained it to me. I don't use any MS technologies myself but that doesn't make it an invalid choice.
- eonw 11y agoi think in this case, they were funded before they started so cost wasnt an issue. versus most startups that start with little or no cash, so the idea of MS licensing is not even open for conversation. i dont really think of jet as a startup in the classical sense. its just a new company with lots of funding, it sure wasnt bootstrapped. IMO, its going to be a flop. their prices arent competitive for the items i have searched.
- AdeptusAquinas 11y agoBecause it started with the CEO making a WCF service. Meaning he knew .NET and stuck with what was comfortable - just like StackOverflow's origin. Best to keep to what you know when you are starting something risky - and there is nothing wrong with the MS stack for this sort of thing.
- vanessa98 11y agoDid you mean "a WTF service"?
- AdeptusAquinas 11y agoAlthough I havent worked with WCF for sometime (Web API is all the rage now), WCF wasnt too bad. Pretty good for making REST services, if you wanted absolute control. They streamlined a lot of the configuration needs in 3.5 and 4.
- hkon 11y agoF# is what the cool former C# developers are using nowdays. It's either that or node.js embrace. Go figure.
- CmonDev 11y agoWhere are all the wonderful .NET github repos written entirely in F#? They sure do like writing about F#.
- JamesBarney 11y agocompiler : https://github.com/fsharp/fsharp https://github.com/fsharp/fsharp build automation : http://fsharp.github.io/FAKE/ http://fsharp.github.io/FAKE/ deedle : http://bluemountaincapital.github.io/Deedle/ http://bluemountaincapital.github.io/Deedle/ And there are plenty of other very cool open source projects written in F#. Most of them can be found here http://fsharp.org/community/projects/ http://fsharp.org/community/projects/
- jskonhovd 11y agoFAKE is awesome. The entire F# ecosystem is pretty impressive.
- starrychloe 11y agoHow does F# compare with Ruby? Ruby code is so compact!