Servoy 2022.03 – Smart Doc Editor
Servoy 2022.03 – Smart Doc Editor
What if there was a no-code way for your end users to run customized reports on their own? With Servoy’s SmartDocs they can! Watch our webinar to learn about new features such as:
IF blocks for conditional content
Mention & Repeat Tag override methods
Rich text editing in business applications
Data-driven templating with merge
Reporting, End-user / Ad hoc reports
Powerful @mentions feature
Hello and welcome to the first Servoy webinar of 2022. I can see a little bit of attendees coming in already. Good to see everyone. Welcome. Hello, everyone. Still the numbers going up. So I’m waiting a few seconds. Hello, everyone. Welcome to the first Servoy webinar of 2022. My name is Victor. I will host this session, but of course, I’ve got Sean here for our content. Good morning, Sean. Hey, Victor. I think you have a lot prepared for us a lot of content, a lot of releases, a lot of announcements. Is that right? Yeah, yeah. I don’t know. Not a lot, but we’ll keep it pretty high level. All right. I got a few announcements. Of course, this webinar will be recorded as always. Hopefully we’ll be put on to our YouTube channel as well. Second, everyone can ask all the questions they want, but please in zoom, put them into the Q&A section and not into the chat. It is way easier to manage it for me. And I will try to interrupt Sean as often as is still polite to ask those questions and get them answered. And finally, I heard that Sean has a poll for us to start with. Is that correct? Yeah, I find that if I like to do a poll, if I put it up at the end, then we run out of time for people to answer it. So we’ll launch it. And you guys can answer it throughout the webinar. Just a few questions. All right. Just to get your feedback. Well, we got a lot of people, Victor. We have a lot of people. We’ll go over. Maybe I can’t pent up demand for a webinar. Who pressures on? Well, do you got a place to share this poll with us so we can take a look at this? I don’t know if the zoom shares it, but we can read it off at the end. Yeah. Okay. Yeah. Well, that was all for me. You can take it away. What if you go for us? Okay. Well, as you said, it’s the first webinar of the year. And I think it’s good to go pretty high level about what we did last year and what we are thinking for 2022. Of course, this coincides with the recent release of the Q4 build of last year, the 2021.12 release. So I can take us through some of the release notes there and some of the goodies that are in that release. And then I had a few just small tech demos planned. And then potentially some follow up deep dives that we could do. And I’ll get into that. Sean, can I answer off you for a second? EFO. Yeah. Oh, sorry. They let you in. Yeah, they did. And yeah, I thought it would be important to announce. Fine. Fine. Fine. Fine. Fine. I mean, I think we’re all kind of a little bit done right with webinars and children in the background and stuff like that. So I got something to announce for the grownups amongst us. And I think you will like it too. So two years of no Servoy will. Thanks to this pandemic. I think we’re all we’re all done with that. So what we decided to do is flip the model. I think it’s too risky still to do a big Servoy world this year. We don’t know what’s going to happen. So we’re going to flip the model and we’re going to come to you guys. So we’ve got a trip splant to Amsterdam, Frankfurt, New York, and to LA or Santa Monica. And you guys can pick wherever you like to join us. But please, please, please join us. We’re doing it’s like a day and a half event. So the full day event will contain will will have a lot of sessions, technical sessions, our technical experts will be there. Sean will obviously be there. We’ve invited to Yolam, our chief of R&D. So he will be there and that will be filled with all the stuff that the technical guys like. And what we do the night before is we’ll do a more business oriented session with a dinner. And everybody is welcome to join that as well. What we’d like to get from you or what we kind of need from you is for everybody to book that tickets. And in the news like that you’ve seen this week and last week, there are links in there to do that. We’re asking for a $50 non-reformable donation so that money will not go to us. The money will go to a good cause that all of you guys can vote on. But it helps us to know like how big the venue size needs to be. And it helps us to plan the logistics. So please book your tickets as far in advance as you can. If you need to have the link where to do that, post it into Q&A and I’ll get you that. Sorry, Sean, back to you. That sounds exciting. I like Santa Monica beer. That’s a fun place. Can I go to that one? Yeah, of course. Okay. We’ll update you guys on this periodically between now and May as well. Thanks, Evo. Okay. Back to, well, before the release, just a quick look at 2021. 2021 was a different year, different from 2020 but not like the other years. But it’s certainly, I think overall it was good. The company actually grew both in the number of our customers, but we also actually hired quite a bit. We’re scaling up on all of our teams. So R&D cloud professional services, sales, everything. So that feels really good. And I hope you get to meet some of our new employees when we can all get together. We saw a lot of, a lot of uptick last year in hybrid apps. This was something we, we were kind of predicting. I think when we did this sort of look forward back in the beginning of last year, we talked about the important of hybrid apps. And I think we’ve seen a lot of that come true. What surprised me was the number of, of desktop hybrid apps that we saw people building. A lot of cases coming in on the NG desktop utilities and the other plugins for that technology. I think part of this could be attributed to the fact that people are moving from the classic smart client. And they have those desktop integrations and, and so they need to have parity when they go to the next version. But it’s interesting to see that that there’s still a demand for a desktop client that can talk to hardware or local file systems, etc. So given that we expect that there will be more attention focused on on hybrid apps in 2020 2022. In the Servoy cloud, I don’t know why I had the question marks in the, in the slide here. We added again, more customers last year, I believe we’re up to a few dozen projects that run in Servoy cloud. Somewhere between 30 and close to 40 I think. And that’s growing all the time. Every new project usually starts in Servoy cloud. So we’re seeing that the DevOps is still a key aspect of, of helping teams build applications. We also geographically expanded Servoy cloud because we have customers now running, I think, Australia. And pretty much anywhere there’s a AWS zone. We have reach in. So that’s also exciting. And as you know, 2021, we worked on major stack updates. In fact, for the past three years, we’ve been working on the transition away from the underpinnings of the engine client, the AngularJS and of life. And that’s ongoing. So that was a big part of what we were working on last year, not all of that is immediately visible. And that’s kind of the idea. And another, another kind of key thing we worked on last year was the smart doc smart doc human editor component. It’s more than a component. It’s really a component plus some APIs. And I think we’re going to see more of this type of requirements and business applications where really sophisticated interactions with users. And that’s going to drive the need for kind of next level components. I mean, this is not like a text field or a checkbox or, you know, something like that, but, but, you know, a really full fledged editor that can do lots of lots of stuff and, and we’re continually continuously enhancing that. I think it also makes sense to look forward and 2022, I think it’s going to be a big change for the whole community. As you know, the engine client, as we’ve been saying now for over a year, the engine client will will sunset and the next thing is coming. I think it’s a good to remind ourselves why serve way exists. And we look back over the history of the company. Our mission has been to really to enable software vendors and enterprise teams to build applications business applications with with the best tools and to meet the demands of the market. Early on the demands of the market were just to run over the internet. We started with a smart client and then when browser demand came our classic web web client came out. The engine client came and it gave us kind of that open architecture and the UX freedom. But the underpinnings of the engine clients are now also out of date and we look to the future and that’s why we’re announcing the code name for the succession of the engine client to be servoit titanium. And we believe that this is a good moniker for what’s next because this client performs much faster than the engine client. It’s based on TypeScript under the hood, which means that it it can apply else. The architecture is also more extensible. TypeScript is not only compiling in the browser running fast but also the way that a components can be built are easier to extend. This means we could have almost different flavors of one component rather than you know, forking it or customizing it. And again, I think all of this kind of encapsulates our mission to provide comprehensive tooling best and breed tooling for people building business applications to give them a pathway to the future. And I see really a lot of attendees in this webinar and many of you we’ve known for years and years. We want to keep it that way and so that’s that’s really why we’re excited about chirvoy titanium. I’ll talk a little bit more about what this means. I think, logistically, there’s a lot going on in a lot going to happen. So, 20 the dot 03, the Q1 release of any year for us is our flagship release and this one is I think a big deal because it becomes a bit of a transition point. At this point, the titanium client becomes what we consider like the default and the engine client starts to become the legacy client. What I mean by that is that when you launch the client the default will be the titanium client, the editor that’s used will be angular based and therefore rendering the titanium components. The editor is available in the current release, but it’s still not fully fledged yet. So we’re hoping that people will enable that it’s in the preferences to turn that on and then you can actually test drive it. And you’ll see that that titanium compatible components will be rendering in there and yeah, it gives us already under the hood for our R&D team a much nicer foundation. To work on. 2022 dot 03 is also, well any dot 03 Q1 release for us is the basis for our long term support branches. And so when we when we put the dot one release to that that begins the LTS branch for for that year and that really from from our point of view begins the hibernation of the engine client because after that. And you really are going towards the titanium client. And what I mean by that is that after this release there won’t be any more enhancements to engine client sources those will all be done on on the titanium version. And you know, of course we could do major performance problems or security issues things like that would of course then be just like any any other issue of that nature will be appended to the LTS branch, but enhancements and new stuff will go forward after that. So that’s that’s sort of the where the engine client kind of parks and waits for waits for the future. The. So that’s the. So that means. And we kind of have that today as well. But up until that point so you’ll you’ll when you run your application you can run engine client you can run titanium client. And that would that will last for. Most of this year. And then we think by the final release of the year will be removing the engine client sources from from our distributions from our. It have repositories and from the core the deployment itself. And this is that if you go beyond the LTS branch of next of this year sorry then you really are you really are on the fast track to upgrade to to titanium. There’s not much point to you know go to 2022 dot six and then and then like hang out there on on the engine client better to go to the LTS branch if you need more time. And then we’ll be able to get the LTS branches are are supported and just patching permanently with with only absolute necessary changes. So what we’re looking at then is by the end of next year. We’ll we’ll sort of sundown the engine client. And the titanium client will be it will be the success for the engine client will go and support. For example again. So you just announced a titanium client. Then I got a special announcement as well. Everybody that’s coming to serve oil will on tour will get a special titanium gift limited in production and you have to be there. So sign up please see you soon. Is it made of titanium. Yes, sir. Oh wow. Mm hmm. And then shot on a few questions coming in as well. Yeah. There’s a lot of questions actually coming in about titanium of course. I think you clarify the most of them already the first one is. Does that mean that we have three clients, including two legacy ones, web client and G and titanium with only support for the titanium client. Yeah, so good question. Yeah, so there are currently two legacy clients that already exist. The classic web client and smart client that I showed in the previous slide. Those are already in in hibernation mode. Right. So so today we don’t do enhancements to the smart client or the web client. All of our clients offerings are the deployment technology on the client side. So there is a lot of shared technology between all our clients. So for example, an improvement on some of our API’s still applied to the classic clients. Right. You still get those even though you’re on the smart client for example. But it’s really the deployment technology itself, the client itself. That is considered legacy. So those two, the smart and web are already in hibernation after 2022.03 release. The NG client goes into hibernation as well. The reason I put the 2023 end of year for the end of support for the NG client is that, you know, it’s based on on technology that is also going end of support. So also is, you know, it will be end of support by then. So it’s, I mean, it’s not like it won’t run, but you know, it’s, it’s, there’s not much we can do in terms of the underlying library. So if you’re on smart and web, I mean, it’s, it’s kind of the same, right? Those, those can potentially run for a very long time. But if you’re, if you’re forward looking, then you know that you should be moving. So it’s, it’s, it’s like that. There’s another question that about is titanium what we called NG2 so far. The answer is yes. And that’s why we’re sort of introducing it now and, and, and the flagship release in the first quarter at the end of the first quarter will be our titanium client where we make it official. But NG2 was kind of codenamed up into this point. Yes. All right. You go already go ahead on the second question for me. Further question is will the same code base run on the titanium client? Yeah. It’s, it’s exactly just like smart client web client and NG clients, they are, they’re all based on the same tooling and the same code base. There will be, and there are differences in the front end code. But most of the, the, the actual Servoy coding that developers do will be totally transparent. It’s, it works the same. And that’s, that’s because Servoy abstracts everything, right? And to, to forms and components. And that allows us to dynamically generate a client and keep the underlying technology up, up to date and evolving. Okay. And last question. And I think you will elaborate on this later is will there be sports for old framework modules in titanium or will there be migration options? I, I think old framework modules might be referring to. Some, I assume like several server security, those kind of modules. Yeah. The ones that are all shipped through anything that’s in our package manager is, is supported or will be supported. Anything that’s, that’s not in our package manager is already not really supported. So if you have something that’s, that’s old. And it, and you don’t find it in the package manager, then it’s not something that’s, that’s officially supported. Okay. I think you will go more into detail about migrating later on the site, correct? Oh, yeah. Then I think we can move on to the next part. We still have questions coming in, but I will interrupt later on. Unless you want to do them right now, of course. No, but feel free to interrupt me. I mean, that’s kind of why I want to keep this webinar high level and focused on what, what our plans are for this year, because I want to. I assume people will have lots of questions and that’s, that’s why we’re doing this. So. Okay. Don’t hold back. Okay. Of course, a big question. When will titanium be fully functional? Yeah, that’s the defined fully functional. And I think that’s, that’s, you know, what we have to do to answer it in. And I can get into that a bit more, but the, the client is already ready in terms of the client technology, but of course, anything you build is made of components. And you have to make sure the components are compatible with, with that version. So, and I’ll get into that and, and we’re going to dive into that with the community as well over the coming, the coming weeks. So, just a bit more about what to expect this year. One thing that we want to do is align all of our extensions, all of these components and services and modules and such with our quarterly release cadence. So today you have, you know, I took for an example of the Tarte S component. You know, it just follows its own versioning. And we do put in dependencies on minimum servoic or versions. But in terms of the naming, it, it doesn’t really line up. And so we’re, we’re really going to align it with the release cadence and, and the version naming. So it will, you know, come the, the next release. All of these components will, will bump up to 2022.3. The reason for that is a few. Number one, I think it’s a lot more clear when we first started the NG client years ago. One of the really nice aspects was that we had this open front and architecture and that meant that customers and professional services employees, servoic and whoever could create components and, and they could update them as they needed. So we were, we, you know, we could fix a bug or add enhancements one of these components and just release it. And, and so we thought let’s go full steam ads, all these components that they’re own versioning. But after we get a lot of them and, and the dependency on the core might become more intricate. So we might enhance the core to support a component, for example. Then it, it really gets a bit messy. And I think that this will make it a lot more clear. It doesn’t mean that we can’t do intermediate releases of components, but it’ll be very clear what, what version they’re on. The other thing is, is that we offer long term support on, on the core. And we should really be doing that on the components as well. And I think that becomes more critical to with, when people choose to move from the NG client to the titanium client. So we’ll be offering the N, the LTS branch as well as soon as we put out the, the servoic core LTS branch will, will be back porting any fixes or things that would normally go into the LTS stream on components on packages themselves. We’ll also get to back port it into their own LTS branches that way customers can, who want to hang back on an LTS branch can really get, you know, stability, but still get some maintenance as well. So I think that’ll be, that’ll be a lot more clear when we do that. And another question. Will there be quick fixes between the quarterly, quarterly releases if problems arise? Yeah, well, we do that anyway, right? In fact, as I, as I go through the release notes here, we call this 2021 dot 12, but it’s actually 2021 dot 12 dot one. So we do quick fixes on the core as well as needed. And we, we can do the same for components. And in fact, the components generally don’t have special dependencies on the core. But we will do a quarterly release at least of these components to make sure that everything stays compatible. So this is more, this doesn’t mean that we’ll necessarily won’t, won’t do quick fixes, but just that it’ll be very clear how the component components, the component versions line up with the core, because today it’s, it’s not that clear. All right, thank you. Yeah. I thought I would add this because I, I didn’t realize that there are still a few folks out there that are using the classic server. If you don’t know what I’m talking about, then don’t worry about it. But this is the, this is the, Tomcat that ships with the Servoy installation. So every Servoy installation actually has a Tomcat instance in it. And, and when you go into your installation directory and you see application server directory underneath that, that that is the Tomcat directory. And it’s there is where we put all of the dependencies, the actual libraries for, for the platform or some of them. And after the 2022 to three branch, we will deprecate that. It will be in the LTS. So it’s not like you won’t have it anymore if you’re, definitely people that are on the classic server are usually a few versions behind anyway, but I did learn that there are some that stay up to date, but they still run the classic server. So ideally you should go to war deployment as soon as possible. You can’t do ng client without, or the titanium client without war deployment. But just so you know, we will be deprecating that. And, and only supporting it in the LTS branch. There will be a slight impact for developers because there is still a place where you stick things like drivers and Java libraries and plugins and stuff and that will move under under the developer folder. But this will make the installation a lot more lightweight as well going for it. So it would be nice to sort of shed some of this. We’re looking to shed some of the baggage, you know, of over the years to be able to do things to be cleaner and faster. And this is one of those items. In terms of what else is going to go on this year, we recognize that this is a big change. And so we are currently putting together a migration guide. Our own professional services employees have been working with a lot of our customers on migrating already. In theory, you just launch the, you just launched the client and it will run. But in practice, of course, you have to have. Make sure using components that are all compatible. There may be some CSS differences. If you run legacy table view or list view forms, those have to be migrated. So for every project, there will be nuance. And so what we’re doing is we’re learning ourselves as we help customers that we work directly with to migrate. And we’re compiling that knowledge into a guide and we’re going to publish a migration guide to help, help folks make the jump. And we could also put together some workshops as well. So we could do like a boot camp to get people, you know, individual help. So both of those, we like to be doing in pretty short order. So probably by the end of this quarter, we should be publishing the guide and scheduling those workshops. So anyone who’s interested can get some help. Of course, there’s also the open architecture of the engine client, allow people to build their own components, which means that they’re on the hook for making sure those components are compatible to move forward. So we will also be making an advanced guide or doing a workshop. I don’t know what’s the best format because it tends to be that the much smaller audience that actually make custom components. So it might be easier to do something like a workshop than publishing a guide and maintaining that. But in any event, we’re migrating our own components. So again, we’re documenting the process and we’re going to, we’re going to share that with the community to help not only migrate components that could be custom components, but, you know, also looking past the idea of migration, just that the future of this client is built really on much newer technology and there’s a lot there to take advantage of. I know our own R&D team likes it a lot more. One of the things being TypeScript, right? There’s a lot more you can do with TypeScript like inheritance. So it will be interesting to also collaborate on, you know, how to how to make the next generation of components and make really nice applications. So I think that’ll probably come a little bit later in Q2. But again, this is all things that I think are pretty high on our agenda for this year, because it doesn’t make much sense to really push forward new features and things like that if people can’t get to them. So this is where we’re focusing. A few more questions going on about this TypeScript. Yeah, yeah. TypeScript in titanium instead of JavaScript, is that correct? Yes. Okay, there we go. Yeah, yeah, the, yeah, the, sorry if that’s kind of glossing over it and I didn’t want to get real technical about this. Again, for those that are going to build components, I think it’ll, it’ll make sense. But the engine client was based on an Angular, JS and the, it’s titanium client being based on Angular, which supports TypeScript. So that’s the, that’s the language for the underlying component development. It doesn’t affect the language used program day to day, sort of,oy stuff. All right. I got a question about the previous slide. What will be used instead of Tomcat? Okay, so, yeah, let me go back back to the slide up. I, it’s still, well for most people still Tomcat, you can use other Java containers like JBOS or something. I don’t, I don’t really see that. It’s just that we don’t ship the bundle Tomcat anymore. So, so to, and I don’t want to get to into this because there’s a whole, there’s documentation and webinars about how to do war deployment, but basically you install Tomcat stand alone. And then you export a war file from Servoy and drop it into your Tomcat and then it’s life. So it’s just that we don’t ship that the bundle Tomcat anymore. Right. I hope that that clears things up. Last one. Will it titanium client have NG desktop clients for file access, etc. Yes. I think it will be called the titanium desktop clients or no. That’s a great idea. I like that. I think there was your idea. No, no, no. Yeah, it came from mobile, right. So I said at the beginning that hybrid apps were seeing a real interest in that and a demand for that and, that will, I think, only grow. There is some work to do to make those deployment technologies which are currently based on the NG client to make those working in, in the next generation. So I think particularly with what we use for mobile. So we’re looking into that right now. And yeah, it’s absolutely a must have. So the answer, short answer is yes. Right. Thank you very much. Carry on. Okay. So where were we? We were here. Yeah, also looking ahead in 2022. Just like a high level of where we want to focus our energy as a company is really back on developer experience. I think we’ve received criticism over the years around documentation. And I think that’s fair. And so I really think that it’s important that the product has become a lot more complex since the NG client and we went pretty fast with. And hands enhancement, especially in the early years of the NG client. And as a result, I think, you know, our documentation is, is scattered. It’s difficult for people to, I think, assemble a comprehensive understanding of, you know, how to, how to go from, you know, start to finish. So what we’re looking at is really consolidating that experience of how you find things out and how you, you know, know what’s supported and what, you know, just, you know, the number of GitHub repositories for. And so we’re looking at a lot of different, you know, different from the core, and I think, for a person that’s kind of grown up with Servoy. It’s maybe not so hard, but I think for people that are newer, it’s frustrating. So that’s one area that I think is really important for us to focus on. So we don’t, you know, we don’t like not document API’s and stuff, but API’s don’t really tell you how to build an application, right, or how to solve a problem. So I think more focus around practical guides and developer journeys is where we’d like to focus as well. The other thing that I found interesting is we get some feedback about first use experience. of Servoy is difficult. It’s a complex product and IDE is a hard thing to plop someone down in and really guide them. And what I found interesting is we get that feedback from not just new people, but but long time customers that have a challenge onboarding new employees or starting new projects. And bring someone on the team, etc. And we’re aware of this and this is a challenge, I think, to make the first use experience, you know, simpler. But we are focusing on that this year as well. We want to do more tech demos. I love to do tech demos. They’re challenging to get time to do to do everything. I think we can crowdsource this better and plan it better. And so that’s another area how to deliver just sort of sharing training learning in the community. For me, that’s that’s a big focus for the year. Also, we want to focus on developer experience, but again, you all build business applications with a focus on your users. And I think the engine client brought us that UX freedom, the ability to, you know, go outside a really canned kind of UI. And I see that only improving and we will be focusing on that as well. You know, as I said that the underlying technology for the titanium client is. Much more advanced than what we have with the engine client. And I think we’ll take some time because we’re transitioning, but, you know, we really want to deliver best and class UI components. We want to invest more in. We know grids are important to people. I think we have a great grid component, but the demands of a grid are really high and really various from application application. And we introduced a smart document editor. There’s a lot more coming on that. And I think I think we’ll see more. More components like that that they’re really, really rich and sophisticated, you know. And of course, not everything is a component when it comes to UX. We have some templates and UX patterns that we’ve put together. Like the pop up filter, for example, is not a single component. It’s like a composative components that works in concert with an API. Those are, again, pretty sophisticated, you know, UX patterns to build, but we really have the tools to do it. And we have the community that needs it. So it’s an area where we’d really like to focus as well. Of course, a Servoy cloud. We have ambitions there. We think that we believe that the cloud is going to become more and more important to our offering and our mission. Our mission has always been to empower ISVs with the best tooling. And we see DevOps is a part of that, you know, that whole picture. And so we want to have zero touch DevOps to let you guys focus on, you know, applications in your users. Today, the Servoy cloud delivery pipeline, I think, has really robust tooling in terms of automation, test automation, build deployment. But at the same time, it was launched, I think, with the tooling first. It had to be there. But the focus on the UX for the cloud control center itself, I think, was not leading. And I think we can do better. Today, the Servoy cloud experience is not fully self-service. So it’s kind of like a managed service with some tooling, and we want to flip that around. We want it to be self-service. We want people to feel empowered, not dependent on us. And we want to scale it. We also, I think, learned a lot about test automation. It’s pretty challenging. The part that I think works well in in Servoy cloud is the automation piece itself. The fact that you can just make a revision, commit it, and then tests are going to run. And if they pass the build, we’ll deploy to the next server. And if they fail, you get a report. And it doesn’t deploy. That is all really nice. However, building and maintaining test themselves just is, I think, a bottleneck. And we think that we can still meet that demand, but we have to meet it in a more creative way, in a way that allows the best tools to integrate with Servoy cloud. So that’s an area where we’re investigating. And I think it has to align better with with the Servoy developer itself that DevOps can’t be in isolation from what you do in the IDE and what you do day-to-day. That’s to be more tightly integrated or aligned. And so that’s another area where we are exploring how to improve the cloud offering by by bringing a closer to where the developers are. I do want to do some tech demos because, well, this is a release webinar. There are, and I’ll go through the release notes quickly as well. There are, you know, a lot of goodies in every release, not just in the core, but we try to update all of the packages with each release. And of course, we’re going to standardize on that in the coming, the coming release, as I said, will move everything to the quarterly cadence. And some areas that I’d like to demo pretty quickly. We made an enhancement on the pop up filter component. Again, this is one of those composite. It’s not really even a component. It’s a composite kind of UX pattern. And we find that this is one area where it just keeps getting enhanced and enhanced and enhanced like it’s a nice tool. And people are using it and they’re submitting feature requests and it’s getting more sophisticated. So I’ll show just one, one small feature that we added to that, but it’s, again, it’s just always getting better and better. We had the file uploader component. We had a request to support chunk size. And that was a feature that was sponsored by Steve. I’ll keep it anonymous just in case, but Steve is a very active member of the Servoy community. So he always stays up on the latest stuff and tries out stuff. He gives a lot of feedback. He gives us feedback in this very webinar. So thanks to Steve. I just want to shout out because he did sponsor this feature. We looked at it and said, yeah, we’re not sure this is a lot of work and we don’t know if folks will use it, but we can get it in the product. And so we did and I’ll just show the file uploader real quick to make sure that you guys are aware of it and, you know, just that we built a, we built this platform for you guys and we want you, we want your input and we value, we value it when you guys make a feature request. And then I want to show you the mobile nav template that we added to the sui navigation UX template. So again, this is where it’s, it’s kind of like UX patterns and templates and ways to do things, but not a, not a strict component. The one that I really wanted to show is the enhancements for smart talk editor. I took a look at that probably too late for this webinar that there are so many goodies in there that I just want to do that in its own webinar. So if you guys are okay with that, I would like to sort of put that out there in a few weeks and invite everyone back and we’ll just do a pure tech jump into into that component itself and what was added to it because again, it’s one of those, those things that fairly sophisticated and there’s a lot there. So sorry that it’s not in this one, but I think we would go pretty long if it was anyway. Let me just jump in real quick. I’m going to before you jump in, Sean, maybe a reminder to share a poll that you wanted to do among these. Oh man, thank you. I totally forgot. Yeah, it’s good. I didn’t share the poll right away because no one would know what I was talking about. So I’m launching the poll now. Do you see it? I see it. I hope everyone does. If you don’t, please let me know. Yeah, please screen right now so people will be busy with this for a second, I think. Okay. Yeah, please, we appreciate your feedback always so. Please fill that out and be honest. Okay, I got to share. My IDE. And move all my zoom crap out of the way. Can I see my IDE? Yes. Okay. I want to start with the pop up filter. And in fact, I don’t really need to share the IDE because I was going to show it running in the client. So now I’m going to launch it and then I’ll have to re-share my browser. Just do share screen. And that way you get everything. Okay. You can see my browser. Yes. Sample solution. Yeah, this is the standard sample solution that you can download from the package manager. We try to, for most things, we try to sort of pack them in here so that we have a not only a way to test them and demonstrate them, but then people can download and see how it’s used. I mean, I stuck this in and build it on top, not that we’ll ship everything I show in the sample, but it’s a good place to start. Yeah. So let’s go to the orders list. So this is a small thing, but just a easy to demo. So I thought I’d throw it in there. So as you guys probably know, we have the pop up filter component and API which allows you to filter on things that are connected to a grid. And we added support for dates, date filters which are now empty. So you can do an empty date and then you’ll see that. Let me see. Maybe there are no empty dates. Oh, ship date. Yeah. There’s all. Let’s try that. There we go. Just a nice thing. If you want to know, I want to filter on orders that don’t have a ship date. You can do that and add that to your filter. The other thing that I wanted to point out that is an enhancement to this is if you filter on a date and you select one of the named dates, like today, last week, etc. Before what this did under the hood, you see if I pick last week, it picks start an end for you and then when you save it, it filters it. And then in this case, it’s persistent. So when I come back in it, it remembers it. But what it remembers is the start of the end date. And so if I do this on a Friday and then I open the application on a Monday, then it’s still going to show the wrong, then it’s going to show the wrong week. I want to, I want it to move up a week. So this now does it dynamically applies it and determines it dynamically. So, and that works on all of these, you know, these little named filters here. So that’s just a couple goodies that are in the pop up component. We were going to do the file uploader. Yeah, this is the one that Steve had sponsored. I just think this is a pretty neat component. And I wanted to show you the way this works. So we support a chunk size now. This is to get past some proxies or limitations somewhere on the network where you can’t, you know, if you’re uploading a really large file. I think the default chunk size is unlimited or something. And it may be rejected somewhere on your network. So this allows you to specify a chunk size to get past the proxy or something like that. And the way this works, we jump into developer here and open up the upload form. I just plopped this component on the upload form. So this is the multi file upload. So I dragged this on the form and set it. And if you have an, we did a webinar on this a while back. So I won’t go into the component itself. But this is based on an underlying library called a upbeat. And it has this, these tests or two options. I don’t know how you say it, the test plug in for it for a upbeat. You can just go and plug those in. And so I set the chunk size to be five, which I think is five bytes. And then if you grab a file, and just grab a file here. And then if I upload it, you’ll see that the progress goes really slow. Because it’s going to try to chunk it in those little, so it will slow it down. You can see upload. This is like a 333 kilobyte file. And it’s going really slow. It’s because I put a ridiculous chunk size in. But then if you, if you go in and remove that chunk size, then get back here. It should go much faster. I can even pick the server-wain-stoller. That’s really big. But then it goes real fast. So that’s just a small demo on one small thing added. But I wanted to thank the sponsor for that feature. And just kind of remind everyone about this one component. Because I think it’s pretty slick. You can add more files and manage how the progress is shown. And there’s callbacks for all the events. And really pretty sophisticated component. The next thing I want to show is probably a bit more applicable to everyone, which is the mobile template. So this sample, if you haven’t played with it or seen it before, is actually built on top of a navigation framework. So what shows in the menu here, and allows you to kind of click and go through everything. That’s a framework or a module that it’s a UX template that you can extend and customize. And we realized that we were starting mobile projects after mobile projects. And we didn’t have a coherent navigation framework for mobile. It’s a bit different. So we added to the SEY navigation. So in the package manager, you get under modules. You get the navigation and then the pure API. And this is the UX template. So we added to the UX template support for mobile. And then here’s a sample, which is based on that. And really, all you have to do is if you look at the, well, let me launch it real quick. Yeah, I think I’m, no, I didn’t activate it. Sorry. So it’s a sample mobile. Yeah, so this is this one is set for mobile. I mean, these forms themselves are also designed for mobile. If I go into the inspector and show it, like in a mobile view here, like an iPhone. So you can see that like the navigation menu is collapsed up here. You know, the mobile version of this. And then you can see that the menu items go in the drop down here. And you can navigate around that way, for example. So again, I don’t want to get too much into it. It’s really just the module that supports the navigation kind of UX setup. And then everything, all the forms and stuff are, are your own forms. So it’s just, it’s really a skeleton. But again, we saw such an uptick in, in hybrid mobile applications that we needed to, to kind of, come with something that, that can serve the common purpose there. So that’s available in the, in the navigation UX module. And also we will be publishing this mobile sample as well. So you get, you get the implementation. We should be ready in a few days. We were just tying up loose ends on it. Okay. And I think that it again, the big demo will wait. We’re already at one hour anyway. A couple more release notes. I just want to go over to make sure there’s no questions. And then we’ll get it out of here. You got it. Victor, is my presentation visible again? Yes. Okay. And thought me if there’s any questions because I just want to go through these quick and then see if there’s questions or, or anything. Again, we, we do like more than 100 fixes enhancements on the core, not even counting extensions. We updated most of our extension packages and a lot of stack updates in this release updating Java and Node.js and the, and developer and. Log for J, everyone remembers that, right? Of course. So we’re, we’re keeping a stack up to date. One thing to note here is the Excel TS. So we updated Angular.js to be on the Excel TS version so that the support continues. Because that library went end of support. So now we have a special support contract. And that’s in the latest release and also in the latest health. So one thing that’s worth pointing out is that the form designer, as I said for the titanium client that’s based on Angular is already available. I’ll show that real quick here. If you go to preferences. And. And then we can see down here. So you can see down here start ng client should launch ng to again ng to is the, with the informal name for the titanium client. If you take this one and apply. Or close. Then if we launch one of these forms. This will open up in the, in the ng. The titanium client. The Angular based editor and this I’ve noticed already is a lot happier. But this is kind of required to to render those sources is what we do right now is if there’s ng client sources. We render those. Instead, but this will be required when eventually we remove the ng client sources from these packages and then we have to run the. The next sources. So, but you can turn this on in your preferences if you’re in your testing and preparations to go to titanium. And what I was saying about it becoming that the default is is in the next release. This is going to be. Or the LTA or the next release. This will be checked by default. And so you’ll come in and uncheck it if you’re if you’re having problems and you’re still on ng client. Oh, I’m sorry. That was what I thought that didn’t look right. I took the launch ng by default. Let me open up the form again. Let me just double check that. Yeah, I’ll do both of those apply and close. Sorry for that. So that’s the ng client. So I clicked launch and it launches this in the sorry, the titanium client. And only way you can notice the difference is the solution here for the ng client. It’s a solution. But everything else should should look the same. If all components of stuff are compatible. And then. For the form try this again. So this is the. This is the form editor that’s based on based on angular. So just want to make you guys aware that you can switch those on now and start testing and make the titanium client the default launch. Yeah, we did some things to resolve a web package collisions. You may notice that you get warnings or errors if you have multiple at the same package installed. Now what we do is we auto resolve it if you have a package project like you run from source. And then I’m not sure everyone runs into that, but but it can be annoying if you’re if you’re running anything from source. We increased performance and developer, especially for starting large solutions. And then also in the form editor when it’s rendering a form that has complex UI inheritance. So we did some performance increases there. We added also when you do the code profiler. The support to measure query time. Both the the total query time and then the query that we’re just used by a particular method. And so if you turn on the code profiler and insert a way developer you can you can do that. I think that’s a really nice because when you’re profiling and troubleshooting a lot of times the bottleneck is. And then you can just relate it to either to a long query or too many queries and it’s really nice to see when those get generated in your code execution. So that’s good for diagnostics. This is this is a nice one. The next one is related to planning and working on titanium components. And then you have an advanced feature, but if you come into and I’ll show this if you come into your application and you go to packages and you say create component package projects right you start a new project from from source. Then the I already had one there I could have shown you that the if you look all of the stubs for. For the titanium stuff you can still name dend G2 and this one that’ll be changing. All of that is and the TypeScript files. All of those stops are created. So we’ll get into this when we talk about the advanced component. And we start to document and help you guys with this but it’s already there waiting. It’s just a matter of kind of communicating the rest of it. So that’s kind of a placeholder there. So that’s a great way to the scripting API. This one I think is actually pretty nice. If you ever struggle with like a file that you just stick in your media folder and then you actually just want to like open it in another tab or reference it somehow from the client perspective. So if you get media URL will actually return for that that file will return a URL that’s usable from the client. So it would be like relative to the application context. So that’s that’s a pretty handy one. Another one this came up we had a customer that was using the scheduler plug in quite heavily. So we’re just using it to delay something like a little bit like half a second or whatever. And so we added application execute later for doing delay stuff. It’s a lot simpler than using the scheduler plug-in which is really meant for more like you know, async stuff and and crontimings. So this one’s a lot a lot lighter implementation for that. And this is an actual one I really like if you are using in memory data sources in your application, we have an event now to provide a like a chunk call back for loading more data. I think it’s totally critical to have this for especially like if you connect to a web service and you want to expose that web services or in memory data source, but you you have to paginate the data in from the web service in your calls or something. And this is actually provides an event when the found source of the found set needs more data. And then it’ll it’ll call your event handler and then you can go out and return the next chunk of records and it’ll it’ll provide the hint for how many. Yeah, this was a small one because some people problems to create builder now supports functions in the in the where clause when when you’re using like so the reason for this is there are some characters that don’t. They don’t I think we were just defaulting to upper, but we would do it in the client side right so now you can really have the database do it and it’ll match properly the small thing but it’s a general improvement because now you can put functions in with a like operator anywhere. The next ones are are kind of like. So we’ve always had design time properties on on components on the default components and the likes components, but now any any components can have automatically have these design time properties. So it’s really nice for doing your own like framework things like you may want to add these design time properties to certain components and then in your code later evaluate if it’s got this property for I don’t know what. So that’s nice because it’s now available everywhere for all components and similarly we added it show you what this looks like any persistent object in in sort of way now can have a comment so you can see. that label has it the form itself has it relations have a valueless have it and for now it’s just more for like internal documentation but it could be exposed through solution model or you it’s exposed in solution model so you could use it also for some interesting things if you you know if you want to. think about a you know relations that have a certain comment something like that so it’s more for like making your own framework type stuff. And this one I think is important for anyone who’s working with working with a multi node deployment the client manager plug in which has a really nice broadcaster feature which allows you to send messages between clients in code. and how works across nodes so if you if you have to know to or more notes and you call from one of them plugins client manager you know broadcast message. it will send it to all clients of all nodes we hook up to the rabbit mq settings for that and we’ll push that out and so I think that’s really important for for folks that that run. and so that’s it for the demos and the release notes I want to thank you guys for sticking with me as we go over the hour a little bit. and I really appreciate all the questions I hope that it provides some clarity and we will be. communicating with the guys about surfway world on tour and about the upcoming flagship release which will be providing a lot more material around around the titanium client and and and how to get there. Victor is there is there any lingering questions about the release notes and do we want to look at that poll. I think everyone is interested in the poll okay a few questions that we have first they are still coming in by the way which is always great. I think a few more questions about TypeScript and of course it’s a big deal can we use the TypeScript everywhere are we required to use TypeScript or what is what is the deal with it. So I don’t want to open up the can of worms here but there are questions about the flavor of JavaScript that several uses in the general tooling and the future of that and that’s the can of worms I don’t want to open up right here although. It is something we’re looking at. The type script that I talked about is the if you build or enhance components web components already the language for that now most type script but for normal like when you when you write a method in Servoy and your in your scopes or your forms etc none of that that has changed. That said we are aware that you know there are there are certain people that would like to move to a more powerful or or modern flavor of JavaScript like TypeScript to use all the goodies that are available that also makes the product more complex for some developers as well so for us this is always a tension. And I think we even we took a poll at Servoy world 2019 the last one and I can remember the room was like split 50 50. So we know that it’s a you know it’s a sticky one. I think it’s a great answer another one I’ve got was how do we check if our components are the team compatible and also when you check. Yes, so if they are honestly you made yourself and probably not compatible but if you’re getting them off the package manager almost everything is compatible I went through and made a list of some things that are not. And unfortunately the package manager can’t really discern that because you could be on the latest version of Servoy that’s still running the engine client so so it doesn’t prohibit you from installing those. And and I don’t think it’s worth investing too much time to flag those because pretty soon everything will be compatible some examples of ones that are not yet compatible include like the full calendar. Because that one is that one’s tricky because we really have to change the underlying library so it’s not it’s a pretty big refactor and that’s a pretty complex component. So we’re working on that one. Others that include jQuery we have to do something different for those I don’t have a list on hand but that’s a pretty fair question. I safe to say that the standard issue ones that you find in the package manager the Servoy extra components boost draft components boost draft extra components excuse me. And the chart JS you know most of those are already compatible. And yeah we should probably be communicating I think ones that are still in progress but I can’t really do that through the package manager so easily. So I’ll take that as a good feedback that we probably need to make that really crystal clear and that will be in our our guide that will be coming out but also hopefully those will also be compatible pretty soon as well. All right, final question regarding the release notes will there be any changes or are there any changes planned for the Servoy admin page. Maybe what I’m not quite an example that I go there. Yeah, for the database server panel like filtering along running queries something like that. I don’t know if there’s anything planned but if you if you want to point us toward a case or file a case and support. We’ll take a look feature request or or an issue. But nothing is currently planned for that. I maybe I don’t know it that that level of detail. Okay, he could be referring to a case that was that’s already filed and hasn’t been responded to or something like that. Rob bubbly. I want to leave it there for the questions. I think we’re well over time. And if that’s all thank you a lot Sean for for the demos. My final thing I wanted to say is plug our Servoy world on tour, of course, sign up now you get a titanium gift. If I promised. The registration link is in the chat here it’s Servoy dot squared dot site book now for your for your ideal location and I hope see everyone there. We didn’t do the polls Victor. We did do the poll. Huh, we did do the poll. Not the results maybe. The results. Well, the one that that I like is that at least 21% say they’ll buy me a beer at the server. That’s a lot of beer. I’ll take it. Yeah. I cannot see the results. So if you could. Okay, and then it’s a. Pretty much as we expected that that most of you have either either tried the titanium client in developer or you’re still waiting for. For something specific so 45% of people say there’s still waiting for for help basically or something specific they’re blocked. One way or the other and that’s that’s we were aware of that kind of sentiment and that’s why we want to push pretty hard on this in the next quarter. And then there are about a fifth of you that that actually still runs smart and classic web. So they would also need some help as well. That doesn’t surprise me that we we. That’s part of our mission is to keep people in keep their applications running for a long time so. That’s the double edge of that so and then regarding the smart doc editor. It looks like about 14% are using it in their applications and the overwhelming majority plan to plan to take a look at it. And so we will be doing a webinar on that component because it had so many goodies I couldn’t fit it. So we’ll reach out to you about that as well. End of the end of the poll. All right, I’m glad we we still got that in. It’s always nice to see those results. Thanks everyone for attending. Thanks everyone for voting on our poll. I hope I hope see everyone at the next webinar. Otherwise always at the server world on tour. Have a nice day everyone. Thanks, Sean. Thanks Victor. Thanks everyone. Thank you. Thank you.