SlideShare a Scribd company logo

2009 F Star Perl Workshop Beijing

E
eelstork

This is the first public presentation of F*, A meta-pattern for developping maintainable, extensible software. Bilingual English/Mandarin Chinese

1 of 13
Download to read offline
F*An Anti-Pattern for Sustainable Software Development持续性软件开发的反模式,[object Object],Perl Workshop Beijing 2009,[object Object],Thibaud de Souza, London, UKtea.desouza@gmail.com,[object Object],http://www.oogtech.org,[object Object]
Agile & Architecture敏捷软件开发 & 架构,[object Object],Agile is a software development methodology. There are few recognized or proposed ways in which agile interacts with software architecture.敏捷软件开发是一种流行方法,但敏捷性软件开发与架构建设交互的方法寥寥无几。,[object Object],Architecture is an emergent property of medium to large scale software. This property is affected by design and process, and in turn affects maintainability and extensibility.架构是中到大型软件的突显特性, 受到设计和开发程序的影响, 并反过来影响软件的维护和延展性。,[object Object],9/19/2009,[object Object],2,[object Object],tea.desouza@gmail.com,[object Object]
Layering & Stories分层 & 故事,[object Object],Layering is a well known separation principle in software architecture - e.g. MVC meta-pattern.,[object Object],分层是广为人知的软件架构分离原则 – 例如 MVC元模式。 ,[object Object],End users and business stakeholders perceive software as a bunch of features. Agile uses iterations and stories to keep development focused on business needs.,[object Object],   Stories and features cut across application layers. ,[object Object],   终端用户和商业控股者视软件为功能的集合体。而敏捷开发利用循环和故事满足商业需求。故事和功能穿透应用程序的层次。,[object Object],9/19/2009,[object Object],3,[object Object],tea.desouza@gmail.com,[object Object]
Problems with Layering分层带来的问题,[object Object],Sooner (development) or later (maintenance), the business perspective hits the development process. At this point, layering mostly gets in the way of ‘making it work’.,[object Object],无论是开发或维护阶段,或早或晚商业视角会涉足软件开发过程。这时,分层往往是阻挡实际运行的障碍。,[object Object],Typically, pressure manifests itself as growing pains, hacks and patches - ultimately leading to corrupted software and mounting maintenance costs.,[object Object],大多时候,压力显示为不断增长的麻烦,重新编写或修修补补 – 最终导致软件无法运行或堆积如山的维护问题。,[object Object],9/19/2009,[object Object],4,[object Object],tea.desouza@gmail.com,[object Object]
Problems with Layering分层带来的问题 ,[object Object],Refactoring and slack are agile remedies used to safeguard architectural integrity againstbusiness pressure. ,[object Object],敏捷开发通过重构和slack来对抗商业压力保护架构健全性,[object Object],Unfortunately, many organisations are unwilling to allocate time to fixing stuff that already works.,[object Object],不幸的是,很多机构不愿意分配时间来修补已经运行的东西,[object Object],Could business pressure be channelled and used to shape software architecture, rather than working against it?,[object Object],   商业压力可不可以被导向来塑造软件架构,而不是摧毁它呢?,[object Object],9/19/2009,[object Object],5,[object Object],tea.desouza@gmail.com,[object Object]
F*,[object Object],Features (‘value increments’) are recognizable elements of functionality that users value and understand.,[object Object],功能特性(价值增量)是用户重视并理解的,[object Object],F* is a meta-pattern using ‘strong feature separation’ (not directly related to feature driven development),[object Object],F*是重度运用功能分离的元模式 (与以功能为导向的开发模式并不直接相关),[object Object],F* has been tested by using it to create a critically small application (200 files / 350 kb),[object Object],F*已通过一个小至中型的应用程序的开发测试(200个文件/ 350kb),[object Object],9/19/2009,[object Object],6,[object Object],tea.desouza@gmail.com,[object Object]
F* RequirementsF*必备要素,[object Object],An application that instantiates F* is such that:,[object Object],运用F* 的应用程序必须是:,[object Object],1.   Each top level package realises a unique feature. ,[object Object],每个最高层模块具备独特功能特性,[object Object],2.    All source code for a given feature can be removed in a single step.,[object Object],某个功能特性的源代码必须可以一步消除,[object Object],3.    After a feature has been removed, the application must compile and run correctly.,[object Object],某项功能被消除后,程序依然正常运行,[object Object],Strong separation is achieved by ensuring that features are both logically and physically separated.,[object Object],功能特性通过逻辑上和物理上的分离实现重度分离 ,[object Object],9/19/2009,[object Object],7,[object Object],tea.desouza@gmail.com,[object Object]
Instantiating F* - Case StudyF*运用实例 ,[object Object],F* is a separation model or meta-pattern. It can be instantiated in various ways and is open to some interpretation.,[object Object],F*是一种分离模式或元模式。可以通过多种方式甚至衍生方式运用,[object Object],In this case, I am creating an IDE using a weightless application framework. ,[object Object],在这个例子中,我通过一个并不重要的应用程序框架制作了一个IDE(集成开发环境)。,[object Object],As framework actors, features communicate using heavyweight, typed notifications: features import events and sometimes interfaces.,[object Object],由于框架的作用,功能块通过功能强大并分类成型的通报来交流:功能块会引进事件有时甚至是界面,[object Object],Features are listed in a text file. Any feature can be removed or replaced.,[object Object],功能块都列在一个文本文件里。所有的功能都可以被剔除或取代。,[object Object],9/19/2009,[object Object],8,[object Object],tea.desouza@gmail.com,[object Object]
Features, then...功能,然后是…,[object Object],Examples of what counts as a feature:,[object Object],功能块的示例 (目前共40个):open-app, help, open-as-text, undo, undo-text-actions, usage-data, auto-update, new-file-or-directory, command-wizard, outline, coloured-syntax, ee-docs-skin, ...(currently 40),[object Object],On average, each releasable feature used 4 classes and requires 3 man hours.,[object Object],平均来说,每个成形的功能块有4个层次,需要3个工时 ,[object Object],1/3 of the code consists in standalone utility classes.,[object Object],1/3的代码由独立的工具类组成,[object Object],Maybe 5 features are ‘support features’ that do not contribute a value increment.,[object Object],约有5个功能块是支持性功能,并不贡献任何价值增量,[object Object],9/19/2009,[object Object],9,[object Object],tea.desouza@gmail.com,[object Object]
Anti-Pattern?反模式?,[object Object],Strong separation allows a ‘rough and ready’ implementation style: maximise work not done.,[object Object],重度分离使‘粗略’的开发模式成为可能:最大化未完成的工作,[object Object],Some features create runtime components, other features collaboratively act upon such components.,[object Object],    There is no structured application model or view. Some features are MVC, some are not. ,[object Object],有些功能产生runtime组件,其他的功能集体对这些组件产生影响。 ,[object Object],没有成形的程序结构模型或概览。一些功能块是MVC, 其他的不是。,[object Object],Features begin as spikes. Many features are plugged ‘as is’ without concern for internal elegance or structure. 功能块以实验的形式开始。许多功能块插入时好像没有考虑内部结构或其简明优雅性。,[object Object],‘Ad-hoc’ notifications. ,[object Object],临时通报 ,[object Object],9/19/2009,[object Object],10,[object Object],tea.desouza@gmail.com,[object Object]
Technical Benefits技术好处,[object Object],Fast and fun. Features are easy to write. You can literally hack them away.,[object Object],高效有趣。功能块容易编写。,[object Object],Maintainable. It’s easy to find bugs and easy to fix them. No fumbling across application layers.,[object Object],易维护。容易发现并修补bug,不用在几个层次间一通瞎忙,[object Object],Extensible. The pattern of connectivity between actors is scale-free; the number of notifications grows linearly.,[object Object],延展性。各因素间的连接模式不受规模限制;连接模块的通报成线性增长。,[object Object],9/19/2009,[object Object],11,[object Object],tea.desouza@gmail.com,[object Object]
Business Benefits商业好处,[object Object],Mix and match. Features are easy to add, remove and replace. A feature set can be used to generate several applications.>> In this project, there are 3 products released and 2 products pending.,[object Object],混搭。功能特性实现简单增加,消除和取代。一套功能块可产生多个应用程序。,[object Object],   >>就这个项目来说,已发布3个产品,2个产品即将完工,[object Object],Short release cycle. 1 to 2 release per day if desirable (I release weekly). ,[object Object],发布周期短。最多一天可以发布2个产品。,[object Object],Transparent, dynamic process. Progress with confidence; spot and seize opportunities.,[object Object],透明,充满活力的开发过程。充满信心的开发过程,随时迎接机遇与变化。,[object Object],9/19/2009,[object Object],12,[object Object],tea.desouza@gmail.com,[object Object]
Conclusion & Further Work结论 & 未来,[object Object],ee-ide and ee-docs are freely available from oogtech.org. Another application, ee-xml has been released as freeware.,[object Object],    ee-ide和ee-docs可在oogtech.org免费下载,ee-xml已作为共享软件发布。,[object Object],The underlying platform, Kippu,supports external plugins. This allows decentralised, collaborative development using F*.,[object Object],后台Kippu支持外部插件,运用F*分散协作开发成为现实。,[object Object],Last, but not least, I am planning on using F* in game development and AI research.,[object Object],未来,我计划运用F*进行游戏开发和人工智能研究。,[object Object],9/19/2009,[object Object],13,[object Object],tea.desouza@gmail.com,[object Object]

