Web 2.0

The Web 2.0 announcements sound very interesting. Was there any timeline discussed?

Xojo is no longer giving timelines. It’s a ‘Priority’ which means they are actively working on it. Based on what we saw at XDC I’m guessing that Web 2.0 comes out 2018 R3 at the earliest. Given that R1 just came out you can probably extrapolate from there.

Thanks Bob!

My guess: 2019

You might be right. Or perhaps a better guess is that we see it end of 2018 and it’s not quite ready for primetime until 2019.

I haven’t had a chance to watch the videos, but what does this mean for my current web projects? Will the simple stuff just work? What does it mean for WebAPI plugins that I’ve used a lot of in order to get around limitations in the web 1.0 stuff? I am both really looking forward to this and also dreading how much work I”m going to have to put in :wink:

They goal was 95+% compatibility with existing web projects. Don’t know how realistic that goal is but it’s a laudable one. The one BIG thing was that it’s a one way conversion. Once you upgrade to Web 2.0 you won’t be able to downgrade to an older version.

When starting a web project, what guidelines should I take in mind in order to upgrade smoothly once 2.0 is available ?

Bob did a great job presenting the web 2.0 framework on his blog.

Apparently, if you use the 1.0 framework without custom controls, hacks/javascript code, and webSdk, the transition should be very easy.

If not, it’s the big unknown. It will depend on the custom control providers, the amount and importance of the javascript code you added, etc. In my case, I have a huge web app built 100% with webSdk. I hope that we will soon have a transition guide.

Apparently, framework 1.0 will not have an update for HTTP/1.1 :frowning:
and framework 2.0 will use HTTP/1.1, not HTTP/2 and websockets.

Translated with www.DeepL.com/Translator

Right now, anything we say about web 2.0 beyond what was presented at XDC is pure speculation. I am also eagerly awaiting web 2.0 and the new new framework. That said… Why don’t we just wait until it is released to see what is there. Considering the complexity of a new framework, I would not move my projects to it immediately. That will give time to plan my migration ahead a release or two, with hard facts, not just based on speculation.

Asume you did a succesful desktop project for a customer and thet ask you to reprat the job with a web version. Development might take half a year or so. I can’t deny that this request makes me looking arround in order to find the best option for the moment because we just cannot calculate with any xojo planning and feature list.

Your point is fair. The reality of customer requests and market demands does not always work well with the pace of new features.

As always, a pragmatic analysis of requirements vs functionality and features will lead to the right tool for the job. But I would still base the analysis strictly on what is available now.

I tend to do the same, but it doesn’t feel good since what we currently have feels like legacy knowing what is to come.

While there was no timeline given they definitely left us some hints that we can leverage to get a feel for how far along they are.

The Web2.0 has been in planning for quite a long time already. I recall having discussion with Greg about the next iteration of Web from at least three XDC’s ago. That doesn’t mean they had started it back then but they definitely were aware of the glaring issues of the Web1.0 and were trying to plan out a redesign.

Greg’s keynote also hinted at where they are at as well. The fact that they could demo some of it and saying that it is considered a “priority” definitely puts it in the soon category. Also they showed the timeline of Web and where Web2.0 sits with the long running browser history. Xojo has indicated which browsers they are going to support and what functionality they are going to support which means they must be feeling pretty confident that they are on the downhill battle now to getting us at least something.

