A Post-Apocalyptic sun.misc.Unsafe World by Christoph engelbertJ On The Beach
The announcement that sun.misc.Unsafe will disappear in Java 9 created a huge buzz in the community and lots of people didnt agree with the idea. While Unsafe have to go away eventually the time in not yet and Oracle finally agreed on that. To replace sun.misc.Unsafe we need a clear set of APIs to achieve the same behavior and performance. VarHandle, Foreign Function Calls, Generic Specialization (Templates) and other proposals try to solve this misery and to replace certain aspects of our beloved class. This talk will introduce the alternatives and explain how and why they will help to replace sun.misc.Unsafe. It uses basic examples to demonstrate what a Post-Apocalyptic Unsafe World will look like.
Set up faster, easier, end-to-end testing with CircleCI and CypressMagnolia Triplett
Learn how to set up Cypress on CircleCI to maximize end-to-end testing efficiency.
Running a complex tool on a continuous integration (CI) server can be a frustrating experience if you run into tricky config errors. Luckily, CircleCI orbs provide a simple way for teams to write their CI config without needing to do all of the heavy lifting.
The team at Cypress has written the official Cypress orb to help users easily test their web apps on every commit without dealing with common configuration mistakes. In this webinar, you will learn how to use the Cypress orb to run end-to-end tests against different environments to help make your team fully confident in your web applications.
Jonathan Corbet - Keynote: The Kernel Reportlinuxlab_conf
A whirlwind tour of what has been happening in the kernel development community and what can be expected in the near future.
The Linux kernel is at the core of any Linux system; the performance and capabilities of the kernel will, in the end, place an upper bound on what the system as a whole can do. This talk will review recent events in the kernel development community, discuss the current state of the kernel and the challenges it faces, and look forward to how the kernel may address those challenges. Attendees of any technical ability should gain a better understanding of how the kernel got to its current state and what can be expected in the near future.
presented at Software Freedom Day, Sun’s Open Source University Meetup (OSUM) at Faculty of Computer Science, University of Indonesia.
Friday, Oktober 16th 2009
A Post-Apocalyptic sun.misc.Unsafe World by Christoph engelbertJ On The Beach
The announcement that sun.misc.Unsafe will disappear in Java 9 created a huge buzz in the community and lots of people didnt agree with the idea. While Unsafe have to go away eventually the time in not yet and Oracle finally agreed on that. To replace sun.misc.Unsafe we need a clear set of APIs to achieve the same behavior and performance. VarHandle, Foreign Function Calls, Generic Specialization (Templates) and other proposals try to solve this misery and to replace certain aspects of our beloved class. This talk will introduce the alternatives and explain how and why they will help to replace sun.misc.Unsafe. It uses basic examples to demonstrate what a Post-Apocalyptic Unsafe World will look like.
Set up faster, easier, end-to-end testing with CircleCI and CypressMagnolia Triplett
Learn how to set up Cypress on CircleCI to maximize end-to-end testing efficiency.
Running a complex tool on a continuous integration (CI) server can be a frustrating experience if you run into tricky config errors. Luckily, CircleCI orbs provide a simple way for teams to write their CI config without needing to do all of the heavy lifting.
The team at Cypress has written the official Cypress orb to help users easily test their web apps on every commit without dealing with common configuration mistakes. In this webinar, you will learn how to use the Cypress orb to run end-to-end tests against different environments to help make your team fully confident in your web applications.
Jonathan Corbet - Keynote: The Kernel Reportlinuxlab_conf
A whirlwind tour of what has been happening in the kernel development community and what can be expected in the near future.
The Linux kernel is at the core of any Linux system; the performance and capabilities of the kernel will, in the end, place an upper bound on what the system as a whole can do. This talk will review recent events in the kernel development community, discuss the current state of the kernel and the challenges it faces, and look forward to how the kernel may address those challenges. Attendees of any technical ability should gain a better understanding of how the kernel got to its current state and what can be expected in the near future.
presented at Software Freedom Day, Sun’s Open Source University Meetup (OSUM) at Faculty of Computer Science, University of Indonesia.
Friday, Oktober 16th 2009
Getting Started with JDK Mission ControlMarcus Hirt
Here are the slides for my talk on how to get started with OpenJDK Mission Control. Most of the talk was spent with demos, so not sure how useful this will be.
Microservices with Terraform, Docker and the Cloud. JavaOne 2017 2017-10-02Derek Ashmore
Much has been written about how to write Microservices, but not enough about how to effectively deploy and manage them. Microservices architecture multiplies the number of deployables IT has to manage by at least 10x. In that world, tooling to manage cloud deployments and related infrastructure becames essential for success. Terraform and Docker are increasingly being leveraged to facilitate microservice environments. Terraform has become becoming the leading coding framework for building and managing change in cloud environments.
Attendees will learn best practices for deploying and managing microservices in production. We will leverage true "infrastructure as code" using Terraform. That code is easily re-used and make changes easy. That code makes it easy to deploy and scale software including Docker images. You will learn not only how to establish that environment initially, but how changes can be effectively managed. I'll cover best practices and common mistakes along the way. AWS will be used as the cloud provider, but Terraform operates seamlessly on other cloud environments as well.
This session is targeted at architects and team leads. This session is intended to be platform-generic.
Microservices with Terraform, Docker and the Cloud. IJug Chicago 2017-06-06Derek Ashmore
Much has been written about how to write Microservices, but not enough about how to effectively deploy and manage them. Microservices architecture multiplies the number of deployables IT has to manage by at least 10x. In that world, tooling to manage cloud deployments and related infrastructure becames essential for success. Terraform and Docker are increasingly being leveraged to facilitate microservice environments. Terraform has become becoming the leading coding framework for building and managing change in cloud environments.
Attendees will learn best practices for deploying and managing microservices in production. We will leverage true "infrastructure as code" using Terraform. That code is easily re-used and make changes easy. That code makes it easy to deploy and scale software including Docker images. You will learn not only how to establish that environment initially, but how changes can be effectively managed. I'll cover best practices and common mistakes along the way. AWS will be used as the cloud provider, but Terraform operates seemlessly on other cloud environments as well.
This session is targeted at architects and team leads. This session is intended to be platform-generic.
Microservices with Terraform, Docker and the Cloud. Chicago Coders Conference...Derek Ashmore
Much has been written about how to write Microservices, but not enough about how to effectively deploy and manage them. Microservices architecture multiplies the number of deployables IT has to manage by at least 10x. In that world, tooling to manage cloud deployments and related infrastructure becames essential for success. Terraform and Docker are increasingly being leveraged to facilitate microservice environments. Terraform has become becoming the leading coding framework for building and managing change in cloud environments.
Attendees will learn best practices for deploying and managing microservices in production. We will leverage true "infrastructure as code" using Terraform. That code is easily re-used and make changes easy. That code makes it easy to deploy and scale software including Docker images. You will learn not only how to establish that environment initially, but how changes can be effectively managed. I'll cover best practices and common mistakes along the way. AWS will be used as the cloud provider, but Terraform operates seemlessly on other cloud environments as well.
This session is targeted at architects and team leads. This session is intended to be platform-generic.
Whether you are a Zowe User, Contribor, Extender or simply interested in what's happening with Zowe - please join us for the launch of the Zowe Quarterly Update Webinar. This is the first in the series of webinars we plan to host each quarter. The webinar will include:
A focus topic / speaker
A brief Zowe update
Upcoming Community Events Overview
Interactive Polls
Join us on this webinar to learn how we are extending the Zowe ZSS (z/OS back-end) to facilitate building in-depth (cross-memory, privileged, system-level) mainframe products with little-to-no assembler code required.
Using XPages out of the box lets you build good looking and well performing applications. However, as XPage applications become bigger and more complex, performance can become an issue and, if it comes to scalability and speed optimization, there are a couple of things to take into consideration. Learn how to use partial refresh and partial execution mode and how to monitor its execution using a JSF LifeCycle monitor to avoid multiple re-calculation of controls. We will show tools that can allow you to profile your code, readily available from OpenNTF, along with a demonstration of how to use them to improve the speed of your code. Still writing SSJS and encounter a significant slow down when using Script Libraries? See, how you can improve the speed of your application using JAVA instead of JS, JSON and even @formulas.
Slides form Config Management Camp, looking at how you can take a collaborative GitFlow approach to Terraform using Remote State, Modules and Dynamically Generated Credentials using Vault
This talk celebrates the Eclipse Modeling universe through a condensed presentation of 15 cool projects - mostly frameworks - to push your EMF usage beyond its limits.
For each project : its scope, an example and feedback from the trenches. It's gonna be fast, you're going to discover new projects, you're going to learn what we built with it and how we feel about it. No less, no more, but 15 times.
You don't know EMF yet ? This talk will give you a clear vision of why you might want to use it.
You already know EMF ? You will discover new components and usages which makes this framework shine.
StorageQuery: federated querying on object stores, powered by Alluxio and PrestoAlluxio, Inc.
Alluxio Global Online Meetup
August 25, 2020
For more Alluxio events: https://www.alluxio.io/events/
Speakers:
Abner Ferreira, Simbiose Ventures
Caio Pavanelli, Simbiose Ventures
Bin Fan, Alluxio
Over the last few years, organizations have worked towards the separation of storage and compute for a number of benefits in the areas of cost, data duplication and data latency. Cloud resolves most of these issues but comes to the expense of needing a way to query data on remote storages. Alluxio and Presto are a powerful combination to address the compute problem, which is part of the strategy used by Simbiose Ventures to create a product called StorageQuery - A platform to query files in cloud storages with SQL.
This talk will focus on:
- How Alluxio fits StorageQuery's tech stack;
- Advantages of using Alluxio as a cache layer and its unified filesystem;
- Development of new under file system for Backblaze B2 and fine-grained code documentation;
- ShannonDB remote storage mode.
The Diabolical Developer's Guide to Surviving Java 9jClarity
The Diabolical Developer presents a pragmatic guide on running and compiling your application on Java 9. There are a lot of new resrtictions due to the Java 9 modular runtime, so make sure you read through carefully before your migration!
Are you a developer? How much time do you waste packaging your extensions, uploading them to your website, creating change logs, creating new releases, making announcements, etc? A lot! Sometimes it can even be a deterrent to new releases because it's so much work. Akeeba to the rescue! Akeeba has some great extensions (all with free versions!!) made for developers by one of the most well known Joomla extension developer. With a little shell script magic (disclaimer; nix/mac based script), Git, Akeeba Subscriptions, Akeeba Release System, and Akeeba Release Maker, I'll show you how you can handle all of the above with a single command.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Getting Started with JDK Mission ControlMarcus Hirt
Here are the slides for my talk on how to get started with OpenJDK Mission Control. Most of the talk was spent with demos, so not sure how useful this will be.
Microservices with Terraform, Docker and the Cloud. JavaOne 2017 2017-10-02Derek Ashmore
Much has been written about how to write Microservices, but not enough about how to effectively deploy and manage them. Microservices architecture multiplies the number of deployables IT has to manage by at least 10x. In that world, tooling to manage cloud deployments and related infrastructure becames essential for success. Terraform and Docker are increasingly being leveraged to facilitate microservice environments. Terraform has become becoming the leading coding framework for building and managing change in cloud environments.
Attendees will learn best practices for deploying and managing microservices in production. We will leverage true "infrastructure as code" using Terraform. That code is easily re-used and make changes easy. That code makes it easy to deploy and scale software including Docker images. You will learn not only how to establish that environment initially, but how changes can be effectively managed. I'll cover best practices and common mistakes along the way. AWS will be used as the cloud provider, but Terraform operates seamlessly on other cloud environments as well.
This session is targeted at architects and team leads. This session is intended to be platform-generic.
Microservices with Terraform, Docker and the Cloud. IJug Chicago 2017-06-06Derek Ashmore
Much has been written about how to write Microservices, but not enough about how to effectively deploy and manage them. Microservices architecture multiplies the number of deployables IT has to manage by at least 10x. In that world, tooling to manage cloud deployments and related infrastructure becames essential for success. Terraform and Docker are increasingly being leveraged to facilitate microservice environments. Terraform has become becoming the leading coding framework for building and managing change in cloud environments.
Attendees will learn best practices for deploying and managing microservices in production. We will leverage true "infrastructure as code" using Terraform. That code is easily re-used and make changes easy. That code makes it easy to deploy and scale software including Docker images. You will learn not only how to establish that environment initially, but how changes can be effectively managed. I'll cover best practices and common mistakes along the way. AWS will be used as the cloud provider, but Terraform operates seemlessly on other cloud environments as well.
This session is targeted at architects and team leads. This session is intended to be platform-generic.
Microservices with Terraform, Docker and the Cloud. Chicago Coders Conference...Derek Ashmore
Much has been written about how to write Microservices, but not enough about how to effectively deploy and manage them. Microservices architecture multiplies the number of deployables IT has to manage by at least 10x. In that world, tooling to manage cloud deployments and related infrastructure becames essential for success. Terraform and Docker are increasingly being leveraged to facilitate microservice environments. Terraform has become becoming the leading coding framework for building and managing change in cloud environments.
Attendees will learn best practices for deploying and managing microservices in production. We will leverage true "infrastructure as code" using Terraform. That code is easily re-used and make changes easy. That code makes it easy to deploy and scale software including Docker images. You will learn not only how to establish that environment initially, but how changes can be effectively managed. I'll cover best practices and common mistakes along the way. AWS will be used as the cloud provider, but Terraform operates seemlessly on other cloud environments as well.
This session is targeted at architects and team leads. This session is intended to be platform-generic.
Whether you are a Zowe User, Contribor, Extender or simply interested in what's happening with Zowe - please join us for the launch of the Zowe Quarterly Update Webinar. This is the first in the series of webinars we plan to host each quarter. The webinar will include:
A focus topic / speaker
A brief Zowe update
Upcoming Community Events Overview
Interactive Polls
Join us on this webinar to learn how we are extending the Zowe ZSS (z/OS back-end) to facilitate building in-depth (cross-memory, privileged, system-level) mainframe products with little-to-no assembler code required.
Using XPages out of the box lets you build good looking and well performing applications. However, as XPage applications become bigger and more complex, performance can become an issue and, if it comes to scalability and speed optimization, there are a couple of things to take into consideration. Learn how to use partial refresh and partial execution mode and how to monitor its execution using a JSF LifeCycle monitor to avoid multiple re-calculation of controls. We will show tools that can allow you to profile your code, readily available from OpenNTF, along with a demonstration of how to use them to improve the speed of your code. Still writing SSJS and encounter a significant slow down when using Script Libraries? See, how you can improve the speed of your application using JAVA instead of JS, JSON and even @formulas.
Slides form Config Management Camp, looking at how you can take a collaborative GitFlow approach to Terraform using Remote State, Modules and Dynamically Generated Credentials using Vault
This talk celebrates the Eclipse Modeling universe through a condensed presentation of 15 cool projects - mostly frameworks - to push your EMF usage beyond its limits.
For each project : its scope, an example and feedback from the trenches. It's gonna be fast, you're going to discover new projects, you're going to learn what we built with it and how we feel about it. No less, no more, but 15 times.
You don't know EMF yet ? This talk will give you a clear vision of why you might want to use it.
You already know EMF ? You will discover new components and usages which makes this framework shine.
StorageQuery: federated querying on object stores, powered by Alluxio and PrestoAlluxio, Inc.
Alluxio Global Online Meetup
August 25, 2020
For more Alluxio events: https://www.alluxio.io/events/
Speakers:
Abner Ferreira, Simbiose Ventures
Caio Pavanelli, Simbiose Ventures
Bin Fan, Alluxio
Over the last few years, organizations have worked towards the separation of storage and compute for a number of benefits in the areas of cost, data duplication and data latency. Cloud resolves most of these issues but comes to the expense of needing a way to query data on remote storages. Alluxio and Presto are a powerful combination to address the compute problem, which is part of the strategy used by Simbiose Ventures to create a product called StorageQuery - A platform to query files in cloud storages with SQL.
This talk will focus on:
- How Alluxio fits StorageQuery's tech stack;
- Advantages of using Alluxio as a cache layer and its unified filesystem;
- Development of new under file system for Backblaze B2 and fine-grained code documentation;
- ShannonDB remote storage mode.
The Diabolical Developer's Guide to Surviving Java 9jClarity
The Diabolical Developer presents a pragmatic guide on running and compiling your application on Java 9. There are a lot of new resrtictions due to the Java 9 modular runtime, so make sure you read through carefully before your migration!
Are you a developer? How much time do you waste packaging your extensions, uploading them to your website, creating change logs, creating new releases, making announcements, etc? A lot! Sometimes it can even be a deterrent to new releases because it's so much work. Akeeba to the rescue! Akeeba has some great extensions (all with free versions!!) made for developers by one of the most well known Joomla extension developer. With a little shell script magic (disclaimer; nix/mac based script), Git, Akeeba Subscriptions, Akeeba Release System, and Akeeba Release Maker, I'll show you how you can handle all of the above with a single command.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Accelerate your Kubernetes clusters with Varnish Caching
Open Source CMS, MDD, TDD: Pros and Cons
1. 17.10.2010 JazzTeam.org Springsite.com Eclipse Foundation
Open Source CMS, MDD, TDD:
Pros and Cons
Eclipse Texo, Seam,
Alfresco, XForms,
Assembla
Real world project highlights
Дмитрий Горячко
независимый J2EE консультант, основатель команды JazzTeam,
Eclipse committer
2. JazzTeam.org Springsite.com Eclipse Foundation2/43
00 Введение
• О чём я расскажу
– Commercial outsourcing + open source
– Коротко об enterprise Java CMSs
– Презентация Texo Eclipse project
– Alfresco introduction and tips
– Open Source customization
– Project highlights
• Постараюсь, чтобы рассказ был не
сухим и был интересным не только для
java разработчиков
3. JazzTeam.org Springsite.com Eclipse Foundation3/43
Yageo.com
• Самый крупный
производитель
деталей для
электроники
• Исторически сайт
создавался
компанией
springsite.com
• Web 2.0 фаза
6. JazzTeam.org Springsite.com Eclipse Foundation6/43
Как появился заказчик
• Всегда вкладывай в людей, с которыми
работаешь
– Получена рекомендация
• У думающих людей не бывает плохого
опыта
– Экспертиза fits requirements (Epam CMS)
• Мой вопрос к Аркадию Добкину и его ответ про
продуктовые и аутсорсинговые компании
• Мысль материальна
– Заказчик из мира Open Source
7. JazzTeam.org Springsite.com Eclipse Foundation7/43
Задачи
• Integrate enterprise CMS
• Contact management
• Complicated search among all the
products (including competitors)
• E-news, subscribers management
• Products management (batch update too)
• Web statistics
• Support all possible roles, flows (editor,
admin, technical admin)
• All should be friendly-administrated
10. JazzTeam.org Springsite.com Eclipse Foundation10/43
Особенности организации
проекта
• Distributed scrum team
• Customer is Open Source contributor
– Open for architecture changes
– No fear, motivated to new
– Not formal, friendly attitude
• Доверяйте интуиции
– Первая оплата через 2 месяца после
начала проекта
– Проект на 2 года с большой плотностью
инноваций весь срок
13. JazzTeam.org Springsite.com Eclipse Foundation13/43
Open for architecture changes
• Feel free to customize if need
(coding)
– Seam
– Alfresco
– Chiba (OS W3C XForms
implementation)
– Hibernate
– Eclipse Texo
• New phase of development (project Teneo)
14. JazzTeam.org Springsite.com Eclipse Foundation14/43
No fear, motivated to new
• We need apply recursion into XForms
and implement/built in recursive AJAX UI
– let us invest time/money into it and gain
knowledge on this area deeper
– Конечно, позволял заказчик
– 2 человека-месяца (с высокой
квалификацией)
• Alfresco server debug
• Complicated UI (hundreds of recursive controls,
which are widgets itself)
20. JazzTeam.org Springsite.com Eclipse Foundation20/43
Alfresco notes
• State of art. Wanna grow in Java
– study sources of Alfresco or
Seam
• Modularity
• All is node and services around
– Not only document
management
– Everything related to node could
be implemented
• Node type
• Flows, Web Forms and many
other things
– extendable
• XSD + XSLT (other templating
language) = XML, HTML, JS,
Java, JSF – anything
• Web scripting
• The same model as Epam CMS
• It is possible to have XSD
describing layout
Крым, Симферополь,
Детский джазовый концерт
22. JazzTeam.org Springsite.com Eclipse Foundation22/43
Texo Eclipse project presentation
XML
Java
In memory
JSON/Rest
Web Services
Under development by me
GWT UI part
Planned
Your own format
TDD
XSD
ORM JPA
Hibernate
Eclipse link
EMF ECore
23. JazzTeam.org Springsite.com Eclipse Foundation23/43
Seam
• JSF
• Creator of Hibernate
• Contexts
• Interceptors without AoP
• Built in IoC
• Rather new community
• Sometimes it is hard to debug and
investigate what is wrong
• Good community
• State of art (contexts)
26. JazzTeam.org Springsite.com Eclipse Foundation26/43
XForms & chiba
• Server and client
model
• XML
• XSD description of
structured form (even
recursive – if your
framework supports it
)
• http://en.wikipedia.org/wiki/XForms
• Not only for internet
• Could be MVC
From http://www.w3.org/MarkUp/Forms/
29. JazzTeam.org Springsite.com Eclipse Foundation29/43
Alfresco based TDD layouts flow
XSD
Layout
content block
ECore
Texo
POJO Java
Texo meta
Html design
divs
Templates
Xslt/freemarket
Alfresco
web forms
User
xml
Seam JSF
ResourceBundle,
Configs,
Even web.xml
Restart
publish
etc
30. JazzTeam.org Springsite.com Eclipse Foundation30/43
Texo based TDD flow
XSD Java POJO
EMF ECore Java Texo
meta model
Java Texo
Core
Templates
ORM
UI: JS jQuery
widget
has access to all
31. JazzTeam.org Springsite.com Eclipse Foundation31/43
Layouts flow
• Content block позволяют
рассматривать новый функционал
как UI плагины (виджеты).
Автоматически поддержка CMS.
33. JazzTeam.org Springsite.com Eclipse Foundation33/43
Open Source contribution results
• Eclipse Teneo (only ORM) > Texo
– One more Eclipse member
• Chiba changes contribution
• Tries to discuss XForms standard changes
• Seam forum participating
– Issue with contexts
• Alfresco changes
– Dramatic
• WCM AJAX, layout to manage renditions, others
– A wish to become commercial committer
– Contribution is sent but particularly ignored
34. JazzTeam.org Springsite.com Eclipse Foundation34/43
Типы кастомизаций
• IoC, reflexion через файлы настроек
• Скачать сырцы, что-то изменить,
переподложить под сервер
• Сырцов нету
(multivalent.sourceforge.net). Decompile,
adjust, compile
• Два последних варинта рискованны,
если продукт будет долго развиваться.
35. JazzTeam.org Springsite.com Eclipse Foundation35/43
Open Source model of project
• vertical model - OOP > reusable
components > frameworks > open
source > usage at next projects
• Motivation
• Convenient way to touch with
partners
– Ask them to join your OS project and
see what happens
• All that is done for free in minutes, and
results in a week (productivity etc)
36. JazzTeam.org Springsite.com Eclipse Foundation36/43
Open Source cons (то, что
всплыло на проекте)
• Weak communities
• Not always user
centric development
• Смешение
технологий – for
handy people
• Нет успокоения (но
и нет старпёрства)
• Customizations,
customizations,
customizations
• Effort on R&D
Из интерьера знаменитой
49 квартиры
37. JazzTeam.org Springsite.com Eclipse Foundation37/43
Money?
• Become committer with potential
customer
• Long investments
• Create popular industry/direction
(что сейчас делается в проекте
Texo)
• Конференции, где бывают
заказчики мира Java Open
Source
• Independent consulting
• Name
• A way to start cooperation with
people immediately
– For eclipse – not one month of
contribution
– For sourceforge etc.
• Create user
• Add to project
• Develop Use Case
Способный customer facer
Могу дать телефон
38. JazzTeam.org Springsite.com Eclipse Foundation38/43
CMS
• Good to have XSD support
– And recursion
• Good to become an entry point for all the
management/admin pages
• Good to be node specific
• Good to have web scripting
• finally flows
• And convenient management of renditions
• E-CMS integration should allow to do (web.xml,
configs, bundles, localization) in the way you use
wordpress
39. JazzTeam.org Springsite.com Eclipse Foundation39/43
Bonus 00: j2ee vs ruby (basing on
mashpit trainings)• Context handling
• Много времени для
вхождения новичкам
• Хостинг дешевеет, clouding
• Java is up to have closures
• Byte code manipulators
• Aop, IoC, OSGI
• Simple syntax
• Proved technology
• MVC frameworks: spring,
struts, seam. Tons of views,
TDD
• ORM and JPA
• Ant, Maven
• Good to have compilation
errors
Стенсил во Львове
40. JazzTeam.org Springsite.com Eclipse Foundation40/43
Bonus 01: расширяемое
программирование in Java
• Пляшем от полиморфизма
• Generics
• IoC(spring, self-made, seam, web.xml, context.xml)
• Dependency injection (interceptors, chains), AoP (joints)
• Patterns
• Plugins (self made, OSGI, etc.)
• WS-* (service mix, equinox, wsdl, JSON, REST)
• Bytes manipulation (create classes on the flight,
interception on the flight – hard to debug)
• Polymorphic systems (ruby frontend – java backend)
• Class loading art
• UI: widgets, web scripting
• MDD, TDD, CMS took important role
• Built in scripting
41. JazzTeam.org Springsite.com Eclipse Foundation41/43
Выше показан один из возможных
вариантов развития проекта и
команды. Нет единого рецепта.
Балкончик без лесенки
Open Source company?
Product based company?
Outsourcing?
Trainings?
I do not know
42. JazzTeam.org Springsite.com Eclipse Foundation42/43
Спасибо! Надеюсь, было
интересно и полезно!
Вопросы?
Презентацию можно найти здесь
jazzteam.org/devcamp10
• Zmicer.harachka@gmail.com
• Zmicer.com
43. JazzTeam.org Springsite.com Eclipse Foundation43/43
Opportunities
• Вы желаете обучаться или работать на java
• Участвовать в Open Source
• Вам нравятся небольшие Scrum команды
• Вы думаете об удалённой работе
• Хотелось бы поработать за границей, но не
знаете как
• Тренинг повышения эффективности Java
программиста Java Brains Reloading
Давайте пообщаемся после презентации!