Menu logo

Thoughts on Software Engineering

IT Boxing – ADO.NET Entity Framework and LINQ vs. Java Persistence API (JPA) and Hibernate

Next week (11 December 2007) I organized very interesting event for developers in Sofia: IT Boxing championship where .NET and Java developers will dispute the state-of-the-art data access technologies in their platforms:

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, discussions and open debate that ends up in direct fight with inflatable boxing gloves. For each IT boxing event we assign a topic for dispute and teams that stand up for contrary visions. During the fight all contestants are obligated to keep the opponent of injuring.

ADO.NET Entity Framework + LINQ vs. Java Persistence API and Hibernate

The topic of this event is “Database Access Technologies and Object-Relational Persistence Frameworks in .NET and Java”. The .NET team will present the new ADO.NET, the ADO.NET Entity Framework and LINQ in C# 3.0. The Java team will stand up for Hibernate and the Java Persistence API (JPA).



Topic Speakers
18:00-18:20 Presenting the “IT Boxing Championship” initiative Svetlin Nakov
18:20-18:30 Presenting the dispute topic, teams and rules Svetlin Nakov
18:30-18:35 Draw lots: Who will start first Svetlin Nakov
18:35-19:20 ADO.NET Entity Framework and LINQ The .NET Team
19:20-19:35 Break
19:35-20:20 Java Persistence API and Hibernate The Java Team
20:20-21:30 Open dispute and direct fight between the teams The .NET TeamThe Java Team The Referee Team

ADO.NET, ADO.NET Entity Framework and LINQ

ADO.NET is the standard data access library built in .NET Framework used by developers to access and modify data stored in relational database systems, call stored procedures and access non-relational data sources like XML.
LINQ (Language Integrated Query) is extension to C# and other .NET languages that adds native querying syntax directly into the language and thus simplifies querying data and dramatically reduces the amount of code.
ADO.NET Entity Framework is new paradigm for developing database applications. It allows developers to focus on data through an object model instead of through a logical/relational data model. It abstracts the logical database structure using a conceptual layer, a mapping layer, and a logical layer and provides support for LINQ to simplify querying.

Java Persistence API and Hibernate

Java Persistence API (JPA) is a Java framework based on the concept of object-relational mapping (ORM) that allows developers to manage relational data in Java SE and Java EE platforms. JPA defines persistent entities as lightweight Java classes that are mapped to the database tables. Entities typically have relationships with other entities, and these relationships can be specified directly in the entity class by using annotations, or in a separate XML descriptor. Once the mapping between classes and tables is defined, the persistent entities can be loaded, modified, persisted, deleted and queried by simple API.
Hibernate is a powerful, high performance object/relational persistence framework, very popular among the Java developer community. By concept it is very similar to JPA and provides mapping objects to tables, querying and manipulating persistent objects.


Three teams take part in the event:
­ The .NET Team – stands up for ADO.NET Entity Framework and LINQ
­ The Java Team – stands up for Java Persistence API and Hibernate
­ The Referees Team – technologically neutral, moderate the discussion

The .NET Team

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 Branimir is freelance developer. Visit his blog here:

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:

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://

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:

Dimiter Kapitanov is senior software engineer at telerik. Dimiter has solid experience in development of .NET applications and reusable components. Visit his blog here: https://softuni.bg_kapitanov/.

The Java Team

Miroslav Nachev is software engineer with more than 18 years of experience in software design and development, system integration, VoIP and tele¬communications projects. Some of the programming languages and technologies in his competence include Java, Fortran-77, Pascal, x86 assembler, C/C++, 4GL Magic, Web Services, Hibernate, JPA, XML Security & Encryption, Java Security, X.509 Certificates, XAdES, Java EE, Swing and VoIP.

Martin Valkanov is senior software engineer in He has solid development experience in Java and open source technologies, Web applications, databases and enterprise systems.

Peter Milev is experienced Java engineer. He has years of experience in Java and open source technologies, focusing on Web applications with AJAX and database systems.

Svetoslav Kapralov is senior software engineer, experienced in various Java technologies and frameworks.

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.

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 30 technical articles and 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 and author of open source projects. Visit his blog here:

Nikolay Todorov is team lead in Musala Soft. He has strong commercial experience with both Java and .NET (he is Microsoft Certified Application Developer with .NET) and solid practice and knowledge about software development processes, including Agile.

Stanimir Boychev is technical director and managing partner in Musala Soft. His 12+ years experience in the area of software development covers a very broad set of technologies, including architecting and leading Java EE and .NET projects.


The event will be held on 11 December 2007 (Tuesday), 18:00 h in Park Hotel “Moscow”, Sofia, Hall “Moscow”.


The event is sponsored by two leading software companies in Bulgaria: telerik and Musala Soft.

Comments (2)

2 Responses to “IT Boxing – ADO.NET Entity Framework and LINQ vs. Java Persistence API (JPA) and Hibernate”

  1. David says:

    What was the result?

RSS feed for comments on this post. TrackBack URL