Recommended

Automated Unit Testing in Silverlight for Windows Phone 7
Automated Unit Testing in Silverlight for Windows Phone 7Automated Unit Testing in Silverlight for Windows Phone 7
Automated Unit Testing in Silverlight for Windows Phone 7Jacinto Limjap
 
Enterprise Web 2.0: from pristine Java EE to fully-loaded frameworks
Enterprise Web 2.0: from pristine Java EE to fully-loaded frameworksEnterprise Web 2.0: from pristine Java EE to fully-loaded frameworks
Enterprise Web 2.0: from pristine Java EE to fully-loaded frameworksDr. Spock
 
PSD to Drupal - Introductory Drupal Theming
PSD to Drupal - Introductory Drupal ThemingPSD to Drupal - Introductory Drupal Theming
PSD to Drupal - Introductory Drupal Themingsheenadonnelly
 
The F*star Meta-Pattern (English only)
The F*star Meta-Pattern (English only)The F*star Meta-Pattern (English only)
The F*star Meta-Pattern (English only)eelstork
 
term paper for cbd models
term paper for cbd modelsterm paper for cbd models
term paper for cbd modelsSukhdeep Singh
 
Blast Mojo Overview
Blast Mojo OverviewBlast Mojo Overview
Blast Mojo Overviewloyalchow
 

