.Net Open Source Libraries



  • I have a .net app. It uses an open source Twitter library. I initially implemented this app when the library was written for .net 3.5. Today I had to use a feature of the library I hadn't used before, and I got a NotImplementedException. I checked the library's source code; it's all been converted to .net 4, and no longer compiles or runs in .net 3.5.

    Now my choices are:
    1) Pay through the nose to upgrade my entire development environment, and potentially the hosting servers, to .net 4, so I can fix the fucking bug in the library, so I can make my product work right
    2) Rewrite the entire library to be .net 3.5 compatible, basically forking it, then maintain it for the rest of my life
    3) Rewrite my application to not use the library at all
    4) Aim the gun at my head and pull the trigger

    Why do library writers feel the need to immediately move their entire project to .net 4 the millisecond it comes out? Do they just not give a shit about all the .net 2 and 3.5 projects that use it? What the fuck is wrong with these people? It's like their goal for the library is to get people to say, "well this library is great, and handles most of my needs, but since it doesn't run in my development environment-- fuck it!"

    Look, I trust Microsoft and all, but .net 4 is still pretty fucking bleeding edge to put on a production server and hook up to a production database. When PHP5 came out, did all PHP projects instantly convert to it? I mean, is this normal in the open source community?

    If you're a library writer, please, please stay at least one version behind the curve. Seriously. Because of this bullshit, choosing to use this buggy-ass library has actually cost me MORE (both time and $$$) than writing the fucking code myself would have. Which kind of defeats the purpose of using a library in the first place.



  • According to Wikipedia, .Net 4 came out April of 2010. Not exactly what I would call bleeding edge in August of 2011



  • You didn't keep a backup of the library (DLL I'm assuming)?  Or was the feature you hadn't used before added since then?



  • Why does it cost so much to install .Net 4.0?



  • @Sutherlands said:

    Why does it cost so much to install .Net 4.0?

    Visual Studio 2010 Ultimate is +10k$.



  • @thistooshallpass said:

    @Sutherlands said:

    Why does it cost so much to install .Net 4.0?

    Visual Studio 2010 Ultimate is +10k$.
    Visual Studio != .Net



  • @Sutherlands said:

    @thistooshallpass said:

    @Sutherlands said:

    Why does it cost so much to install .Net 4.0?

    Visual Studio 2010 Ultimate is +10k$.
    Visual Studio != .Net

    But the Visual Studio 2010 setup wizard will install the .Net framework 4.0, it is very convenient.



  • @KallDrexx said:

    According to Wikipedia, .Net 4 came out April of 2010. Not exactly what I would call bleeding edge in August of 2011

    Let's come at this from the opposite direction. Warning: below exercise may require independent thought!

    What are the goals of the ideal library? How does porting the library to .net 4, and removing .net 3.5 support, forward those goals?

    If you can answer those two questions intelligently, I'll admit I'm a moron and go shoot myself.

    @locallunatic said:

    You didn't keep a backup of the library (DLL I'm assuming)? Or was the feature you hadn't used before added since then?

    The feature was always there (well, "there" meaning "throws an NotImplementedException but it looks like it works at a casual glance".) The client requirements changed so I now have to use the feature, where before I did not. A library with a version number above 1.0 that throws a NotImplementedException is another WTF, I should have mentioned in the OP.

    @Sutherlands said:

    @thistooshallpass said:

    Visual Studio 2010 Ultimate is +10k$.
    Visual Studio != .Net

    While technically true, it's kind of a moot point when it requires VS 2010 to write .net 4 code. Or were you just being a pedantic dickweed for the fun of it?

    If you know of a way to fix a bug in a .net 4 project, compile it, install it in a .net 3.5 project, all without installing VS 2010-- I'm all ears.



  • @thistooshallpass said:

    @Sutherlands said:

    @thistooshallpass said:

    @Sutherlands said:

    Why does it cost so much to install .Net 4.0?

    Visual Studio 2010 Ultimate is +10k$.
    Visual Studio != .Net
    But the Visual Studio 2010 setup wizard will install the .Net framework 4.0, it is very convenient.
    You install Visual Studio on your production servers, then?  No?  You just install the framework?


  • @Sutherlands said:

    @thistooshallpass said:

    @Sutherlands said:

    @thistooshallpass said:

    @Sutherlands said:

    Why does it cost so much to install .Net 4.0?

    Visual Studio 2010 Ultimate is +10k$.
    Visual Studio != .Net
    But the Visual Studio 2010 setup wizard will install the .Net framework 4.0, it is very convenient.
    You install Visual Studio on your production servers, then?  No?  You just install the framework?

    Installing the framework on a server? Nah, I leave that to the rent-a-tech at the hosting company.



  • @blakeyrat said:

    If you know of a way to fix a bug in a .net 4 project, compile it, install it in a .net 3.5 project, all without installing VS 2010-- I'm all ears.

    It is a well-known fact that real programmers use "COPY CON" and CSC to write .Net software. There no feeling as warm as passing all those references to the compiler in the command-line.



  • @blakeyrat said:

    Let's come at this from the opposite direction. Warning: below exercise may require independent thought!

    What are the goals of the ideal library? How does porting the library to .net 4, and removing .net 3.5 support, forward those goals?

    If you can answer those two questions intelligently, I'll admit I'm a moron and go shoot myself.

    Ok from the opposite direction, it depends on the library itself. Either way it's an Open Source library, which (if you look at almost all open source libraries out there) is maintained by very few people who work on the library in their spare time when they need to add a feature. There are quite a few new things that .Net 4 does that make some things easier (background tasks, string.IsNullOrWhitespace(), the Lazy<T> type, code contracts, etc..). If I needed to add or modify a feature of a library I open sourced, and I saw a benefit from the .net 4 convention I would have no problem phasing out .net 3.5 support, as it is now an extra point of maintenance that I, personally, don't care about. I could easily break .Net 3.5 and not realize it until someone enters a bug, and if supporting .Net 3.5 requires me to either forgo .Net 4 features I want to use, or require me doing the same thing multiple ways, I'm not really going to care that much about .Net 3.5.




    Sure, if this is a massively maintained open source project or one that has commercial backing, that's one thing, but almost all open source projects (even outside of .Net) are not the large community driven projects people would love. Most of it is "Hey I created this code, I"m going to put it online" and they get picked up by various places.



  • @blakeyrat said:

    @Sutherlands said:

    @thistooshallpass said:

    Visual Studio 2010 Ultimate is +10k$.
    Visual Studio != .Net
    While technically true, it's kind of a moot point when it requires VS 2010 to write .net 4 code. Or were you just being a pedantic dickweed for the fun of it?

    If you know of a way to fix a bug in a .net 4 project, compile it, install it in a .net 3.5 project, all without installing VS 2010-- I'm all ears.

    Use the csc.exe compiler provided with the framework?  Use the compiler provided with mono?  You can't use a .Net 4.0 project from a 3.5 project, so I can't help you there, but there are certainly ways to create .Net 4.0 assemblies without using Visual Studio.

    Also, not all versions of VS cost over $10k.

    Dickweed.



  • @thistooshallpass said:

    @Sutherlands said:

    @thistooshallpass said:

    @Sutherlands said:

    @thistooshallpass said:

    @Sutherlands said:

    Why does it cost so much to install .Net 4.0?

    Visual Studio 2010 Ultimate is +10k$.
    Visual Studio != .Net
    But the Visual Studio 2010 setup wizard will install the .Net framework 4.0, it is very convenient.
    You install Visual Studio on your production servers, then?  No?  You just install the framework?
    Installing the framework on a server? Nah, I leave that to the rent-a-tech at the hosting company.
    So what you're saying is that to install the framework, you don't need Visual Studio.  So to install .Net 4.0 on the hosting servers (from the OP) doesn't cost $10k+ per server.  So you're an idiot and should be banned from using your mommy and daddy's modem.



  • Wow the troll level's really ramped up today.

    @KallDrexx said:

    Yada.

    That doesn't even come close to answering the question.

    Here's my answers:

    What are the goals of the ideal library?
    1) Saving programmer time and effort
    2) Providing a central source for bug fixes/protocol changes/etc
    3) Be flexible and general enough to be used in any type of application
    4) Reduce resources used by the resulting program, since DLLs are shared

    How does porting the library to .net 4, and removing .net 3.5 support, forward those goals?
    1) Fuck if I know!



  • @Sutherlands said:

    @thistooshallpass said:

    @Sutherlands said:

    @thistooshallpass said:

    @Sutherlands said:

    @thistooshallpass said:

    @Sutherlands said:

    Why does it cost so much to install .Net 4.0?

    Visual Studio 2010 Ultimate is +10k$.
    Visual Studio != .Net
    But the Visual Studio 2010 setup wizard will install the .Net framework 4.0, it is very convenient.
    You install Visual Studio on your production servers, then?  No?  You just install the framework?
    Installing the framework on a server? Nah, I leave that to the rent-a-tech at the hosting company.
    So what you're saying is that to install the framework, you don't need Visual Studio.  So to install .Net 4.0 on the hosting servers (from the OP) doesn't cost $10k+ per server.  So you're an idiot and should be banned from using your mommy and daddy's modem.

    Based on the depth and wisdom of your replies, I am starting to suspect that you are, in fact, a script. A buggy one that does not include a reference to the humor library. I formally request a Voight-Kampff test.



  • Which of your replies was supposed to be funny?



  • @Sutherlands said:

    Which of your replies was supposed to be funny?

    IT'S LEARNING! RUN FOR YOUR LIFE!



  • Also, I'll amend my previous response.

    @blakeyrat said:

    If you know of a way to fix a bug in a .net 4 project, compile it, install it in a .net 3.5 project, all without installing VS 2010-- I'm all ears.

    SharpDevelop

    MonoDevelop

    CSharp Studio

    edit: Also, if it matters to you, we've been running .Net 4.0 in Production for probably a year or more.



  • Bitches, please!

    Here's the SDK.

    @Microsoft said:

    System Requirements

    ...snip...

    Visual Studio: Use the resources in this SDK with Visual Studio versions 2005, 2008, and 2010, including Express editions (Not all features work with all versions of Visual Studio. For example, you cannot use the .NET 4 tools with Visual Studio 2008.)

    Inb4 anyone saying "read the last line you quoted dammit", the lack of tools only means you don't get things like the newest drag'n'drop controls or whatever eye-candy has been released together with VS 2010. You can still target .NET 4 and a couple minutes of fiddling will allow you to work with deployment projects and stuff just fine.


Log in to reply
 

Looks like your connection to What the Daily WTF? was lost, please wait while we try to reconnect.