IT Boxing: ASP.NET vs. Java vs. PHP vs. Ruby – Sofia – 6 March 2008

Bulgarian Association of Software Developers

kindly invites you to take part in the

IT Boxing Championship

Dispute Topic: Web Development Technologies

ASP.NET vs. Java & JSF vs. PHP vs. Ruby

6 March (Thursday), 17:30 h

Park Hotel „Moscow“, Sofia, Hall „Moscow“

Sponsored by

About the IT Boxing Championship

The initiative “IT Boxing Championship” is a series of events organized by the Bulgarian Association of Software Developers (BASD) at which we invite supporters of different software technologies to an open dispute “Which technology is better?”. At these meetings the adherents of the opposing technologies defend their vision for better technology by presentations, demonstrations, discussions and open debate that finish in direct fight with inflatable boxing gloves. For each IT boxing event different dispute topics are assigned and different teams stand up for contrary visions.

ASP.NET vs. Java & JSF vs. PHP vs. Ruby

The topic of this event is „Web Development Technologies: ASP.NET vs. Java & JSF vs. PHP vs. Ruby“. The .NET team will present the ASP.NET, ASP.NET AJAX, ASP.NET MVC and the new ASP.NET extensions in .NET Framework 3.5. The Java team will stand up for JavaServer Faces (JSF), Google Web Toolkit (GWT), Echo Framework and other Java Web development frameworks. The PHP team will stand up for the Web frameworks in PHP, especially the Symphony framework. The Ruby team will stand for Ruby on Rails.

Venue

The event will be held on 6 March 2008, starting from 17:30 h in Park-hotel Moscow, Sofia, hall Moscow. The hall capacity is 350 people.

Agenda

Time

Topic

Speakers

17:30-17:50

Presenting the „IT Boxing Championship“ initiative, the dispute topic, teams and rules

Svetlin Nakov,

The Referee Team

17:50-18:10

Technical talk #1: ASP.NET AJAX

Alex Thissen,

The .NET Team

18:10-18:30

Technical talk #2: Echo Framework

Peter Milev,

The Java Team

18:30-18:50

Technical talk #3: PHP and PHP Web Frameworks

Peter Vukadinov,

The PHP Team

18:50-19:10

Technical talk #4: ASP.NET MVC Framework

Alex Thissen,

The .NET Team

19:10-19:30

Technical talk #5: Google Web Toolkit – Dynamic Web on Java(Script)

Jordan Jordanov,

The Java Team

19:30-19:50

Break

19:50-20:10

Technical talk #6: Symphony Framework for PHP

Peter Vukadinov,

The PHP Team

20:10-20:30

Technical talk #7: ASP.NET

The .NET Team

20:30-20:50

Technical talk #8: JavaServer Faces (JSF)

Nikolai Dokovski,

The Java Team

20:50-21:10

Technical talk #9: Smashing Rails

Sava Chankov,

The Ruby Team

21:10-22:20

Open dispute and direct fight between the teams

The .NET Team

The PHP Team

The Java Team

The Ruby Team

The Referee Team

22:20-22:30

Voting, announcing the results and awarding the winners

All visitors vote

ASP.NET

ASP.NET is a set of Web development technologies provided by Microsoft as part of .NET Framework. It is used by developers to create dynamic Web applications and Web services. ASP.NET provides component-based architecture with comprehensive page rendering and execution model that relies on the concepts of the event-driven development. ASP.NET supports the concept of separation between the code and UI presentation and supports custom components, data binding and master pages. Developers can use C#, VB.NET and other .NET languages to create ASP.NET Web applications. ASP.NET is the best Web technology, isn’t it? If you don’t agree, come to fight at the ring.

ASP.NET AJAX

ASP.NET has a really strong story for AJAX. The AJAX implementation supports both a server centric and a client centric programming model. On the server new AJAX controls extend the Page Framework and offer the well-known control based and event-driven way of working. The AJAX controls take care of partial rendering of Web pages. Microsoft has released an impressive cross-browser compatible AJAX library on the client side. It allows you to do full client-side JavaScript development, and adds object orientation with inheritance, a type system including reflection and namespaces. And to top it all, the AJAX library is royalty-free and you can use and change it however you like. Surely no other AJAX framework can put up against this much power and survive a 12 round fight!

ASP.NET MVC Framework

Microsoft goes into a new direction of web application development with the introduction of the Model-View-Controller framework for ASP.NET. The benefits of the MVC approach include the ability to achieve and maintain a clear separation of concerns (data, presentation and actions), and also facilitates test driven development (TDD) and define page navigation rules. Microsoft’s MVC implementation is all about extensibility and flexibility. You have a free choice of the type of controller, the way URLs are routed and how views are created. The MVC Framework leverages the ASP.NET runtime and should be easy to learn for existing ASP.NET programmers, but also those coming from other runtimes and frameworks. All in all, the ASP.NET MVC Framework is sure to pack a punch. Will the combination of ASP.NET and MVC bring a quick knockout?