More Related Content

Similar to 2009 F Star Perl Workshop Beijing

Adm Initial Proposal
Adm Initial ProposalAdm Initial Proposal
Adm Initial Proposalcfry
 
Introduction to Spring Framework
Introduction to Spring FrameworkIntroduction to Spring Framework
Introduction to Spring FrameworkASG
 
Spring presentecion isil
Spring presentecion isilSpring presentecion isil
Spring presentecion isilWilly Aguirre
 
Spring presentecion isil
Spring presentecion isilSpring presentecion isil
Spring presentecion isilWilly Aguirre
 
Bestpractices Portal Projects
Bestpractices Portal ProjectsBestpractices Portal Projects
Bestpractices Portal Projectsallerhed
 
Lightning Components Introduction
Lightning Components IntroductionLightning Components Introduction
Lightning Components IntroductionDurgesh Dhoot
 
Choosing the Right HTML5 Framework to Build your Mobile Web Application White...
Choosing the Right HTML5 Framework to Build your Mobile Web Application White...Choosing the Right HTML5 Framework to Build your Mobile Web Application White...
Choosing the Right HTML5 Framework to Build your Mobile Web Application White...RapidValue
 
Acing architecture
Acing architectureAcing architecture
Acing architectureColin Lee
 
Struts & hibernate ppt
Struts & hibernate pptStruts & hibernate ppt
Struts & hibernate pptPankaj Patel
 
