today Geoff gave us state of Xojo including the past, present and a glimpse of the future. his keynote has the following highlights:

  • demographics. first he started off by talking about the demographics of both XDC and Xojo users. the biggest change in demographics is the percentage of women using Xojo has almost doubled in the last two years (2017 = 22% / 2019 = 41%). that is a nice change. the number of users and registrations has gone way up.

  • design awards. the design awards for this year are:

these awards show how great some of the software written by xojo developers can make.

  • Xojo CLoud. there have been some updates to the Xojo Cloud platform.
    • 64-bit hosts. they are using now 64-bit hosts for all new hosts.
    • named hosts. this way the name of the host can direct to a specific hosts for hosting.`
    • stand-alone apps over cgi. migration to stand-alone apps as they work faster and better than cgi apps.`
    • load balancer in front of apps. Xojo Cloud is putting a load balancer in front of all the apps so you can scale up when you need to.

most of these items are things we (nocturnal coding monkeys) do when we host at Digital Ocean. I am glad to see these improvements as it makes it more modern and more secure.

  • Interropts. Interropts are a much better way to interface with the operating system (instead of writing declares). the 2019 XDC app uses Interropts. the Interropts syntax looks much more like Xojo code over what API declares look like. Interropts auto complete in the IDE. they are only on iOS today but there are some internal (to Xojo) alpha builds for other platforms.

  • plugins. native plugins are on hold until android ships. getting android shipping is a higher priority. this not canceled or off list just delayed (well they never gave us dates, so delayed is relative).

  • IDE update. the navigation panel will be called the home page. and when you double click on an item the navigation goes away and the window will only have that control/window/etc shown. it can be used with tabs or without tabs. it should make working inside the IDE easier. again the changes are vague on what they are going to do.

  • API 2.0. URLConnection was the first step. Bezier Curves comes soon. FolderItem on mac is being updated to more modern OSX APIs. Date is being updated. plus a lot more. Analyze Project will tell you what APIs are depreciated. depreciated items will be hidden on the docs but not removed.

  • Web Framework 2.0. v1.0 was designed 2009. Windows XP still was very popular. v2.0 was a ground up rewrite. the major rewrites to the framework including how styles work. more controls. etc. (more later in XDC) as a test, Xojo is migrating Feedback to a web app using the new v2.0 framework. long term Feedback will be a web app instead of native on desktop.

  • Android. Xojo now has the IDE integration. IDE will run on Android simulator (like iOS). IDE can run your code on actual hardware (instead of the emulator). Xojo has building working. the XDC 2019 app was ported to android and is available on Google Play store. Xojo believes that most of the hard parts are done. need to finish implementing the framework. need to port the debugger.

first session (other than keynote) Travis Hill talked about Android.

  • status update. Xojo can make compiled code. it compiles for both 32 & 64 bit at the same time. there still a lot of 32bit android devices so 32bit will be built for a long time. Xojo IDE apk creation. IDE run the app in either in a emulator or on real hardware. IDE has control positioning & locking in a format that mimics desktop apps. not like iOS (aka auto layout). Xojo has twenty(25) controls. There are still a few missing but has majority are there.

  • controls:
    • button.
    • segmentedbutton.
    • toolbarbutton.
    • datechooser.
    • slider.
    • switch.
    • textfield.
    • textarea.
    • label.
    • canvas.
    • oval.
    • rectangle.
    • separator.
    • tabpanel.
    • progressbar.
    • progresswheel.
    • htmlviewer.
    • imageviewer.
    • scrollablearea.
    • table.
    • videoviewer.
    • imagechooser.
    • location.
    • messagebox.
    • timer.
  • other specs: android is only using (the new) API 2.0. android app errors are always exceptions instead of error codes in properties. android code uses indexes are 0-based (current desktop framework has a mix of 0 and 1 based indexes). initially you can write android code on Mac & Windows. Linux will be a later release. the IDE will require Android studio. and it has to be loaded by you manually. Xojo is targeting Android 4.4 (and later).

  • whats left? framework completion. the core of the framework is done but not all of the framework. there is no debugger yet. and without one it is hard to debug what the problem is.

second session was Greg O’Lone discussed the new Web Framework 2.0.

  • various specs: Web Framework 2.o (WF2) uses jQuery for the internal JS. WF2 has more controls via Bootstrap/FuelUX. and all the current controls are upgraded to newer versions by using Bootstrap/FuelUX under the hood. WF2 apps will ask the browser what functions they support over using parsing user-agents as more browsers lie on who they are. WF2 uses a new server connection monitor. it will try to reconnect to the server including not “disconnecting” the user immediately. WF2 has a new layout options: fixed, fluid, & auto. fixed is already there. fluid is coming when WF2 comes out. auto (that makes it work more like iOS) will come later on down the road. styles can be previewed in the IDE. install a new theme and all control automagically updated. themes and controls can be updated via code or via raw CSS (in code).

  • WF1 to WF2: the new IDE will do an auto conversion from v1.0 to v2.0 framework (cant go back). now the IDE will ask permission before doing the conversion so it doesnt break things.