.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.



  • It really creeps me out to see a forum user quoting another forum user in his signature. It's one thing to quote Ronald Reagan or Sun Tzu, but quoting another user just reminds me of Prison Break where T-Bag has his bitches holding on his pockets.



  • @blakeyrat said:

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

    1) Fuck if I know!

    Those bastards! I suppose you'll be cancelling your maintenance contract, then?

    Seriously, though, it's very common for libraries or frameworks to move to newer versions of whatever their dependencies are. Is there a company that sells support? If not, then you're relying on random dudes to support you for free. Many are willing to fix bugs, etc, but time is limited. You don't have time / money for 4.0, and they don't for 3.5.

    Maybe TRWTF is that you're using a 4 year old framework. You're running that on Vista servers, too, right?



  • @Renan said:

    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.

    Are you sure about that?  I can't seem to find anything to confirm your interpretation.

     

    Also, Visual Studio Express Edition is free.



  • @boomzilla said:

    Seriously, though, it's very common for libraries or frameworks to move to newer versions of whatever their dependencies are. Is there a company that sells support? If not, then you're relying on random dudes to support you for free. Many are willing to fix bugs, etc, but time is limited. You don't have time / money for 4.0, and they don't for 3.5.

    I checked; the only dependency is .net 3.5 (and it was .net 2 until very recently.)

    But I get the feeling that everybody on this thread is missing the point utterly. As usual, all I'm asking for is people to give a shit about the quality of the code they produce, which is apparently completely antithetical to the entire open source movement.

    @boomzilla said:

    Maybe TRWTF is that you're using a 4 year old framework. You're running that on Vista servers, too, right?

    What, do .net frameworks go bad? Do they spoil? Grow mold?

    WTF is wrong with everybody today. Fuck this thread.



  • @blakeyrat said:

    But I get the feeling that everybody on this thread is missing the point utterly. As usual, all I'm asking for is people to give a shit about the quality of the code they produce, which is apparently completely antithetical to the entire open source movement.

    Aside from something apparently not being implemented, I don't see why using a nearly 1.5 years old framework is equivalent to not caring about the quality of code.

    @blakeyrat said:


    What, do .net frameworks go bad? Do they spoil? Grow mold?

    I have no idea. I just remember some of your rants about people not being up to date with Windows 7. I can imagine the situation being reversed, and getting a blakeyrant about open source hippies who can't keep up with the rest of the world. I get that you're frustrated.


  • @blakeyrant said:

    Wah wah, nobody agrees with me

    I was going to provide a synopsis of this thread, but basically it comes down to... yeah, open source with no backing and no maintanence contract generally don't care about forcing their user base to upgrade.  How long do you expect people to wait on one version of the framework?  4.0 is fine and stable.  If you had made a similar thread about someone updating from 1.1 to 2.0, I would have said screw you, generics are needed.  Code quality in OSS is bad?  I believe it.  Luckily everything i've needed to do either the library is provided by Microsoft, or I wrote it myself.  Haven't really had to do much with 3rd party libraries, because they suck whether or not they cost money.

    You can upgrade to .Net 4.0/VS 2010 for free (Express Edition).  I don't know what your work situation is like, but I, personally, love all the added features of 4.0.



  • @boomzilla said:

    Aside from something apparently not being implemented, I don't see why using a nearly 1.5 years old framework is equivalent to not caring about the quality of code.

    If the goal of the library is to force users to upgrade, then yes go for it. If the goal is to make it less useful and less flexible, then go ahead. If the goal is to make it impossible to run on well-tested, established frameworks, then bingo. If the goal is to cut-off half your users from bug and protocol updates and leave them stranded, then good plan.

    But a good library would do none of those things.

    @boomzilla said:

    I have no idea. I just remember some of your rants about people not being up to date with Windows 7. I can imagine the situation being reversed, and getting a blakeyrant about open source hippies who can't keep up with the rest of the world. I get that you're frustrated.

    There's a huge difference between a server and a desktop.

    But let's say for a second I was writing a desktop application and not a server service-- would I be better-off using this library? Does .net 4 include anything that improves the experience for my users? No; so by that metric it wouldn't make sense to upgrade. But does it include anything that hurts the experience for my users? Still no, unless on the off-chance I still have users on Windows 2000. So if it were a desktop app, I probably wouldn't be as annoyed by this change.

    But if you're writing a library, you're writing a library. You can't assume it will run on a desktop app. You can't assume it will run on a server app. You can't assume it will be used by people who have MSDN subscriptions. In fact, any assumption you make will make the library less useful to your customers.

    And let me just say, I find it fucking mind-boggling that this all has to be explained to supposedly intelligent developers. None of you have ever spent a few minutes thinking about what makes one library better than another? None of you would have an issue with upgrading and cutting-off support to a large percentage of your customers? Seriously? I feel like I'm a fucking alien sometimes. And it's no wonder software is so shitty, developers don't think!



  • @blakeyrat said:

    @boomzilla said:
    Aside from something apparently not being implemented, I don't see why using a nearly 1.5 years old framework is equivalent to not caring about the quality of code.

    If the goal of the library is to force users to upgrade, then yes go for it. If the goal is to make it less useful and less flexible, then go ahead. If the goal is to make it impossible to run on well-tested, established frameworks, then bingo. If the goal is to cut-off half your users from bug and protocol updates and leave them stranded, then good plan.

    But a good library would do none of those things.

    Well, the developers are probably using the library for their own purposes. And it's probably making their lives a lot easier. Supporting old versions can be pretty resource intensive.

    @blakeyrat said:

    And let me just say, I find it fucking mind-boggling that this all has to be explained to supposedly intelligent developers. None of you have ever spent a few minutes thinking about what makes one library better than another? None of you would have an issue with upgrading and cutting-off support to a large percentage of your customers? Seriously? I feel like I'm a fucking alien sometimes. And it's no wonder software is so shitty, developers don't think!

    Many of us probably were aware of the tradeoffs for using an unsupported open source library. We use open source frameworks and operating systems, but we also pay the companies that support them to support us. Were you a paying customer? Or just demanding that they cater to you for free? They did a lot of work and shared it with you. Is there a community around this library? Do others have the same issue that you do? You don't want to spend the rest of your life supporting 3.5. Why do you think that they would?

    Eventually, things go EOL, even open source contributions by random people on the internet. Yes, we've upgraded things like frameworks, sometimes because they went EOL, others for improvements and bugfixes that later versions provided. Why do you think the world owes you so much?



  • @boomzilla said:

    stuff

    Very eloquent.  6 free internets.



  • @boomzilla said:

    Many of us probably were aware of the tradeoffs for using an unsupported open source library.

    My mistake is that I assumed that the developer of this library actually gave a shit about the customers using it. I mean, sure, he put up a page that said, "hey, use my library!" but I guess I shouldn't have read that as, "hey, use my library!"

    @boomzilla said:

    We use open source frameworks and operating systems, but we also pay the companies that support them to support us. Were you a paying customer? Or just demanding that they cater to you for free?

    The only thing I'm "demanding" is "don't break your own fucking shit so quickly." And I'm not even demanding it, I'm just expressing frustration over it.

    @boomzilla said:

    They did a lot of work and shared it with you.

    And because I foolishly relied on this library, it's leading to more work now than I would have spent if I had just written the damned thing by myself in the first place. As I pointed out in the OP. Using this library didn't "save" me anything in the long run, it's just been a huge pain in the ass.

    @boomzilla said:

    You don't want to spend the rest of your life supporting 3.5.

    I don't support "framework versions". That's a fucking implementation detail. I support products. And if the product I was supporting was a library, you bet your ass it'd work on .net 3.5 right fucking now. Probably 2.0 too.

    @boomzilla said:

    Eventually, things go EOL, even open source contributions by random people on the internet.

    Of course they eventually do. I'm not a fucking moron, and please stop talking to me as if I were. But that's not the point. .net 3.5 is still supported by Microsoft, it was state-of-the-art 18 months ago... why would any rational person expect it to be abandoned at this point in time?

    @boomzilla said:

    Why do you think the world owes you so much?

    I think that if someone puts up a webpage saying "hey use my library! It'll save you work!" that it should save me work.

    Every time I use anything open source, I end up disappointed. I'm a fucking idiot for even considering open source.



  • @blakeyrat said:

    I mean, sure, he put up a page that said, "hey, use my library that I use and am providing for free!" but I guess I shouldn't have read that as, "hey, use my library which I will cater to your every needs for no cost!"
    FTFY

    It's not broken.  It just doesn't work on the framework you're using.  He doesn't owe you anything.  Not support, not working on your framework.  You're not giving him anything, and yet he's still giving you something.  Beggers can't be choosers and all that.

    @blakeyrat said:

    I don't support "framework versions". That's a fucking implementation detail. I support products. And if the product I was supporting was a library, you bet your ass it'd work on .net 3.5 right fucking now. Probably 2.0 too.
    And 1.1 too, right?

    @blakeyrat said:

    I think that if someone puts up a webpage saying "hey use my library! It'll save you work!" that it should save me work.
    Hmmm, it didn't save me any work either.  You know what, you're right.  MUTINY!


  • Discourse touched me in a no-no place

     Jesus fuck, I'm out from Terminal Hurricane Electrical Failure for 4 fucking days and all of a sudden I'm the only person that agrees with blakeyrants? There's no fucking excuse to bump the required framework UNLESS you're using new features - in which case, you need to bump the major version number. And a v1.0 ANYTHING should never throw a NotImplementedException (seriously, that shit should refuse to compile into an assembly with a major version of 1 or above)

    I don't care how "free" the software is - if youwrite it and publish it to the public, you have a duty to at least some professionalism. That's why I annoy the shitballs out of other collaborators on my opensource projects - I won't commit code until it's GOOD, and I argue for good procedure and design on a regular basis.



  • @Sutherlands said:

    @Renan said:

    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.

    Are you sure about that?  I can't seem to find anything to confirm your interpretation.

    Personal experience. And it's not like downloading the SDK and testing it would cost you more than a couple hours of your life.

    @thistooshallpass said:

    It really creeps me out to see a forum user quoting another forum user in his signature. It's one thing to quote Ronald Reagan or Sun Tzu, but quoting another user just reminds me of Prison Break where T-Bag has his bitches holding on his pockets.

    There's history behind that quote. Someone (I think it was me) was complaining about how there's so much WTF in general, when you think about software development, and how it made him depressed. There was some comment about some kind of coding situation being really ugly. Then Snoofle said that, which, IMO, deserves to be quoted for its truth.

    If there's one thing we can always be sure is that, as long as clueless code monkeys exist, there will be jobs available for proper software developers, who will then be paid to fix someone else's WTF's.



  • @Renan said:

    Personal experience. And it's not like downloading the SDK and testing it would cost you more than a couple hours of your life.
    That's true, but it's ABOUT 2 hours more than I'm willing to spend for something I don't care about.

    edit: Lucky for me* I have 2008 installed already.  I created an empty project and I don't see a way to target 4.0.



  • @blakeyrat said:

    Every time I use anything open source, I end up disappointed. I'm a fucking idiot for even considering open source.

    Yeah, seriously. What did your engineering review board say when you proposed to put an unsupported open source library on a mission critical server? Oh, right, I forgot, you work at a Web 3.0 company where no one has been there for more than 3 years.



  • @Weng said:

    Jesus fuck, I'm out from Terminal Hurricane Electrical Failure for 4 fucking days and all of a sudden I'm the only person that agrees with blakeyrants?
     

    It's been Bowels of Fury for me, but yeah-- I agree, too. Leaving a "NotImplementedException" for any longer than 30 seconds after VS autogenerates it makes me feel dirty-- dirty even than the aforementioned Bowels Galore.

    Given that the library's open source, they do have free license to Do Whatever The Fuck They Want, and they don't owe anyone anything. That doesn't make such a decision a good one, nor one that's good for the long-term health of the project.  It sounds like the library's devs have put forth an ultimatum: "Keep an old version that doesn't work, or upgrade to a new version that you can't run". (Or go fork yourself)

    I may have misread the thread on this point, but Blakey,didn't you know this feature was unavailable when you first adopted the library? Sound advice-- I've evaluated a ton of open source libraries, and passed on tons of them explicitly because of missing or unimplemented features. If a library doesn't do what I [b]may[/b] want it to do, it's almost always not worth adopting. Especially when the lack of that feature will bring down a whole project, or force a rewrite of the entire codebase. Ass-pull-- but if you figure there's even a 0.1% chance of that feature becoming critical, pass on the library.

    At this point, it almost sounds like your best bet is to just fork the code, write the NotImplemented bits that you need, and never upgrade the library. Hopefully, sometime in the future, you'll come across another library that'll do everything you need, and you can just rip that piece of junk out, and shove the new piece of not-so-junk in.



  • @Lorne Kates said:

    I may have misread the thread on this point, but Blakey,didn't you know this feature was unavailable when you first adopted the library?

    I read it that he didn't know it wasn't available until he needed it, but could be this way.



  • @Lorne Kates said:

    I may have misread the thread on this point, but Blakey, didn't you know this feature was unavailable when you first adopted the library?

    No, I just went through the intellisense to get a sense for what it supported. (Natch, there's virtually no documentation.) So yes, I didn't do due diligence.

    @Lorne Kates said:

    At this point, it almost sounds like your best bet is to just fork the code, write the NotImplemented bits that you need, and never upgrade the library.

    It's a Twitter library, and since Twitter changes their API every 16.3 seconds, it would be a huge pain to maintain it myself.

    I put in a ticket to get updated to VS2010, so we'll play it from there I guess.



  • @Weng said:

    I don't care how "free" the software is - if you write it and publish it to the public, you have a duty to at least some professionalism.
    Unfortunately, that mindset of professionalism is almost nonexstant among open source software.  In fact there seems to be a mindset of "free means I don't have to care".  And so you get:

       1.  Write some software and put it on a website for everyone to use

       2.  Expect everyone to praise you and tell you what a genius you are

       3.  Only fix the bugs you feel like fixing and ignore the ones you don't feel like messing with

       4.  Fuck with it, change things, break things and whatever you do, don't document anything

       5.  If anyone compains about #3 or #4 tell them they are an ungrateful bastard for complaining about software that they got for free

    This mindset isn't limited to projects written and maintained by one guy coding in his parent's basement.  Big applications with lots of programmers who actually get paid have this same problem.  Yes Mozilla, I'm looking at you.



  • @El_Heffe said:

    Unfortunately, that mindset of professionalism is almost nonexstant among open source software software providers.

    It's the nature of the game, unfortunately.



  • @thistooshallpass said:

    @Sutherlands said:

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

    Visual Studio 2010 Ultimate is +10k$.

     

    There are only a few features that ultimate has, i.e. timetraveling during debugging, that premium doesn't, and premium is half the cost. The pro version is even less (iirc ~2k) and would be fine if they hadn't moved profiling to premium, in effect making the professional version the basic lowest tier version available (other than the free express verision).

     



  • @blakeyrat said:

    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.

    Have you checked to see if the feature is actually implemented in the .net 4 code?

    I say, go with 5: code around the problem.  If the library can code the feature you need, surely you can also? And there's still the big if (as far as I am aware) of whether their code actually implments the feature correctly. I'd guess, since the new code's less than a year old, chances are fairly good it's not working yet. So you may not want to risk your production code on it just yet anyway.



  • @Sutherlands said:

    @Renan said:

    Personal experience. And it's not like downloading the SDK and testing it would cost you more than a couple hours of your life.
    That's true, but it's ABOUT 2 hours more than I'm willing to spend for something I don't care about.

    edit: Lucky for me* I have 2008 installed already.  I created an empty project and I don't see a way to target 4.0.

    When I worked with .NET people were always tellin gme how .NET made stuff too easy since you only need to know how to drag and drop, and that real programmers coded in (insert your favorite IDE here). There were even topics here in TDWTF where people would talk about whether .NET programmers are as good as any other kind of coder around (apples and oranges, IMO).

    The one thing that feeds the stereotype of the .NET programmer is this quirk of wanting everything handled easily to them. No, you won't find a project or solution template for .NET 4 on Visual Studio 2008. Google around, and everyone will tell you it's not possible to code for .NET 4 with Visual Studio 2008. Microsoft only has the decency to even hint at you how this can be done if you've got a Team Foundation server.

    There are some ways you can accomplish this, and I"ll give you some general pointers. You can look for a configuration file that tells VS where the compiler lies, and change it to point to .NET 4.0's. You can make your own tools to call the compiler via command-line, and then add them to the Tools menu. You can publish your app somewhere, and have Jenkins build it for you. Try thinking about more ways to do it.

    A few years ago at college we had assignments which could be coded in any language. C# was among my preferences, but not every computer at the labs had Visual Studio. They all had every .NET redistributable installed, though. So at home I made a GUI for CSC. I called it my .NET survival toolkit. I could code in whatever IDE which happened to be available, then I'd just tell it where the code was and with a couple clicks I'd have my projects built, without necessarily having VS in the machine. Heck, in a pinch I would code in notepad (did this in at least a couple exams).

    The point I'm trying to make is that yeah, Visual Studio is one of the greatest tools ever - I'm even using it in a job where I mainly deal with Javascript, mainly because I've got JSHint into it and now I'm trying to integrate Github too - but don't depend too much on it. If you take the time to learn how to work witih .NET without depending on VS, you'll be able to make much more with the CLR.



  • @Who_the_Fuck said:

    Have you checked to see if the feature is actually implemented in the .net 4 code?

    Read the OP again.

    @Who_the_Fuck said:

    I say, go with 5: code around the problem.  If the library can code the feature you need, surely you can also?

    Pooosibly? It has to do with serialization of one of the library-specific data types. I've already spent more time on this crap than the library's worth, and it's brought my project to a standstill.



  • @Weng said:

    Jesus fuck, I'm out from Terminal Hurricane Electrical Failure for 4 fucking days and all of a sudden I'm the only person that agrees with blakeyrants?

    Just the first one back. I go to Vermont for the weekend, and end up having to hike back to civilization. Sigh.



  • @blakeyrat said:

    @Who_the_Fuck said:
    Have you checked to see if the feature is actually implemented in the .net 4 code?

    Read the OP again.

    @Who_the_Fuck said:

    I say, go with 5: code around the problem.  If the library can code the feature you need, surely you can also?

    Pooosibly? It has to do with serialization of one of the library-specific data types. I've already spent more time on this crap than the library's worth, and it's brought my project to a standstill.

    Which library is that, BTW? I'd like to know, just in case me or anyone I know has to use it at some point.



  • @blakeyrat said:

    @Who_the_Fuck said:
    Have you checked to see if the feature is actually implemented in the .net 4 code?

    Read the OP again.

    You indicate you checked the library's source code, and found it was converted to .net 4. But you didn't actually mention anywhere that you also verified the feature had been implemented.

    @blakeyrat said:

    @Who_the_Fuck said:
    I say, go with 5: code around the problem.  If the library can code the feature you need, surely you can also?

    Pooosibly? It has to do with serialization of one of the library-specific data types. I've already spent more time on this crap than the library's worth, and it's brought my project to a standstill.

    Ugh. That brings back memories of a project I had been brought in to complete it - it was already 6 months overdue, and their people were saying it was at least 6 months from being completed. They had something like 6 different open source libraries that didn't really do some critical part of the job they needed done, and the rules of the engagement said I couldn't patch the open source libraries - even though it would've only been, like, 15 lines of code total, at most.  So over the next month, I ended up re-implementing like 90% of the functionality of those libraries to get something that could actually do what they needed it to do. Because they wanted to distribute the work, and not their source, that meant I had to do that from scratch, rather than copying code. And then, the day before I was ready to demo everything, they canned the whole project.

    At least I got my 350 hours pay out of it, and I got to catch up on sleep a lot sooner than if I'd have needed to stick around until it deployed.



  • @Who_the_Fuck said:

    You indicate you checked the library's source code, and found it was converted to .net 4. But you didn't actually mention anywhere that you also verified the feature had been implemented.

    Eh, it was a little confusing, but it was in my point 1.

    It's actually not implemented, but it's like... maybe 5 lines of code to implement it. Probably even less than that.

    As for the library's name: I'm not sharing it because I've talked to the main developer and he's not a jerk. He even gave me support when I first began using it. (Remember: no documentation.) While I think he's severely misguided about the development of this library, I don't have any personal gripe against him, and I don't want him to get any flack over this post. There's easily enough clues in this thread to find the library if you want; but if you do, please don't post it here.



  • @blakeyrat said:

    @Who_the_Fuck said:
    You indicate you checked the library's source code, and found it was converted to .net 4. But you didn't actually mention anywhere that you also verified the feature had been implemented.

    Eh, it was a little confusing, but it was in my point 1.

    It's actually not implemented, but it's like... maybe 5 lines of code to implement it. Probably even less than that.

    As for the library's name: I'm not sharing it because I've talked to the main developer and he's not a jerk. He even gave me support when I first began using it. (Remember: no documentation.) While I think he's severely misguided about the development of this library, I don't have any personal gripe against him, and I don't want him to get any flack over this post. There's easily enough clues in this thread to find the library if you want; but if you do, please don't post it here.

    I see. Well, maybe you can talk him into downgrading back to .NET 3.5, unless there's some really obscure thing he needs to to which couldn't be accomplished otherwise.



  • @Renan said:

    ...

    When I worked with .NET people were always tellin gme how .NET made stuff too easy since you only need to know how to drag and drop, and that real programmers coded in (insert your favorite IDE here). There were even topics here in TDWTF where people would talk about whether .NET programmers are as good as any other kind of coder around (apples and oranges, IMO).

    The one thing that feeds the stereotype of the .NET programmer is this quirk of wanting everything handled easily to them. No, you won't find a project or solution template for .NET 4 on Visual Studio 2008. Google around, and everyone will tell you it's not possible to code for .NET 4 with Visual Studio 2008. Microsoft only has the decency to even hint at you how this can be done if you've got a Team Foundation server.

    There are some ways you can accomplish this, and I"ll give you some general pointers. You can look for a configuration file that tells VS where the compiler lies, and change it to point to .NET 4.0's. You can make your own tools to call the compiler via command-line, and then add them to the Tools menu. You can publish your app somewhere, and have Jenkins build it for you. Try thinking about more ways to do it.

    A few years ago at college we had assignments which could be coded in any language. C# was among my preferences, but not every computer at the labs had Visual Studio. They all had every .NET redistributable installed, though. So at home I made a GUI for CSC. I called it my .NET survival toolkit. I could code in whatever IDE which happened to be available, then I'd just tell it where the code was and with a couple clicks I'd have my projects built, without necessarily having VS in the machine. Heck, in a pinch I would code in notepad (did this in at least a couple exams).

    The point I'm trying to make is that yeah, Visual Studio is one of the greatest tools ever - I'm even using it in a job where I mainly deal with Javascript, mainly because I've got JSHint into it and now I'm trying to integrate Github too - but don't depend too much on it. If you take the time to learn how to work witih .NET without depending on VS, you'll be able to make much more with the CLR.

     

    tl;dr any good IDE should allow you to change the underlying tools out.

     


Log in to reply
 

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