Hi Jacques Pierre and everyone, OFBiz suffers from code hoarding. A LOT of that code is badly written, non functional, or just a bare minimum POC.
Thinking of OFBiz as full of features that would shrink is not very realistic, here is why: - If it was broken for years, then nobody is using it and nobody cares - Deleting things always keeps them in source control for review later - The whole purpose of refactoring OFBiz is to remove such dead code and improve the design. - One of the objectives (at least for me) in refactoring OFBiz is to redesign OFBiz to be modular with loose coupling between the parts. This loose coupling allows us to add TONS OF FEATURES that do not obstruct the functionality of the framework or touch core components. Look at the files I'm mentioning ... Where do they live? They live in the heart of the framework and the core applications. This is flat out wrong! We should never keep code for "reference on how to use" or "it might come in handy". Even if we do, it should never be in the core framework or core applications but instead in peripheral modules. Also keeping non compiling code means confusion for developers. Why is this file here? Why does it exist? Why is it not compiling? This just puts drag on the thinking velocity of developers and adds more weight to this already fat code base. I know it sucks, but the code base has many parts that suck! We have to strip down before we build again, it's just a price that we must pay to keep the project running. You just cannot think in a mess. It's a human thing! My 2 cents, Taher Alkhateeb On Tue, Jun 14, 2016 at 8:01 PM, Pierre Smits <[email protected]> wrote: > As the majority of the referenced java files are related to 3rd party > solutions integrations, we should have done the smart thing and that is > provide them as optional Proof of Concept components. In stead we had/have > them as almost hard coded functionalities. Removing these from the code > base in trunk involves more. It means also removing the elements that > access these (directly and indirectly), including screen and form widgets, > templates, services and request and view map uris. > > But if we remove them from the code base (to the attic), before long the > knowledge will be lost and the feature set of OFBiz will shrink. Some may > not care about that, but it will - again - make the uphill adoption battle > more difficult. > > Best regards, > > Pierre Smits > > ORRTIZ.COM <http://www.orrtiz.com> > OFBiz based solutions & services > > OFBiz Extensions Marketplace > http://oem.ofbizci.net/oci-2/ > > On Tue, Jun 14, 2016 at 4:10 PM, Taher Alkhateeb < > [email protected] > > wrote: > > > Hi Everyone, > > > > I cannot actually believe it but while I was working on a project (I will > > announce later) I discovered in the process that the below files cannot > > compile!!! They existed for years in the code base without even being > able > > to compile. They reference non existent libraries or they have faulty > code > > (e.g. not importing used code) > > > > I propose to delete them immediately from trunk > > > > > > > applications/accounting/src/org/ofbiz/accounting/thirdparty/cybersource/IcsPaymentServices.java > > > > > applications/accounting/src/org/ofbiz/accounting/thirdparty/ideal/IdealEvents.java > > > > > applications/accounting/src/org/ofbiz/accounting/thirdparty/ideal/IdealPaymentServiceTest.java > > > > > applications/accounting/src/org/ofbiz/accounting/thirdparty/orbital/OrbitalPaymentServices.java > > > > > applications/accounting/src/org/ofbiz/accounting/thirdparty/paypal/PayPalServices.java > > > > > applications/accounting/src/org/ofbiz/accounting/thirdparty/securepay/SecurePayPaymentServices.java > > > > > applications/accounting/src/org/ofbiz/accounting/thirdparty/securepay/SecurePayServiceTest.java > > > > > applications/accounting/src/org/ofbiz/accounting/thirdparty/verisign/PayflowPro.java > > > > > applications/content/src/org/ofbiz/content/openoffice/OpenOfficeByteArrayInputStream.java > > > > > applications/content/src/org/ofbiz/content/openoffice/OpenOfficeByteArrayOutputStream.java > > > > > applications/content/src/org/ofbiz/content/openoffice/OpenOfficeServices.java > > > applications/content/src/org/ofbiz/content/openoffice/OpenOfficeWorker.java > > applications/content/src/org/ofbiz/content/report > > > > > applications/content/src/org/ofbiz/content/report/JREntityListIteratorDataSource.java > > > > > applications/content/src/org/ofbiz/content/report/JRMapCollectionDataSource.java > > applications/order/src/org/ofbiz/order/thirdparty/taxware > > > > > applications/order/src/org/ofbiz/order/thirdparty/taxware/TaxwareException.java > > > > > applications/order/src/org/ofbiz/order/thirdparty/taxware/TaxwareServices.java > > applications/order/src/org/ofbiz/order/thirdparty/taxware/TaxwareUTL.java > > applications/product/src/ShipmentScaleApplet.java > > > > > applications/securityext/src/org/ofbiz/securityext/thirdparty/truition/TruitionCoReg.java > > > > > framework/webapp/src/org/ofbiz/webapp/view/JasperReportsJXlsViewHandler.java > > > framework/webapp/src/org/ofbiz/webapp/view/JasperReportsPdfViewHandler.java > > > > > framework/webapp/src/org/ofbiz/webapp/view/JasperReportsPoiXlsViewHandler.java > > > framework/webapp/src/org/ofbiz/webapp/view/JasperReportsXmlViewHandler.java > > > > Regards, > > > > Taher Alkhateeb > > >