Java Web Technologies

The Java Enterprise platform (Java EE) provides solid foundation for development of Web applications and Web services. It introduces the concept of Web containers and Web applications. Java Web applications are built on the top of Servlet/JSP standards which serve as basis for the more complicated Web technologies. The Servlet API provides the basic execution model for the Web applications. The JavaServer Pages (JSP) technology provides additionally custom tags and tag libraries and has built-in expression language.

JavaServer Faces (JSF)

As a natural extension to the Servlet/JSP standards JavaServer Faces (JSF) provides standard component based architecture for Web applications. It provides reusable UI components and comprehensive rendering and execution model. Developers can benefit of using event driven development, data binding, control validation and page navigation rules. JSF is naturally extended to support AJAX with partial rendering and asynchronous execution and update of controls on the page. Shall the JSF gain a victory over the opponents as a technical effort or the Java team fill fall into boxing combat? Be sure to come and see.

Google Web Toolkit (GWT)

This session intends to reveal some of the benefits of GWT as UI Framework. Nowadays having a dynamic web UI is a must. Java programming is always preferred compared with pure HTML and Java Script. So combining both can really boost productivity and in the same way give us the opportunity to have a nice and flexible UI. The session will also include the usage of GWT in a real SAP project so that everybody can get a feeling for the product. Somebody mentioned JavaScript and AJAX support in .NET and PHP? No need of fight: GWT does not just use JavaScript and AJAX; those are in its blood.

Echo2 Framework

Echo2 is a platform for building Web applications that approach the capabilities of rich clients. The applications are developed using a component-oriented and event-driven API, eliminating the need to deal with HTML, JavaScript and the „page-based“ nature of Web browsers. Echo2 applications are by their nature AJAX-enabled. To the developer, Echo2 works just like a user interface toolkit with and presents very simple approach to write efficient Web applications. Any AJAX pugilists?

PHP and PHP Web Frameworks

Some developers believe that PHP code is always low quality and PHP does not have good frameworks and standards for enterprise development. Is this true? What makes PHP the most widely used Web development language?

PHP frameworks are hot topic in the Web development community. Some of the most popular frameworks are: ZendFramework, Symfony, Codelighter, CakePHP, eZ Components but this list can not be either accurate or comprehensive.

PHP does not need to fight or dispute with the rest. It is the largest community and keeps the largest market share in Web technologies, isn’t it?

Symphony Framework for PHP

Symfony is a complete PHP framework designed to optimize the development of Web applications. It contains numerous tools and classes aimed at shortening the development time of a complex Web applications. Additionaly, it automates common tasks so that the developer can focus entierly on the specifics of the application. Some of the key features are: MVC separation, simple templating and helpers, cache management, smart URLs, scaffolding, multilingualism and I18N support, AJAX support and built-in unit and functional testing framework. Does anybody think Symphony is not better than ASP.NET and JSF? We shall see.

Smashing Rails

Since its inception several years ago Ruby on Rails has steadily garnered a lot of attention. The rolling stock seems not to be hype-powered only in shunting established technologies. Rather than presenting Rails the Ruby team decided to let it speak on its own. Ruby on Rails will squash the other Web technologies. Come to see this.

Teams

5 teams and 23 contestants take part in the event. The teams:

­ The .NET Team – stands up for the ASP.NET Web technologies

­ The Java Team – stands up for the Java Web technologies like JSF, GWT, Echo, etc.

­ The PHP Team – stands up for the PHP Web technologies

­ The Ruby Team – stands up for the Ruby and Rails technologies

­ The Referees Team – technologically neutral, moderate the discussion

The .NET Team

Alex Thissen is .NET technology evangelist from INETA Europe Speakers Bureau. He works for Class-A, a company specialized in training and coaching on Microsoft technologies and tools. He is a .NET trainer and teaches and coaches developers to build better software. Alex has been a trainer for many years now and also spent quite some time with COM+ and Visual Basic. He has written a number of articles for various magazines, such as .NET Magazine, the Visual Basic Group and SDC Magazine. You can probably find Alex at conferences, seminars and other community events where he likes to share his experiences from training and coaching. Visit his blog here: http://www.alexthissen.nl/blogs/.

Branimir Giurov is very skillful Microsoft and .NET software engineer, with many years of experience as senior developer, trainer, consultant, team leader and development manager. He’s a C# MVP and a UG Lead at SofiaDev.org. Branimir is freelance developer. Visit his blog here: http://blogs.sofiadev.org/blogs/branimir/.

Stefan Dobrev is co-owner of Avaxo Ltd., an experienced .NET developer and distinguished speaker at various Microsoft events for developers. Visit his blog here: http://ligaz.blogspot.com.

Deyan Varchev is experienced .NET developer and a speaker at various Microsoft events for developers. Currently he is co-owner of Avaxo Ltd. where handles complex .NET and Web projects. Visit his blog here: http://blog.varchev.net/.