Mobilefirst - Build Enterprise Class Apps for Mobile First
Mobilefirst - Build Enterprise Class Apps for Mobile First Mobilefirst - Build Enterprise Class Apps for Mobile First
Mobilefirst - Build Enterprise Class Apps for Mobile First Sanjeev Kumar
 
Spring Framework Tutorial | VirtualNuggets
Spring Framework Tutorial | VirtualNuggetsSpring Framework Tutorial | VirtualNuggets
Spring Framework Tutorial | VirtualNuggetsVirtual Nuggets
 
Feature flag launchdarkly
Feature flag launchdarklyFeature flag launchdarkly
Feature flag launchdarklySandeep Soni
 
Trunk based development
Trunk based developmentTrunk based development
Trunk based developmentgo_oh
 
Git & dev ops come together, right now!
Git & dev ops come together, right now!Git & dev ops come together, right now!
Git & dev ops come together, right now!rhirschfeld
 
TheSpringFramework
TheSpringFrameworkTheSpringFramework
TheSpringFrameworkShankar Nair
 

Similar to 2009 F Star Perl Workshop Beijing (20)

Adm Initial Proposal
Adm Initial ProposalAdm Initial Proposal
Adm Initial Proposal
 
devops certification
devops certificationdevops certification
devops certification
 
devops certification
devops certificationdevops certification
devops certification
 
Introduction to Spring Framework
Introduction to Spring FrameworkIntroduction to Spring Framework
Introduction to Spring Framework
 
Spring presentecion isil
Spring presentecion isilSpring presentecion isil
Spring presentecion isil
 
Spring presentecion isil
Spring presentecion isilSpring presentecion isil
Spring presentecion isil
 
Spring ppt
Spring pptSpring ppt
Spring ppt
 
Bestpractices Portal Projects
Bestpractices Portal ProjectsBestpractices Portal Projects
Bestpractices Portal Projects
 
Lightning Components Introduction
Lightning Components IntroductionLightning Components Introduction
Lightning Components Introduction
 
Choosing the Right HTML5 Framework to Build your Mobile Web Application White...
Choosing the Right HTML5 Framework to Build your Mobile Web Application White...Choosing the Right HTML5 Framework to Build your Mobile Web Application White...
Choosing the Right HTML5 Framework to Build your Mobile Web Application White...
 
Acing architecture
Acing architectureAcing architecture
Acing architecture
 
Struts & hibernate ppt
Struts & hibernate pptStruts & hibernate ppt
Struts & hibernate ppt
 
DevOps kg.pptx
DevOps kg.pptxDevOps kg.pptx
DevOps kg.pptx
 
Mobilefirst - Build Enterprise Class Apps for Mobile First
Mobilefirst - Build Enterprise Class Apps for Mobile First Mobilefirst - Build Enterprise Class Apps for Mobile First
Mobilefirst - Build Enterprise Class Apps for Mobile First
 
Spring Framework Tutorial | VirtualNuggets
Spring Framework Tutorial | VirtualNuggetsSpring Framework Tutorial | VirtualNuggets
Spring Framework Tutorial | VirtualNuggets
 
Feature flag launchdarkly
Feature flag launchdarklyFeature flag launchdarkly
Feature flag launchdarkly
 
Trunk based development
Trunk based developmentTrunk based development
Trunk based development
 
Git & dev ops come together, right now!
Git & dev ops come together, right now!Git & dev ops come together, right now!
Git & dev ops come together, right now!
 
TheSpringFramework
TheSpringFrameworkTheSpringFramework
TheSpringFramework
 
Framework
FrameworkFramework
Framework
 

Recently uploaded

CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlueCloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlueShapeBlue
 
Q4 2023 Quarterly Investor Presentation - FINAL.pdf
Q4 2023 Quarterly Investor Presentation - FINAL.pdfQ4 2023 Quarterly Investor Presentation - FINAL.pdf
Q4 2023 Quarterly Investor Presentation - FINAL.pdfTejal81
 