That “something” I think is the important part. It’s possible for Xojo to get us access to Web2.0 without everything being complete. We don’t need all the controls they announced in order to migrate our project. We just need all the existing controls to have their bootstrap equivalent to make the move over. We also don’t need all the layout types to make the move either. From talking to Greg at XDC, it sounds like Auto-Layout could potentially come in a later iteration as it definitely isn’t needed from the start. They also seemed open to feedback about potentially implementing other layout types, perhaps even a column based approach. Since bootstrap (and just about every other css layout library) already implements a column based design, it seems like there’s a very real chance of this. It also could be easier to implement than AutoLayout. But even AutoLayout sounds like they have a good solution using Kiwi. (https://github.com/IjzerenHein/kiwi.js https://github.com/IjzerenHein/autolayout.js)

My guess is Xojo would love to get our hands on this as soon as they can. The sooner we can provide constructive feedback the better. And since all the new controls and layout styles aren’t necessary in order to release 2.0 “soon” starts to sound even better. So the question remains what do they have left to do in order to get this in our hands.

Here are a few thoughts off the top of my head on what I think that could be:
The migration process from 1.0 to 2.0 probably will take a fair amount of work.
Getting IDE support and rendering the bootstrap controls will need to get done.
Finalizing how they want to handle (i.e. fix) WebStyles in the new framework.
Figuring out the WebControlWrapper for the new framework, I’m hoping to not have to completely rewrite all my controls.
Giving developers more leverage on controlling disconnects etc…

The good news is that the performance improvements of the new framework sounds amazing based on what Greg was saying. There are a ton of optimizations and there’s lot more code running client-side. Moving to typescript has not only preemptively prevented new bugs but also found a bunch of previously unknown bugs (type-safety for the win!). It also sounds like the pace (similar to Android) is going pretty rapidly. Once you find the patterns the whole rinse and repeat thing makes it easier.

I was wondering about it simply because I have a huge amount of work in a web 1.0 project on my calendar coming up. If I’m going to get a first pass at 2.0 in the next 3 or 4 months or even 6 months I can move that down the priority list but I can’t let it hang there forever. I don’t want to invest a huge amount of time into more webControlWrapper stuff only to have them release a beta of web 2.0 the day after I finish it and have to start over :wink: Thats the only reason I’m asking.

I had a problem with the Web 1.0 version that I’d like not to repeat with the 2.0 release. I started developing with the 1.0 version on day one of it’s release and I had to initially provide a lot of work arounds for problems and limitations and just weird things like not being able to subclass the constructor of a web page. All those things meant that I had garbage in the code which caused problems later as they fixed most of those things. If I have to hack around things that will be fixed later and break my hack then I will wait a little longer as I’m still cleaning out things that I had to do in the first few releases of 1.0…

That being said I am very eager to give this a try! I have large dynamic web applications that work well with 1.0, but I’ve had to develop many custom controls to make them work exactly the way that I want.

Starting a new Web 1.0 project now feels a bit creepy to me, since you take the risk your first version can be legacy already on the day it sees the daylight.
And you don’t know how much work modernizing to Web 2.0 will be and how much work you have done for nothing in your first version.
Think the Xojo team should tell us at least something about the surprise we will get one day.

It is safe to assume that early 2.0 will have issues, just like 1.0 was. I would probably not risk a production app on 2.0 release 1 (if such a thing exists). I will adopt and try, do small, less critical projects with it day 1 just to get the hang of it, but it is safe to assume that your 1.0 apps will have some life before 2.0 is ready for “real production prime time”.

Nothing wrong about that. Only so much can be discovered during testing. The multitude of real life use cases will certainly go far beyond what testers could even imagine. Point releases will take care of the urgent stuff, next releases will fix other issues and bugs. In short, I expect that it is going to be at least a year after release of 2.0 before it is ready and safe for production of large and complex apps. I am sure that someone will have counter-arguments to my prediction. I would be delighted that the first release of 2.0 makes me a liar.

This is proven reality. Think we’d better live with what we have now, rather than what we might get sometime.

On a related note, are there going to be continued fixes for issues in the existing Web framework? If the new one is close, I hope not. If it’s not, then there are still a lot of things that urgently need attention (but would presumably result in an even longer wait for the new framework if efforts are split between the two).

yes, me too!

Yes, it’s always like that with a new framework, it takes one to two years of improvements and corrections before the framework is viable for an important project.

so I hope we can continue to use web framework 1 with future versions of Xojo, even if web framework 2 is released in the meantime.