We have been asked by our client to consider SXA for a new project. I have not used SXA. I only have some theoretical knowledge. I have few questions:
What additional license cost will be incurred by the client towards SXA. I learnt from a forum that if a company has partner license with Sitecore, Developers can use SXA as the license file has SXA attribute in it. Else, the client will have to pay an extra amount for SXA.
Is it possible to arrive at a license cost range? As the project is gonna be executed by us (vendor), assume 3 developers will be working on a project and at least one person would need to use SXA.
If you have implemented projects using SXA, please help us understand how much of effort saving we are looking at. I know it depends on various factors. But if it's a simple project let's say 10 Week (one person effort) project, how much effort we may be able to save. Like 1 wk, 2 wk etc.
Related
We have an application with 10 millions lines of code in 4GL(Progress) and a database also OpenEdge with 300 Tables. My Boss says we should migrate it to a new Programming language and a new Database Management system.
My questions are:
Do you think we should migrate it? Do you think Progress has a "future"?
If we should migrate it, how, are there any tools? Or should we begin with programming from scratch?
Thank you for the help.
Ablo
Unless your boss has access to an unlimited budget, endless user patience and a thirst for frustration and agony you should not waste any time thinking about rewrites.
http://www.joelonsoftware.com/articles/fog0000000069.html
Yes, Progress has a future. They probably will never be as sexy an option as Microsoft or Oracle or whatever the cool kids are using this week. But they have been around for 30 years and they will still be here when you and your boss retire.
There are those who will rain down scorn on Progress because it isn't X or it doesn't have Y. Maybe they can rewrite your 10 million lines of code next weekend and prove just how right they are. I would not, however, pay them for those efforts until after the user acceptance tests are passed and the implementation is completed.
A couple of years later (the original post being from 2014 and the answers being from 2014 to 2015) :
The post, which has gotten the most votes is argumenting basically two fold :
a. Progress (Openedge) has been around for a long time and is not going anywhere soon
b. Unless your boss has access to an unlimited budget, endless user patience and a thirst for frustration and agony you should not waste any time thinking about rewrites: http://www.joelonsoftware.com/articles/fog0000000069.html
With regard to a:
Yes, the Progress OpenEdge Stack is still around. But from my experience the difficulty to find experienced and skilled Openedge has gotten even more difficult.
But also an important factor here, which i think has evolved to much greater importance, since this discussion started:
The available Open Source Stacks for application development have gotten by factors better, both in terms of out-of-box functionality and quality and have decisively moved in direction of RAD.
I am thinking for instance of Spring Boot, but not only, see https://stackshare.io/spring-boot/alternatives. In the Java realm Spring Boot is certainly unique. Also for the development of rich Webui's many very valid options have emerged, which certainly are addressing RAD requirements, just some "arbitrary" examples https://vaadin.com for Java, but also https://www.polymer-project.org for Javascript, which are interestingly converging both with https://vaadin.com/flow.
Many of the available stacks are still evolving strongly, but all have making life easier for the developer as strong driver. Also in terms of architectures you will find a convergence of many of this stacks with regard basic building blocks and principles: Separation of Interfaces from Implementation, REST API's for remote communication, Object Relational Mapping Technologies, NoSql / Json approaches etc etc.
So yes the Open Source Stack are getting very efficient in terms of Development. And what must also be mentioned, that the scope of these stacks do not stop with development: Deployment, Operational Aspects and naturally also Testing are a strong ,which in the end also make the developers life easier.
Generally one can say the a well choosen Mix and Match of Open Source Stacks have a very strong value proposition, also on the background of RAD requirements, which a proprietary Stack, will have in the long run difficulty to match - at least from my point of view.
With regard to b:
Interestingly enough i was just recently with a customer, who is looking to do exactly this: rewrite their application. The irony: they are migrating from Progress to Progress OpenEdge, with several additional Open Edge compliant Tools. The reason two fold: Their code is getting very difficult to maintain and would refactoring in order to address requirements coming from Web Frontends. Also interesting, they are not finding enough qualified developers.
Basically: Code is sound and lives , when it can be refactored and when it can evolve with new requirements. Unfortunately there many examples - at least from my experience - to contrary.
Additionally End-of-Lifecyle of Software can force a company, to "rewrite" at least layers of their software. And this doesn't necessarily have to bad and impossible. I worked on a Project, which migrated over 300 Oracle Forms forms to a Java based UI within less then two years. This migration from a 2 tier to a 3 tier architecture actually positioned the company to evolve their architecture to address the needs of Web Ui's. So actually in the end this "rewrite" and a strong return of value also from the business perspective.
So to cut a (very;-)) long story short:
One way or another, it is easy to go wrong with generalizations.
You need not begin programming from scratch. There is help available online and yes, you can contact Progress Technical Support if you find difficulties. Generally, ABL code from previous version should work with only little changes. Here are few things that you need to do in order to migrate your application:
Backup databases
Backup source code and .r files
Truncate DB bi files
Convert your databases
Recompile ABL code and test
http://knowledgebase.progress.com articles will help you in this. If you are migrating from some older versions like 9, you can find a good set of new features. You can try them but only after you are done with your conversion.
If you are migrating from 32-bit to 64-bit and if you are using 32-bit libraries, you need to replace them with 64-bit
The first question I'd come back with is 'why'? If the application is not measuring up that's one thing, and the question needs to be looked at from that perspective.
If the perception is that Progress is somehow a "lesser" application development and operating environment, and the desire is only to move to a different development and operating environment - you'll end up with a lot of resources in time, effort, and money invested - not to mention the opportunity cost - and for what? To run on a different database platform? Will migrating result in a lower TCO? Faster development turn-around time? Quicker time to market? What's expected advantage in moving from Progress, and how long will it take to recover the migration cost - if ever?
Somewhere out there is a company who had similar thoughts and tried to move off of Progress and the ABL. The effort failed to meet their target performance and functionality metrics, so they eventually gave up on the migration, threw in the towel, and stayed with Progress - after spending $25M on the project.
Can your company afford that kind of risk / reward ratio?
Progress (Openedge) has been around for a long time and is not going anywhere soon. And rewriting 10 Million lines of code in any language just to use the current flavor of the month would never be worth it unless your current application is not doing what you need. Even then bringing it up to current needs would normally be a better solution.
If you need to migrate your current application to the latest version of Openedge (Progress) you would normally just make a copy of your database(s) and convert it/them to the new version of Openedge and compile your your code against the new databases and shake the bugs out. You may have some keyword issues, but this is usually pretty minor.
If you need help with programming I would suggest contacting Progress Software and attending the yearly trade show or going to https://community.progress.com/ and asking/looking for local user groups. The local user groups would be a stellar place to find local programming talent.
Hope this helps.....
I'm looking for a Qt Gantt Chart GUI component or at least the beginnings of one. I've looked the web over so this is my last stop before creating one for myself. I'm capable of realizing this type of component myself but would prefer to dedicate my time to more domain specific development problems if at all possible.
Any suggestions would be much appreciated.
you can download a trial version. But I thinks it's rather expensive:
KDGantt follows the same pricing model and license agreement that Nokia uses. Per developer / platform licensing, each developer licensed to use KDGantt on a certain platform may use the software on any number of computers running this platform, but other developers working on the same computers may not, unless they have their own licenses. There are no runtime/royalty fees for applications built and deployed using KDGantt. You may ship the binary library together with any number of your application(s) for the platform your license is assigned to.
One (1) KDGantt license for single platform ----------------- $1600.00 US
UNIX/Linux or Mac or Windows, chose one platform
One (1) KDGantt license for duo platform -------------------- $ 2400.00. US
UNIX/Linux or Mac or Windows, chose two platforms
One (1) KDGantt license for trio platform --------------------- $ 3200.00. US
UNIX/Linux, Mac and Windows, all three platforms
Would this do it? http://www.ics.com/products/qt/kdgantt/. Found via a quick Google search.
I would suggest that you also have a look at the VARCHART XGantt control from NETRONIC. This control is around on the market for a long time, it is proven in mission critical applications, and very feature-rich. Please note: my answer is biased as I work for NETRONIC. I also openly share that we sell at higher prices than all tools mentioned above; and that is for a reason.
Have a look at our Gantt chart offerings. If you like what you see, please send us an email to mailto:sales#netronic.com. Please refer to stackoverflow and ask that this email will get forwarded to Martin. He will get in contact to you to evaluate the potential of creating a complementary rapid prototype.
btw - A Gantt is typically more complex than many people assume. From talking to many of our clients (both software developers and end users) I know that using a proven control turns into tangible time-to-market benefits.
Does this help you although it is a vendor answer?
I want to power a very simple shopping-cart where I will be selling software. I've checked a bunch of them already and still can't find what I need. Most of shopping-carts don't have "virtual product" functionality. Among those that have this feature are PrestaShop and Magento.
Presta doesn't have this feature implemented very well. I don't remember details about what I didn't like in Presta but as far as I remember the feature was not very well implemented: no ability to disable shipping, not possible to specify that people must be able to buy one item only (which is software license), no ability to set endless quantity for the products, etc.
Then I checked Magento, it has this feature implemented almost perfectly (still have to figure out how to disable quantity). However I heard that Magento is rather slow and frankly speaking this software looks like overkill. It has huge number of features and there are many many lines of code while I simply need the ability to register users, let them log in to the customer area and provide them with either download link to the already purchased software or the "buy now" link.
Do you by chances know of such software?
decided to use zen cart after all
I am assessing some tools to manage software develpment projects. Dotproject seems a good one, but i would like to learn of other's experinces using it for software development.
Thanks.
I've been using Assembla for a small team and loving it. The web interface is very elegant, and it gives me power and simplicity at the same time.
My favorite feature is the strong ticketing system which allows me to create tickets on the web, assign them to developers, associate them with other tickets, estimate the time it takes to close the ticket, and aggregate those times graphically. It really shines, though, with its version control and ticket integration. Being able to specify that this commit is related to ticket #45, fixes bug #78, and closes ticket #32 is very nice.
They offer version control hosting for multiple version control systems - including SVN and GIT.
They offer free and paid packages.
For more information, check out their usage videos here.
Oh, and do let us know what you decide and why :)
An old post, I know...
I used to be a core member of the dotproject team and used it for years and set up many organizations on it... ranging from small non-profits and software shops to major government projects. It tended to work relatively well. Unfortunately, due to the crawl of development, half the dotproject team split to form web2project and we've been there almost two years.
At present, we (web2project) does a quarterly release and have done major work on the code. We've closed ~100+ bugs, added dozens of features like iCal feeds, and improved performance by 95% and cut about 1/3 of the code overall. And yes, we have an upgrade path from dotProject.
What is the difference? They all are business management solutions. They do the same? Some sort of different editions? Do they use same platform?
Dynamics NAV
Microsoft Dynamics NAV 2009 is a
comprehensive business management
solution that helps people work faster
and smarter, and gives your business
the flexibility to adapt to new
opportunities and growth.
Dynamics AX
Microsoft Dynamics AX 2009 is a
comprehensive business management
solution for mid-sized and larger
organizations that works like and with
familiar Microsoft software to help
your people improve productivity.
Dynamics GP
Microsoft Dynamics GP is a richly
featured business management solution
that allows you to use familiar,
powerful software to operate and grow
your business.
Dynamics SL
Microsoft Dynamics SL is a business
management solution specialized to
help project-driven midsize
organizations obtain reports and
business analysis, while helping
increase efficiency, accuracy, and
customer satisfaction.
Generally speaking each of these products were purchased separately, and Microsoft is kind of trying to put them into a general business, but has not actually integrated them into a common ERP platform (yet anyway). For example, NAV was formerly Navision, GP was formerly Great Plains. I think AX was also part of the Navision purchase, but was a different product that Navision had themselves purchased.
Each has a separate accounting implementation that it came with, so there is a lot of overlap in the non-differentiators like accounting.
Basically they are targeted at different types of businesses. SL is for a service oriented business (like a software consulting firm). NAV would be more targeted at an inventory based operation.
I didn't investigate all of their options in depth to know all of the similarities and differences, but in a former job I had to look into NAV, AX and GP and that is what I recall it being all about.
I agree with Dave Markle, the marketing is engineered to create the maximum possible confusion. The executive suite buys these things and then marketing has to break its head to figure out how to sell and differentiate each one. As you can see, they didn't do a great job.
The marketing-ese is in full effect with the Dynamics products. All these packages were acquisitions by Microsoft, and they are making an effort to bring them to market under one brandname: Dynamics. They are aiming at the SMB market. It's not positioned to compete with SAP. Both are client-server apps.
I've worked with Dynamics SL (previously named Solomon). It's an accounting suite, with modules for Accounts Payable + Receivable, Inventory, General Ledger, Purchasing, Reporting, Cost Accounting, Purchase Orders, etc.
It's all VBA goodness. The database underlying would make your blood curdle. It's denormalized like you wouldn't believe. I guess saying 'denormalized' would indicate that it previously normalized. I got the feeling it was never normalized. Full of technical debt.
Foreign keys are an unknown entity in SL. DBAs would have trouble taking the architecture seriously (e.g. columns actually named like User1 and User2 to indicate a custom field on the User Interface).
Dynamics GP is more oriented towards payroll. I cannot comment on its inner architecture.
They all run on the same platform. Client executables connecting to SQL Server. The forms design is like the Win95 and sometimes Win3.1 paradigm. Don't let the Outlook-like main screen fool you in the screenshot; it's the only one getting the upgrade treatment.
The licensing model is a killer, and so my previous encounter with Solomon had everyone running the same EXE from the network share. It was notoriously slow, and rarely a compliment from users on its responsiveness.
Entire consultancy businesses are built around these products. Supply and demand allow those consultants to charge a substantial amount, relative to the web-app and other line-of-business consultants.
On their "How To Buy" form, there is a "Contact Us"
and I'm completely certain that if you contacted one of the sales reps, they would go into great detail and great length about the strengths and weaknesses of each product.
Keep in mind, they'll be highlighting more strengths than weaknesses, and they'll be highlighting the weaknesses of the lesser priced products. But the sales reps are guaranteed to know the products inside out.
Also, Wikipedia has little write-ups on each of them.
They are mostly similar (sometimes identical) to the blurb on the MS website, but there's also some extra information there.