WeAreDevelopers World Congress 2021

We are developer is the world's largest annual gathering of software developers, engineers, software architects and tech decision-makers. Normally hosted in a big venue. This year the WAD congress was a four-days online virtual event. What I like about this conference is that the talks have a wide range of topics which can give you a fresh perspective of what is happening in the online technology space. To give you an idea there were talks about Angular, React, Flutter mobile, Jamstack, architecture, game development, micro services, micro frontends, C++, Rust, GraphQL, FWA, ... Just too much!

Almost all 45 minute talks were of high quality and had great content. Looking back on the four days, I created a top 5 favorite and inspirational talks. So, here we go.

John Romero - A Lifetime in Games

John Romero is a legend when it comes to game development. He spend all his career/life in building games, mostly first person shooters.

For me it was also a trip down memory lane. Games like Pong, Commander Keen, Myst, Wolfenstein and Doom.

Game development in the past were just small teams of very creative and skilled developers that worked very hard for months and later for years to get things done.

Rapid GraphQL API Development with PostGraphile

Since I worked on a GraphQL project myself lately, I was interested in Ruwans' talk. He used PostGresql with PostGraphile to create a Database-as-a-service GraphQL endpoint (database-first-design).

Additionally he explained the common N+1 problem clearly and how to prevent that the amount of data has a direct relation with amount of queries.

Nice talk!

 

Elad Shechter - Playing Games with CSS

Elad Shechter showed an amazing project 'Coronavirus Invaders'. He developed a game without any Javascript. To avoid repetitive work he use PUG for generating HTML structures and SASS as the pre-processor for CSS. He demonstrated how he handled technical challenges around random animations, counters and score keeping with CSS. Really impressive work!!

 
 
PWA Fundamentals is websites with superpowers

Rowdy Rabouw talked about PWA: Progressive Web Apps. He showed the importance and benefits of turning your website or web app into a PWA and gave you practical information on how to do that. He shared best practices for Manifest Files, Service Workers, Cache API, Fetch API, IndexDB, Web Push Notifications or Background Sync API.

Lastly, he also pointed out that you can also have a look at the Workbox framework created by Google.

Talk and slidedeck was wellstructured and easy to follow. Rowdy's Github contains the demo project

 

Tamas Piros - Jamstack and Web Performance is a match made in heaven

Tamas Piros talk was about JAMstack (abbrevation = Javascript API Markup). He explained how websites became bigger in size overtime. Performance of sites is important for customers, website owners and also for SEO.

JAMstack can help bringing content closer to the user for better performance, since you then place content directly on the CDN edge server as static HTML content. Static Site generators to help you with that are in all kind of flavours: Gatsby/Next.JS using React, Nuxt.js/VuePress/Gridsome using Vue framework, Scully using Angular or just vanilla Javascript framework: 11ty.

Using CDN as your primary server also has additional benefits you get out of the box: Compression, Load balancing, HTTP2/3, Caching, Asset optimizations (resizing and fonts), Build optimizations (minifications and bundling) and Delivery optimizations (preloading and lazy loading)


These are just 5 sessions I wanted to highlight, but there were many more interesting talks. It was a great conference, well organized. I liked the accompanying app and the chats to make the most out of this remote online event. I can highly recommend it for next year!

SDL Connect 2018

Last week SDL opened the doors of the 2-day SDL Connect conference in Santa Clara, CA. In 2017 they brought back Tridion and included Knowledge Center as Docs in Tridion DX suite. This year they followed suit, by launching new Tridion Sites 9 and new language solutions based on linguistic artificial intelligence (AI) and machine learning (ML). SDL is foreseeing 5 disruptions related to content where AI will play a big differentiating factor:

  • Content will create itself
  • Content will be agile
  • Content will organize itself
  • Content will be secure
  • Content will be your best salesperson

Besides all the announcements it was good to see customers like IKEA, NetApp and Philips on stage explaining their challenges and how SDL helped resolve them. New this year was the SDL Innovation Center where experts answered questions and showed demos of the new SDL products during networking breaks. 

There were a lot of interesting sessions and too much to cover. So, let me show you my favorite topics of SDL Connect 2018.

SDL Tridion Sites 9

The biggest announcement during SDL Connect 2018 was the new version of their flagship product: SDL Tridion Sites 9. This enterprise content management system is part of a bigger suite: Tridion DX. Overview of the newest features is described below.

Enhanced customer experiences:

  • API‑first approach to delivering content across your ecosystem of mobile and digital channels
  • Headless content delivery services enabling server-less based solutions 
  • Dynamic content mashups (marketing and product information) with shared taxonomies
  • Experience optimization for greater personalized relevance

Assisting content management operations:

  • Regions for easy management of content‑rich web pages
  • Quick and easy image editing (cutting and cropping)

Newest technology features:

  • GraphQL-based content service
  • Docker container support for flexible deployment
  • Alibaba Cloud support for websites in China (solves ICP filing/licensing issues)
  • Staged and rolling scenarios for smoother upgrades in the future with zero downtime for users. 
  • SAML 2.0 support for single sign‑on

You can read more about SDL Tridion Sites here: https://docs.sdl.com/

Global Content Operating Model