Galin Iliev is a senior software engineer with solid experience in .NET and Microsoft technologies. He has MCPD and MCSD.NET certifications. He is Microsoft certified trainer. Now Galin works as freelance developer. Visit his blog here: http://www.galcho.com/blog/.

Martin Kulov is founder of kulov.net, provider of news, events and valuable resources for software development community in Bulgaria and close region. Martin is member of INETA Speakers Bureau, MVP, MCT, MCSD.NET, and MCPD. His blog can be found at http://www.codeattest.com/blogs/martin.

Emil Stoychev is a senior .NET developer and leads the Web projects at CompletIT. He is also a MCPD and blogs at http://weblogs.asp.net/emilstoichev/.

The Java Team

Nikolay Dokovski is senior software engineer in SAP Labs Bulgaria and JSF 2.0 expert group member (JSR 314). He is a member of the SAP NetWeaver JST Web Container team, mainly involved in the development of the Java EE compliant Web container in the SAP NetWeaver platform.

Jordan Jordanov is senior software engineer in SAP Labs Bulgaria involved in the development of Java EE Web Applications for the SAP Netweaver Enterprise Portal. He is a team lead of the Knowledge Management & Collaboration team (KMC). Jordan plays the Scrum Master Role in the development of the „Collaboration Portal“ project based on GWT.

Peter Milev is senior software engineer with many years of programming experience for various platforms and languages. He is Java and open-source technologies expert with strong knowledge in Java EE platform and Web technologies. His experience also includes software architecture and design, consultancy, training and leading development teams.

Nikolay Nedyalkov is senior software engineer, lecturer, consultant and project leader with strong experience in Java, Java EE, .NET, database and Web development. He is technical director of the eBG.bg electronic payments portal and technical and business consultant in few other companies. Nikolay is president of the Association for Information Security (ISECA) and works in lots of public and government security projects. He has been lecturer in many courses in Sofia University and New Bulgarian University like: Information Security, Network Security, Software Engineering with Java, Writing Secure Code, Internet Programming with Java and others.

Vesko Arnaudov is senior software engineer in VMware Inc. He has many years of experience as developer, team leader, trainer and consultant. His expertise includes Java, Java EE, Oracle, Web and enterprise applications.

Naiden Gochev is experienced Java developer, working in ProxiAD Bulgaria. He years of experience in Java SE, Java EE and open source technologies including Swing, SWT, Struts, Spring, JSF, Hibernate, JPA, EJB, etc.

  The Java Team is supported by:

The PHP Team

Peter Vukadinov is senior software engineer and trainer with more than 6 years experience in Web applications development. He is expert in various software platforms and frameworks. Peter holds a Zend Certified Engineer for PHP 5 certification. He is a project manager in pi-consult.bg, director of training activities and PHP trainer in pi academy. Visit his blog here: http://vukadinov.blogspot.com/.

Valery Gantchev is experienced PHP and front end developer, developer in one of the most famous Bulgarian portals.

The Ruby Team

Sava Chankov is co-founder of Tutuf, a start-up aiming to allow spreadsheet power users to create (and support) fully fledged data entry and processing applications. He has worked with Ruby on Rails for few years and has given presentations at Openfest and Webtech. He also manages the local Ruby on Rails: Bulgaria mailing list.

Petyo Ivanov is owner of small company for development of Web projects based on the Ruby on Rails platform. Visit his Web site here: http://3atwork.com.

Stanislav Bozhkov is experienced Ruby on Rails developer and co-founder of http://svejo.net/.

Stanislav Peshterliev is Web developer with experience in PHP and Ruby on Rails.

Dimitar Jordanov is a newly convert to Rails from Java. His boxing skills are on par with his programming ones.

The Referees Team

Svetlin Nakov is software engineer with more than 10 years of experience in the development of Java, .NET, Web and Win32 applications, software engineering consultant and trainer, author of 4 books and above 20 technical articles and 50 presentations. He is one of the founders and currently chairman of the Bulgarian Association of Software Developers (BASD), director training and consulting activities in the National Academy for Software Development (NASD) and one of the founders of the Bulgarian Java User Group (BGJUG), a .NET group leader (BGNETUG) and author of open source projects. Visit his blog here: http://www.nakov.com/blog/.

Dimiter Kapitanov is senior software engineer at telerik. Dimiter has solid experience in development of .NET applications and reusable components. Visit his blog here: http://blogs.telerik.com/dimitarkapitanov/.

Mihail Stoynov is a software engineer experienced in both Java and .NET platforms. He has had his hands on a large variety of technologies in differently-sized projects. HP and Siemens have been amongst his employers. Mihail enjoys useful well-designed technologies disregarding the company behind them. He’s well known for doing BASD courses at Sofia University and has a lot of experience as a speaker (including abroad). Visit his blog here: http://mihail.stoynov.com/blog/.

Free Event

The event is free and the hall is large, so please come with your friends! Everyone will get small gifts from our sponsors.