CoreMedia Technology Radar

Transcription

CoreMedia Technology Radar
BUSINESS SOLUTIONS
TECHNOLOGY
RADAR GUIDE: CDN CHALLENGE
www.coremedia.com
CoreMedia Technology Radar
Emerging technologies and trends that affect the market today.
March 2014
The CoreMedia Technology Radar communicates CoreMedia’s position on established as well as
upcoming technologies and techniques for CoreMedia products and projects. The purpose of this
document is to assist our customers and partners with staying informed on the continuous rise
and fall of technologies and techniques.
TECHNOLOGY RADAR
Table of Contents
CoreMedia Technology Radar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Development Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
UI & Web Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Deployment & Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
About the Authors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
i
CoreMedia Technology Radar
Emerging technologies and trends that affect the market today
The CoreMedia Technology Radar communicates CoreMedia’s position on established as
well as upcoming technologies and techniques for CoreMedia products and projects. The
purpose of this document is to support our customers and partners in their task to stay
informed about the continuous rise and fall of technologies and techniques.
The Technology Radar is divided into the following sections:
JJDevelopment Tools are used to create, debug, and maintain applications within the
CoreMedia ecosystem. Because we build our software on open standards and with the
help of well-known and established technologies, developers with experience in J2EE
and Open Source will feel right at home.
JJUI & Web Technologies play a very important role for us. Our main editorial front
end — the CoreMedia Studio — is based on web technologies and so are our customers’
main distribution channels. Regardless if they are building web sites, are delivering
content to native mobile apps or are integrating with other 3rd party systems. That’s
why you will find all of the technologies that are key to our products in the essential
section. Of course, there are other technologies and techniques that are highly relevant
to our customers and us right now. We further observe that the world around the web is
quickly changing towards a more mobile and contextualized experience for consumers.
JJIntegration with other systems, such as existing IT infrastructure, additional 3rd party
content sources or delivery end points, is an important feature of our product. The
technologies and techniques that are highlighted in this section enable us to support
the widest range of integration scenarios that we know our customers require. And they
give the flexibility to support the yet unknown.
JJDeployment & Operations are key to the success of a CoreMedia installation. While we
deliver out-of-the-box deployment scenarios that cover most common scenarios, the
deployment can be easily be configured and customized to fit even the most specialized
requirements. Storage and search technologies have a strong influence on solution
architectures and deployment. It is therefore important to understand requirements
and the impact that a decision for or against a chosen technology has.
1
TECHNOLOGY RADAR
2
3
TECHNOLOGY RADAR
Within each section of the Radar we differentiate between the following levels of
importance illustrated by rings:
ESSENTIAL
A technology has been adopted by the majority of CoreMedia’s
products and projects.
RELEVANT
A technology is valuable for selected scenarios that incorporate
CoreMedia’s products and projects.
INTERESTING
A technology is worth exploring with the goal of understanding
how it will affect CoreMedia’s products and projects.
OUT-OF-SCOPE
A technology in the general domain of CoreMedia but out-of-scope
due to reasons stated at the relevant item.
Please note that the position of a technology within a ring is chosen arbitrarily. It does not
indicate its relative importance compared to other technologies.
In the following pages, we dive into each section, providing details on CoreMedia’s position.
In most cases we focus on a particular technology that has already been adopted by either
CoreMedia or proven well in customer projects, while in cases where no single technology
has set itself apart we address general concepts.
4
Development Tools
ESSENTIAL
Apache Maven [1] is the de-facto standard build and artifact distribution system in the
Java ecosystem. Its strengths include a clear set of conventions and a standard build phase
model, leading to standardized project structures and lower cost of developer on-boarding
or switching between projects. Maven has an extensible plug-in architecture, a large active
community, and is well supported by free and commercial software development tools.
Continuous Integration [2] (CI) is an essential software development practice, combining
automated build verification and frequent integration of all code changes made within a
team to produce high-quality software with short release cycles.
RELEVANT
IntelliJ IDEA [3] is the Java IDE of our choice.
Git [4] iis a distributed version control system (DVCS), supporting many different types
of workflows. Development in teams is inherently distributed and any DVCS is superior to
centralized approaches. Git is used for all development projects within CoreMedia.
Eclipse [5] is the leading Java IDE in terms of market share and a free alternative to IDEA.
Browser based testing [6] is an important building block of QA automation. Tools like
Selenium have enabled automated testing through the browser but these tools should be
introduced with care. Most teams have observed that browser based testing can create slow
and fragile test suites.
5
TECHNOLOGY RADAR
Load and stress testing [7] should be performed to verify that the system will operate as
expected under normal and expected peak conditions before changes are deployed into
the production environment. Additionally, through stress testing, the boundaries of the
system and the symptoms of it failing will be made visible. Automating these types of tests
becomes more important with the topic of Continuous Delivery.
INTERESTING
Desktop virtualization solutions like Vagrant [8] aim to remove the difference between
development, test, and production deployments. Vagrant allows developers to quickly
create reproducible, production-like, and virtualized software deployments on their development machine. At CoreMedia, we use and recommend Vagrant to quickly create complex
test infrastructure during development, and to create reproducible reference deployments
as part of continuous delivery pipelines.
Today, Integrated Development Environments (IDEs) are still classic desktop applications.
With code repositories, build- and test-tools and execution environments moving into the
cloud, it seems only natural to also put the IDE in the Cloud [9] and provide a browserbased interface. Especially for Web development, we expect solutions like Codeenvy, Codio,
or Cloud9 IDE to become competitive in the midterm. Groovy[10] is a JVM-based dynamic
scripting language with a Java-like syntax. It is well suited for building DSLs as applied in
Gradle build definitions and the Spring Framework Bean Definition Builder. CoreMedia
currently uses Groovy for CI configuration and release automation.
When dealing with Infrastructure as Code, Packer[11] is a tool that can be used to create
machine images for multiple platforms from a single source configuration. CoreMedia uses
Packer to create development infrastructure like Vagrant base boxes and AWS as well as
VMWare images.
While Apache Maven is the standard build system for Java projects, several JavaScript Build
Tools [12] have to be combined to achieve a superior front end developer experience.
Currently, Grunt is the build automation tool of choice, and Bower is typically used for
dependency management.
OUT-OF-SCOPE
Apache Ant and Gradle are build automation tools. Apache Ant had been widely adopted
but lacks abstractions like dependency management and declarative build descriptions.
Gradle offers more flexibility than Apache Maven and is gaining adoption, but does not
sufficiently promote declarative build descriptions and misses essential plugins. Currently,
potential benefits do not justify costs of migrating internal or customer projects to Gradle.
Subversion is a centralized version control system (VCS) that has gained wide adoption
because it’s easy to understand and free of charge. However, CoreMedia observes a significant increase in productivity since using Git in all development projects.
6
UI & Web Technologies
ESSENTIAL
JavaScript [13] is a key technology used in CoreMedia Studio and CoreMedia Blueprint.
For the Web, you have to target JavaScript. To overcome its limitations, there are several
enterprise-ready languages that compile to JavaScript. We chose ActionScript 3 and
developed the Jangaroo [14] tools to compile ActionScript to JavaScript, since ActionScript
delivers all language features and tools needed for enterprise development, it is still very
similar to JavaScript, and provides enterprise features and tools similar to Java.
Sencha Ext JS [15] is one of the key technologies used in CoreMedia Studio. Since Sencha
announced to enable Ext JS for touch devices, we are dropping the mobile-only Sencha
Touch from the Technology Radar.
jQuery [16] is the de-facto standard JavaScript library used on many dynamic websites.
jQuery Mobile may be added for specific use-cases as part of an implementation project.
The Responsive Web Design [17] (RWD) approach allows for creating a better viewing
experience for users with all sorts of modern devices, including desktop browsers, tablets
and smartphones. With the rising penetration of feature-rich mobile devices, Responsive
Web Design should be the default design for any new website implementation as it supports
more users from the outset while reducing the web development effort.
7
TECHNOLOGY RADAR
HTML5 [18] is usually used as an umbrella term for several web technologies such as the
latest versions of HTML, CSS, and JavaScript. These are the technologies that the future
web is built upon. They target at making browser plugins like FlashPlayer obsolete and
replace native applications where possible. Even in its current, non-final state, some HTML5
solutions are to be preferred over HTML4. For example, HTML5 offline storage should be
used instead of cookies to store client-side data in the browser.
User Experience Design [19] is an essential but often neglected aspect of the software
development lifecycle. Focusing on the user’s goals increases the acceptance of the user
interface which is even more important when implementing editorial user interfaces such
as CoreMedia Studio. One technique that will become more important in complex user
interfaces is called Progressive Disclosure which aims for improving usability by presenting
only a minimum of information for the current task and offer more functionality on demand.
FreeMarker [20] is a template rendering engine supported in CoreMedia CMS as an alternative to JSP templates. Compared to JSP, FreeMarker has several advantages, in particular
with regards to dynamic template deployments.
RELEVANT
Mobile devices and in particular Touch devices [21] are becoming more and more popular.
Not only will more people use mobile devices to access our customer’s web properties, but
also will users of our CMS use mobile phones or tablets to interact with content and support
editorial processes. Different access patterns, bandwidth requirements, and device capabilities need to be addressed by the user interface in this regard. Touch user interfaces and
desktop user interfaces will converge in the long term.
We observe stagnation in the LESS project and believe that SASS [22] has established itself
as a grammar extension to parameterize and generalize CSS. Ext JS 4 component styling is
based on SASS.
INTERESTING
Hybrid App Frameworks [20] are a necessity today when developing rich applications
using HTML5 to target mobile devices. Web technologies work cross-platform and thus
allow us to reuse client code, but do not yet provide access to certain functions of a device
such as camera or gyroscope. Hybrid app frameworks narrow this gap to native apps.
MXML [24] is Apache Flex’ declarative UI language. Although we consider that Flex on
Flash is no longer state of the art since Flash support is fading away, MXML is independent
of Flash-based Flex components and is a good fit to be used with Jangaroo. Using a
wide-spread declarative UI language instead of CoreMedia’s EXML dialect allows taking
advantage of available skills, documentation and even more support from tools originally
built for Flex, especially more IDEs, and in the long term maybe even Apache Flex itself.
As an alternative to Edge Side Includes (ESI), Client Side Assembly [25] moves the final
assembly of pages to the client. This approach allows for combining static pages cached by
CDNs with dynamic content, and making use of the client’s local processing power. Another
aspect of Client Side Assembly is Client Side Templating supporting even more complex
functionalities for ingesting dynamic content into pages.
8
As of late, JavaScript has become one of the most popular programming languages, and
many new JavaScript programming paradigms, frameworks and tools have appeared. For
asynchronous programming, JavaScript rediscovered Promises (e.g. implemented in jQuery
and “Q”). Client-side errors are captured and analyzed on the server. Several frameworks
(AngularJS, Knockout, Backbone, EmberJS, etc.) implement various styles of client-side
Model-View-* Architectures [26]. A common module format that can be used on client
and server, Asynchronous Module Definition [27] (AMD), is implemented by RequireJS.
Other high level languages (TypeScript, Dart, HaXe) are compiled to JavaScript. CoreMedia
evaluates the impact of these topics on our technology stack and APIs, and by creating
Jangaroo (see above) is a thought leader of the last one.
OUT-OF-SCOPE
In 2009 CoreMedia made the path-breaking decision to create our new editorial UI using
Web technologies. Since the advances in browser technology, customers benefit from the
rich, cross platform, ubiquitous and zero install CoreMedia Studio. To achieve a rich and
responsive UI, we chose to implement a fat client. These decisions led to several established
UI technologies being out-of-scope for CoreMedia:
JJVaadin is a rich, but not fat client technology, since some of the UI logic is executed
on the server. While simplifying the programming model for Java developers, it limits
advanced user interactions like drag-and-drop that become less responsive or less
informative.
JJGoogle Web Toolkit (GWT) translates Java to JavaScript and appears to be the perfect
choice for Java developers who have to create JavaScript code. However, GWT cannot
easily be combined with the usual JavaScript ecosystem, its generated code is extensive
and hard to debug and the project seems to have lost momentum as Google focusses
on Dart.
JJOnly recently, JavaFX has arrived as a viable successor of Java Swing and received a lot
of positive feedback. It does neither target mobile devices nor align with our decision
for web technologies.
9
TECHNOLOGY RADAR
Integration
ESSENTIAL
Java [28] is a general purpose, platform independent, object-oriented language and a
robust and matured platform for enterprise applications. Java is the platform for CoreMedia
products. CoreMedia provides Java APIs for customizations.
Content Syndication [29] is a concept for aggregating and distributing content for internal
and external customers across touch points, channels, formats, and organizations. Achieving
this in a timely and accurate manner whilst at the same time being able to manage and
monitor syndications is a vital part of the whole content syndication strategy. In particular
syndication is a source for feeding content into external search engines or catalogs.
Spring [30] is a widely used and extensive application framework for the Java platform. It
is used in all CoreMedia products to simplify configuration and to offer flexible extension
points.
XML [31] is well established to create, manage and exchange data in a format that is both
human and machine readable. It is also used for domain-specific languages (DSL), e.g. application configuration or declarative user interface definition.
Single Sign-On [32] (SSO) allows for authenticating a user across different applications
and promises to facilitate the instant-on pattern users have gotten used to from the mobile
application world. Each automatic authentication through SSO is a step towards better
usability.
10
Representational State Transfer (REST [33]) has emerged as a predominant design pattern
for light weight web services. It allows building scalable applications leveraging existing
web infrastructure such as proxies and load-balancers.
JavaScript Object Notation (JSON [34]) is a simple, structured, text-based data format. Due
to its compact representation it is used as a storage and data transfer format.
An Analytics Integration [35] is important to understand web usage and optimize web
properties. It is a tool for business and marketing research, as well as to assess and improve
the effectiveness of a website. CoreMedia CMS comes with connectors for several web
analytics providers that support the full optimization feedback loop.
Content Driven Commerce [36] addresses all phases of the customer journey by
combining the strengths of Web Content Management and e-Commerce Applications
to improve the buyer’s shopping experience and increase conversion rates. CoreMedia
LiveContext blends content and commerce with integrations for IBM WebSphere Commerce
and SAP WCEM.
RELEVANT
Online Identity Integration [37] allows web site visitors to use an existing online identity
for authentication. Open specifications exist that define protocols for cross application
authentication. For example, OAuth can be used to allow visitors to identify themselves with
an existing online identity. It is supported by social networks such as Twitter and Facebook.
Websockets [38] is a HTML5-based, bidirectional message exchange protocol for real time
web applications significantly enhancing the user experience.
Application Servers [39] can be found in enterprises as deployment environment for Java
applications. Most notable are Apache Tomcat on the open source side and IBM WebSphere
Application Server on the commercial side.
Asset Management Systems [40] (MAM, DAM) are used to centrally manage all digital
assets of an organization particularly images and videos. Main functionalities include transcoding, archiving and rights management.
Content Integration [41] from external systems like commerce systems, product information systems, print publishing systems etc. is a common challenge in large organizations.
The typical use cases comprise of enriching a web site with content from the aforementioned systems as well as some kind of process integration. Technically, it is particularly
important to avoid data redundancy and heavy backend synchronization processes whilst
having a dynamic, on-demand driven integration for both the editorial work flow and the
end user presentation.
A CMS should integrate well with Translation Services [42] to ease the process of translating content into different languages. This process often involves a workflow with structured data exchange to manage content that requires translation and to track translation
status across platforms and services. Translation Services are particularly beneficial for large
organizations with worldwide brand, marketing or shopping presences.
11
TECHNOLOGY RADAR
INTERESTING
Non-blocking HTTP Servers [43] are scalable, lightweight and efficient, and are therefore
perfect for data-intensive event-push applications that run across distributed devices. We
are currently observing a market trend towards this technology.
OData [44] is an open web protocol for querying and updating data. The protocol allows
consumers to query a data source over HTTP and receive results in formats like Atom, JSON
or plain XML, including pagination, ordering or filtering of the data. OData is an emerging
protocol that can be used for a variety of data integration use cases.
Edge Side Includes [45] (ESI) allow for late assembly of web fragments on the edge servers
of CDN providers. The combination of CoreMedia, ESI and CDN provides a flexible way to
mix static and contextualized content.
Marketing Automation Tools [46] provide capabilities for marketing departments to
manage, execute and follow up on campaigns targeting specific customer segments.
This includes integration with CRM systems and comprises of services like newsletter
management, cross platform campaigning and Multi Variate Testing [47].
With the announcement of iBeacon, Apple has drawn new attention to In-store Location
Tracking and Targeting [48]. Retailers are not only challenged to implement this
technology but also to effectively manage location-based mobile marketing campaigns. This
also includes presenting contextualized content to shoppers and thus reinforces the need
for a tight integration of content and commerce as offered by CoreMedia LiveContext.
OUT-OF-SCOPE
12
Portal Servers integrate applications and content in enterprises for a unified user
experience. And although CoreMedia has a long history in supporting various integration
scenarios, we observe stagnation in demand and need of portal server integrations.
Deployment & Operations
ESSENTIAL
Deployment Automation [49] enables reproducible, flexible and fast setup of infrastructure reducing total cost of ownership (TCO). It is a prerequisite for Cloud Computing
and Continuous Delivery.
Virtualization [50] enables hardware infrastructure sharing for better utilization of
resources reducing TCO. It is widely used among CoreMedia’s customers and is a prerequisite for Cloud Computing.
Elasticity [51] allows unlimited scalability with minimum resource usage. CoreMedia
implemented this concept in its social software in a first instance. With Elasticity build into
the core of the software, customers will be able to handle unanticipated load caused for
example by sudden attention around promotional campaigns or massive influx of users.
Continuous Delivery [52] reduces time to market of development increments and enables
a fast feedback loop.
Apache Solr [53] is a lightweight and wide spread enterprise search engine. It is highly
extensible and has been customized to cover all of our editorial content search use cases.
Apache Solr Cloud is an extension for Apache Solr that enables horizontal scalability and
high availability. It is part of Solr 4 and is available as a deployment option.
RDBMS [54] is the dominant database technology and used for consistent storage of
content in CoreMedia CMS. Recently, IBM, Oracle and PostgreSQL added native JSON
support to their database products, which might indicate a trend comparable to the addition
of native XML support at the beginning of the millennium.
13
TECHNOLOGY RADAR
MongoDB [55] is a fast, horizontally scalable and highly available NoSQL database which
offers simple setup and operation. It’s document-oriented and schema-less data model
allows for more flexible CMS content models. Today it is used for storage of user generated
content in the CoreMedia CMS.
Elastic Search [56] is a fast, horizontally scalable and highly available analytics and search
engine which offers a simple setup and operation. Its document-oriented and schema-less
data model allows for more flexible CMS content models. Today it is used for indexing of
user generated content and user profiles in the CoreMedia CMS.
RELEVANT
The foundation of Cloud Computing [57] is a broader concept of converged infrastructure
and shared services. Customers are increasingly adopting sharing of resources to achieve
economies of scale. Software architectures must be designed to take full advantage of Cloud
Computing. CoreMedia is streamlining its products accordingly.
Content Delivery Networks [58] (CDN) offer to outsource web delivery infrastructure by
moving static data closer to end users thus reducing load on the origin servers.
Web Accelerators [59] like Varnish enable routing of web traffic on the HTTP layer and
enable caching of static data to reduce load on backend systems, replacing classic reverse
proxies like Apache HTTPD.
Amazon Web Services [60] is the leading provider for public and virtual private cloud
services.
Opscode Chef [61] offers prefabricated building blocks for Deployment Automation. A
large community around Chef has emerged and maintains integrations for many third party
components. At CoreMedia we use Chef extensively and also provide tools for establishing
a fully automated deployment process. It offers better abstractions and cross platform
capabilities than Native Application Packaging methods like RPM and APT. Currently, Chef
seems to have more momentum than its alternative Puppet.
Private Cloud Automation [62] software, like OpenStack, OpenNebula and Apache
CloudStack, allows organizations to implement an internal, programmable Infrastructureas-a-Service (IaaS) on top of their own virtualization infrastructure. When the managed
infrastructure is sufficiently large, turning virtualized hardware into IaaS reduces costs and
standardizes operations across public, private, and hybrid clouds. CoreMedia leverages
Private Cloud Automation to implement its Continuous Integration and Continuous Delivery
practices.
Monitoring [63] is key to gather current performance metrics and overall operational status
of a system. With an increasing demand for automation in operating large and distributed
systems comes the need for a proper monitoring integrated into the software.
14
INTERESTING
Infrastructure as a Service [64] (IaaS) providers offer virtualized computing, storage,
and networking infrastructure as a pay-per-use service with on-demand provisioning of
additional resources. Using such services frees application providers from provisioning
and maintaining physical infrastructure, and reduces their time to add new resources,
and allows them to turn high upfront capital expenses into usage dependent operating
expenses. Notable IaaS providers include Windows Azure and Rackspace.
Platform-as-a-Services [65] (PaaS) automate all the tasks to provision, configure, maintain,
and scale hardware and software structure necessary to run an application.
Zabbix [66] is an integrated, mature open source solution for monitoring, alerting and
graphing, covering the whole range from operating system through infrastructure software
to Java application JMX attributes. It meshes well with a DevOps approach through its
templating and auto discovery features as well as its REST API. It is extensible without
requiring custom implementation, and does not suffer from forking due to its companybacked enterprise grade development model.
Apache Hadoop [67] is the open source big data platform, which created an ecosystem
for strategic big data analysis in large corporations. Hadoop related projects like HBase and
ZooKeeper may become relevant for future CMS use cases.
SAP HANA database technology [68] promises real time analytical data processing
functionalities to gain instant business insights which in turn help creating better digital
experiences. This is particularly true for e-Commerce applications where the increasing
amount of valuable customer data helps to seize new opportunities.
Docker [69] is a platform to create, run and manage machine images based on Linux
Lightweight Containers (LXC). In combination, they significantly reduce operating system
overhead by encapsulating only one application per container and by providing a repository
based approach to manage images. Docker has recently gained a lot of attention and
notable community support.
15
TECHNOLOGY RADAR
About the Authors
Malte Franken works as Product Manager at CoreMedia. He has a background in Technical
Consulting, where he has accomplished countless implementation projects with customers
including Deutsche Telekom, MLP, Turkcell, SoftBank and the Australian Broadcasting
Corporation (ABC). Malte holds a diploma in Computer Science, a diploma in Management
of Software Projects and looks back on more than 10 years of experience in Content
Management.
Björn Gaworski has more than eight years of experience in the content management
industry and began his career at CoreMedia as a Support Engineer. As a Technical Consultant
he then worked with customers including the Australian Broadcasting Corporation (ABC),
Deutsche Telekom, and Singapore Press Holdings. In his current role as Solution Specialist
E-Commerce, Björn is shaping and implementing CoreMedia’s E-Commerce integration
products.
Christian Pesch works as Product Manager at CoreMedia and has a background in Software
Development and Project Management, where he has been responsible for Editor, Workflow,
Unified API, Mobile TV, Elastic Social, various Portal Server integrations and research
projects. Christian holds a diploma in Computer Science, a SCRUM certification and looks
back on more than 15 years of experience in Content Management.
Felix Simmendinger is a Senior Software Engineer at CoreMedia. He has specialized
on build, release and deployment automation with more than 6 years of experience.
He is responsible for the Maven project workspaces since CoreMedia V and shapes
the configuration management aspects of CoreMedia systems. Felix holds a diploma
in Computer Science.
Daniel Spilker is working as a Software Architect at CoreMedia with more than 10 years
of experience in Content Management and Digital Rights Management systems. As an
architect, he has been working on the Digital Rights Management Platform, the WebTV
software as a service offering and Elastic Social. Currently he is working on deployment
automation and continuous delivery aspects of the CoreMedia Content Management
System. Daniel holds a diploma in Software Engineering.
Frank Wienberg holds a Ph.D. in Computer Science and is a Software Architect at
CoreMedia. He has been working and researching on Web-based rich UIs since their early
days and has predominantly influenced the architecture of CoreMedia Studio, Starter Kit,
and WebEditor. Frank is also dedicated to CoreMedia’s open source project Jangaroo.
16
References
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
http://maven.apache.org/
http://martinfowler.com/articles/continuousIntegration.html
http://www.jetbrains.com/idea/
http://git-scm.com/
http://www.eclipse.org/
http://docs.seleniumhq.org/
http://en.wikipedia.org/wiki/Stress_testing, http://en.wikipedia.org/wiki/Load_testing
http://vagrantup.com/
http://www.hongkiat.com/blog/cloud-ide-developers/
http://groovy.codehaus.org/
http://www.packer.io/
http://gruntjs.com/, http://bower.io/
[13]
[14]
[15]
[16]
[17]
[18]
[19]
[20]
[22]
[24]
[27]
http://en.wikipedia.org/wiki/Javascript
http://en.wikipedia.org/wiki/ActionScript#ActionScript_3.0, http://www.jangaroo.net/
http://www.sencha.com/products/extjs/, http://www.sencha.com/blog/ext-js-on-tap/
http://jquery.com/
http://en.wikipedia.org/wiki/Responsive_web_design
http://en.wikipedia.org/wiki/HTML5
http://en.wikipedia.org/wiki/User_experience_design
http://freemarker.sourceforge.net/
http://sass-lang.com/
http://en.wikipedia.org/wiki/MXML
http://en.wikipedia.org/wiki/Asynchronous_module_definition
[28]
[30]
[31]
[32]
[33]
[34]
[35]
[38]
[39]
[40]
[44]
[45]
[47]
[48]
http://en.wikipedia.org/wiki/Java_(programming_language)
http://www.springsource.org/spring-framework
http://en.wikipedia.org/wiki/XML
http://en.wikipedia.org/wiki/Single_sign-on
http://en.wikipedia.org/wiki/REST
http://en.wikipedia.org/wiki/JSON
http://en.wikipedia.org/wiki/Web_analytics
http://en.wikipedia.org/wiki/WebSockets
http://en.wikipedia.org/wiki/Enterprise_application_server
http://en.wikipedia.org/wiki/Digital_asset_management
http://en.wikipedia.org/wiki/Odata
http://en.wikipedia.org/wiki/Edge_Side_Includes
http://en.wikipedia.org/wiki/Multi_variate_testing
http://en.wikipedia.org/wiki/IBeacon
[50]
[52]
[53]
[54]
[55]
[56]
[57]
[58]
[59]
[60]
[61]
[64]
[65]
[66]
[67]
[68]
[69]
http://en.wikipedia.org/wiki/Virtualization
http://en.wikipedia.org/wiki/Continuous_delivery
http://lucene.apache.org/solr/
http://en.wikipedia.org/wiki/Relational_database_management_system
http://www.mongodb.org/
http://www.elasticsearch.org/
http://en.wikipedia.org/wiki/Cloud_computing
http://en.wikipedia.org/wiki/Content_delivery_network
http://en.wikipedia.org/wiki/Web_accelerator
http://aws.amazon.com/
http://www.opscode.com/chef/
http://en.wikipedia.org/wiki/Infrastructure_as_a_service#Infrastructure_as_a_service_.28IaaS.29
http://en.wikipedia.org/wiki/Platform_as_a_service
http://www.zabbix.com/
http://hadoop.apache.org/
http://www.saphana.com/
http://www.docker.io/
17
TECHNOLOGY RADAR
Germany, Switzerland, Austria
CoreMedia AG
Ludwig-Erhard-Straße 18
20459 Hamburg
Germany
Tel + 49 .40.32 55 87 .0
The Americas
CoreMedia Corporation
118 Second Street, 5th Floor
San Francisco CA 94105
USA
Tel + 1 .415 .371 .0400
CoreMedia Corporation
1001 N. 19th Street, Suite 1200
Arlington VA 22209
USA
Tel + 1 .703 .945 .1079
Europe, Middle East and Africa
CoreMedia Ltd.
90 Long Acre
Covent Garden
London WC2E 9RZ
United Kingdom
Tel + 44 .207 .849 .3317
Asia Pacific
CoreMedia Asia Pacific Pte. Ltd.
25 International Business Park
#0–106 German Centre
Singapore 609916
Tel + 65 .6562 .8866
For more information, please visit our website: www.coremedia.com
Email: [email protected]
Copyright 2014. CoreMedia AG. All rights reserved. CoreMedia is a registered trademark of
CoreMedia AG. All other trademarks are the property of their respective owner. (0314-TR-EN-TRA001)

Similar documents