WE'VE MOVED!

We are proud to announce our NEW community destination. Engage with resident experts and fellow entrepreneurs, and learn everything you need to start your business. Check out the new home of StartupNation Community at startupnation.mn.co

Open Source Software

2

Comments

  • olegoleg subscriber Posts: 13 Bronze Level Member
    p.s. RE: Windows. Windows is a just a computer program. It`s a closed source computer program. It is a platform and a computer program. Many programs host other programs. What is a DLL? It`s just a program hosted by another program.
    So if you this DLL you speak of exhibits undesirable behavior, can you change the behavior without access to the source code?
    If you want to fix that pesky Windows security flaw, can you do it without Microsoft?
    If you want to change a feature of some proprietary software, can you do it without the source code?  Say you want Excel to automatically copy a cell into clipboard when you double click on it.  I am not talking about writing a macro or an add-on, but modifying the behavior of original software itself. Can you do it? 
    The answer to all these questions, is no - you can`t.  I think we are comparing apples and oranges here.  Again, I am not talking about modular architecture, or the ability to extend the functionality.  I am talking about modifying the core functionality.  In a compiled application, this cannot be done without the source!
    The benefit of open source is that you readily have access to the source code, and are free to modify it and recompile it as much as you want to accomplish your particular needs.  To me this is such an obvious and huge advantage, I don`t see how anyone can argue against it.
    Don`t get me wrong, I am not knocking Microsoft or any other proprietary software.  Actually I find myself defending MS very often; I and millions of others have made a living off working with MS platforms.  The resources that MS provides to their development community are absolutely unrivaled.  Still, having the source code is better than not having the source code, don`t you agree?
  • blondieblueblondieblue subscriber Posts: 9

    The answer to all these questions, is no - you can`t.  I think we are comparing apples and oranges here.  Again, I am not talking about modular architecture, or the ability to extend the functionality.  I am talking about modifying the core functionality.  In a compiled application, this cannot be done without the source!

    What did he say?
  • tertiustertius subscriber Posts: 7
    I think the apples and oranges argument comes in here.We have 1 guy that is ecstatic about open-source, because he can edit the source code.  Then we have another that says that software engineering is software engineering and open-source isn`t going to change how software gets made.Planning, design, coding, and testing.  That`s going to stay there no matter who releases code when.And I agree, being able to write patches, and not needing a new version is a sign of good design, be it open-source or proprietary.Open-standards is maybe a bigger issue.  Locking in to proprietary filetypes.  That`s a problem.  That locks you into software.Open-source support is not enterprise level support.  You can maybe pay to get some.  But the difference is vast.  Open-source programs have communities, but so do closer-source programs.You can get "entry-level" support for almost anything on the internet.But enterprise level support you will pay for, doesn`t matter if it`s open or closed.  And chances of getting closed source support are much higher than getting open source support.  Why?  We`re locked into proprietary standards.  This is slowly unfolding, and we`ll see what happens.I don`t believe open-source is the end of proprietary software.Last note(1of2): Most of the folks that are members of startupnation (most) are fine with community level support, because we #1 don`t want to waste money for enterprise level support and #2 our businesses are small enough to have time available to "do everything ourselves".(2of2): Sure the source is changeable.  But can every person here code?  Can every person here learn erlang because the program they use isn`t written in java?Open-source discussions should be largely left for the development community.  And they don`t have online stores or run community websites to live off of, they code for a living.  So at the end of the day, if you want something added, you are going to have to pay for it.  Be it to a company to write you an addon (which you`ll probably be able to do yourself... good development practice) or to an independent developer.I`m done.  Find the holes and fill them.My point : You guys are arguing about different things.
  • InactiveMemberInactiveMember subscriber Posts: 12
    I am talking about modifying the core functionality. 
    [ Well again this is just a matter of good design. If an application is well designed you can modify core functionality without the source code. ]
  • olegoleg subscriber Posts: 13 Bronze Level Member
    Tertius,
    I agree with you for most part.  Both open source and proprietary software has its place; both can be well designed and implemented, or poorly.  And for the small business community, open source is often a better fit.  For example, most e-commerce websites do not need a database with the capabilities of MS SQLServer or Oracle, nor can they afford the price tag.  It would be much wiser for those sites to go with an open source mySQL database.  On the other hand, for an enterprise-scale application, SQLServer is the way to go.
    The only argument I am trying to make here is that if you are a software developer, it`s is always better having access to the source code than not having it, as it gives you flexibility to change and mold a product to fit your individual needs.  If you are not a developer, the whole open-source argument is meaningless anyway - you just need a piece of software that functionally suits your needs and fits your budget; how it is implemented isn`t a big factor.
    A couple of points I do not agree with:

    "being able to write patches, and not needing a new version is a sign of good design, be it open-source or proprietary."  - Sure.  Microsoft releases patches and service packs for Windows all the time.  No one else does, because they do not have the source code.  Being able to write patches is a sign of good design, but you absolutely need the source code to do it.  Otherwise you are talking about ad-ons, not patches.  If this is not the case, name one piece of proprietary software that is shipped without the source code yet at the same time allows you to fix bugs and write patches?
    "Sure the source is changeable.  But can every person here code?  Can every person here learn erlang because the program they use isn`t written in java?"  No, not everyone can code.  But anyone can hire a developer to do it for them.  And if you are a developer, the language should not be an issue; if you know Java but are not willing or able to learn another language then frankly you are not a very good developer.  You`ve said this yourself:  "software engineering is software engineering" - the same principles apply regardless of the implementation.
  • olegoleg subscriber Posts: 13 Bronze Level Member

    I am talking about modifying the core functionality. 
    [ Well again this is just a matter of good design. If an application is well designed you can modify core functionality without the source code. ]

    How can you modify core functionality without the source code?  Give me a specific example. 
  • InactiveMemberInactiveMember subscriber Posts: 12
    Specific examples.
    Let`s say that I am dealing with a product that performs 3D rendering and I want to write my own rendering library. If the product is well-designed, you can replace the core rendering functionality with you own rendering library. Or if the product is especially well-designed, you can replace or override one rendering class with your own. There are a world of additional possibilities if the application is data driven and takes advantage of abstraction/encapsulation to define functionality in granules instead of in monolithic structures.
    Or let`s say I want to create a user-defined data type to replace core functionality or enhance core functionality. Assuming the application is well designed, this should be a snap. I don`t need the source code to do this. The example of Windows, where people have been successfully developing extensions to the platform for two decades, really says more in support of this argument than anything I can write.
    There is no fundamental difference between an add-on or patch or a module. Modular design - good design - makes it possible to do anything. There are lots of products, like Maya, that are examples of good design where source code is not required to make changes to core functionality. In a properly designed program, core functionality isn`t hard coded. Core functionality is implemented in modules. User-defined functionality is implemented in modules. There`s really no difference between a DLL that Microsoft ships and a DLL that an ISV ships.
    Also, this is especially true and important in large scale systems where replacing large parts of infrastructure or user-level features would be very difficult - even with source code.
  • InactiveMemberInactiveMember subscriber Posts: 12
    "If you want to fix that pesky Windows security flaw, can you do it without Microsoft?"
    [ Yes, you could, assuming the system is well designed. ]
    So if you this DLL you speak of exhibits undesirable behavior, can you change the behavior without access to the source code?
    [ Yes, you could, assuming the DLL is well designed. ]
    I am talking about modifying the core functionality. 
    [ Core functionality is just a programming term. There is probably/possibly no such thing as "core functionality" in a well designed application. Even in an API, if it`s well designed - there is just functionality - not core functionality, not extended functionality. ]
  • InactiveMemberInactiveMember subscriber Posts: 12
    Core functionality as you describe it, really exists in hardware, and even then, hardware is increasingly programmable. CPUs are already highly programmable. Without good design - fantastically good design - the concept of a CPU would never work. Even with Intel`s banjax of the Pentium, a fix was implemented in software without changing the microchip itself.
  • olegoleg subscriber Posts: 13 Bronze Level Member
    "If you want to fix that pesky Windows security flaw, can you do it without Microsoft?"
    [ Yes, you could, assuming the system is well designed. ]
    So if you this DLL you speak of exhibits undesirable behavior, can you change the behavior without access to the source code?
    [ Yes, you could, assuming the DLL is well designed. ]
    I am talking about modifying the core functionality. 
    [ Core functionality is just a programming term. There is probably/possibly no such thing as "core functionality" in a well designed application. Even in an API, if it`s well designed - there is just functionality - not core functionality, not extended functionality. ]
    OK, maybe in a perfect world full of perfectly designed software you can do all these things.  Now let`s go back to the real world: 

    Can you, or any other software developer who does not have access to Windows source code, fix a security flaw that Microsoft hasn`t release a patch for yet?
    Can you modify the default double-click functionality in Excel?
    Can you change the WinXP file search to work more like Win2000 file search? (If you can, please let me know! I hate the XP search.)
    These are real questions, not theoretical ones.  In the real world, it makes no sense for a software manufacter to allow the end user to modify their software.  Even if you can figure out how to do it, your license agreement most likely contains a clause to explictly prohibit you from doing this.  This is not poor design, it`s just good business sense.  If you go by your criteria for well-designed software, you have to admit that the overwhelming majority of proprietary software on the market today is poorly designed.
    If well designed software should allow users to modify any of it`s core functionality, then why would the software producer even bother with obfuscating the source code? 
  • blondieblueblondieblue subscriber Posts: 9
    You folks have way too much free time on your hands.
  • InactiveMemberInactiveMember subscriber Posts: 12
    BlondieBlue,
    We`re here having an interesting technical discussion on source code, software development, open source, etc. If you don`t like it, perhaps you can search people`s profiles and look up their work numbers so you can call them and talk about GoTruckStop and make disparaging comments about the Sloan brothers. I`ve really had enough of you.
     
  • blondieblueblondieblue subscriber Posts: 9
     
    Lets set the record straight here.
    First of all, I am not nor have I ever been associated with or part of GoTruckstop.com.
    I know TJ Graff, because I read a number of his posts here, prior to him being "banished" from SuN - simply because he had the guts to speak the truth about Rich Sloan. (at a time when Rich Sloan was acting like a horse`s pittoot.)
    TJ shared with me a number of instances where there was group think here at SuN - and because he challenges the status quo - he was banished from the forum by Rich Sloan.
    As far as anyone calling you - I have no idea what you are talking about.
    And as far as this discussion - IMHO - you lost many a folk here. Remember, most folks here are new startups, not a bunch of techies or geeks.
    This discussion between a few of you is like watching someone wrestle with a pig.
    Sooner or later you realize - the pig enjoys it.
    Now, if you have proof that I am who you say I am - I suggest you provide it here and now !!
    Otherwise, go slither off in a corner.
    (Sorry folks for the rant - but enough is enough.)blondieblue2007-5-24 16:43:57
  • olegoleg subscriber Posts: 13 Bronze Level Member
    Blondie, TJ, or whoever you are:
    Apparently there is a number of tech savvy folks here who enjoy discussing software development methodologies and merits of open source software.
    Apparently you`re not one of those folks.  Fine.  Feel free to participate in other threads that are more to your liking.  You can even start one of your own!  You can do that, can`t you?
    This discussion between a few of you is like watching someone wrestle with a pig.
    Sooner or later you realize - the pig enjoys it.
     
    Do you speak from first-hand experience?  Hey, maybe you can post a new thread about pig `rasslin!
  • OrangeHRMOrangeHRM subscriber Posts: 1













    We are also a good example about
    how Open Source can works.


    We have been developing a
    HR Open Source App for the past 3 years. The results, the way clients and
    developers join the idea is simply great. Till now, our community have been
    helping us to translate the app for more them 12 languages and report bugs. We also
    have been helping small and middle size companies, who has no money to hire (license
    + implementation + support) expensive software, to improve their production level
    and become more competitive by using our free application (you pay only for the
    support, if you want). Just take a look at http://weblog.infoworld.com/openresourc ... e_erp.html


    And this is not only about
    OrangeHRM. A considerable number of other Open Source companies are
    contributing to this as sugarCRM, OpenBravo, Linux, MySQL etc.


    If the Open Source model
    will completely substitute the traditional model, I don’t know. But for sure,
    will radically change the competition bases of the software industry (for
    better).


      






    O


    range


    HRM



    Inc.







    Telephone:







    +1-914-458-4254
    (USA)





    +94-11-550-5500 (Asia)







    web



    :
    www.orangehrm.com



    538 Teal Plaza





    Secaucus, NJ 07094






    Open Source HR
    Management


Sign In or Register to comment.