4D

AGENDA

Sessions et agenda

warning: file_get_contents(http://www.telize.com/geoip/54.224.13.210) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /var/www/www.4d.com/docs/includes/common.inc(1762) : eval()'d code on line 4.
Découvrez les sujets qui seront présentés au 4D Summit 2012. Développez vos compétences, apprenez de nouvelles technologies ou simplement glaner de nouvelles idées pour de futures implémentations et tirez profit des toutes dernières nouveautés.

Veuillez trouver ci-dessous une première version de l'agenda du 4D Summit 2012, sujet à des modifications. L'ensemble des descriptions de sessions finalisées sont mentionnées à la fin de l'agenda.

 

Mardi 23 octobre 2012

7:00 AM

9:00 AM

Continental Breakfast - Market Street Foyer

8:30 AM

12:30 PM

Pre-Class - Crystal Room

12:30 PM

1:30 PM

Pre-Class Lunch - Market Street Foyer

1:30 PM

4:30 PM

Pre-Class continues - Crystal Room

5:00 PM

7:00 PM

Show and Tell Reception - Club Regent

Mercredi 24 octobre 2012

7:30 AM

8:30 AM

Continental Breakfast- Market Street Foyer

7:00 AM

5:00 PM

Registration Opens - Regency Foyer

8:00 AM

10:00 AM

 Welcome Keynote

with Tom Miller

 

Product Keynote

 

Regency Ballroom

 

Regency Ballroom

Crystal

Gold

10:00 AM

11:00 AM

Wakanda & 4D v13

Thibaud Arguillere

TBA

Impact Marketing for Small Business

Michel Gerin, Bill McKay 

11:15 AM

12:15 PM

Monitoring 4D Server with Enterprise Tools

Thomas Maul

 Macros for Developer Productivity

Charlie Vass

Web Basics

Angelo Caroprese

12:15 PM

1:30 PM

Lunch - Market Street Foyer

 

Regency Ballroom

Crystal

Gold

1:30 PM

2:30 PM

4D v13 Upgrade Training Highlights - Part I

Achim Peschke 

 Synchronization from the Master

Sergiy Temnikov
Supporting an Enterprise Level 4D Application

Tom Benedict 

2:45 PM

3:45 PM

Revealing 4D - Commands You Never Knew Existed

Christophe Flament

hmplugins.com: Calendars, Reports & Graphics in 4D with hmCal & hmReports

A Tale of Scale

Justin Leavens

4:00 PM

5:00 PM

Creating Custom Widgets

Keisuke Miyako

Essential Web Security for 4D

Darrell Draper 

Leveraging 4D's Partner Program

Erin Moeller

Jeudi 25 octobre 2012

7:00 AM

8:30 AM

Continental Breakfast  - Market Street Foyer

8:00 AM

9:00 AM

4D SAS Keynote
(Customer Presentations/Cases)


Regency Ballroom

 

Regency Ballroom

Crystal

 

Gold

9:15 AM

10:15 AM

Optimization Part Deux: The Next Level

Thibaud Arguillere

 Master Web Data with 4D v13 and JSON

Rick Hazey

 Get Configuration - 70 Commands Explained

Christophe Flament

10:30 AM

11:30 AM

 Benchmark your Storage System's Performance

Thomas Maul

Web Area Mashups

Sonya Rackwitz

Consistent UI for Cross-Platform Development

Add Komoncharoensiri 

11:30 AM

12:45 PM

Lunch - Market Street Foyer

12:45 PM

1:45 PM

iOS, Android and 4D

Philip Keth

Taking Revision Control to the Playoffs

Josh Fletcher

4D v13 Upgrade Training Highlights - Part II

Achim Peschke

2:00 PM

3:00 PM

 Google Apps Integration

Keisuke Miyako

 Paypal Payment Integration

Mickaël Rottiers

Why 4D over Filemaker

Mark Lemm

3:15 PM

4:15 PM

Time Machine for 4D

Peter Lerch

 Key-Value Pair Dictionary

Wayne Stewart

Mastering Listbox

Charlie Vass

4:30 PM

5:30 PM

Wrap Up/Award Ceremony/Q&A

7:00 PM

11:00 PM

An Evening with 4D

The Tech Museum of Innovation

Vendredi & Samedi 26-27 octobre


JS.everywhere(2012) + Wakanday

» Accédez à l'agenda complet ici ! «

 

 

 

Veuillez trouver ci-dessous les sessions qui ont été programmées de façon définitive pour le 4D Summit 2012. Beaucoup d'autres sessions sont en cours de préparation, aussi merci de consulter régulièrement cette page afin de découvrir les toutes nouvelles sessions.

 

Sessions

Bâtir des interfaces similaires pour un déploiement multi-plateformes

L’un des atouts majeurs de 4D est de pouvoir développer un seul code qui puisse être déployé à la fois sur Mac et sur Windows. Cependant, l’enjeu majeur est de créer une interface utilisateur semblable pour les deux plateformes et se comportant de manière identique. Cette session couvre l’essentiel des fondamentaux en matière de création d’interfaces utilisateurs multi-plateformes. Elle recensera également toutes les choses à faire ou ne pas faire, ainsi que les compromis éventuels pour obtenir un résultat final acceptable sur les deux plateformes.

Mots-clés : Bonnes pratiques, déploiement

Niveau de la session : Intermédiaire

Mastering the List box

 
Over the last three versions of 4D, the List Box object has matured into one of the most powerful and versatile form objects available to developers. The 4D v13 List Box provides the developer with a grid tool so dynamic that one generic project form can be created and used to replace every table list/output form in the database.

This session will show advanced List Box techniques to build dynamic table list forms, and how a limited number of project forms can be used to replace traditional table forms in a database. The session will move fast and provide lots of code examples, so be ready to learn!


Charlie Vass – Technical Services Team Member, 4D Inc.


Tags: Productivity, Development
Level: Intermediate

 

Web Area Mashups: Image Editor

Did you know that you can use 4D Web Areas to create an image editor within a 4D database? It’s true! You can do it using HTML5’s canvas tag along with JavaScript. The canvas element makes it easy to draw graphics and even manipulate images using JavaScript. This session will demonstrate how Web Areas can be used to draw and edit images, making your 4D applications more beautiful and functional.


Sonya Rackwitz – Technical Services Team Member, 4D Inc.

Tags: Development, Web
Level: Intermediate

Essential Web security for 4D


It’s no secret that the once humble Web browser can enable new avenues of access to your application. However, it opens up a new set of security concerns. This session will explore the various threats to a Web-enabled application and provide a series of best practices to mitigate these threats.


Darrell Draper – Technical Services Team Member, 4D Inc.


Tags: Best Practices, Development, Web
Level: Intermediate

Optimization Part II: The Next Level

 

We all know that 4D is the fastest database engine. In the whole universe. And we all know the application engine that runs the 4D language is incredibly fast.

 

That said, there's still room for improvement. We can optimize code execution, of course, but also optimize database access and speed in client/server mode. There are some big points, as well as smaller ones.

In this session, after a quick reminder of last year's "Optimization" session – very quick, just a summary for those who missed it – we will focus once again on common sense, and on client/server database access. We'll also go over some pure language tricks.

 

We'll try to optimize the session itself with different presentation techniques and, at the end, you will know everything in less than 4.2 minutes. Maybe.

 

Thibaud Arguillere – Senior Software Evangelist, 4D SAS


Tags: Best Practices
Level: Intermediate

Creating Custom Widgets

 

The introduction of custom widgets in 4D v12 marks a significant paradigm shift in the way we design the user interface in 4D.

 

This session will explain how to create custom widgets and use them in your application.

Known limits, behavioral exceptions, and coding style recommendations will be thoroughly addressed, saving you time from learning them the hard way.

 

Keisuke Miyako – Sales Engineer, 4D Japan


Tags: Deployment
Level: Beginner

Zoom sur la migration vers 4D v13

 

 

Cette session vous propose de voir en détails une sélection de fonctionnalités. Nous vous dévoilerons plusieurs stratégies de mise à jour vers 4D v13, leurs principes et la façon de les implémenter dans vos applications.

 

Des exemples prêt-à-l’emploi seront fournis.

 

Parmi les sujets abordés :

  • Stocker des "big data" en dehors du fichier de données
  • Améliorations du CSM
  • Indexation et gestion des images
  • Aperçu d’impression avec XPS sous Windows


Achim Peschke – Directeur du Support Technique, 4D Allemagne
Mots-clés : Bonnes pratiques, développement, mise à jour
Niveau de la session : intermédiaire

 

4D v13 Upgrade Training Highlights- Part II

 

There are so many new features in 4D v13 that a whole day isn't nearly enough to demonstrate them all...

 

...so, we have added this session to present you some of the highlights that we could not fit into Part I. You'll learn underlying upgrade techniques, how they work, and how you can implement them in your applications.

Ready-to-use samples are provided.

Topics include

  • Progress bar component
  • Hierarchical lists
  • Split text
  • New events and database methods
  • List boxes and footers
  • Accessing the database structure
  • New spell checker
  • Getters and setters
  • HTTP client

 

Achim Peschke – Director of Technical Support, 4D Germany


Tags: Best Practices, Development, Upgrade
Level: Intermediate

Key-Value Pair Dictionary

 

This session will introduce a new component (which is in itself a revision of older ones.)

 

The component implements an abstract data structure know as key-value pairs. This component can be used as an Object Tools, XML Bags, or Variables-on-Demand alternative. A novel syntax has been developed for the component allowing the retrieval of values by a totally text-based mechanism. This component combined with Dynamic Variables (introduced in v12) can dramatically decrease the memory footprint of your 4D app. Other techniques will also be demonstrated such as anonymous process dictionaries with automatic garbage collection, preferences and xml export.

We will spend some time going over the simple syntax for getting data into and out of the component.

 

Wayne Stewart – Technical Support, 4D Australasia


Tags: Best Practices, Development, Optimization
Level: Intermediate

Tout ce que vous avez toujours voulu savoir sur la synchro

 

 

La synchronisation est un mécanisme puissant, mais qui exige un minimum de connaissances – vous devez en gros savoir ce qu’il faut faire et ne pas faire avec les commandes de synchronisation de 4D. Cette session vous permettra de comprendre quand et comment utiliser la synchronisation, en quoi elle impacte votre application et quels en sont les bénéfices pour vos utilisateurs.

 


Sergiy Temnikov – Software Architect, 4D SAS

Mots clés : Bonnes pratiques
Niveau : intermédiaire

 

Taking Revision Control to the Playoffs

 

By now you’ve likely heard of or tried the CodeExport component. Guess what? It merely scratches the surface of Revision Control (RC) and 4D. Sure, it exports all the methods, but what happens if a method is deleted or renamed? What happens if your RC software requires direct action to create a new file? It’s time to take RC integration with 4D to the next level!

 

The solution comes via a one-two punch: First, a generic RC component framework provides hooks for common RC tasks (create, update, rename, delete). Second, by extending this framework, tightly integrated RC components elevate 4D’s game in a big way. Don’t miss all the hits!

 

Josh Fletcher – Technical Acount Manager, 4D Inc.


Tags: Best Practices, Development
Level: Intermediate

Web Basics (static, semi-dynamic, dynamic)

 

With the introduction of the new Web server in 4D v13, the Web is more important to 4D applications than ever. That’s why we’d like to remind 4D developers how they can deploy their data using the powerful new Web server.

 

This session covers the basics of developing and deploying static content and dynamic data on the Web using a simple approach. It will also cover subjects like HTML, JavaScript, CSS, 4D tags, 4D commands for the Web, as well as XML and JSON and other topics that will give developers the foundation to implement such technologies in their applications. 

 

Angelo Caroprese – Regional Technical Manager, 4D Hispano


Tags: Development, Deployment
Level: Intermediate

Monitorer 4D Server avec des outils d'entreprise

Les départements informatiques des grandes entreprises ont recours à des logiciels de surveillance tels que Nagios ou Icinga pour monitorer les infrastructures IT et alerter les administrateurs en cas de problème. Des alertes automatiques sont expédiées (par email/SMS/pager) à chaque panne de serveur, déconnexion de switch/routeur, manque d'encre dans une imprimante, ou tout type de problème relatif aux bases de données. Comment réaliser la même chose avec 4D ?

Cette session vous apportera les connaissances de base pour installer et utiliser un système du même type – et y intégrer des serveurs 4D pour monitorer leur état en termes de disponibilité, sauvegarde et mémoire.

L’administrateur IT pourra utiliser ses systèmes existants, et ainsi monitorer vos applications sans devoir apprendre de nouveaux outils ou techniques. L'état de 4D Server pourra être intégré dans les écrans de surveillance classique de l’administrateur (et tout aussi bien affiché sur navigateur, un iPhone, un appareil Android, etc.). Par ailleurs, le système peut conserver un historique, comme celui de la gestion du cache de 4D Server. Si vous êtes concerné par le déploiement à grande échelle, cette session est absolument indispensable !


Mots-clés : Déploiement
Niveau : avancé

 

Benchmark your storage system’s performance 

As the number of users and data size grow, disk speed is becoming increasingly important, as it is the main performance bottleneck for database systems. In virtualized environments, for example, a poorly configured storage system could slow down a database server drastically. In many cases, it’s difficult or even impossible to convince the storage system administrator that their system is not up to speed.

 

This session will give you the tools you need to benchmark and verify disk access requirements, and hopefully convince the IT department to upgrade their hard drives or SSDs! To increase acceptance from enterprise IT departments, this session will focus on a (free) tool from Microsoft – SQLIO – which is used to test storage systems on MS SQL Server and MS Exchange. We’ll explain how to use SQLIO and analyze the reports it produces, allowing IT admins to verify and optimize the storage system using Microsoft tools and Microsoft best practice documents.

 

Furthermore, we’ll provide a 4D component to make usage even easier with a graphical interface that creates human readable reports, including charts. This component can be integrated into your system, letting you run benchmarks regularly, i.e. on weekends, or run separately. It also helps prepare DOS batch files to run on customer machines that often only have Microsoft tools installed.


Thomas Maul – Managing Director, 4D Northern Europe

Tags: Deployment
Level: Advanced

Google Apps Integration

The Google Apps API allows developers to write applications that access Google applications such as Gmail, Google Calendar and Google Docs. Libraries written and supported by Google exist for languages such as Java, JavaScript, .NET, PHP, Python...but what about 4D? In this session, we explore ways to access Google Apps from the 4D language. First, we go through the various requirements for desktop applications (as opposed to web applications) to register as a Google App client. Next, we visit key concepts such as oAuth, REST, JSON and how to implement them in 4D. Finally, we'll look at ways to design a modular component with generic deployment in mind.


Keisuke Miyako – Sales Engineer, 4D Japan

Tags: Modernization
Level: Intermediate

Revealing 4D – Commands you never knew existed

This session will showcase several commands in 4D v13 that you never knew existed. It will show how to make the best use of them and suggest some awesome code techniques and interfaces for your applications.

 

Using a fully functional – command-rich and feature-rich – demo application, we will demonstrate the best way to code 4D and its hidden treasures. We will show you:

  • The 'Never Closing' process!!!
  • How to grab a copy of your screen in one line of code
  • The advantage and ease of programing with dynamic variables in your forms
  • How to quickly create your own component and use it
  • How easy is to create menus by code and use them
  • How to mix output and input interfaces in one project form to display any table
  • All the events that occur and how to trap them


As long time 4D programmers, we tend to stick to what we know. However, several new commands are at our disposal. It’s time to learn about them and how to use them.


Christophe Flament – Computer Consultant, Ponga Consulting Inc.

Tags: Development, Modernization
Level: Intermediate

Get Configuration – More than 70 commands explained

This session will showcase several commands in 4D v13 that you never knew existed. It will show how to make the best use of them and suggest some awesome code techniques and interfaces for your applications.

 

4D v13 comes with several commands that return information about the configuration, information about the database itself, the 4D environment or the computer settings. The purpose of this session is to showcase these commands. Learn how one method – almost 2000 lines of code – generates a document with the information returned by those commands.

 


Christophe Flament – Computer Consultant, Ponga Consulting Inc.

Tags: Development
Level: Beginner

Time Machine for 4D

The design object access in 4D v13 makes it easy to use standard revision control software for 4D projects. But why not write the whole thing in 4D? A custom-built system allows for better integration with the 4D IDE, is not restricted to code only, and it can be adapted to different development processes and organizational structures. This session discusses revision control for 4D in general and introduces a flexible version control component.

 


Peter Lerch – CTO, Softworks AG

Tags: Modernization
Level: Intermediate

Macros for Developer Productivity

Macros are handy development tools that enable a developer to generate blocks of code that would normally have to be typed repeatedly. The benefit of macros goes beyond time savings. Macros also reduce mistakes since they are done correctly once and create mistake-free code repeatedly.

There are many features to 4D macros, but one of the most powerful features that will be covered in detail is the Method Editor macros and the tagging language – the tag. The tag supports the calling of any 4D Project Method contained in the database. It makes possible features that few can imagine can be accomplished from a macro.

Put simply, a macro in 4D v13 is a time and money savings efficiency multiplier that does a lot more than just spit out code. If time is money, macros are a gold mine in savings. This session will contain many examples that will demonstrate techniques of reducing time-consuming, repetitive tasks down to a simple menu choice or keyboard shortcut.

 


Charlie Vass – Technical Services Team Member, 4D Inc.

Tags: Best practices, Development
Level: Intermediate

 

Paypal Payment Integration

 

Paypal is the most popular payment solution for online business. Different integration methods are available, depending on your specific needs. This session will help you choose the most adapted process, as well as give you some reusable 4D source code that will be the keys to starting your integration.

 


Mickaël Rottiers – CRM Manager, 4D SAS & Jonathan LeBlanc, Developer Evangelist – PayPal

Tags: Modernization, Development
Level: Intermediate

 

Master Web Data with 4D v13 and JSON

 

Since 4D v13 introduced native HTTP calls, it's now easier than ever to pull data from the Internet or an internal Web server to use in your 4D application. The JSON (JavaScript Object Notation) data format is extremely popular for Web data, but how do you use it?

This session will show you how to retrieve data in JSON format and, by using a 4D component, translate it to 4D. You'll see real world examples that demonstrate the power and ease of the process, quickly integrating the latest Web technology into your 4D application.

 


Rick Hazey – Owner, Octet Industries LLC

Tags: Modernization, Development, Web
Level: Intermediate

 

A Tale of Scale


When your system faces unexpected growth, you discover bottlenecks – some you might have expected, and some you might have not. How do you cope when when the pipes start to burst and you're asked to simply handle "more"?

In this session, we'll use the example of a simple task processing system and work our way through the kind of 4D design evolution you might see from a system processing hundreds or even thousands of requests to one that needs to handle MILLIONS.

 


Justin Leavens – President, Just In Time Consulting

Tags: Best practices, Development, Optimization
Level: Intermediate

 

iOS, Android and 4D

 

The world is going mobile. Are you ready?

This session will show you how to get your 4D application ready for a user base that demands more solutions to be available on iOS and Android.

You'll learn about communicating with 4D from an Android or iOS device, as well as the similarities and differences between them. We'll go over your options for the communication layer. We'll do a brief code review of what all this involves. And we'll look at how push notifications work on both Android and iOS – and more importantly – how we send push potifications from a 4D application.

 


Philip Keth – Vice President & CTO, Footprints Inc

Tags: Development, Modernization
Level: Advanced

Supporting a 4D Enterprise Application: The 24x7 Challenge

 

What do you do when your 9-to-5, Monday-through-Friday 4D application becomes a mission critical, 24 hours-a-day, 7 days-a-week, core component of a full-fledged enterprise architecture? Alere Wellbeing will share what they've learned over 20 years of supporting their 4D Quit for Life application. A self-contained tool built to support a small user group has evolved into the heart of a complex network of applications supporting a multi-million dollar program.

 


Tom Benedict, Terry Lee, Ruben Baumann – Alere Wellbeing

Tags: Best Practices, Deployment
Level: Intermediate