The researchers from Forrester recognizes the trend that the GCOM becomes more and more important. The customer journey in the past was often marketing driven and only touching the first few touchpoints. Companies recognize that product information has a great impact on customer experience and loyalty. To be able to provide the right content in the right context companies need a well-organized content supply chain. This research shows that SDL is on the right track combining marketing (Sites) and product information (Docs) in the Tridion DX suite. Another trend is the growing amount of content required for the (translated) omnichannel experience. Translations have always been the core-business for SDL, but they are now showing that AI and ML technology can and should be used to lower the cost and time to market.

Download the free Forrester report from http://SDL.com/forrester2018

SDL Machine Translation

Another announcement was related to their translation solutions. SDL has the world's first secure Natural Machine Translation (NMT) solution that is available across on-premises and cloud boundaries. For companies that have content that should be in a self-controlled environment can opt for a fully on-premise version. An interesting feature is a hybrid solution. In the scenarios when on-premise translation capacity is reaching limits (incidental bulk operations), you can send packages to the cloud for translation. Companies that want full flexibility and scalability can use the cloud version.

SDL Content Assistant

SDL has strong AI expertise in NMT which up till now has been used for speeding up translation processes, better quality and lower costs. During SDL Connect they announced a brand new product: SDL Content Assistant. This stand-alone application can assist Editors with AI enabled generated content. Its strong points are creating high-quality content with multiple variants in the right context. CA will be introduced slowly by a closed beta program, but it is exciting to see where SDL is headed.

Apply for the beta program here: https://www.sdl.com/contact/content-assistant.html

SDL West Coast user group

It was great to participate in the user group session, hosted by Joseph Yu from Wells Fargo. A lot of great discussions about what 'headless' really means and how that works in the real world. Also a great presentation about Content as a Service (CaaS) and how much different it is than Dutch cheese (KaaS) by John Winter. Niclas Cedermalm showed his big plans on the connectors and was taking notes on some valuable feedback.

It was a great conference. Thanks to SDL for having us and thanks to EPAM for allowing me to visit it.

Tridion Sites 9 - Content API with GraphQL

SDL announced with upcoming Tridion Sites 9 that they also release a new version of their Unified Delivery Platform (UDP) and Content API with GraphQL. The most promising feature of it will be a completely new public-facing Content API. This API is the new endpoint for content delivery for Sites and Docs and help customers enabling more dynamic and cleaner solutions for their channels.

Unified Delivery Platform update

SDL marketing is trying to rename their technology all the time. We have seen it with Tridion to Web to Tridion. And now what once was Content Delivery (CD) was renamed to UDP and now the introduced a new term: Dynamic Experience Delivery (DED). I will keep UDP for now in this article. :-)

Before we dive into Content API, a short highlight of the other key features of UDP 11:

  • Multiple namespace support. Now one for Sites and one for Docs. This can be extended to more areas in the future.
  • Content mashups possible. Mix content from Sites and from Docs in a single web application.
  • Full-text search supported with Elastic Search technology. Index and Query support is expected with Sites 9.1
  • Docker support. Making cloud orchestration for the microservices easier (scaling and failover scenarios).
  • Content API

Content API

The new content API uses GraphQL which has roots in Facebook technology stack. GraphQL has several benefits compared to other query languages:

  • Single endpoint without versioning required
  • Efficient querying: specify the information you need and get data in one single-trip request
  • Stability: changing data doesn't require changing clients
  • Documentation: simple understandable Graph schema with self-documented feature
  • Support: large community resulting in a large number of GraphQL client tools

Since GraphQL can be consumed by a lot of other platforms it is likely that it will replace the OData web services at some point in time.

Example GraphQL query for the Content API

When installing the Content API the default endpoint will be something like https://YOURSERVER/udp/content. Note that there is also another endpoint for developers without caching. One requirement is that the content is published as DXA (DD4T) rendered JSON. So if you have this in your broker database, no republish actions are required at all and you're good to go.

In the GraphQL example below, we request 3 properties of a published page by URL.

{
  myPageByUrl: page(namespaceId: 1, publicationId: 5, url: "/index.html") {
	url, 
	itemId,
	title
  }
}

myPageByUrl is the container where the query result can be found in the response. The namespaceId corresponds with Tridion Sites and the publicationId and url is the rest of the actual search query. In the inner query we declare 3 properties what we want to receive in the response: url, itemId and title.

A possible response from the Content API could be:

{
	"data": {
		"myPageByUrl": {
			"url": "/index.html",
			"itemId": 123,
			"title" : "000 Home"
		}
	}
}

More complex GraphQL queries

The given example is fairly straightforward and simple. More complex and useful queries can be made as well. To give you an impression of the almost endless possibilities:

  • Get the binary component by ID and by URL 
  • Get contained ComponentPresentation's by page ID and by URL
  • Get items as paginated results
  • Get first X publications
  • Get category and its children keywords
  • Query for component presentations based on taxonomy
  • Get keywords and structure groups related to the page, find parents and expand children
  • Mashup queries (retrieving content from Sites and Docs namespaces in single request)
  • Get items based on query with custom metadata

Probably during Tridion Developer Summit there will be presentations about the Content API with rich GraphQL demos. TDS is hosted in Amsterdam on 6th and 7th september. It is still possible to register and maybe see you there!