11 ms·
It's funny when you tell hipsters about .NET. They get really shocked at just how good it is. A lot of people dismiss .NET because it's backed by Microsoft. It
by nbevans 13y ago
It's funny when you tell hipsters about .NET. They get really shocked at just how good it is. A lot of people dismiss .NET because it's backed by Microsoft. It really sucks that these people can't just look at the technology for what it is rather than dismiss it based upon who created it.
As an aside... whilst C# takes a lot of the public .NET praise, F# is the real hero in the making. When I show F# to some hipsters they get very unsettled very quickly as suddenly they realise all that shitty Ruby and JavaScript they've been writing for years is probably not going to be anywhere near as employable in another 10 years, maybe, hopefully.
Interesting times indeed. And yes, Xamarin is awesome and Microsoft seriously needs to bring that great firm under their wing. Writing your mobile apps per platform is a major violation of DRY principles and is utterly ridiculous.
- keithwarren 13y agoI have an ongoing bet with a few friends on when and who will buy Xamarin. In April my bet was 18 months they would be bought by Microsoft or Amazon. I still lean Amazon.
- LammyL 13y agoWhy would xamarin want to sell? What advantage would it bring them?
- scribu 13y agoLots of money?
- ciupicri 13y ago> In summer of 1997, he [Miguel de Icaza] was interviewed by Microsoft for a job in the Internet Explorer Unix team (to work on a SPARC port), but lacked the university degree required to obtain a work H-1B visa. He declared in an interview that he tried to persuade his interviewers to free the IE code even before Netscape did so with their own browser. -- http://en.wikipedia.org/wiki/Miguel_de_Icaza#Early_software_career http://en.wikipedia.org/wiki/Miguel_de_Icaza#Early_software_... So perhaps Miguel would like working for Microsoft again.
- nbevans 13y agoI hold out hope that the next Microsoft CEO won't be as blind as Ballmer was and that the first thing on his hit list will be to buy Xamarin or at least "secure" it to prevent anyone else buying it; a suitably large investment could do that. Xamarin would provide the perfect solution to getting a major foothold on mobile app developers, which is what Microsoft so desperately needs for their Windows Phone aspirations. Once you have developer mindshare, you have cracked half the problem.
- gesman 13y agoWhy would MSFT needs Xamarin if their own tools are exceptionally good?
- pauloortins 13y agoCross-Platform mobile development ?
- spion 13y agoMS still don't understand the meaning of the word "cross-platform".
- venomsnake 13y agoThey will support all and any platforms as long as they are windows.
- 300bps 13y agoThey will support all and any platforms as long as they are windows. Don't let reality stand in the way of your irrational bigotry. But in case you'd like to learn something new - here is the pricing for hosting Linux servers on Microsoft's Azure system: http://www.windowsazure.com/en-us/pricing/details/virtual-machines/#service-linux http://www.windowsazure.com/en-us/pricing/details/virtual-ma... It works very well and is price competitive with Amazon EC2.
- Maakuth 13y agoI think that keeping Xamarin out of MS's hands is actually better for the ecosystem. It is very healthy that there are multiple independent but compatible implementations of the CLR and other tools so that everything is not tied to Microsoft.
- _random_ 13y agoI really wish F# was as approachable as Scala is. Every time I consider it I see no strong selling point. Loosing ReSharper + a steep learning curve make it too much for me.
- nbevans 13y agoWhat makes you think F# is unapproachable? Is it because Scala still uses braces whereas F# uses whitespace? It's odd because Scala and F# are very similar in what they bring to the table. Losing ReSharper is an arse yes. I've heard that F# vNext will have lots of VS improvements which may also cover some common refactorings.
- _random_ 13y agoI actually like how meaningful white-space forces formatting. I want more inference in C#. What I don't like is that language "feels" too "big" for me to approach. Things like "The DefaultValue attribute is required on explicit fields in class types that have a primary constructor" make me think WTF, why use OCaml with "patches" instead of starting from scratch? Don't get me wrong, I will learn F# the day it will be paid properly by the market (London). But today it doesn't give me enough to abandon C#. PS: Microsoft says F# is not meant to replace C# and I don't do scientific calculations or big data.
- profquail 13y agoWhat's your definition of "paid properly" by the market? Average C# developer salary in the UK, £40,000: http://www.itjobswatch.co.uk/jobs/uk/csharp.do http://www.itjobswatch.co.uk/jobs/uk/csharp.do Average F# developer salary in the UK, £62,500: http://www.itjobswatch.co.uk/jobs/uk/fsharp.do http://www.itjobswatch.co.uk/jobs/uk/fsharp.do
- _random_ 13y ago@profquail: First of all those links are meaningless given the scarcity of F# positions. You just can't compare them statistically. Second of all if you look closely at actual positions then it turns out they are not F#-centric at all, more like "Scala, F#, Erlang, Haskell knowledge is a plus". I mean people who use F# were hired not because they knew F# well but for other skills - e.g. deep knowledge of finance, distributed computing etc. Why not focus on learning that instead? Nobody pays 100k for F# alone. I might be wrong but I just don't see it as a skill that sets you apart that much. People are more interested in HTML5 :(.
- deleted 13y ago[deleted]
- bad_user 13y agoHipsters, really? I don't look at .NET, not because it was created by Microsoft, but because I hate the ecosystem and because Mono kind of sucks on Linux.
- n09n 13y agoOkay, but why do you hate the ecosystem? Because it was created by Microsoft?
- keithwarren 13y agoYeah, I am really curious why someone would hate the ecosystem. Very strong word for something like that, surely you have some reason beyond something as superficial as style or your personal experience with a person or project...? Do tell.
- emilsedgh 13y ago"People are always waiting for Microsoft to develop new software/tools/IDEs and it results in a delay and in a dependency when talking about adopting new technologies like SASS, LESS and CoffeeScript, even when a non-Microsoft tool is developed, people tend to wait until a Microsoft solution is released to start to use these new technologies. When good non-Microsoft tools are released (Resharper, CodeRush, RedGate Tools, NCrunch and others), they are usually paid, looks like the community culture is, if people pay for new software, people will sell new software. IMHO, it breaks a little bit the concept of community, that is everybody helping each other to build better and better tools."
- bad_user 13y agoHate is as strong as Love. I don't see people complaining when other people use Love to describe their feelings. (0) I don't care how great .NET/C# is on top of Windows, because Windows does not exist for me. (1) Visual Studio does not run on my Ubuntu Linux workstation. It does not run on OS X either. In contrast with IntelliJ IDEA or other IDEs. (2) Mono sucks for building and deploying web services on Linux. Last time I tried it, I had to restart the process constantly as it was leaking memory. Performance sucked too. Things should be better now, with that new generational garbage collector, but building web services was always an afterthought. (3) Mono is always behind (while also being ahead in some areas). Async landed in Mono and it's finally usable. People did have to wait a lot of time to try it out. People that think Mono is some sort of .NET for Linux/OS X/iOS are wrong. Mono can be treated as a different platform. Also, Xamarin has been treating Debian/Ubuntu as a second class citizen. The latest version is 3.2.3, but the version I have on my Ubuntu is 2.10.8, as packaging is done by the community. I understand that they have other priorities, but they are also the only company that packages software for Linux and that ignores Ubuntu/Debian. (4) The ecosystem has no real open-source culture. Most third-party tools and frameworks worth bothering with are proprietary/commercial. Most open-source libraries and tools worth considering are either part of the (small) Mono community or are clones of projects running on top of the JVM. The whole ecosystem is actually very Microsoft-centric and Microsoft couldn't even be bothered to ensure that NuGet works on Linux. (5) As a corollary to the above, almost everything you need is proprietary and costs a lot of money. Given that my job does not involve .NET/C#, it means I can only use C# in my personal projects (that's how people start). I don't like building projects on top of freeware and again, as example, for $299 per year, Xamarin doesn't even provide email support. And I could rant all day about how BizSpark / WebSpark suc
- MichaelGG 13y agoBut look at C# - since after they shipped version 3, they practically stopped doing anything neat with it. They haven't cleaned up any of the v3 features introduced (like type inference or expression trees) - it's just sitting there. In fact, from some of the statements I've read, it sounds like MS has purposely stagnated C# to avoid alienating their enterprise customers. They mismarket F#, preferring to say it's for scientists and financial programmers. Instead of marketing it as what it is, a much more capable language all-around, unless you need certain GUI/tooling support. These kinda things don't help .NET's reputation. If a non-MS affiliated company marketed a language as lean as F#, with as good a runtime and editor/debugger, they'd be a huge amount of "hipster" cred and praise.
- Mikeb85 13y ago> If a non-MS affiliated company marketed a language as lean as F#, with as good a runtime and editor/debugger, they'd be a huge amount of "hipster" cred and praise. OCaml? Which is what F# is based on, compiles to anything (including fast native code), and is open-source?
- MichaelGG 13y agoAre OCaml's main libraries even threadsafe yet? Is there a smooth editor/debugger like Visual Studio? Just a quick look says the Windows version of OCaml doesn't even have a debugger. OCaml is neat, and more advanced than F# in some aspects, but I'm not sure the dev experience is nearly as slick. Another thing not mentioned: libraries. Anything half-well designed on JVM or .NET has access to a massive amount of libraries (and both stdlibs are pretty complete). Depending on the project, that's not a trivial consideration. More info from a biased source: https://www.quora.com/Functional-Programming/How-does-F-compare-to-OCaml/answer/Jon-Harrop-2?srid=OjRF&share=1 https://www.quora.com/Functional-Programming/How-does-F-comp...
- gaius 13y agoYou can get a fairly complete stdlib on OCaml too, as long as you are willing to commit yourself to using Jane Street Core rather than the one that comes with the language.
- runT1ME 13y agoI can make the same comment about C#/F# guys when I show them Scala. Scala is a better, more powerful language. I quite like C# and do it for my main contract I have, but I am always missing features that Scala has, while I never have the inverse. It's nice that F# has better type inference, but I feel like it really isn't that different than C#. If C# got rid of boilerplate, made brackets optional, and fixed type inference, what does F# buy you?
- _random_ 13y agoI wish Scala for CLR has not been abandoned :(. Imagine a nice modern language that targets both CLR and JVM! A man can dream...
- JackMorgan 13y agoWell hold on to your hat: Clojure targets both AND JavaScript!
- _random_ 13y agoHmm, interesting. Is CLR a second-class citizen for it? How actively is the language developing?
- _halgari 13y agoVery actively. We just released core.async, and Clojure 1.6 should be out by the end of the year (1.5 was released at the start of the year). And yes, the CLR is a bit of a second-class citizen.
- endeavour 13y agoYou mean apart from discriminated unions, pattern matching, computation expressions, units of measure, partial function application, immutability by default and general lack of null reference exceptions? See also: http://www.youtube.com/watch?v=ExWfh6sGyso http://www.youtube.com/watch?v=ExWfh6sGyso
- 13y ago
- Mikeb85 13y ago> A lot of people dismiss .NET because it's backed by Microsoft. It really sucks that these people can't just look at the technology for what it is rather than dismiss it based upon who created it. Since .NET isn't open-source, it doesn't come with the same guarantees as something like Java, C++, OCaml, Haskell, etc... Microsoft could discontinue it, make the terms of use more restrictive, etc... Further, .NET applications only run (officially) on MS platforms, Mono isn't the same, and due to legalities many people are hesitant to base their business on Mono. As far as hipsters and Javascript or Ruby, MS has fully embraced Javascript. It's a first class language on VS, Windows 8 'modern' interface, etc... Ruby is great within its domain, and even has a .NET implementation (though I don't know how well supported IronRuby is anymore). And funny you praise F#, because it's just a MS implementation of OCaml, with a few small differences. Speaking of which, OCaml is pretty awesome, it compiles down to pretty much anything, and is fast as hell...
- MichaelGG 13y ago".NET applications only run (officially)" -- what's that even mean? I can rephrase it: "Mono applications only run (unofficially) on Microsoft's CLR". The actual runtime is an ECMA spec (which has been unchanged since v2, as all MS has added since are implementation changes and more libraries). C# and the core parts of the runtime are under Microsoft's Community promise[1]. But you're right that MS could try to assert copyright over parts of the extended APIs, and some companies might be worried about that. OTOH the Oracle versus Google thing should alleviate a lot of concerns. As far as F#, it's quite a bit more than a few small changes. 1: Writeup by Xamarin here: http://tirania.org/blog/archive/2009/Jul-06.html http://tirania.org/blog/archive/2009/Jul-06.html
- derleth 13y ago> ".NET applications only run (officially)" -- what's that even mean? If MS feels threatened by Mono, it changes its runtime and kills interoperability. From that point on, Mono is playing catch-up and who knows what happens to the users caught in the middle.
- 13y ago
- w0rd-driven 13y ago> And yes, Xamarin is awesome and Microsoft seriously needs to bring that great firm under their wing. I'm a Microsoft fanboy, but a thousand times no. So they can do what with it exactly, pull another Skype? Xamarin caters to areas MS rarely do and bringing them in would push people out of the windows ecosystem, not inward. MS's catering to ios and android is to push people to windows phones and that isn't likely to change anytime soon. I'm definitely glad Xamarin exists, especially after Novell kicked them to the curb. They could've kept their ball too but they decided to play fair and let Mono live on. I would never in a million years think MS could be that generous, and again I love MS for better or worse. Could they be? Sure but in spite of Bill Gates charitable contributions to humanity, those notions rarely took root in the company that enabled him to become that person in the first place.