Achieving Excellence IESVE for HVAC Simulation.pdf
Achieving Excellence IESVE for HVAC Simulation.pdfAchieving Excellence IESVE for HVAC Simulation.pdf
Achieving Excellence IESVE for HVAC Simulation.pdfIES VE
 
AGFM - Toyota Coaster 1HZ Install Guide.pdf
AGFM - Toyota Coaster 1HZ Install Guide.pdfAGFM - Toyota Coaster 1HZ Install Guide.pdf
AGFM - Toyota Coaster 1HZ Install Guide.pdfRodneyThomas28
 
Mastering Play Store App Listing and Optimization
Mastering Play Store App Listing and OptimizationMastering Play Store App Listing and Optimization
Mastering Play Store App Listing and OptimizationAppsthentic Technology
 
Low Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & PitfallsLow Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & PitfallsScyllaDB
 
Large Language Models and Applications in Healthcare
Large Language Models and Applications in HealthcareLarge Language Models and Applications in Healthcare
Large Language Models and Applications in HealthcareAsma Ben Abacha
 
Enterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book ReviewEnterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book ReviewAshraf Fouad
 
Python For Kids - Sách Lập trình cho trẻ em
Python For Kids - Sách Lập trình cho trẻ emPython For Kids - Sách Lập trình cho trẻ em
Python For Kids - Sách Lập trình cho trẻ emNho Vĩnh
 
Microsoft x 2toLead Webinar Session 1 - How Employee Communication and Connec...
Microsoft x 2toLead Webinar Session 1 - How Employee Communication and Connec...Microsoft x 2toLead Webinar Session 1 - How Employee Communication and Connec...
Microsoft x 2toLead Webinar Session 1 - How Employee Communication and Connec...2toLead Limited
 
Why Disability Justice should be at the core of your digital accessibility jo...
Why Disability Justice should be at the core of your digital accessibility jo...Why Disability Justice should be at the core of your digital accessibility jo...
Why Disability Justice should be at the core of your digital accessibility jo...Modality Co
 
Transcript: Trending now: Book subjects on the move in the Canadian market - ...
Transcript: Trending now: Book subjects on the move in the Canadian market - ...Transcript: Trending now: Book subjects on the move in the Canadian market - ...
Transcript: Trending now: Book subjects on the move in the Canadian market - ...BookNet Canada
 
Trading Software Development_ Trends to Watch in 2024.pdf
Trading Software Development_ Trends to Watch in 2024.pdfTrading Software Development_ Trends to Watch in 2024.pdf
Trading Software Development_ Trends to Watch in 2024.pdfLucas Lagone
 
New ThousandEyes Product Features and Release Highlights: February 2024
New ThousandEyes Product Features and Release Highlights: February 2024New ThousandEyes Product Features and Release Highlights: February 2024
New ThousandEyes Product Features and Release Highlights: February 2024ThousandEyes
 
Key projects in AI, ML and Generative AI
Key projects in AI, ML and Generative AIKey projects in AI, ML and Generative AI
Key projects in AI, ML and Generative AIVijayananda Mohire
 
Improving IT Investment Decisions and Business Outcomes with Integrated Enter...
Improving IT Investment Decisions and Business Outcomes with Integrated Enter...Improving IT Investment Decisions and Business Outcomes with Integrated Enter...
Improving IT Investment Decisions and Business Outcomes with Integrated Enter...Cprime
 
Boosting Developer Effectiveness with a Java platform team 1.4 - ArnhemJUG
Boosting Developer Effectiveness with a Java platform team 1.4 - ArnhemJUGBoosting Developer Effectiveness with a Java platform team 1.4 - ArnhemJUG
Boosting Developer Effectiveness with a Java platform team 1.4 - ArnhemJUGRick Ossendrijver
 
AI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficientAI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficientKari Kakkonen
 
Artificial Intelligence - AI For Everyone
Artificial Intelligence - AI For EveryoneArtificial Intelligence - AI For Everyone
Artificial Intelligence - AI For EveryoneSridhar Seshadri
 
VM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlue
VM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlueVM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlue
VM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlueShapeBlue
 

Recently uploaded (20)

CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlueCloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
 
