Posts Tagged ‘DevoxxFR2013’
[DevoxxFR2013] Animate Your HTML5 Pages: A Comprehensive Tour of Animation Techniques in HTML5
Lecturer
Martin Gorner is passionate about science, technology, coding, and algorithms. He graduated from Mines Paris Tech and spent early years in ST Microelectronics’ computer architecture group. For 11 years, he shaped the eBook market via Mobipocket, which became Amazon Kindle’s software core. Joining Google Developer Relations in 2011, he focuses on entrepreneurship outreach.
Abstract
Martin Gorner’s lecture surveys HTML5’s four animation technologies: CSS3 and SVG for declarative approaches, Canvas and WebGL for programmatic ones. Through live demonstrations and explanations, he elucidates their strengths, limitations, and applications, emphasizing fluidity for user interfaces akin to mobile apps. The presentation, itself HTML5-based, covers transitions, transformations, and shaders, offering practical insights for enhancing web experiences.
Declarative Animations with CSS3: Simplicity and Power
Gorner introduces CSS3 as straightforward: the ‘transition’ property interpolates between states when a CSS value changes. A JavaScript snippet swaps classes (‘begin’ to ‘end’), shifting position and rotation; specifying ‘transition: 1s’ yields smooth 60fps animation.
For continuous loops, ‘animation’ references a ‘@keyframes’ block defining CSS at percentages (0%, 10%, etc.). Over 3 seconds, it interpolates, applying left shifts, scales, and rotations.
Animatable properties include border thickness, opacity (for fades), and geometric transformations via ‘transform’: rotate, scale, skew (distorting axes). Default easing provides appealing velocity profiles; ‘ease-in-out’ accelerates/decelerates naturally.
Prefixes (e.g., -webkit-) are needed for non-standardized specs; tools like prefixfree.js or SASS automate this. CSS3 suits simple, event-triggered or looping effects but lacks complex paths or programmatic control.
Enhancing Vector Graphics: SVG’s Declarative Animation Capabilities
SVG, for vector drawings, supports declarative animations via tags. Paths define curves; animations alter attributes like ‘d’ for shapes or ‘transform’ for motion.
Keyframes in SVG mirror CSS but embed in elements. Motion follows paths with , rotating optionally. Colors animate via ; groups allow collective effects.
SMIL timing enables sequencing: ‘begin’ offsets, ‘dur’ durations, ‘repeatCount’ loops. Events trigger via ‘begin=”element.click”‘. Interactivity shines: JavaScript manipulates attributes for dynamic changes.
SVG excels in scalable graphics with paths, gradients, and masks but remains declarative, limiting real-time computations. Browser support is strong, though IE lags.
<svg width="400" height="200">
<circle cx="50" cy="50" r="40" fill="red">
<animate attributeName="cx" from="50" to="350" dur="2s" repeatCount="indefinite"/>
</circle>
</svg>
This code animates a circle horizontally, illustrating SVG’s embeddability in HTML5.
Programmatic 2D Animations: Canvas for Frame-by-Frame Control
Canvas offers a bitmap context for JavaScript drawing. ‘requestAnimationFrame’ schedules redraws at 60fps, clearing and repainting each frame.
Basic shapes (rectangles, paths) fill or stroke; images draw via ‘drawImage’. For physics, libraries like Box2D simulate collisions, as in a bouncing ball demo.
Compositing modes (e.g., ‘source-over’) layer effects; shadows add depth. Text renders with fonts; patterns tile images.
Canvas suits games or simulations needing calculations per frame, like particle systems. However, it’s bitmap-based, losing scalability, and requires redrawing everything each frame, taxing performance for complex scenes.
const canvas = document.getElementById('myCanvas');
const ctx = canvas.getContext('2d');
function animate() {
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.fillStyle = 'blue';
ctx.fillRect(x, y, 50, 50); // Draw moving rectangle
x += 1; // Update position
requestAnimationFrame(animate);
}
animate();
This snippet moves a rectangle, demonstrating frame updates.
Diving into 3D: WebGL’s Programmatic Power with Shaders
WebGL, on Canvas’s ‘webgl’ context, leverages GPU via OpenGL ES. Setup involves shaders: vertex (positioning) and fragment (coloring) in GLSL.
A simple triangle requires vertex buffers, shader compilation, and drawing with ‘drawArrays’. Matrices handle transformations; perspective projection creates 3D illusions.
Textures map images; lighting (Lambert, Phong) computes via normals. Techniques like normal mapping simulate bumps; environment mapping fakes reflections using cube maps.
Libraries like three.js abstract complexities: ‘new THREE.Mesh’ creates objects with materials. Demos show textured, illuminated models without writing shaders.
WebGL enables high-performance 3D, ideal for visualizations or games, but demands graphics knowledge. Browser support grows, though mobile varies.
const gl = canvas.getContext('webgl');
const vertexShader = gl.createShader(gl.VERTEX_SHADER);
gl.shaderSource(vertexShader, `
attribute vec4 position;
void main() {
gl_Position = position;
}
`);
gl.compileShader(vertexShader);
// Similar for fragment shader, then link program
This initializes a vertex shader, foundational for WebGL.
Choosing the Right Tool: Contexts and Implications for Web Development
Gorner compares: CSS3 for simple declarative effects; SVG for vector precision and interactivity; Canvas for 2D programmatic needs; WebGL for immersive 3D.
Mobile apps set expectations for fluid UIs; HTML5 meets this sans plugins. Prefixes persist but tools mitigate. Performance favors GPU-accelerated methods.
Workshops on AppSpot cover CSS3, Canvas with Box2D, and WebGL, enabling hands-on learning.
In summary, HTML5’s animations enhance intuitiveness, with choices suiting project scales and requirements.
Relevant Links and Hashtags
Links:
[DevoxxFR2013] Devoxx and Parleys: Expanding the Family and Embracing HTML5
Lecturer
Stephan Janssen is a serial entrepreneur who founded the Belgian Java User Group (BeJUG) in 1996, JCS International in 1998, JavaPolis in 2001 (which evolved into Devoxx), and Parleys.com in 2006. With Java experience since 1995, he has developed real-world solutions in finance and manufacturing. Recognized as a BEA Technical Director and Java Champion, he has spoken at numerous conferences worldwide.
Abstract
Stephan Janssen’s address provides an overview of the Devoxx conference family’s growth and announces Parleys.com’s transition to HTML5. Highlighting synergies across editions and new initiatives like Devoxx for Kids, he demonstrates community expansion. The live demonstration of Parleys’ beta version emphasizes accessibility, free content, and user empowerment, signaling a shift toward inclusive, technology-driven knowledge sharing.
The Devoxx Family: Growth and Cross-Cultural Synergies
Janssen reflects on Devoxx’s evolution into a global “family,” fostering friendships and cultural exchanges. From Devoxx Belgium’s blue sweatshirts and volunteer-driven structure to the Paris JUG’s involvement in France, the model relies on steering and program committees plus helpers.
Expansion includes Devoxx UK, with its “Mind the Geek” t-shirts, drawing 500 attendees in London. Collectively, editions attract 5,500 “Devoxxians” annually, a testament to community strength without financial burden on organizers.
A heartfelt initiative is Devoxx for Kids, inspired by Janssen’s son Arthur. October sessions in Flemish and French sparked a “viral” spread to the Netherlands, UK, Toronto, and Norway. Even rebranded events like GCON for Kids advance youth engagement. Notably, 25% participants were girls, addressing gender gaps in IT by inspiring 10-14-year-olds toward engineering careers.
This interconnected network amplifies impact, blending cultures while maintaining local flavors.
Parleys’ HTML5 Evolution: Accessibility and Community Features
Janssen announces Parleys.com’s beta, ditching Flash for HTML5, enabling iPad viewing (phones pending). A key decision: all Devoxx France talks free, removing paywalls to maximize reach post-processing.
Live demo showcases features: anonymous browsing with slide scrubbing for previews; detailed views; related talks via MongoDB for speed. Social integration allows liking/disliking, with wristband likes from events projected online.
Logged-in users get free channels for uploading PDFs, editable metadata, and mashups with YouTube videos via drag-and-drop timelines. This empowers speakers and JUGs to enhance presentations without coding.
To sustain four full-time developers, tiers include Basic (free, unlimited PDFs/videos via YouTube hosting), Pro, and Enterprise. Two-week sprints ensure rapid iterations; feedback panels invite input.
Parleys’ shift democratizes content, leveraging HTML5 for broader, device-agnostic access.
Relevant Links and Hashtags
Links:
[DevoxxFR2013] Regular or Decaffeinated? Java’s Future in the Cloud
Lecturer
Alexis Moussine-Pouchkine, a veteran of Sun Microsystems, currently serves as a Developer Relations lead at Google in Paris, assisting developers in achieving success. With over a decade at Sun and nearly two years at Oracle, he brings extensive experience in Java ecosystems and cloud technologies.
Abstract
Alexis Moussine-Pouchkine’s presentation examines Java’s evolution and its potential trajectory in cloud computing. Reflecting on historical shifts in technology, he critiques current limitations and advocates for advancements like multi-tenancy and resource management to ensure Java’s relevance. Through industry examples and forward-looking analysis, the talk underscores the need for adaptation to maintain Java’s position amid resource rationalization and emerging paradigms.
Java’s Maturation and the Cloud Imperative
Moussine-Pouchkine opens by recounting his transition from Sun Microsystems to Oracle and then Google, highlighting how each company has shaped computing history. At Sun, innovation abounded but market fit was inconsistent; Oracle emphasized acquisitions over novelty, straining community ties; Google prioritizes engineers, fostering rapid development.
He likens Java’s current state to emerging from adolescence, facing challenges in cloud environments where resource optimization is paramount. Drawing from his engineering school days with strict quotas on compilation and connection time, Alexis contrasts this with Java’s initial promise of freedom and flexibility. Early experiences with Linux provided boundless experimentation, mirroring Java’s liberating potential in 1997.
The speaker invokes historical predictions: IBM’s CEO allegedly foresaw a market for only five computers in 1943, possibly prescient regarding cloud providers. Bill Gates’ 640K memory quip and Greg Papadopoulos’ 2003 vision of five to seven massive global computers underscore consolidation trends. Papadopoulos envisioned entities like Google, eBay, Salesforce, Microsoft, Amazon, and a Chinese cloud, a perspective less radical today given web evolution.
Java’s centrality in tomorrow’s cloud is questioned. While present in many offerings, most implementations remain prototypes, circumventing Java’s constraints. The cloud demands shared resources and concentration of expertise, yet Java’s future here is uncertain, risking obsolescence like COBOL.
Challenges and Necessary Evolutions for Java in Multi-Tenant Environments
A core issue is Java’s adaptation to multi-tenancy, where multiple applications share a JVM without interference. Current JVMs lack robust isolation, leading to inefficiencies in cloud settings. Moussine-Pouchkine notes Java’s success in Android and Chrome, where processes are segregated, but enterprise demands shared instances for cost savings.
He critiques the stalled JSR-284 for resource management, essential for quotas and usage-based billing. Without these, Java lags in cloud viability. Examples like Google’s App Engine illustrate Java’s limitations: no threads, file system restrictions, and 30-second request limits, forcing workarounds.
Commercial solutions emerge: Waratek’s hypervisor on HotSpot, IBM’s J9 VM, and SAP’s container enable multi-tenancy. Yet, quotas remain crucial for responsible computing, akin to not overindulging at a buffet to ensure sustainability.
Java 9 priorities include modularity (Jigsaw), potentially aiding resource management. Cloud Foundry’s varying memory allocations by language highlight Java’s inefficiencies. Moussine-Pouchkine urges a “slider” for JVM scaling, from minimal to robust, without API fractures.
The community, pioneers in agile practices, continuous integration, and dependency management, must embrace modularity and quotas. Java 7 introduced dynamic languages; Java 8 tackles multicore with lambdas. Recent Oracle slides affirm multi-tenancy and resource management in Java 9 and beyond.
Implications for Sustainable and Credible Informatics
Moussine-Pouchkine advocates responsible informatics: quotas foster predictability, countering perceptions of IT as imprecise and costly. Developers, like artisans, must steward tools and design thoughtfully. Over-reliance on libraries (90% bloat) signals accumulated technical debt.
Quotas enhance credibility, enabling commitments and superior delivery. Java’s adaptive history positions it well, provided the community envisions it “caffeinated” – vibrant and adult – rather than “decaffeinated” and stagnant.
In essence, Java must address multi-tenancy and resources to thrive in consolidated clouds, avoiding the fate of outdated technologies.
Relevant Links and Hashtags
Links:
[DevoxxFR2013] The History of Writings
Lecturer
Clarisse Herrenschmidt is a French archaeologist, ancient historian, philologist, and linguist, born October 24, 1946, in Strasbourg. A CNRS researcher since 1979, she is affiliated with the Laboratoire d’Anthropologie Sociale at the Collège de France. She has taught at INALCO (Iranian history, scripts, and graphic cultures) and Paris 8 University (linguistic anthropology). Her book “Les Trois Écritures: Langue, nombre, code” (Gallimard, 2007) won the Georges Dumézil Prize from the Académie Française and the Georges Picot Prize from the Académie des Sciences Morales et Politiques in 2008.
Abstract
Clarisse Herrenschmidt’s lecture surveys 53 centuries of script evolution, from Mesopotamian origins to informatics. Focusing on numeric and monetary inscriptions, she traces innovations from calculi to Indo-Arabic numerals, linking them to societal transformations. Analyzing artifacts as corporeal metaphors, Herrenschmidt reveals scripts’ role in anthropology, economy, and mythology, emphasizing their global yet Western-centric conquest.
Origins in the Ancient Near East: From Calculi to Scripts
Herrenschmidt commences with seventh-millennium BCE calculi – stone/clay objects representing numbers in base-60 systems (sticks for 1, balls for 10, cones for 60). Used for tallying livestock or grain, they stored counts in bowls, aiding memory post-Neolithic shifts to agriculture and pastoralism.
Urban revolutions in Uruk integrated economy, politics, religion, necessitating sealed storage. Clay balls sealed knots on bales/doors; “envelope-bulls” enclosed calculi, representing stored quantities. Seals (e.g., carved stones with birds) identified social actors.
Innovation: marking envelopes’ exteriors with impressions, rendering invisible calculi visible – birthing numerals without destruction. Flat tablets followed: Susa examples bear workshop seals (weaving atelier) and numeric signs (pits for units).
Pictographic tablets added linguistic signs alongside numerals, evolving proto-cuneiform. This rendered invisible visible, foundational for informatics.
Monetary Inscriptions and Geometric-Arithmetic Evolution
Jumping to seventh-century BCE Lydia/Ionia, Herrenschmidt examines coined money: small electrum globules stamped with designs (e.g., lion heads). Coins bore issuer marks and values, disseminating arithmetic-geometric scripts.
Unlike Mesopotamian weight-based metals, coins standardized value via stamps, not weight. Inscriptions (e.g., Persian darics with archer-kings) embodied issuer, value, recipient – a tripartite structure persisting in modern currency.
Indo-Arabic numerals (1-9 from India sixth-seventh centuries CE, zero uniquely Indian) transmitted via Persian-Arabic mathematicians, reached Mediterranean. Sicilian coins (c.1150-55) feature Christ busts, Arabic text, Hijri dates with Indo-Arabic figures.
Fibonacci’s “Liber Abaci” (1202) introduced positional notation, fractions, algebra, geometry, loans/interests – secretly used by merchants despite Church bans.
From Letters of Exchange to Modern Differentiations
Indo-Arabic numerals birthed new money: 1404 letters of exchange – paper-based, metal-free, concealing loans via currency transfers (e.g., Italy to Barcelona). Ancestors of banknotes/checks, unimaginable in Greco-Roman antiquity despite intelligence.
Herrenschmidt notes exhaustion of monetary-arithmetic scripts providing informatics’ terrain. Mathematics developed binary (Leibniz), differentials (Boole), questioning foundations.
Hilbert’s problems (1900-1928): completeness (every statement provable/disprovable? Gödel: no), consistency (avoid absurdities like 1+2=5? Possible), decidability (method to verify assertions? Turing: no).
Informatics and Mythic Corporeal Metaphors
Responses negate mathematics as self-founding language; it differentiates from money (Nixon severs dollar-gold link August 15, 1971, coinciding networks’ rise). Nasdaq’s foundation and TCP/IP (1969-71) mark shifts, though historical-political opacity persists amid U.S. propaganda.
Turing’s 1936 “automatic machine” – theoretical reader-head and infinite tape – conceptualizes computers. Herrenschmidt synthesizes artifacts: envelope-bull (mouth, emitting signs), coin (eye, estimating magnitudes), Turing machine (brain).
These corporeal metaphors underpin script inventions: mouth for numeric/linguistic, eye for grandeur estimation, brain for computation. Humans remain ensnared in mythic bodies emitting/capturing signs, becoming techniques.
Informatics’ third graphic revolution transforms societies and selves, altering habits and constructing beings within immense myths. Developers enact this; observers marvel.
Relevant Links and Hashtags
Links:
[DevoxxFR2013] Objects and Functions: Conflict Without a Cause?
Lecturer
Martin Odersky is a professor at EPFL in Lausanne, Switzerland, specializing in programming languages that blend object-oriented and functional paradigms. His research unifies these approaches, evidenced by designs like Pizza, GJ, and Functional Nets. He co-designed Java generics and authored the original javac compiler. Currently, he focuses on Scala, fusing functional and object-oriented programming while ensuring interoperability with Java and .NET.
Abstract
Martin Odersky’s lecture traces object-oriented programming’s (OOP) rise, parallels it with functional programming’s (FP) resurgence, and argues for their synthesis. Analyzing historical catalysts, methodological benefits, and modern hardware demands, he demonstrates how FP addresses parallelism and reactivity challenges. Through Scala examples, Odersky shows OOP and FP as complementary, enhancing modularity and abstraction without mutual exclusion.
Historical Roots and Catalysts for OOP Adoption
Odersky recounts his journey from Pascal compilers to modular languages, Java involvement, and Scala creation. OOP’s mainstreaming, he argues, stemmed not from encapsulation or reuse but practical necessities. Simula (1967) for simulations and Smalltalk (late 1970s) for GUI widgets inverted traditional data structures: fixed operations, unbounded implementations.
In procedural languages like C, this was cumbersome via function pointers; OOP simplified dynamic binding for unknown implementations. Odersky notes early confusion with Smalltalk, mirroring current FP bewilderment. OOP’s advantages – modeling, dependency inversion – emerged post-adoption, sparked by widget programming appeal.
Functional Programming’s Resurgence and Methodological Strengths
FP offers fewer errors, superior modularity, and productivity via higher abstractions and shorter code. Yet, despite 50-year existence, mainstream adoption lagged. Odersky identifies multicore and cloud computing as catalysts: parallelism for hardware utilization, reactivity for asynchronous events, distribution for delays/failures.
Mutable state exacerbates issues like cache coherence and non-determinism in concurrent environments. Immutable data mitigates races, enabling safe caching. Locks/threads scale poorly; even transactions retain problems. FP’s immutability fosters determinism, crucial for scalable systems.
Addressing Modern Computing Challenges with FP
Odersky outlines a triple challenge: parallel, reactive, distributed programming. Mutable state hinders each; FP excels by avoiding it.
For parallelism, he exemplifies mapping developer names: sequential in Scala, parallel via .par, yielding a parallel collection. Side effects risk chaos due to reordered executions, necessitating functional purity for correctness.
Reactivity example: an online store querying users, orders, products, stock. Synchronous calls block threads on slow services, degrading performance. Asynchronous futures prevent blocking; Scala’s for-comprehensions compose them elegantly, hiding complexity. Refactoring for parallelism pairs futures, executing concurrently.
For-comprehensions translate universally to map, flatMap, filter, allowing library-defined interpretations – sequential or async – without polluting domain logic.
Synthesizing OOP and FP: Beyond False Dichotomies
Communities often view OOP and FP oppositely, but Odersky argues orthogonality. Objects modularize (“what goes where”), providing containers with dynamic binding and inheritance. Essential for large codebases (e.g., million-line Scala systems), they prevent global namespace chaos – a Haskell limitation.
Redefine objects: eliminate mutable state dogma (e.g., immutable java.lang.String), structural equality over identity, focus on behavior. Scala embodies this fusion, modeling algebraic types with objects while importing FP capabilities.
Scala unifies scripting (winning JavaOne Script Bowl) and safe, performant systems (core for Twitter, LinkedIn). Odersky concludes OOP/FP synergy enhances development, urging exploration via Scala Days, courses, and talks.
Relevant Links and Hashtags
Links:
[DevoxxFR2013] Keynote “Ouverture”: Welcoming Devoxx France 2013
Lecturer
Nicolas Martignole is an independent consultant and founder of Innoteria, with over a decade of experience in Java. He specializes in architecture, team coaching, and project management, having implemented Scrum at a major French bank since 2008 and previously at Thomson-Reuters as a senior developer and project manager. He authors the blog “Le Touilleur Express.”
Antonio Goncalves is a senior architect consulting and training on Java technologies. Formerly a Weblogic consultant at BEA Systems, he has focused on software architecture since 1998. Author of “Java EE 5” (Eyrolles) and “Beginning Java EE 6 Platform With GlassFish 3” (Apress), he contributes to JCP on Java EE 6, JPA 2.0, and EJB 3.1. He teaches at the Conservatoire National des Arts et Métiers and co-founded the Paris Java User Group.
Zouheir Cadi is an independent consultant specializing in Java/JEE technologies. After years in development, he serves as a production architect, bridging development and operations. Currently at France’s top e-commerce site, he is a Paris JUG board member and Devoxx France co-founder.
José Paumard, passionate about programming for over 20 years, transitioned from assembler and C to Java. An assistant professor at Paris University for 15 years with a PhD in applied mathematics and computer science, he blogs at “Java le soir,” a key French resource on Java. A Paris JUG member, he co-organizes Devoxx France and speaks at conferences like Devoxx and JavaOne.
Abstract
This article examines the opening keynote of Devoxx France 2013, delivered by Nicolas Martignole, Antonio Goncalves, Zouheir Cadi, and José Paumard. It contextualizes the event’s growth, organizational challenges, and community focus, analyzing session selection, special events, and thematic keynotes on past, present, and future of the industry. The discussion highlights transparency in call-for-papers, sponsor contributions, and efforts to engage diverse audiences, underscoring Devoxx’s role in fostering Java and broader tech ecosystems.
Event Overview and Growth Trajectory
The keynote commences with warm welcomes, acknowledging the team’s efforts in hosting Devoxx France 2013, a three-day event with 180 speakers, 75% French-language content. Martignole notes the expansion from 1,250 attendees in the inaugural edition to 1,400, a 220-person increase, signaling strong community interest. This growth mirrors the Devoxx family’s international success: 3,500 in Belgium and 500 for the UK’s debut, organized in just four months.
A satisfaction survey from the previous year, with 301 responses, informs improvements. Despite its length (81% found it too long, 18% much too long), it guides refinements, with Goncalves promising quality control for future iterations. The emphasis on constructive feedback, especially negatives, reflects a commitment to attendee-driven evolution.
Practical details include a free “Meet and Greet” evening with wine and cheese, sponsored by SonarSource, Atlassian, and CloudBees, running until 22:00. Six rooms host sessions, with overflow managed by red-vested volunteers for safety. All talks are recorded on Parleys.com, alleviating concerns about missing content. Community integration is highlighted, welcoming groups like Paris JS and Scala User Group.
Organizational Transparency and Session Selection
Transparency in the call-for-papers process is a focal point. Opened November 20 and closed January 31, it garnered 572 submissions, accepting only 162 due to venue constraints. Conferences (50-minute slots) saw 320 proposals, with 74 accepted; 14 allocated to premium sponsors, leaving 60 for general selection – an 82% rejection rate.
A 10-person team, including volunteers, rigorously evaluated submissions, using notes (0-5 scale), discussions, pizzas, and color-coded Post-its. Goncalves humorously notes resorting to a cat for ties, underscoring the process’s seriousness despite challenges. Rejected speakers are encouraged to reapply or present at local JUGs, emphasizing inclusivity.
The keynote theme – past, present, future – features speakers like Clarisse Herrenschmidt on writing history, Martin Odersky on objects and functionals, Alexis Moussine-Pouchkine on Java’s trajectory, and Habib Guergachi on web architectures. Odersky’s evening BoF is noted for Scala enthusiasts.
Special Initiatives and Community Engagement
Unique events differentiate Devoxx: “Devoxx for Kids,” led by Audrey Neveux, introduced 70 children to programming via robots the previous day, aiming to demystify parents’ professions. Though not repeatable annually due to school changes, it inspires future iterations alongside Belgium’s multilingual versions.
“Open Source Hacking” with Brice Dutheil and Mathieu Ancelin offers hands-on contribution. The “Afternoon for Decision-Makers,” from 14:00-18:15, mixes genres with CIOs discussing cloud, prepared by Arnaud Héritier. Reserved seats accommodate hard-to-book executives, but it’s open to all.
“Code Story,” by David Gageot and Jean-Laurent de Morlhon, features full-day live coding in a basement room. “Mercenaries of DevOps,” with Pierre-Antoine Grisoni, Henry Gomez, and others, explores native packaging and Kanban boards the next day.
Sponsors receive gratitude: premium partners enable affordable tickets; Oxiane handles training for over half attendees, managing complex dossiers. Medium and base sponsors filled slots quickly, with full exhibition halls praised for embodying Devoxx spirit.
In summation, the keynote reinforces Devoxx as a collaborative hub, blending education, networking, and innovation to advance the Java community and beyond.
Relevant Links and Hashtags
Links:
[DevoxxFR2013] Web Oriented Architecture: A Transmutation of Practices in Building Information Systems
Lecturer
Habib Guergachi is a Centrale graduate and the CEO and co-founder of Zenexity, established in 2003. As an expert in urbanization, he is among the French architects who introduced key concepts such as the “integrability coefficient” of applications. His professional background includes over seven years at the Central IT Department of AXA, more than three years at the IT Strategy Department of Société Générale, and five years on the executive committee and Technical Direction of a major IT services company. Currently, he leads large-scale urbanization projects and transformations of information systems toward web-oriented models. He also conducts seminars at the prestigious Capgemini Institute.
Abstract
This article explores Habib Guergachi’s lecture on Web Oriented Architecture (WOA), which critiques traditional enterprise practices and advocates for a shift to distributed, hyper-scalable systems. Drawing from historical analogies and real-world examples like LinkedIn, Guergachi argues for abandoning monolithic architectures in favor of independent, reactive applications that leverage modern web protocols. The discussion analyzes the implications for software development, emphasizing innovation, scalability, and the rejection of outdated paradigms to ensure future competitiveness in the French and global IT landscape.
Contextualizing the Shift from Hyper-Integrated to Hyper-Distributed Systems
Guergachi begins by drawing a parallel between the decline of traditional industries, such as steel mills like Gandrange and Florange, and the potential obsolescence of current software engineering practices. He posits that modern IT specialists, akin to specialized workers in software factories, risk irrelevance if they fail to innovate. The core dilemma is the overemphasis on hyper-integrated systems, where enterprises purchase off-the-shelf software that imposes architectures dictated by vendors. This leads to rigid, costly structures that stifle adaptability.
In contrast, Guergachi introduces the concept of hyper-distributed architectures, inspired by web-oriented principles. He illustrates this with a cultural anecdote: a hypothetical Chinese viewer searching for a French film clip on ina.fr fails due to rigid, integrated search mechanisms, while Google succeeds through flexible, distributed intelligence. This highlights how integrated systems, often built around enterprise architecture, application servers, and service buses, create “bousins” – complex, unmaintainable assemblages of tools like CMS for content, transactional plugins, and adapters for legacy JSF applications.
The lecturer critiques the inefficiency of such systems, where decision-making processes involve dumping data into warehouses for analysis, rather than fostering real-time adaptability. He urges a generational shift: respecting past achievements that built foundational information systems but making way for younger developers to construct future-proof ones. Avoiding the trap of using ingenuity merely to bypass imposed integrations is crucial, as technological evolution accelerates.
Principles of Distributed Paradigms and Real-World Implementations
Central to Guergachi’s thesis is the advocacy for distributed paradigms over integrated ones. He references Play Framework, a French-origin technology (despite initial skepticism due to its nationality), as a tool for building independent applications. LinkedIn’s approach exemplifies this: constructing systems as separate components, each focused on core business logic, deployed autonomously. These might use various technologies but prioritize scalability, security, and reactivity.
In a distributed model, non-core functions like search are outsourced to specialized services, allowing internal applications to remain focused and resilient under load. Guergachi explains techniques such as eventual consistency for high-load scenarios and strict consistency only where necessary, like payment processing. Communication between applications relies on RESTful hypermedia over HTTP, rejecting heavy RPC protocols or plugins like Flash, which he derides as symptomatic of a “third-world syndrome” – adopting external technologies without deep understanding.
He envisions enterprises concentrating solely on core business, externalizing storage, CMS, back-office, and video management to superior providers. Performance concerns with HTTP are dismissed as psychological barriers; no in-house solution can compete with storage specialists. Applications will interconnect in a “spaghetti” manner, but one that ensures predictability and adaptability, mirroring the web’s organic structure.
Guergachi introduces entropy as a metaphor: solid (rigid, controlled architectures), liquid (flexible, scalable across servers), and gaseous (pervasive, occupying value chain interstices like Google). Enterprises must evolve toward gaseous states for survival, contrasting with legacy systems that “suck blood” through perpetual maintenance fees.
Implications for Innovation and the Role of French IT Genius
The lecturer delineates integrated paradigms – building overarching technical architectures without functional hypotheses, aiming for longevity – as flawed, akin to overpacking for unforeseen disasters. Distributed paradigms, conversely, tailor architectures per application, prioritizing functional solutions over technical absolutes. For instance, displaying cached content during network failures ensures usability, decided by business logic rather than rigid transactional rules.
A paradigm, per Guergachi, is a coherent worldview offering solutions to its own problems. He warns against half-measures, like deploying advanced frameworks on outdated servers, urging full commitment to distributed models despite risks like dismissal. Submitting to vendor-driven technologies prepares for shameful obsolescence, whereas bold shifts enable glory through innovation.
Critiquing entities like INPI’s outdated systems, he highlights France’s image issues, comparable to 1980s Korean cars. French IT genius, exemplified by talents like Guillaume Bort and Sadek Drobi, must harness business acumen. Concepts like Scalaz originated in France (at Camel), underscoring untapped potential.
The economy of the web remains to be fully realized; Silicon Valley leads but hasn’t won. French informatics must act through innovation serving functionality, user experience, and distributed architectures with increasing entropy. Mastering interconnection complexity yields value, constructing planetary software masterpieces to safeguard jobs and elevate France.
In conclusion, Guergachi’s call to action – rebooting mindsets Monday morning – emphasizes radical change for continuity. By embracing WOA, developers transcend traditional constraints, fostering systems that are open, secure, adaptable, and cost-effective, aligning with business evolutions.