Struts at Five Years

Discussions

News: Struts at Five Years

  1. Struts at Five Years (71 messages)

    As Rob Lambert writes in 5 Year Anniversary of the Birth of Struts, five years ago, on Memorial Day weekend, Craig McClanahan wrote the first version of Struts on his laptop while on vacation, arguably starting a drive towards mass-production frameworks in Java's web tier. Struts is still in common use today.

    Matt Raible, in a recent Tech Talk, mentioned that many like to "trash on Struts," which caused him to look at other frameworks. However, industry adoption still is very much in Struts' favour, both historically and in new development. (In fact, at the 2005 TheServerSide Java Symposium, 47% of those responding to a poll said they used Struts as the web framework, compared to 20% for the next runner-up, Spring.) Core Struts development seems to have slowed down, but is that a sign that Struts has matured enough that it doesn't need more development?

    Migration to JSF, as a JCP-controlled framework, seems to be the current "blessed trend" for web application development in Java, but it's hard to imagine JSF displacing Struts in the industry in the near future, even with the development of Shale.

    After five years, what's your opinion of Struts and how it works? The industry-wide popular position is that Struts is antiquated, but that doesn't change its dominant position.

    Where do you think Struts will be in another year, or three years from now?

    Threaded Messages (71)

  2. Struts at Five Years[ Go to top ]

    I started using Struts in January of 2001. Years later, it is no longer the best-designed web framework, but I feel it is still the best-implemented web framework. I have looked for excuses to migrate to Spring, Tapestry, and Webwork, but in the end I have kept coming back to Struts as a more mature and complete product.

    Shale looks like it will solve my biggest pain points with Struts. If it comes out in a reasonable time period, it will have the inside track as my next framework of choice. If it doesn't, then I will have to revisit Spring after they finally adopt a freaking standard tag library.
  3. Struts at Five Years[ Go to top ]

    Couldn't agree with you more. I did an evaluation of web frameworks in January 2004, and came up with Struts as the winner. People who used Tapestry swear by it but the learning curve isvery steep. JSF is great, but I can't see how a web based application where all event handling is done at the server can be very responsive.

    If I was starting a new project today. I will choose Struts or Spring MVC.
  4. JSF is great, but I can't see how a web based application where all event handling is done at the server can be very responsive.

    I wonder, does Struts have advansed client-side event handling and it is a reason you will choose Struts for your new project?
    Client-to-server event handling is a very hot theme today for JSF. There are many people work on it right now. I guess, the valuable solution will found in a couple of months.

    --
    Sergey : jsfTutorials.net
  5. Sergey
    No, Struts does not have any client side event handling.
    But that is the forte of Struts, that it does not try to solve all the pieces of the puzzle. It does one job, albeit, that of being the controller, and does it very well.

    All other tag libraries included i.e. html,bean,logic, and nested are a bonus.

    I know little about JSF/Shale, but I will wait until developers start to use it in production deployments before I jump on the bandwagon.
  6. Struts at Five Years[ Go to top ]

    What I like the most about Struts is that it stays close to the HTTP protocol. Your web application application is HTTP-based, so it's a request-response application, and that doesn't change with Struts.
    The URLs can stay clean and usable by end users. It also doesn't force you to use POST when a GET is more appropriate. It allows you to use redirect after post.
    This respect for the HTTP standards, and the flexibility that it allows, makes web-apps easy to use and intuitive for the users, and makes struts easy to teach to new developers.

    What I dislike the most about Struts is the tag libraries. Even if Struts-EL is better than the basic Struts tag libraries, they haven't really adopted the philosophy of the JSTL and the EL. These tags should be rethinked and rewritten. The use of a proprietary internationalization mechanism is also problematic (the properties are not read the same way as a standard properties resource bundle).
    And finally, the scope of a form bean being session by default is a big mistake IMHO.
  7. Struts at Five Years[ Go to top ]

    It's the de-facto industry standard.

    When looking for java web development contracts if you haven't got struts on your CV then it's going to be very difficult.

    Ian
    Todo Lists
  8. Struts at Five Years[ Go to top ]

    It's the de-facto industry standard.When looking for java web development contracts if you haven't got struts on your CV then it's going to be very difficult.IanTodo Lists

    I agree with this opinion in general. Yes, the Struts is a very popular web framework and the record in the CV about it is very desirable now. However, Struts never been the best framework in the past and it is not the best now.
    Struts has played a very significant role in the history. It has consolidated the java community in the meaning what the web framework should be. Popularity of Struts has killed a lot of proprietary frameworks that were on the market previously. Open Source can beat the commercial software. This precedent becomes a de-facto reality today.
    Is Struts a winner forever? The progress never stops. We have a lot of de-facto standards for the last years and many of them just history now. The technology is going to be dead if it is not evolved.
    What the way the Struts is going to be evolved? It sounds that Shale is a next step. However, Shale is not a classic Struts. Shale is designed to work with JSF and presumes that JSF will replace the most parts of Struts in the feature.

    --
    Sergey : jsfTutorials.net
  9. Struts at Five Years[ Go to top ]

    Tools manufacturers have been able to keep Struts at the forefront of Web Frameworks. Eclipse plug-ins from Exedel and M7 have made struts development so easy. Oracle, Borland and BEA have also bought into it. I've been noticing that JSF tools are also been coming from Exedel and M7. If these tools become as mature as the struts tools, then maybe JSF can displace struts.
  10. Struts at Five Years[ Go to top ]

    I am quite fond of Spring, but for the near future, Struts is the web framework that I will use. I've used Struts, in conjunction with Spring and Hibernate to create a decent, scalable, framework that pretty much any reasonably compentent Java developer can learn and use.

    We are about to start a new project for a customer that wants to have a "safety net" by having us write a document so that they can take over maintainence of the project if necessary.

    Great! Give them Struts in Action, Pro Spring, and Hibernate in Action and they've got the main tools. All they need to learn is how we did it specifically. I don't have to explain our proprietary API or anything really weird. It is all very straightforward.

    Struts, IMO, despite some flaws is easy to pick up, has proven flexible, and is ubiquitous. So far, I'm pleased with it.
  11. Spring will extend its life[ Go to top ]

    I would like to see Struts go through an innovation cycle that is highly needed, but regardless I think that its installed and knowledge base will make it a popular framework for a while.

    Furthermore I expect that Spring's pragmatic approach regarding the support for Struts will infuse some more life into it.

    In the longer run I do see the new adoption sharply declining unless some major re-design happens. Struts architecure has just aged too much too make it an attractive and able competitor.

    Thank you,
    Edmon
    http://blogs.ittoolbox.com/eai/software/
  12. Spring will extend its life[ Go to top ]

    I guess most people are aware of this anyway, but I'd nevertheless like to clarify how Struts and Spring relate:

    First of all, Spring is a general application framework, with focus on the middle tier: core container, AOP framework, transaction demarcation, data access, etc. It can be used in any kind of application, including J2EE web applications, and ships with dedicated support for various concrete environments.

    If a Spring application context runs in a J2EE web application, it can be accessed from any kind of web tier: be it based on custom Servlets, Struts, WebWork, Tapestry, JSF, etc. Spring ships with general web support to allow for easy management of a Spring application context in such an environment.

    Additionally, Spring also ships a full-blown web MVC dispatcher, being able to serve both web user interfaces and remote services. This is commonly referred to as "Spring Web MVC" and can serve as a replacement for a third-party web MVC framework, in combination with view technologies such as JSP, Velocity and FreeMarker.

    Note that Spring Web MVC is a separate part of Spring, completely optional: While it can be used to build a web tier solely on Spring, it can also be used alongside any other web framework (for example to serve remote services, with Struts serving the user interface), or not at all. The choice is up to the user.

    We have many users running a Struts web tier on a Spring middle tier (and also a significant number of users running WebWork, Tapestry and JSF). We are happy to support any such combination as a first class citizen in the Spring ecosystem, alongside promoting and supporting Spring Web MVC. So let me conclude with: happy birthday, Struts :-)

    Juergen
  13. Struts at Five Years[ Go to top ]

    After five years, what's your opinion of Struts and how it works? The industry-wide popular position is that Struts is antiquated, but that doesn't change its dominant position. Where do you think Struts will be in another year, or three years from now?

    It still works well :-). As Matt said, if you're productive in struts than ... why not use it. Because others say it's "outdated" ?

    I think it will slowly be replaced by "component oriented" frameworks (Wicket, Tapestry, JSF, other) as it should be, BTW, if we're living in a normal world.
  14. Struts at Five Years[ Go to top ]

    I despise struts. In 2005 it still gives me the feeling that evolution just went about 1mm forward from writing CGI scripts in C. Struts is like a cancer that cannot be stopped from growing. Where's it gonna be in a year? Not in my /home. And whoever still does it in 5, I hope you're gonna be my competition :)
  15. Struts at Five Years[ Go to top ]

    I despise struts. In 2005 it still gives me the feeling that evolution just went about 1mm forward from writing CGI scripts in C. Struts is like a cancer that cannot be stopped from growing. Where's it gonna be in a year? Not in my /home. And whoever still does it in 5, I hope you're gonna be my competition :)

    I'll sleep, WELL, at night.
  16. I prefer Cocoon[ Go to top ]

    Let me be blunt. I hate JSPs. I prefer a framework that makes breaking the MVC pattern difficult to do. Struts doesn't do that. Cocoon, on the other hand, provides ways for doing just about anything you can think of.
  17. Agreed[ Go to top ]

    Struts makes it far too easy to mix view and controller. There is something fundamentally flawed with the way we do web application development now.

    To echo the thoughts of another poster, one thing I really hate in web development vs regular app development is how so many things won't break at compile time. For example, if I have a link on a JSP page to another action, I won't know if that link really works until I go and click it. The ActionForm can validate a form has been instantiated but shouldn't something break right away if you try to link to an Action that requires a parameter you don't include?

    I also just generally despise how the wheel is reinvented hundreds of times over. I love Java and have never even written anything using Microsoft Visual Studio, but I *god forbid* sometimes envy limited choice. Why are there still hundreds of tag libraries out there to generate form controls? How many more people need to write their own calendar widget? How many editors must I evaluate? How many XML/web services/MVC/IoC frameworks must I learn about? Can't we just pick ONE and get on with actually writing applications.
  18. STRUTS --Driving on![ Go to top ]

    STRUTS is a well established baseline standard on the J2EE front and it is more visible by the usage even after 5 yr!!
    Struts applications can use the rich UI components of JSF at the view based on a need basis.The migration makes sense in certain cases where a rich GUI is the need of the hour.

    STRUTS apps can well get packaged as a Portal application with the migration support available.

    STRUTS could work with any ORB implementation at the back.


    So it makes a looosely coupled standard which can be used EASILY in the J2EE world as per the need.

    A simple smart framework facilitating Rapid Application Development!-- So I see applications core built on the base STRUTS using other add ons like JSF for view..any ORB for back end mapping..As it is an established standard we will see new stuff coming in market with support for STRUTS
    STRUTS KEEPS THINGS SIMPLE AND YET DOES THE JOB --That I feel is the reason for STRUTS success
  19. Yes Struts / JSF / Shale / Spring remove some of the duplication involved in coding applications, but all these approaches only go so far. Even with them, it seems to me we are just coding around the same stuff over and over again.

    Is it too heretical to suggest that what these do is to re-enforce the concept that every web app must be hand crafted by ... us. If this was the motor industry we would be talking about which is the best chassis to build our latest creation on. Whilst I am sure most who read this site are good at their job, many are not, and what we end up with is web apps which are accidents waiting to happen.

    Right now I am looking at the (Java based) code-free options which look like the future to me.

    Steve
  20. Struts feels like a hack[ Go to top ]

    I am a new struts programmer. Earlier I was using PHP. The reason why PHP is so successful isnt because its a 'great framework', but because the programmers are comfortable with the linear flow of control. Its like a procedural language vs. OOP. You need to invest time for learning the latter and the results are not immediately apparent, especially when you are always running late on deadlines.

    I always felt the need for a better way.

    I learnt Servlets & JSP and was using them for a few weeks. Now we were talking. But again, moving over to this side should have helped by eliminating some of the mundane stuff. So i started with frameworks. I learnt about MVC and struts looked like the way to go. I spent a week learning it and have had another week's experience in programming it for my business solutions.

    Well I have had a revelation. That Struts did not become popular because it was great, but because it was a JAKARTA project. For any uninitiated soul, it looks like the safest bet. It basically completes the traditional Input - Processing - Output cycle. The output being the view & the processing being the whole controller - action - forward blah blah.

    Things I dont like about struts:
    1. Uses a confusing vocubalary - everything is prepended with "Action". Makes the real Action look like a poor cousin in front of ActionForwards, ActionMappings & ActionForms, even though its the more important part of the framework.

    2. Calls a bean a form. why is there a need to write two beans - one temporary & one for business logic. one can always validate the first one before persisting it.

    3. Confusion between global forwards & actions.

    4. Overall, comes out as being developed on the whims & fancies of a person. Just as I write my programs.

    5. The MVC thing is allright, and it really helps put the logic where it belongs. However initially most of the time is being spent tightening nuts & bolts, Learning xml tags & attributes - something which is an unending mess itself - and tinkering until you get it right.

    6. Still' there got to be a better way!


    I will evaluate frameworks like Webwork & Spring which appear to have more thought towards them. And the thing about struts having more support appears eyewash because all the support is from users like me. In Webwork there appears to be a dedicated business supporting the framework and the other components on which it is built.
  21. Struts feels like a hack[ Go to top ]

    It is amazing to see people who just started to learn Struts to comment on Struts as if They were an experts. The 6 things listed were obviously from newbies who do not have a firm grasp of what struts is.I suggest you go back and learn a little bit more. I bet you hate java or object-orientation too....
  22. I am sorry if my previous post made one believe I hate struts. I dont.

    I am actually a financial consultant but have been progamming for six years and developed financial software in Delphi / VC++. I am using struts to build a non-mission critical web app for a bank which is going to be accessed concurrently from over 300 locations. I am "architecting" the whole solution as I am supposed to understand both the business side & the technical side. I am also involving with me a team of developers. A week is a long time in big business and I believe that a framework shouldnt take more than a week to be understood. Also, I will lap up anything which helps me build solutions better / faster / simpler.

    When I moved from desktop apps to webapps, the first choice was PHP. We wanted to use a tested, open source solution and the popularity of LAMP as well as the quality of webapps built using PHP looked good. Ultimately its the outcome that matters. However it seemed to be a step back towards spaghetti code. So our current project uses JSP/OOP/MVC concepts all along. Again it was my decision to use a framework and Struts I believe has been the most logical choice - we have found developers comfortable using it.

    Its only when you are getting used to a new concept that you realise how much extra work you are doing for the same outcome or how much elegant and short your task has become. Struts is our choice for this app and will be exploited fully. We will have to bend either Struts or ourselves wherever required to get the desired result

    But, as I said earlier, the value struts is giving me is more in the nature of division of work into logical units & validation on the client side.

    I dont see why a Controller framework which is basically a Servlet which runs other code called "Actions" based on an XML file and those Actions running this final output Servlets again based on that same XML file should be stuck to so religiously. The MVC concept is simple enough to not require more than what Struts offers. But if there's a simpler or better way to do it, I will follow that.

    I must add that Struts is serving us well and right now we have not intention to destablise the development process which has picked speed by introducing another framework. The future is however different - it definately contains JSF plus any technology which cooperates with it to make the overall task easier. Shale might be what we want.
  23. Struts...[ Go to top ]

    Personally, the only remarkable thing I found in Struts nowadays is that it was the first real web framework. However, it hasn't had real improvement recently, and it's a terribly uncomfortable framework to bear with.

    I don't want to be musunderstood, I think it was a historical effort five years ago, but, in my opinion, nowadays there's no reason to use it in a new project, except having previous expertise on it. It's not event that stable... certain things like JavaScript validation never got really sharp, after several years it still fails without notice to the user...
  24. Another thing...[ Go to top ]

    I hate Struts' reflection-based mapping of form field names to bean properties. A spelling mistake or a change in either the form or the bean and you don't get a compile-time error. It will just fail at runtime some indeterminate time in the future.

    Since you have a bean class it should be simple to just refer directly to the class members when writing the form fields.
  25. Struts still kicking[ Go to top ]

    I think that Struts has done a great job by sticking there for 5 years and I am sure that it still has a great future as a web framework. Combined with Hibernate, Spring (AOP 7 IOC), MySQL, Eclipse, JBoss+TomCat Struts is excellent to get started with great applications.

    I have seen a lot of clients happy and doing well with such a combination.
    Happy birthday Struts!!!
    Irshad A. Buchh
    Senior Principal Consultant
  26. Another thing...[ Go to top ]

    You realize that you can just have your form contain your bean and use myForm.myBean.myProperty from within the JSP page... right ?

    NOTE: You do need to make sure that you use myPropertyAsString to make sure the setMyPropertyAsString(String x) is called in the case of numeric types that will be validated on the server side.
  27. Struts at Five Years[ Go to top ]

    I think we should be like Craig McClanahan - looking to the future. I am not originally a web application/web site developer. So I know how good application development CAN be. And it isn't the web page paradigm.

    Struts is the VB of Java web frameworks. It was good in its day, and there are plenty of legacy projects to support. But for new projects, it is best to look elsewhere. If you are doing a web site with SOME application-ish functionality then I can see Struts being a good choice. Most of the time people confuse website development with application development.

    Of course we need to look outside of our Java world and see what is going on:

    1. Microsoft is pushing SmartClient plus other such things (for multiple reasons). We need to be moving to equivalent technologies that allow us to develop applications that are quickly built AND maintainable AND provide the users with the experience they need and want. Unfortunately, Struts doesn't cut it here and neither does anything else that is like it.

    2. Microsoft seems to be deprecating the browser (at least the one they control) as we know it. With all that has gone on in the recent past I can see them eventually ONLY providing an html rendering component and a very limited, if any, javascript support and no plugin support - all to protect the use from virues and due to legal issues. ;) What they will support is SmartClient and XAML.

    What we have is window of opportunity and we need to take it. Microsoft is taking a LONG time to get their new stuff out. We need to look beyond "knowing Struts" and "Struts is good to have on your CV" and "Procedural programming is easier". Pick it for the right reason (and there are few).
  28. Struts at Five Years[ Go to top ]

    We need to look beyond "knowing Struts" and "Struts is good to have on your CV" and "Procedural programming is easier". Pick it for the right reason (and there are few).

    I don't think using Struts promotes Procedural programming. Well you could even write C style code in Java if you are persitent enough. A good struts action is not supposed to be longer than 15-20 lines of code. Actions are just like mini dispatchers. I do not think you could use object-orientation to the fullest in these mini dispatchers since 1: They are so task specific. 2: They are very small. Object-orientation could be very likely used to the fullest in your business tier consisting of Pojos. Correct me if I am wrong.
  29. Struts at Five Years[ Go to top ]

    We need to look beyond "knowing Struts" and "Struts is good to have on your CV" and "Procedural programming is easier". Pick it for the right reason (and there are few).
    I don't think using Struts promotes Procedural programming.
    I didn't say it was. I was pseudo-quoting some of the posts here and some others in the past as to why they like Struts vs whatever.

    But now that you meantioned it ... . While there are many OO aspects to Struts, typical web dev is overall procedural - and Struts leans towards the typical web dev side.
  30. 15-20 lines?[ Go to top ]

    The average struts action should be 15-20 lines...

    No wonder I hate working on my project with actions 2000+ lines long. :(
  31. Struts at Five Years[ Go to top ]

    2. Microsoft seems to be deprecating the browser (at least the one they control) as we know it. With all that has gone on in the recent past I can see them eventually ONLY providing an html rendering component and a very limited, if any, javascript support and no plugin support - all to protect the use from virues and due to legal issues. ;) What they will support is SmartClient and XAML.What we have is window of opportunity and we need to take it. Microsoft is taking a LONG time to get their new stuff out. We need to look beyond "knowing Struts" and "Struts is good to have on your CV" and "Procedural programming is easier". Pick it for the right reason (and there are few).

    Indeed, although I would suggest a better way of putting things is that Microsoft is trying to deprecate the browser. Whether or not this will work is questionable. After all, they have a record of trying such things in the past and failing. (I remember when they tried to deprecate Windows in the 80s with OS/2, but customer demand (and other reasons) meant that this move failed). Remember the recent U-turn on a new version of IE, which was not supposed to happen until Longhorn. Even if XAML is a success on new versions of Windows, widespread adoption of such UI technologies is going to take a very long time. It can take many years for new Windows versions to replace a significant proportion of existing ones. So, I think we have some time to prepare for change.

    I do agree that we need to start to look beyond the current HTML/web paradigm and this is why I think Shale could be important, as its use of JSF (with RenderKits) will allow migration to new client-side presentation technologies.
  32. Struts at Five Years[ Go to top ]

    So, I think we have some time to prepare for change.
    I agree.

    No one (except Rolf) can see the future. I was doing a little prognosticating and intelligence work (putting pieces together). What we do need to do, is pull our heads out of the sand (and whereever else it might be :( ) and get going while we still have time.

    Another thing to remember - that even with all the ruckus raised about VB Classic - they still have gone ahead with their plans to move on (Ok, they did succom a bit and incorp some of the junk from VB6 in .Net).

    I am excited about the developments in JSF and Swing (and the JVM). We can finally get on with making GOOD UIs for application. Who needs .Net. :)
  33. Struts at Five Years[ Go to top ]

    (I remember when they tried to deprecate Windows in the 80s with OS/2, but customer demand (and other reasons) meant that this move failed).

    If I remember history correctly, it should be:

    1. Microsoft did not want to deprecate Windows 3.x in favour of the MS & IBM joint version of OS/2, and succeeded!

    2. Micorsoft finally deprecated Windows 3.x with OS/2 NT (later renamed to Windows NT), and succeeded (again)!

    Now is another historic moment browser based UI is starting to decline and smart client is starting to prosper. MS is only recognising the direction and (to some extent) influencing it.
  34. Struts at Five Years[ Go to top ]

    (I remember when they tried to deprecate Windows in the 80s with OS/2, but customer demand (and other reasons) meant that this move failed).
    If I remember history correctly, it should be:1. Microsoft did not want to deprecate Windows 3.x in favour of the MS & IBM joint version of OS/2, and succeeded!2. Micorsoft finally deprecated Windows 3.x with OS/2 NT (later renamed to Windows NT), and succeeded (again)!Now is another historic moment browser based UI is starting to decline and smart client is starting to prosper. MS is only recognising the direction and (to some extent) influencing it.

    My recollection of these events is quite different. Windows 2.0 was supposed to be, to some extent, a user and developer preview of OS/2 + Presentation Manager. OS/2 was supposed to be the future. Ballmer ever called OS/2 'Windows Plus'. However, it turned out that Windows 3.0 revenue was much higher than expected. Microsoft dropped joint OS/2 development with IBM, and produced Windows NT from what would have been OS/2 3.0.

    However, the point stands that Microsoft was trying to push forward a technology, but that push failed and they responded to customer pressure.
  35. Struts at Five Years[ Go to top ]

    Microsoft never whole-heartedly embrace the joint development of OS/2 with IBM, to say "push" is hugely distorted.

    Win 3.x was the goose laying golden eggs for MS at the time. It was IBM who failed in pushing OS/2.

    Yes, OS/2 NT was supposed to be OS/2 version 3.0, but finally become Windoes NT.
  36. Struts at Five Years[ Go to top ]

    Microsoft never whole-heartedly embrace the joint development of OS/2 with IBM, to say "push" is hugely distorted.Win 3.x was the goose laying golden eggs for MS at the time. It was IBM who failed in pushing OS/2.

    This is the wrong way round. Microsoft initially pushed OS/2 with great enthusiasm - I remember when Microsoft C compilers for DOS came with OS/2 libraries as well. However, as I said, the enthusiasm for Windows 2.0 and then 3.0 was unexpected, and only then did Microsoft slow down joint development with IBM. IBM certainly did not fail in pushing OS/2 - it continued to do so for a long while after Microsoft dropped out - remember OS/2 4 Warp?

    As proof of Microsoft "pushing" OS/2, here is a quote from Bill Gates:

    "I believe OS/2 is destined to be the most important operating system, and possibly program, of all time. As the successor to DOS, which has over 10,000,000 systems in use, it creates incredible opportunities for everyone involved with PCs"
  37. Struts at Five Years[ Go to top ]

    I actually used OS/2 4 Warp myself, only because I was in IBM at the time. No one else I knew outside IBM was using OS/2!

    IBM did continue to push OS/2, but failed!

    Bill Gates have said a lot of things, a lot of things he did not mean. Microsoft strategy has never been on the "pushing OS/2" side.
  38. Struts at Five Years[ Go to top ]

    I actually used OS/2 4 Warp myself, only because I was in IBM at the time. No one else I knew outside IBM was using OS/2!IBM did continue to push OS/2, but failed!

    Well you know someone else now!
    Bill Gates have said a lot of things, a lot of things he did not mean. Microsoft strategy has never been on the "pushing OS/2" side.

    That makes the years and years of Microsoft development of OS/2 from the mid 80s - years before the release of Win3.0 in 90 - rather mysterious.

    It also does not explain press releases like this:

    "FOR RELEASE APRIL 2, 1987

    Microsoft Operating System/2™ With Windows Presentation Manager Provides Foundation for Next Generation of Personal Computer Industry"

    Windows 2.0 was supposed to be a 'preview' of OS/2:

    "The incorporation of the MS OS/2 Windows presentation manager user interface into Microsoft Windows version 2.0 will provide a consistent interface between the current MS-DOS generation of personal computers and future systems based on MS OS/2."

    I have been a user of MS development tools for decades; and it sure felt at the time like "pushing OS/2" to me, and it seems to me that there is solid evidence to back this up.
  39. Struts at Five Years[ Go to top ]

    Now we have three "OS/2"s.

    1. Windows 2.0 (the production version of which should be Windows 3.x).

    2. MS-IBM joint OS/2 version 2.0, later become the IBM-only OS/2, which is also generally refered to as OS/2.

    3. OS/2 NT, (later became Windows NT).

    If you call the first and third "OS/2", then Microsoft did push "OS/2", and succeeded!
  40. Struts at Five Years[ Go to top ]

    Now we have three "OS/2"s.1. Windows 2.0 (the production version of which should be Windows 3.x).2. MS-IBM joint OS/2 version 2.0, later become the IBM-only OS/2, which is also generally refered to as OS/2.3. OS/2 NT, (later became Windows NT).If you call the first and third "OS/2", then Microsoft did push "OS/2", and succeeded!

    No. The "production version" of Windows 2.0 was to be OS/2 + Presentation Manager, not Windows 3.x. The Windows 2.0 GUI (significantly different from Windows 1.0) was intended to be a preview of the OS/2 GUI. The success of Windows 2.0 and 3.0 changed this strategy.
  41. Struts at Five Years[ Go to top ]

    As you said, Windows 2.0 resulted in the success of Windows 3.0, not OS/2 2.0.

    That was what Microsoft expected, wasn't it!
  42. Struts at Five Years[ Go to top ]

    The market power of Microsoft was much much smaller than it is today. "Windows 2.0 is the future OS/2 (backed by a then big name 'IBM')" only reminds me of another recent slogan "Hibernate is EJB 3.0".
  43. Struts at Five Years[ Go to top ]

    The market power of Microsoft was much much smaller than it is today. "Windows 2.0 is the future OS/2 (backed by a then big name 'IBM')" only reminds me of another recent slogan "Hibernate is EJB 3.0".

    I'm not sure why you are persisting in this point of view against considerable evidence. Years of development and actual products targetted at OS/2 constitute far more than than 'marketing'.

    Wikipedia has good resources about this period in Microsoft's history. I'm posting from personal experience as I used these products and development tools at the time.
  44. Struts at Five Years[ Go to top ]

    The market power of Microsoft was much much smaller than it is today. "Windows 2.0 is the future OS/2 (backed by a then big name 'IBM')" only reminds me of another recent slogan "Hibernate is EJB 3.0".

    To return to our perpetual debate George, EJB3.0 is a mimickry
    of the functionality offered by Hibernate and Spring served
    up with a dollop of big corporation still loves you and cares
    about what you want ...
  45. Struts at Five Years[ Go to top ]

    As you said, Windows 2.0 resulted in the success of Windows 3.0, not OS/2 2.0.That was what Microsoft expected, wasn't it!

    I can have no idea what Microsoft expected. All I can base my opinions on is the evidence of what they were saying and doing at the time, which including putting considerable resources into OS/2 development and shipping products which were targetted at OS/2 (all their development Kits).
  46. Struts at Five Years[ Go to top ]

    All I can base my opinions on is the evidence of what they were saying and doing at the time, which including putting considerable resources into OS/2 development and shipping products which were targetted at OS/2 (all their development Kits).

    Do you mean OS/2 NT?
  47. Struts at Five Years[ Go to top ]

    All I can base my opinions on is the evidence of what they were saying and doing at the time, which including putting considerable resources into OS/2 development and shipping products which were targetted at OS/2 (all their development Kits).
    Do you mean OS/2 NT?

    No. I mean OS/2 1.x in the 80s.
  48. Struts at Five Years[ Go to top ]

    I can have no idea what Microsoft expected.

    Windows 2.0 is Windows version 2.0 not OS/2 version 0.2 <PERIOD/>

    Now back to the original argument:

    Browser based client has matured and smart client is taking off. How can OS/2 be used as an example to discredit smart client?
  49. Struts at Five Years[ Go to top ]

    I can have no idea what Microsoft expected.
    Windows 2.0 is Windows version 2.0 not OS/2 version 0.2 <PERIOD/>

    Wrong (period). Please re-read this quote from a 1987 press release from Microsoft.

    "The incorporation of the MS OS/2 Windows presentation manager user interface into Microsoft Windows version 2.0 will provide a consistent interface between the current MS-DOS generation of personal computers and future systems based on MS OS/2."

    The Windows 2.0 GUI was intended as an OS/2 Presentation Manager GUI preview.
    Now back to the original argument:Browser based client has matured and smart client is taking off. How can OS/2 be used as an example to discredit smart client?

    It is not discrediting anything. I like the idea of a smart client. The point I was making is that just because Microsoft is promoting a technology or approach as the 'next big thing' does not mean it is going to happen.

    Microsoft promoted and invested years of development into OS/2 in the 1980s, but instead of deprecating Windows (as they intended) (hence the phrase 'future systems based on MS OS/2'), they moved to Windows as their GUI in response to customer demand. Microsoft has the skill and agility to rapidly change direction. Unfortunately (as with OS/2) this can leave a large number of developers behind.

    If you wish to debate this further, I would suggest you get some evidence to back your statements. I am willing to be accept that I am wrong if you can provide some authoritative quotes or documentation that contracts me.
  50. Struts at Five Years[ Go to top ]

    It is not discrediting anything. I like the idea of a smart client. The point I was making is that just because Microsoft is promoting a technology or approach as the 'next big thing' does not mean it is going to happen.
    Well, this was a reply to my post - and I understood. :)
  51. Struts at Five Years[ Go to top ]

    It is not discrediting anything. I like the idea of a smart client. The point I was making is that just because Microsoft is promoting a technology or approach as the 'next big thing' does not mean it is going to happen.
    Well, this was a reply to my post - and I understood. :)

    It was? Sorry if I got things confused.
  52. Struts at Five Years[ Go to top ]

    It is not discrediting anything. I like the idea of a smart client. The point I was making is that just because Microsoft is promoting a technology or approach as the 'next big thing' does not mean it is going to happen.
    Well, this was a reply to my post - and I understood. :)
    It was? Sorry if I got things confused.
    Ok. Now you do. What I meant was that you had originally replied to me (and I knew what you meant), then George jumped in and confused the issue or was confused by your reply and then this OS/2 tangent occured.
  53. Struts at Five Years[ Go to top ]

    future systems based on MS OS/2.

    Yes, that "future systems" is Windows NT (or OS/2 NT). Do I need to quot any reference to prove the existence of "NT"? The only thing MS dumped is the lable "OS/2".
  54. Struts at Five Years[ Go to top ]

    future systems based on MS OS/2.
    Yes, that "future systems" is Windows NT (or OS/2 NT).

    No. That future system was OS/2 1.x+Presentation Manager. There is no way that Microsoft was planning that OS/2 3.0 would have a Windows API (and indeed, be called 'Windows NT') in 1987.
    Do I need to quot any reference to prove the existence of "NT"? The only thing MS dumped is the lable "OS/2".

    No. They dumped joint development of OS/2 2.0 with IBM. Their development of OS/2 2.0 was being held back because of their switched focus on Windows due to consumer demand in 1990. IBM took over support for OS/2 1.0 and development of OS/2 2.0. Microsoft then switched to developing OS/2 3.0, but with the new intention of keeping the Windows API and GUI.

    You are confusing this renewed interest of Microsoft in OS/2 3.0 as the kernel for 32-bit Windows in the 90s with their original (and later dumped) intention to deprecate Windows in favour of OS/2 1.0 in the 80s.
  55. Struts at Five Years[ Go to top ]

    [MS] dumped joint development of OS/2 2.0 with IBM. Their development of OS/2 2.0 was being held back because of their switched focus on Windows due to consumer demand in 1990.
    Consumer what? Most consumers did not even know that Windows existed before 3.0 was released. MS found a way to use protected mode features and to keep existing code, immediately realised the gold mine and dumped IBM.
  56. Struts at Five Years[ Go to top ]

    [MS] dumped joint development of OS/2 2.0 with IBM. Their development of OS/2 2.0 was being held back because of their switched focus on Windows due to consumer demand in 1990.
    Consumer what? Most consumers did not even know that Windows existed before 3.0 was released.

    This is not true. Windows 2.0 was widely used. It was often shipped bundled with programs such as Excel and Aldus PageMaker, effectively being a GUI library for these applications. These were popular applications, and helped to introduce Windows 2.0 to a large number of consumers.
    MS found a way to use protected mode features and to keep existing code, immediately realised the gold mine and dumped IBM.

    The use of protected mode was well established well before the 'dumping' of IBM (actually, it was IBM that dumped Microsoft). Microsoft had been using protected mode features in Windows 2.0/386 way before the split with IBM. There was no 'immediate' about it.
  57. Struts at Five Years[ Go to top ]

    Though completely off-topic, I hope I may help a bit:
    http://en.wikipedia.org/wiki/Windows_2.0
    http://en.wikipedia.org/wiki/Windows_3.x

    This one seems to explain things more clearly:
    http://en.wikipedia.org/wiki/Windows_NT

    this helps too:
    http://en.wikipedia.org/wiki/OS/2

    Regards,
    Henrique Steckelberg
  58. Struts at Five Years[ Go to top ]

    Though completely off-topic, I hope I may help a bit:http://en.wikipedia.org/wiki/Windows_2.0http://en.wikipedia.org/wiki/Windows_3.xThis one seems to explain things more clearly:http://en.wikipedia.org/wiki/Windows_NTthis helps too:http://en.wikipedia.org/wiki/OS/2Regards,Henrique Steckelberg

    Please forgive one more off-topic post!

    I have been using exactly these resources - they are pretty good. There is one exception though: The Windows NT article is possibly misleading, as in the phrase:

    "When development started in 1988, Windows NT (using protected mode) was to be known as OS/2 3.0"

    I feel that this implies that development of 'Windows NT' started in 1988. It didn't. OS/2 3.0 was not intended to have a Windows API at that date; that switch came years later, after MS decided that the Windows API (as against the OS/2 API) was the future. Which is the point I have been trying to make.

    (I guess I am in pedantic mode - I'll shut up now).
  59. Struts at Five Years[ Go to top ]

    [MS] dumped joint development of OS/2 2.0 with IBM. Their development of OS/2 2.0 was being held back because of their switched focus on Windows due to consumer demand in 1990.
    Consumer what? Most consumers did not even know that Windows existed before 3.0 was released.
    This is not true. Windows 2.0 was widely used. It was often shipped bundled with programs such as Excel and Aldus PageMaker, effectively being a GUI library for these applications. These were popular applications, and helped to introduce Windows 2.0 to a large number of consumers.
    Ok, we may treat term "widely" differently.
    MS found a way to use protected mode features and to keep existing code, immediately realised the gold mine and dumped IBM.
    The use of protected mode was well established well before the 'dumping' of IBM (actually, it was IBM that dumped Microsoft). Microsoft had been using protected mode features in Windows 2.0/386 way before the split with IBM. There was no 'immediate' about it.
    I don't remember what exactly was the trigger. I read Andrew Shulman's book long ago, so I don't remember details. Anyway, after MS discovered that Windows can be competitive to OS/2, they decided to split. IBM did not dump MS, it got dumped, and it could not market OS/2 properly. IBM did not really push it that hard. The core system obviously was great, but UI lacked polish, the list of supported devices was quite short, and the installation and configuration with "non-standard" devices was a nightmare. I tried to set up my beloved Logitech mouse in Warp for several hours to no avail, while Windows picked it up with no problems. Also, compatibility with Windows was too good. IBM killed its own OS just by itself, without any help.

    MS did a smart move by licencing Windows source code to IBM. That slowed down creative work at IBM and in other companies which were developing apps for OS/2. They were creating Win16 apps, because they worked on OS/2 too, while MS was moving forward. Then Win32s was released, then NT, then Win95, and there was no reason to develop for OS/2 anymore. Do you see the same pattern with open CLR spec and Mono?
  60. Struts at Five Years[ Go to top ]

    This is not true. Windows 2.0 was widely used. It was often shipped bundled with programs such as Excel and Aldus PageMaker, effectively being a GUI library for these applications. These were popular applications, and helped to introduce Windows 2.0 to a large number of consumers.
    Ok, we may treat term "widely" differently.

    I don't think there was much doubt that Excel was pretty widely used in the late 80s. If that is accepted, then Windows 2.0 was at least equally widely used.
    Anyway, after MS discovered that Windows can be competitive to OS/2, they decided to split.

    Exactly.
    IBM did not dump MS, it got dumped,

    I think this is debatable. My understanding is that MS held back on OS/2 2.0 development until IBM said 'enough'!
    and it could not market OS/2 properly.

    I agree with that! I believe I remember the adverts which compared OS/2 Warp with an Elephant... hilariously inappropriate for a desktop OS.
    IBM did not really push it that hard.

    I remember considerable (but bad) marketing effort.
    The core system obviously was great, but UI lacked polish, the list of supported devices was quite short, and the installation and configuration with "non-standard" devices was a nightmare. I tried to set up my beloved Logitech mouse in Warp for several hours to no avail, while Windows picked it up with no problems. Also, compatibility with Windows was too good. IBM killed its own OS just by itself, without any help.MS did a smart move by licencing Windows source code to IBM. That slowed down creative work at IBM and in other companies which were developing apps for OS/2. They were creating Win16 apps, because they worked on OS/2 too, while MS was moving forward. Then Win32s was released, then NT, then Win95, and there was no reason to develop for OS/2 anymore.

    A good summing up of the history.
    Do you see the same pattern with open CLR spec and Mono?

    Using .NET as a way to divert Linux developers into a dead end while Microsoft keeps changing the spec and then moves onto some other new idea? Or simply a way of ensuring that Linux developers write to a sub-standard copy of a Microsoft API?

    Well, yes - I have always thought that Mono etc. were a dangerous idea and a distraction from Java.
  61. Re: Presentation Manager[ Go to top ]

    It seems actually, that IBM has finally found (supported) a kind of "Presentation Manager" for a lot of their own products that is also widely accepted among the community.

    Eclipse is used (the RCP) in more and more forms and products even as parts of Lotus Notes just to give one example.
    So even if browsers should get less important in future this time IBM has some technology most Java and Open Technology supporters rely on already.
    I guess there are even some plugins and extensions for .NET, but those are likely to remain exotic even though they work on platforms where Visual Studio is never going to be (Apple, Linux, etc.)
  62. Struts at Five Years[ Go to top ]

    I actually used OS/2 4 Warp myself, only because I was in IBM at the time. No one else I knew outside IBM was using OS/2!IBM did continue to push OS/2, but failed!
    Well you know someone else now!

    +1.

    Best OS I've worked with. And Rexx, possibly the best language.

    Kit
  63. Struts at Five Years[ Go to top ]

    +1. Best OS I've worked with. And Rexx, possibly the best language.Kit

    Yes, I remember I had to start Win3.x PM from Warp before open a Word document. Maybe your company purchased MS Word for OS/2 which IBM didn't purchase :-)
  64. Best OS I've worked with. And Rexx, possibly the best language.Kit
    I guess you're talking about Open VMS.. That's the best ever.. ;)

    Amazing how quick a nice article about struts ends in a battle about Os-es.. Isn't JAVA supposed to let developers talk about solving problems instead of fighting about platforms?

    I'm rather new with Struts, but I like it. It proved a simple MVC is possible in JAVA and it's a good base for future frameworks. I think Struts will be dead in five years, but the influence of Struts will still be visible in the future frameworks.

    I'd rather have 10 co-workers doing everything in the same way althought it isn't the best way, then 10 co-workers fighting about platforms, frameworks and patterns, resulting in 10 different way of workings and a maintenance nightmare!
  65. Struts at Five Years[ Go to top ]

    I've used it at large Southeastern US Bank, at a major US Airline and at a large US manufacturer. If I could name names, they would all be recognizable. The last time I saw OS/2 was 2.5 years ago. And we were replacing it only because the machines were dying. Unlike the OS it lost to, it just ran. [SIGH] VHS beat Beta again.
  66. Re: No one using OS/2[ Go to top ]

    I actually used OS/2 4 Warp myself, only because I was in IBM at the time. No one else I knew outside IBM was using OS/2!IBM did continue to push OS/2, but failed!Bill Gates have said a lot of things, a lot of things he did not mean. Microsoft strategy has never been on the "pushing OS/2" side.

    Well a few banks (I know from working there) and also students as well as their universities kept using it for a while, too.

    Some did not change to Windows 2000 before the Y2K hype and the change towards the Euro made OS changes necessary.
  67. Struts at Five Years[ Go to top ]

    MS is only recognising the direction and (to some extent) influencing it.
    I believe their survival is dependent on it (and no, it wouldn't happen overnight). They aren't pushing SmartClient because it is better. Or just because it is. (Again this is all from my intelligence gathering.)
  68. What they will support is SmartClient and XAML.What we have is window of opportunity and we need to take it. Microsoft is taking a LONG time to get their new stuff out.

    One security update for IE6 and ALL current XP-PCs will have XAML installed. It will only take a few days.
  69. What they will support is SmartClient and XAML.What we have is window of opportunity and we need to take it. Microsoft is taking a LONG time to get their new stuff out.
    One security update for IE6 and ALL current XP-PCs will have XAML installed. It will only take a few days.
    Ok. But when did they start? How come they just didn't put it in IE7? (becuase it is taking so long ...)

    And I didn't say EVERYTHING.

    I wonder if this is Rolf in disguise. Sounds like his sort of "reasoning".
  70. I think Struts has been a good influence on a lot of the newer web frameworks coming out now. My main issue with Struts is the amount of extra code that I have to write to implement a screen that don't directly contribute to solving the business problem. I think there are better alternatives from a productivity standpoint and would encourage anyone who hasn't done so to check out the Spring MVC tutorial.
  71. Dead and buried[ Go to top ]

    Five years from now Struts will not even be a memory anymore. Just like Hibernate, Spring and the myriad of other we-still-refuse-to-accept-that-standards-are-the-way-to-go 3-core-developers-with-daytime-jobs recreational software referred to as "enterprise scale" as soon as it supports any single feature commonly found in expensive systems.

    While Enterprise JavaBeans will still be there, of course.

    Time to smell up and wake the coffee, people?
  72. Dead and buried[ Go to top ]

    If you want to place a bet on that one, I'll take it!