Q4 2023 Quarterly Investor Presentation - FINAL.pdf
Q4 2023 Quarterly Investor Presentation - FINAL.pdfQ4 2023 Quarterly Investor Presentation - FINAL.pdf
Q4 2023 Quarterly Investor Presentation - FINAL.pdf
 
Achieving Excellence IESVE for HVAC Simulation.pdf
Achieving Excellence IESVE for HVAC Simulation.pdfAchieving Excellence IESVE for HVAC Simulation.pdf
Achieving Excellence IESVE for HVAC Simulation.pdf
 
AGFM - Toyota Coaster 1HZ Install Guide.pdf
AGFM - Toyota Coaster 1HZ Install Guide.pdfAGFM - Toyota Coaster 1HZ Install Guide.pdf
AGFM - Toyota Coaster 1HZ Install Guide.pdf
 
Mastering Play Store App Listing and Optimization
Mastering Play Store App Listing and OptimizationMastering Play Store App Listing and Optimization
Mastering Play Store App Listing and Optimization
 
Low Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & PitfallsLow Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & Pitfalls
 
Large Language Models and Applications in Healthcare
Large Language Models and Applications in HealthcareLarge Language Models and Applications in Healthcare
Large Language Models and Applications in Healthcare
 
Enterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book ReviewEnterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book Review
 
Python For Kids - Sách Lập trình cho trẻ em
Python For Kids - Sách Lập trình cho trẻ emPython For Kids - Sách Lập trình cho trẻ em
Python For Kids - Sách Lập trình cho trẻ em
 
Microsoft x 2toLead Webinar Session 1 - How Employee Communication and Connec...
Microsoft x 2toLead Webinar Session 1 - How Employee Communication and Connec...Microsoft x 2toLead Webinar Session 1 - How Employee Communication and Connec...
Microsoft x 2toLead Webinar Session 1 - How Employee Communication and Connec...
 
Why Disability Justice should be at the core of your digital accessibility jo...
Why Disability Justice should be at the core of your digital accessibility jo...Why Disability Justice should be at the core of your digital accessibility jo...
Why Disability Justice should be at the core of your digital accessibility jo...
 
Transcript: Trending now: Book subjects on the move in the Canadian market - ...
Transcript: Trending now: Book subjects on the move in the Canadian market - ...Transcript: Trending now: Book subjects on the move in the Canadian market - ...
Transcript: Trending now: Book subjects on the move in the Canadian market - ...
 
Trading Software Development_ Trends to Watch in 2024.pdf
Trading Software Development_ Trends to Watch in 2024.pdfTrading Software Development_ Trends to Watch in 2024.pdf
Trading Software Development_ Trends to Watch in 2024.pdf
 
New ThousandEyes Product Features and Release Highlights: February 2024
New ThousandEyes Product Features and Release Highlights: February 2024New ThousandEyes Product Features and Release Highlights: February 2024
New ThousandEyes Product Features and Release Highlights: February 2024
 
Key projects in AI, ML and Generative AI
Key projects in AI, ML and Generative AIKey projects in AI, ML and Generative AI
Key projects in AI, ML and Generative AI
 
Improving IT Investment Decisions and Business Outcomes with Integrated Enter...
Improving IT Investment Decisions and Business Outcomes with Integrated Enter...Improving IT Investment Decisions and Business Outcomes with Integrated Enter...
Improving IT Investment Decisions and Business Outcomes with Integrated Enter...
 
Boosting Developer Effectiveness with a Java platform team 1.4 - ArnhemJUG
Boosting Developer Effectiveness with a Java platform team 1.4 - ArnhemJUGBoosting Developer Effectiveness with a Java platform team 1.4 - ArnhemJUG
Boosting Developer Effectiveness with a Java platform team 1.4 - ArnhemJUG
 
AI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficientAI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficient
 
Artificial Intelligence - AI For Everyone
Artificial Intelligence - AI For EveryoneArtificial Intelligence - AI For Everyone
Artificial Intelligence - AI For Everyone
 
VM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlue
VM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlueVM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlue
VM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlue
 

2009 F Star Perl Workshop Beijing

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

Editor's Notes