Notes from Geoff Perlman’s keynote address at XDC 2018 being held in Denver Colorado.
XDC sold out a full two and half months ahead of the conference. 24% are first time attendees. 34% are from outside of the United States representing 12 different countries.
There are over 18,000 users in the forums. That’s a 20% increase over the last XDC. Over 43,000 conversations and 370,000 posts.
Geoff talked about the forum and the conversion to esoTalk from the old phpBB forum software. The original developer is doing a new forum software called Flarum and the plan is to start using it in the future.
Xojo cloud continuing to grow. Zero configuration. Zero maintenance. Industrial strength security. Recently introduced new server specs (twice the server for the same price). Now in 8 data centers. Now has in-IDE server monitoring.
Xojo Design Awards:
Best Developer Tool – BKeeney Shorts by BKeeney Software Inc.
Best Specialty App – Curve4
Best Consumer App – Alinof ToDo LIst by Alain Clausen
Best Mobile App – Packr by Jérémie Leroy
Best Utility App – Server Ranger, by Gavin Smith – Liberty App
Best Cross Platform App – LehrerOffice, Jürg Otter – Roft Soft AG
In 2016, mobile became the most used platform. In 2017, desktop increased a bit and now the two are running in parallel.
Windows: Now using Direct2D for drawing and printing. With 2018 R1 is now flicker free in Windows.
Xojo Cloud: Faster uploads. Caches the frameworks and only uploads what’s changed.
Linux: Gtk3 now lets us create HiDPI applications.
64-bit builds. One of the benefits of 64-bit: They now have an optimizing compiler and apps that use a lot of mathematical operations this can make a huge difference. One user, a professor at Cal Poly Pomona, has spent 10 years writing an app and when compiling for 64-bit he found a 7 times improvement in performance. This is all because Xojo is now using LLVM, an open-source compiler.
The IDE is now 64-bit. It now allows large projects to address more RAM.
A few misses since last XDC: Interops, plugins made in Xojo.
Communication with end users: Xojo plans 18 months in advance. Going to stop talking ship dates. No longer saying when a particular feature is going to ship. Instead going to talk about what’s ‘important’. ‘Priority’ means that are things that are in development. Bottom line: no more ship dates. No change in regular releases.
What are the Priorities?
Interops: like declares on steroids. Android is first. iOS next, and MacOS eventually. Windows is tricky and it might not make sense for that platform. Linux is even more of a wildcard with so many distributions.
Android: working super hard on it. They hit some milestones recently that Travis will talk about more.
Plugins made by the IDE: Still ‘important’.
The IDE Interface: Since last XDC been a lot of work done. Geoff showed a demo. Home screen is overall project overview. The Navigator is no longer there. Double clicking on an object takes you into the object. Where the Navigator was is the Toolbar. Each tab can use the Home Screen. Geoff didn’t show the Code Editor or anything other than the Form Editor.
Web Framework: Web 1.0 was designed in 2009 so that’s like last century. Windows XP and 7 were the dominant Windows OS. Mac OS X 10.5/10.6. JQuery was immature. Browsers not very feature rich. And the goal at the time was to make web apps look like desktop apps.
Web 2.0: ground up rewrite with significant modernazations and optimizations. This will result in far greater speed between the client and server. Overhauling 5 controls. 10 new controls. Improved look and feel. 99% compatible with existing projects. One of the new controls is a charting control. Feels more web-ish and less like a desktop app.
Xojo API’s: The original API’s designed in 1997. Much of the current framework is the same. Originally started with one platform. Accumulated a lot of cruft over the years which resulted in behavioral inconsistencies. Making changes would break existing projects.
This all resulted in the new Xojo framework to help keep Xojo modern and keep it moving forward. Namespaces were used to avoid conflicts with the existing API. Behavior was consistent. Tradeoff was complexity and also created some inconsistencies.
- When to use which case
- Intuitive identification over accuracy
- Avoiding abbreviations and truncations
- Enumerations should always be plural
- Method names who’ll be verb-noun
- Event that fire after the vent has occurred should be past tense
- Conventions for classes that deal with list data
Found that the new API’s don’t conflict with the old ones.
Keep the current API’s for compatibility
Add new API’s for better consistency
Replaced API’s will be deprecated.
Migrate to the new API’s at your own pace
Can mix the old and new API’s
NO NAMESPACES! The Xojo Framework namespace is gone! Not 100% true but for the most part it is. To clarify developers can still use and create their own namespaces but no more ‘wall of code’.
Easier transition for Xojo and for developers.
Called API 2.0
Easy to learn. Easier for them. Easier for developers. All possible via API Naming Guidelines.
They’ll release this document later on so the community can use the guidelines.
Last but not least: XDC 2019 will be in Miami, FL. May 1st through May 3rd. $149/night and the rate is available 3 days before and 3 days after the conference.
More info as it becomes available.