BOOTCAMP: 64-Bit Programming in C++
| June 19, 2008 9:00 am | to | June 21, 2008 4:00 pm |
| August 21, 2008 9:00 am | to | August 23, 2008 4:00 pm |
| October 2, 2008 9:00 am | to | October 4, 2008 4:00 pm |
| November 13, 2008 | ||
| 9:00 am | ||
64-bit technology introduces several new and complex tasks for software-developers. Even that the hardware developing industry claims that future software development should take care about the new introduced compiler systems, it is necessary to have a deep inside view on how the new underlying 64-bit assembly language works. This article describes what 64-bit means for future software developments, how 64-bit influences assembly programming and how to port applications programmed under 32-bit to 64-bit. It is heavy based on the IA architecture and the Windows® operating system.
The introduction of the 64-bit technology leads into several discussions if this change is really necessary. Some arguments are to speed up computation time or to make calculations more precise. These efforts lead into hard problems which have to be solved by upcoming compilers or operating systems. Especially the necessary change of the operating system infrastructure causes heavy problem porting older 32-bit applications to 64-bit compatibility. Since assembly programming is a comfortable task under 32-bit systems (e.g. MASM, TASM, NASM, FASM and others), the question stays on how to port software and which changes of the architecture affects the current programming techniques. The new 64-bit Architecture introduces many innovations. Some of them are:
- Rich Instruction Set
- Bundled Execution
- Predicated Instructions
- Large Register Files
- Register Stack
- Rotating Registers
- Modulo Scheduled Loops
- Control/Data Speculation
- Cache Control Instructions
- High-precision Floating-Point
Compared to the IA-32 architecture the new IA-64 architecture allows several advantages for the programmer. One of them is the clear and explicit programming technique which results in EPIC (Explicit Parallel Instruction Computing). EPIC is an Intel® IA-64 technique. Additional the programmer can code now more register-based, which means that everything is kept in registers as long as possible. The resulting assembly is code has a clear structure.
This bootcamp was designed for students who already have a basic understanding of programming and want to learn the art of coding in C++. Eclipse IDE and GCC are the main programs that will be used along with several other public tools that will be distributed on-site and software will be created by the student themselves as a learning objective. Some advanced programming techniques will also be taught such as:
- Building a project with Eclipse IDE
- Development under Linux and Windows
- Cross-Platform debugging
- Buffer Overflows and their prevention
In this 3 day hands-on course, you will gain the necessary skills to discover the true nature of any C++ binary. You will learn how to recognize the high level language constructs (such as branching statements, looping functions and STL) critical to performing a thorough and professional development of a binary. After learning these important introductory skills, you will advance to:
- develop own applications in C++
- transform problems to algorithms to running software applications
- prevent software vulnerability
IITAC will train you on the standard C++ development IDE Eclipse.
The content in detail
- Introduction to C++ (Variables, int, float, double, char, Incrementing, Decrementing, Constants, Boolean)
- Code Flow (IF-THEN-ELSE, SWITCH, FOR loops, WHILE loops, REPEAT UNTIL loops)
- I/O
- Subroutines (Functions, Procedures, Paremeters, Prototypes)
- Fields (Arrays, multidimensional Arrays)
- Strings
- Structures
- Pointer (Pointer as parameter, Fields as pointer, Pointer Artihmetic)
- Classes
- Standard Template Library (STL) and how to build own tenplates (Function Templates, Class Templates)
- Exceptions
- Application’s Code Vulnerabilities (Common code vulnerabilities, Weak points research, Code-Flow analysis, Binary Analysis)
How You Benefit
The demand for C++ developers as highly increased during the recent past years, leading toward a more recognised profession. Software developers are highly regarded in the world of IT, with an ever-growing need for more qualified and experienced experts. Getting a better-understanding of the inner workings of the software system and application-level debugging is time-saving during software development. Knowing how to find more detailed information about bugs and solving them yourself, giving you the knowledge to draw more accurate conclusions based on programming knowledge rather than seeking the web for an hypothetical answer. By getting training with real-world problems and the latest tools and techniques, you will stay a step ahead of the others when competing for the same position. C++ will always an ace in your sleeve that will be used on a day-to-day basis quite rapidly.
How the Course is Run
This course is by no means a 3-day lecture. Instead, you will be engaged in a number of individual and group hands-on exercises to reinforce and solidify everything that is taught in the class. Some of the exercises are held in a competitive nature, followed by class discussion to pin point elegant approaches and solutions that various individuals or groups may have used. Despite the fact that the course is held in Italy, Germany or Canada, take home exercises will be available for the type-A personalities attending the course. The course can be available in alternate languages depending on the selected location.
What’s Included
- 3 Days of Expert Instruction from a senior instructor with real-world experience and deep knowledge of course content.
- Guaranteed small class size (less than 12 Students), you get an intimate learning setting not offered at any of our competitors.
- IITAC Development DVD. Includes every program covered in the course for at home study, development tools, Reverse Code Engineering Tools, training files.
- Snacks and refreshments included.
- IITAC Certified Software Development Professional (C++) exam fees for the certification according to ISO/IEC 17024.
- Lecture and Lab Exercises.
Who Should Attend
If you are interested in the field of software development, want to learn how to dissect problems and algorithms, search for security vulnerabilities and bugs, want to discuss cutting edge technologies, techniques and ideas then this class is for you.
Learning Environment
Against to direct class materials, slides and hands-on exercises, students will have many opportunities to engage in one-on-one questions with instructors. Students get trained the practical way with intensive supervision. As students bring their own laptop, work done during the bootcamp gets not lost. Furthermore, students will be divided into groups by experience to foster student-student knowledge transfer as well.
What to bring
Students must bring their own laptop running an installation of Linux, Microsoft® Windows® 2000, XP, Vista or 2003 either natively or within a virtual machine. Damn Vulnerable Linux is provided. Students should also have GCC and Eclipse installed. VMWare Desktop with already configured Windows and Linux virtual machines is optional. All other tools will be provided for the students in the class room. Prospective students should be comfortable operating Microsoft Windows and have a basic understanding of programming concepts. It is important that the student brings his/her own 64-bit laptop with 64-bit OS!
Pricing
Bootcamp pricing is 1.499 Euro per Person. Minimum of 5 participiants, maximum of 12 participiants.
BOOTCAMP: TASM Internals Bootcamp
| April 28, 2008 9:00 am | to | April 30, 2008 4:00 pm |
| June 2, 2008 9:00 am | to | June 4, 2008 4:00 pm |
| September 8, 2008 9:00 am | to | September 10, 2008 4:00 pm |
| December 8, 2008 9:00 am | to | December 10, 2008 4:00 pm |
An assembler as powerful as TASM is capable of enmulating higher level languages while maintaining the performance and size of assembler code. This has been demonstrated with C style code that MASM already supports. The macro capacity built into TASM has allowed the development of a combined macro and library system that partly emulates basic style string handling and other similar language capacities. This allows experienced programmers with multiple language skills to leverage their existing skills and get up to pace writing TASM code more quickly.
TASM comes with its own small default editor that has a reasonable number of prebuilt scripts to make code generation fast and easy. There is the choice of two seperate code generators for creating full window skeletons to develop application in. The editor has a large range of Winhelp help files so that information is available quickly when you need it and its menu system is extendable so you can add more information as you need it. You can easily extend this capacity by rolling your own scripts and prebuilt templates.
TASM assumes that the programmers who will use it already have experience in 32 bit Windows API programming using compilers and have done some work in assembler. It is not designed as a beginners package and it does not have the support for beginners to learn the basic concepts about assembler. It is recommended that beginners to programming learns a compiler like C/C++ Pascal/Delphi or PowerBASIC before they start on an assembler as this will produce the necessary experience to deal with concepts like registers, data sizes or registers, data types, assembler mnemonics, system API calls and different calling conventions. The learner can always come back to assembler once they are familiar and confortable with a compiler.
What you will learn
This bootcamp was designed for students who already have a basic understanding of programming and want to learn the art of coding in TASM. RadASM and TASM are the main programs that will be used along with several other public tools that will be distributed on-site and software will be created by the student themselves as a learning objective. Some advanced programming techniques will also be taught such as:
- Building a project with TASM
- Development under Windows
- Debugging
- TASM Internals
- GUI Programming
In this 3 day hands-on course, you will gain the necessary skills to discover the true nature of any assembly language binary. You will learn how to recognize the high level language constructs (such as branching statements, looping functions and STL) critical to performing a thorough and professional development of a binary. After learning these important introductory skills, you will advance to:
- develop own applications in TASM
- transform problems to algorithms to running software applications
- prevent software vulnerability
IITAC will train you on the standard assembly language development IDE RadASM.
How You Benefit
The demand for assembly language developers as highly increased during the recent past years, leading toward a more recognised profession. Software developers are highly regarded in the world of IT, with an ever-growing need for more qualified and experienced experts. Getting a better-understanding of the inner workings of the software system and application-level debugging is time-saving during software development. Knowing how to find more detailed information about bugs and solving them yourself, giving you the knowledge to draw more accurate conclusions based on programming knowledge rather than seeking the web for an hypothetical answer. By getting training with real-world problems and the latest tools and techniques, you will stay a step ahead of the others when competing for the same position. Assembly Language and MASM will always an ace in your sleeve that will be used on a day-to-day basis quite rapidly.
How the Course is Run
This course is by no means a 3-day lecture. Instead, you will be engaged in a number of individual and group hands-on exercises to reinforce and solidify everything that is taught in the class. Some of the exercises are held in a competitive nature, followed by class discussion to pin point elegant approaches and solutions that various individuals or groups may have used. Despite the fact that the course is held in Italy, Germany or Canada, take home exercises will be available for the type-A personalities attending the course. The course can be available in alternate languages depending on the selected location.
What’s Included
- 3 Days of Expert Instruction from a senior instructor with real-world experience and deep knowledge of course content.
- Guaranteed small class size (less than 12 Students), you get an intimate learning setting not offered at any of our competitors.
- IITAC Development DVD. Includes every program covered in the course for at home study, development tools, Reverse Code Engineering Tools, training files.
- Snacks and refreshments included.
- IITAC Certified Software Development Professional (C++) exam fees for the certification according to ISO/IEC 17024.
- Lecture and Lab Exercises.
Who Should Attend
If you are interested in the field of software development, want to learn how to dissect problems and algorithms, search for security vulnerabilities and bugs, want to discuss cutting edge technologies, techniques and ideas then this class is for you.
Learning Environment
Against to direct class materials, slides and hands-on exercises, students will have many opportunities to engage in one-on-one questions with instructors. Students get trained the practical way with intensive supervision. As students bring their own laptop, work done during the bootcamp gets not lost. Furthermore, students will be divided into groups by experience to foster student-student knowledge transfer as well.
What to bring
Students must bring their own laptop running an installation of Microsoft® Windows® 2000, XP, Vista or 2003 either natively or within a virtual machine. Students should also have TASM and RadASM installed. VMWare Desktop with already configured Windows and Linux virtual machines is optional. All other tools will be provided for the students in the class room. Prospective students should be comfortable operating Microsoft Windows and have a basic understanding of programming concepts.
Pricing
Bootcamp pricing is 1.499 Euro per Person. Minimum of 5 participiants, maximum of 12 participiants.
BOOTCAMP: MASM32 Internals Bootcamp
| June 26, 2008 9:00 am | to | June 28, 2008 4:00 pm |
| September 11, 2008 9:00 am | to | September 13, 2008 4:00 pm |
An assembler as powerful as MASM is capable of enmulating higher level languages while maintaining the performance and size of assembler code. This has been demonstrated with C style code that MASM already supports. The macro capacity built into MASM has allowed the development of a combined macro and library system that partly emulates basic style string handling and other similar language capacities. This allows experienced programmers with multiple language skills to leverage their existing skills and get up to pace writing MASM code more quickly.
MASM already is capable of building UNICODE applications using the traditional resource string method but additional macros are now supplied to write UNICODE strings directly into the data section in the same manner as normal BYTE data to make the capacity easier to use. There are a couple of UNICODE examples in the example code that show both methods.
MASM32 comes with its own small default editor that has a reasonable number of prebuilt scripts to make code generation fast and easy. There is the choice of two seperate code generators for creating full window skeletons to develop application in. The editor has a large range of Winhelp help files so that information is available quickly when you need it and its menu system is extendable so you can add more information as you need it. You can easily extend this capacity by rolling your own scripts and prebuilt templates.
MASM32 assumes that the programmers who will use it already have experience in 32 bit Windows API programming using compilers and have done some work in assembler. It is not designed as a beginners package and it does not have the support for beginners to learn the basic concepts about assembler. It is recommended that beginners to programming learns a compiler like C/C++ Pascal/Delphi or PowerBASIC before they start on an assembler as this will produce the necessary experience to deal with concepts like registers, data sizes or registers, data types, assembler mnemonics, system API calls and different calling conventions. The learner can always come back to assembler once they are familiar and confortable with a compiler.
What you will learn
This bootcamp was designed for students who already have a basic understanding of programming and want to learn the art of coding in MASM. RadASM and MASM32 are the main programs that will be used along with several other public tools that will be distributed on-site and software will be created by the student themselves as a learning objective. Some advanced programming techniques will also be taught such as:
- Building a project with MASM32
- Development under Windows
- Debugging
- MASM32 Internals
- GUI Programming
In this 3 day hands-on course, you will gain the necessary skills to discover the true nature of any assembly language binary. You will learn how to recognize the high level language constructs (such as branching statements, looping functions and STL) critical to performing a thorough and professional development of a binary. After learning these important introductory skills, you will advance to:
- develop own applications in MASM32
- transform problems to algorithms to running software applications
- prevent software vulnerability
IITAC will train you on the standard assembly language development IDE RadASM.
How You Benefit
The demand for assembly language developers as highly increased during the recent past years, leading toward a more recognised profession. Software developers are highly regarded in the world of IT, with an ever-growing need for more qualified and experienced experts. Getting a better-understanding of the inner workings of the software system and application-level debugging is time-saving during software development. Knowing how to find more detailed information about bugs and solving them yourself, giving you the knowledge to draw more accurate conclusions based on programming knowledge rather than seeking the web for an hypothetical answer. By getting training with real-world problems and the latest tools and techniques, you will stay a step ahead of the others when competing for the same position. Assembly Language and MASM will always an ace in your sleeve that will be used on a day-to-day basis quite rapidly.
How the Course is Run
This course is by no means a 3-day lecture. Instead, you will be engaged in a number of individual and group hands-on exercises to reinforce and solidify everything that is taught in the class. Some of the exercises are held in a competitive nature, followed by class discussion to pin point elegant approaches and solutions that various individuals or groups may have used. Despite the fact that the course is held in Italy, Germany or Canada, take home exercises will be available for the type-A personalities attending the course. The course can be available in alternate languages depending on the selected location.
What’s Included
- 3 Days of Expert Instruction from a senior instructor with real-world experience and deep knowledge of course content.
- Guaranteed small class size (less than 12 Students), you get an intimate learning setting not offered at any of our competitors.
- IITAC Development DVD. Includes every program covered in the course for at home study, development tools, Reverse Code Engineering Tools, training files.
- Snacks and refreshments included.
- IITAC Certified Software Development Professional (C++) exam fees for the certification according to ISO/IEC 17024.
- Lecture and Lab Exercises.
Who Should Attend
If you are interested in the field of software development, want to learn how to dissect problems and algorithms, search for security vulnerabilities and bugs, want to discuss cutting edge technologies, techniques and ideas then this class is for you.
Learning Environment
Against to direct class materials, slides and hands-on exercises, students will have many opportunities to engage in one-on-one questions with instructors. Students get trained the practical way with intensive supervision. As students bring their own laptop, work done during the bootcamp gets not lost. Furthermore, students will be divided into groups by experience to foster student-student knowledge transfer as well.
What to bring
Students must bring their own laptop running an installation of Microsoft® Windows® 2000, XP, Vista or 2003 either natively or within a virtual machine. Students should also have MASM and RadASM installed. VMWare Desktop with already configured Windows and Linux virtual machines is optional. All other tools will be provided for the students in the class room. Prospective students should be comfortable operating Microsoft Windows and have a basic understanding of programming concepts.
Pricing
Bootcamp pricing is 1.499 Euro per Person. Minimum of 5 participiants, maximum of 12 participiants.
Video: How to setup your own language settings in Damn Vulnerable Linux
Since several people requested this: This 1 minute video shows how to setup your own language settings in Damn Vulnerable Linux.
How to setup your own language settings in Damn Vulnerable Linux [0:54m]: Play Now | Play in Popup | Downloads 202BOOTCAMP: Relational Database Design
| May 15, 2008 9:00 am | to | May 16, 2008 4:00 pm |
| July 17, 2008 9:00 am | to | July 18, 2008 4:00 pm |
| September 4, 2008 9:00 am | to | September 5, 2008 4:00 pm |
| November 13, 2008 9:00 am | to | November 14, 2008 4:00 pm |
Attempting to create a database for your application without understanding the relational model or foundations is like driving a car during rush hour without ever learning how to drive. Sooner or later, you will crash. This course lays the foundations of relational database design, the basics and foundational principles of a solid database. You will learn about:
- Logical data modeling and sound design
- Building blocks of a relational database
- Normalizing your data
- Keys, indexes, views, stored procedures
- Field specifications, table relationships
- Business rules and data integrity
- Avoiding mistakes and troubleshooting
If you have little or no experience with database design and need to create a database for your application, this class should be a requirement.
How You Benefit
The demand for SQL developers as highly increased during the recent past years, leading toward a more recognised profession. Software developers are highly regarded in the world of IT, with an ever-growing need for more qualified and experienced experts. Getting a better-understanding of the inner workings of the software system and application-level debugging is time-saving during software development. Knowing how to find more detailed information about bugs and solving them yourself, giving you the knowledge to draw more accurate conclusions based on programming knowledge rather than seeking the web for an hypothetical answer. By getting training with real-world problems and the latest tools and techniques, you will stay a step ahead of the others when competing for the same position. SQL will always an ace in your sleeve that will be used on a day-to-day basis quite rapidly.
How the Course is Run
This course is by no means a 2-day lecture. Instead, you will be engaged in a number of individual and group hands-on exercises to reinforce and solidify everything that is taught in the class. Some of the exercises are held in a competitive nature, followed by class discussion to pin point elegant approaches and solutions that various individuals or groups may have used. Despite the fact that the course is held in Italy, Germany or Canada, take home exercises will be available for the type-A personalities attending the course. The course can be available in alternate languages depending on the selected location.
What’s Included
- 2 Days of Expert Instruction from a senior instructor with real-world experience and deep knowledge of course content.
- Guaranteed small class size (less than 12 Students), you get an intimate learning setting not offered at any of our competitors.
- IITAC Development DVD. Includes every program covered in the course for at home study, development tools, Reverse Code Engineering Tools, training files.
- Snacks and refreshments included.
- IITAC Certified Relational Database Professional exam fees for the certification according to ISO/IEC 17024.
- Lecture and Lab Exercises.
Who Should Attend
If you are interested in the field of software development, want to learn how to dissect problems and algorithms, search for security vulnerabilities and bugs, want to discuss cutting edge technologies, techniques and ideas then this class is for you.
Learning Environment
Against to direct class materials, slides and hands-on exercises, students will have many opportunities to engage in one-on-one questions with instructors. Students get trained the practical way with intensive supervision. As students bring their own laptop, work done during the bootcamp gets not lost. Furthermore, students will be divided into groups by experience to foster student-student knowledge transfer as well.
What to bring
Students must bring their own laptop running an installation of Linux, Microsoft® Windows® 2000, XP, Vista or 2003 either natively or within a virtual machine. Students should have Delphi installed. VMWare Desktop with already configured Windows and Linux virtual machines is optional. All other tools will be provided for the students in the class room. Prospective students should be comfortable operating Microsoft Windows and have a basic understanding of programming concepts.
Pricing
Bootcamp pricing is 1.199 Euro per Person. Minimum of 5 participiants, maximum of 12 participiants.
BOOTCAMP: Introduction to SQL Programming
| August 13, 2008 9:00 am | to | August 16, 2008 4:00 pm |
| October 15, 2008 9:00 am | to | October 18, 2008 4:00 pm |
SQL (Structured Query Language) is a database computer language designed for the retrieval and management of data in relational database management systems (RDBMS), database schema creation and modification, and database object access control management. SQL is a standard interactive and programming language for querying and modifying data and managing databases. Although SQL is both an ANSI and an ISO standard, many database products support SQL with proprietary extensions to the standard language. The core of SQL is formed by a command language that allows you to retrieve, insert, update, and delete data, and perform management and administrative functions. SQL also includes a call-level interface (SQL/CLI) for accessing and managing data and databases remotely.
Day 1 - Introduction to SQL
- Understanding Relational Databases
- Designing a database
- Understanding data entities and relationships
- Guidelines for Normalization in design
- Creating the database and objects with SQL
- Understanding SQL syntax
- Creating tables and indexes
- Understanding SQL-92 constraints
- Modifying and deleting databases and objects
- Populating databases
- Modifying and deleting existing data
Day 2 - SQL - Selecting and Presenting Data
- Elements of a select statement
- Narrowing down specific selections
- Sorting your query results
- Eliminating duplicate rows
- Aggregates
- Grouping data
- Null values
- Working with multiple tables
- Joins and their uses
- Working with joins
Day 3 - SQL: Structuring Queries & Views
- Understanding subqueries, their need and how they work
- Joins vs. Subqueries - Know the difference
- Stick to the rules
- Evaluating different return values with subqueries
- Nesting of queries
- Introducing Views and their advantages
- Understanding how views work
- Modifying data through views
- Copying data
- Administration pitfalls
Day 4 - SQL - Real Business Solutions
- Database Management in the Real World
- Data security issues
- Transaction processing and handling
- Performance considerations
- Maintaining data integrity
- Formatting data for reports
- Understanding patterns
- Complex joins and subqueries
- Common mistakes, how to spot them and avoid them
How You Benefit
The demand for SQL developers as highly increased during the recent past years, leading toward a more recognised profession. Software developers are highly regarded in the world of IT, with an ever-growing need for more qualified and experienced experts. Getting a better-understanding of the inner workings of the software system and application-level debugging is time-saving during software development. Knowing how to find more detailed information about bugs and solving them yourself, giving you the knowledge to draw more accurate conclusions based on programming knowledge rather than seeking the web for an hypothetical answer. By getting training with real-world problems and the latest tools and techniques, you will stay a step ahead of the others when competing for the same position. SQL will always an ace in your sleeve that will be used on a day-to-day basis quite rapidly.
How the Course is Run
This course is by no means a 4-day lecture. Instead, you will be engaged in a number of individual and group hands-on exercises to reinforce and solidify everything that is taught in the class. Some of the exercises are held in a competitive nature, followed by class discussion to pin point elegant approaches and solutions that various individuals or groups may have used. Despite the fact that the course is held in Italy, Germany or Canada, take home exercises will be available for the type-A personalities attending the course. The course can be available in alternate languages depending on the selected location.
What’s Included
- 4 Days of Expert Instruction from a senior instructor with real-world experience and deep knowledge of course content.
- Guaranteed small class size (less than 12 Students), you get an intimate learning setting not offered at any of our competitors.
- IITAC Development DVD. Includes every program covered in the course for at home study, development tools, Reverse Code Engineering Tools, training files.
- Snacks and refreshments included.
- IITAC Certified Software Development Professional (SQL) exam fees for the certification according to ISO/IEC 17024.
- Lecture and Lab Exercises.
Who Should Attend
If you are interested in the field of software development, want to learn how to dissect problems and algorithms, search for security vulnerabilities and bugs, want to discuss cutting edge technologies, techniques and ideas then this class is for you.
Learning Environment
Against to direct class materials, slides and hands-on exercises, students will have many opportunities to engage in one-on-one questions with instructors. Students get trained the practical way with intensive supervision. As students bring their own laptop, work done during the bootcamp gets not lost. Furthermore, students will be divided into groups by experience to foster student-student knowledge transfer as well.
What to bring
Students must bring their own laptop running an installation of Linux, Microsoft® Windows® 2000, XP, Vista or 2003 either natively or within a virtual machine. Students should have Delphi installed. VMWare Desktop with already configured Windows and Linux virtual machines is optional. All other tools will be provided for the students in the class room. Prospective students should be comfortable operating Microsoft Windows and have a basic understanding of programming concepts.
Pricing
Bootcamp pricing is 1.799 Euro per Person. Minimum of 5 participiants, maximum of 12 participiants.
BOOTCAMP: Delphi Development Advanced
| May 29, 2008 9:00 am | to | May 31, 2008 4:00 pm |
| July 14, 2008 9:00 am | to | July 16, 2008 4:00 pm |
| September 22, 2008 9:00 am | to | September 24, 2008 4:00 pm |
| November 24, 2008 9:00 am | to | November 26, 2008 4:00 pm |
Learn Delphi Introduction to Delphi, a brief history and overview and a general coverage of features that make it such a powerful development tool.
Content in Details
Delphi is based on Object Pascal. While Delphi does a great deal for you without coding, you will eventually have to write code. This course covers the basics of Pascal and goes beyond an introductory coverage of the concepts. You will also learn some advanced programming concepts. We will cover the following topics:
Multi-tier Architecture with Delphi
- Understanding the multi-tier model
- Logical vs physical multi-tier programming
- Overview of DataSnap
- Working with connection protocols and data packets
- Utilizing Delphi’s client-side and server-side components
- Creating a thin client
- Server constraints
- Master/Detail relations
Writing Delphi Components
- Introduction to component writing
- Overview of important concepts and rules
- Determining the logic flow
- Creating properties
- Creating events
- Creating methods
- Compound components
- Handling dependencies
Writing Advanced Components
- Customizing Windows controls
- Handling messages and notifications
- Making a dialog box a component
- Collection properties
- Defining custom actions
- Creating property editors
- Using graphics in components
Writing Database Components
- Data-aware components
- The TDataLink Class
- Writing field-oriented data-aware controls
- Creating custom data links
- Writing record-oriented data-aware controls
- Creating a record viewer
- Customizing a data grid
Basic Internet Programming
- Building socket applications
- Overview of Indy components
- Sending and receiving mail with Delphi
- Building an HTTP Server and Client
- Interfacing with the Google API
- Generating HTML pages
- Producing HTML tables
- Generating dynamic
Creating Web Applications
- Creating and using style sheets
- Introduction to IntraWeb
- Understanding the IntraWeb architecture
- Building IntraWeb applications
- Writing multi-page applications
- Managing sessions
- Building web database applications
- Client-side applications
Using XML Technologies
- Introduction to XML
- Working with XML
- Manipulating XML documents in Delphi
- The Document Object Model (DOM)
- Creating documents using the DOM
- XML data-binding interfaces
- Using the SAX API
- Mapping XML with transformations
- Processing large XML documents
Web Services and SOAP
- Introduction to Web Services
- Introduction to SOAP and WSDL
- Building web services
- Publishing the WSDL
- Creating a custom client
- Working with data
- Passing XML documents
- Debugging the SOAP headers
- Handling attachments
How You Benefit
The demand for Delphi developers as highly increased during the recent past years, leading toward a more recognised profession. Software developers are highly regarded in the world of IT, with an ever-growing need for more qualified and experienced experts. Getting a better-understanding of the inner workings of the software system and application-level debugging is time-saving during software development. Knowing how to find more detailed information about bugs and solving them yourself, giving you the knowledge to draw more accurate conclusions based on programming knowledge rather than seeking the web for an hypothetical answer. By getting training with real-world problems and the latest tools and techniques, you will stay a step ahead of the others when competing for the same position. Delphi will always an ace in your sleeve that will be used on a day-to-day basis quite rapidly.
How the Course is Run
This course is by no means a 3-day lecture. Instead, you will be engaged in a number of individual and group hands-on exercises to reinforce and solidify everything that is taught in the class. Some of the exercises are held in a competitive nature, followed by class discussion to pin point elegant approaches and solutions that various individuals or groups may have used. Despite the fact that the course is held in Italy, Germany or Canada, take home exercises will be available for the type-A personalities attending the course. The course can be available in alternate languages depending on the selected location.
What’s Included
- 3 Days of Expert Instruction from a senior instructor with real-world experience and deep knowledge of course content.
- Guaranteed small class size (less than 12 Students), you get an intimate learning setting not offered at any of our competitors.
- IITAC Development DVD. Includes every program covered in the course for at home study, development tools, Reverse Code Engineering Tools, training files.
- Snacks and refreshments included.
- IITAC Certified Software Development Professional (Delphi) exam fees for the certification according to ISO/IEC 17024.
- Lecture and Lab Exercises.
Who Should Attend
If you are interested in the field of software development, want to learn how to dissect problems and algorithms, search for security vulnerabilities and bugs, want to discuss cutting edge technologies, techniques and ideas then this class is for you.
Learning Environment
Against to direct class materials, slides and hands-on exercises, students will have many opportunities to engage in one-on-one questions with instructors. Students get trained the practical way with intensive supervision. As students bring their own laptop, work done during the bootcamp gets not lost. Furthermore, students will be divided into groups by experience to foster student-student knowledge transfer as well.
What to bring
Students must bring their own laptop running an installation of Linux, Microsoft® Windows® 2000, XP, Vista or 2003 either natively or within a virtual machine. Students should have Delphi installed. VMWare Desktop with already configured Windows and Linux virtual machines is optional. All other tools will be provided for the students in the class room. Prospective students should be comfortable operating Microsoft Windows and have a basic understanding of programming concepts.
Pricing
Bootcamp pricing is 1.499 Euro per Person. Minimum of 5 participiants, maximum of 12 participiants.
BOOTCAMP: Delphi Development Intermediates
| April 24, 2008 9:00 am | to | April 26, 2008 4:00 pm |
| June 19, 2008 9:00 am | to | June 21, 2008 4:00 pm |
| August 14, 2008 9:00 am | to | August 16, 2008 4:00 pm |
| October 16, 2008 9:00 am | to | October 18, 2008 4:00 pm |
| December 11, 2008 9:00 am | to | December 13, 2008 4:00 pm |
Learn Delphi Introduction to Delphi, a brief history and overview and a general coverage of features that make it such a powerful development tool.
Content in Details
Delphi is based on Object Pascal. While Delphi does a great deal for you without coding, you will eventually have to write code. This course covers the basics of Pascal and goes beyond an introductory coverage of the concepts. You will also learn some advanced programming concepts. We will cover the following topics:
Delphi Programming Concepts
- Learn Delphi Control-related techniques
- Using multi-page forms
- Creating ToolBars and StatusBars
- Using Actions, ActionLists, the Action Manager
- Working with frames
- Handling keyboard and mouse input
- Dragging and drawing with the mouse
- Form handling techniques
Delphi Programming Concepts IV
- The Application object
- Background processing and multi-tasking
- Threading
- Creating MDI applications
- INI files and the Windows Registry
- Building and using DLLs in Delphi
- Working with DLL functions
- Working with Delphi Packages
Client/Server with dbExpress
- Overview of client/server architecture in Delphi
- Server-side programming
- Overview of the dbExpress library
- Using MySQL, InterBase, Oracle, Informix, MS SQL Server or IBM DB2 with Delphi
- Working with the ClientDataSet component
- Working with packets
- Handling updates and error reconciliation
- Using transactions
Real World RDBMS Techniques
- Setting up and using IDs
- Working with parametric queries
- Working with functions, procedures and complex queries
- Enhancing your searches
- Handling multi-facilities and complex setups
- Building an efficient user interface
- Creating a lookup dialog
- Meeting the need of your power users
Working with ADO
- Working with and deploying MDAC
- Overview of Delphi’s dbGo
- Working with data link files
- Getting schema information
- Using the Jet Engine
- Utilizing transaction processing
- Working with disconnected and persistent recordsets
- Understanding the Briefcase Model
Rave Reports
- Introduction to Rave Reports
- Overview of the Rave Delphi components
- Overview of the Rave designer components
- Reporting on your data
- Master/Detail Reports
- Scripting Reports
- Handling report calculations
How You Benefit
The demand for Delphi developers as highly increased during the recent past years, leading toward a more recognised profession. Software developers are highly regarded in the world of IT, with an ever-growing need for more qualified and experienced experts. Getting a better-understanding of the inner workings of the software system and application-level debugging is time-saving during software development. Knowing how to find more detailed information about bugs and solving them yourself, giving you the knowledge to draw more accurate conclusions based on programming knowledge rather than seeking the web for an hypothetical answer. By getting training with real-world problems and the latest tools and techniques, you will stay a step ahead of the others when competing for the same position. Delphi will always an ace in your sleeve that will be used on a day-to-day basis quite rapidly.
How the Course is Run
This course is by no means a 3-day lecture. Instead, you will be engaged in a number of individual and group hands-on exercises to reinforce and solidify everything that is taught in the class. Some of the exercises are held in a competitive nature, followed by class discussion to pin point elegant approaches and solutions that various individuals or groups may have used. Despite the fact that the course is held in Italy, Germany or Canada, take home exercises will be available for the type-A personalities attending the course. The course can be available in alternate languages depending on the selected location.
What’s Included
- 3 Days of Expert Instruction from a senior instructor with real-world experience and deep knowledge of course content.
- Guaranteed small class size (less than 12 Students), you get an intimate learning setting not offered at any of our competitors.
- IITAC Development DVD. Includes every program covered in the course for at home study, development tools, Reverse Code Engineering Tools, training files.
- Snacks and refreshments included.
- IITAC Certified Software Development Professional (Delphi) exam fees for the certification according to ISO/IEC 17024.
- Lecture and Lab Exercises.
Who Should Attend
If you are interested in the field of software development, want to learn how to dissect problems and algorithms, search for security vulnerabilities and bugs, want to discuss cutting edge technologies, techniques and ideas then this class is for you.
Learning Environment
Against to direct class materials, slides and hands-on exercises, students will have many opportunities to engage in one-on-one questions with instructors. Students get trained the practical way with intensive supervision. As students bring their own laptop, work done during the bootcamp gets not lost. Furthermore, students will be divided into groups by experience to foster student-student knowledge transfer as well.
What to bring
Students must bring their own laptop running an installation of Linux, Microsoft® Windows® 2000, XP, Vista or 2003 either natively or within a virtual machine. Students should have Delphi installed. VMWare Desktop with already configured Windows and Linux virtual machines is optional. All other tools will be provided for the students in the class room. Prospective students should be comfortable operating Microsoft Windows and have a basic understanding of programming concepts.
Pricing
Bootcamp pricing is 1.499 Euro per Person. Minimum of 5 participiants, maximum of 12 participiants.
BOOTCAMP: Delphi Development Fundamentals
| April 10, 2008 9:00 am | to | April 12, 2008 4:00 pm |
| June 5, 2008 9:00 am | to | June 7, 2008 4:00 pm |
| August 7, 2008 9:00 am | to | August 9, 2008 4:00 pm |
| October 9, 2008 9:00 am | to | October 11, 2008 4:00 pm |
| December 4, 2008 9:00 am | to | December 6, 2008 4:00 pm |
Learn Delphi Introduction to Delphi, a brief history and overview and a general coverage of features that make it such a powerful development tool.
- The concept of Windows as Forms (using components and templates, learning about events and how to respond to them, adding code and examining source code, all about the use of properties).
- The Delphi Environment - (review of all menus, understanding the form designer and code editor, managing projects, exploration of a program, the Delphi file system)
- Delphi Wizards and Templates - overview of wizards and templates and how to add to them
- Object Repository - what it is and how to use it
- Delphi components - An overview of the components, how to configure them and add new ones to the list
- How to create and handle menus, and attach to events
- The Help System and how to maximize its benefits
Content in Details
Delphi is based on Object Pascal. While Delphi does a great deal for you without coding, you will eventually have to write code. This course covers the basics of Pascal and goes beyond an introductory coverage of the concepts. You will also learn some advanced programming concepts. We will cover the following topics:
Important concepts about coding in Pascal
- Types, Variables and Constants
- Data Types and how to define your own
- Statements (simple, compound, conditional, using assignments and loops)
- Procedures and functions (parameters, arrays, methods, declarations, overloading, calling conventions)
- How to handle strings and dates
- File handling
- Debugging, troubleshooting and basic exception handling
Delphi Programming Concepts I
- Understanding classes, objects and memory
- Public and private encapsulation in Delphi
- Defining constructors and destructors
- Inheritance, virtual methods, polymorphism
- Type-safe down-casting
- Overview of the Run-Time Library
- RTL functions and conversions
- Understanding the RTL units
Delphi Programming Concepts II
- Understanding the TPersistent class
- Understanding the TComponent base class
- Properties and events
- Streams
- Overview of the VCL and the CLX
- Designing and working with your forms
- Understanding the different visual controls
- About boxes and splash screens
Database Programming with Delphi
Delphi excels when it comes to databases. This course is a very general introduction to database programming with Delphi. It will give you the basics and lay a solid foundation for using Delphi to connect to any database from a simple Excel spreadsheet to a full RDBMS like SQL Server or Oracle. If you have not worked with databases in Delphi, you need this course.
- Introduction to Delphi’s database architecture
- Database programming concepts
- The Borland Database Engine
- MyBase - Stand-alone ClientDataSet
- Using data-aware controls
- Indexing, filtering and searching
- Presenting and navigating your data
- Calculated fields, lookup fields, aggragates
- Using bookmarks
- Master/Detail structures
Relational Database Design
Attempting to create a database for your application without understanding the relational model or foundations is like driving a car during rush hour without ever learning how to drive. Sooner or later, you will crash. This course lays the foundations of relational database design, the basics and foundational principles of a solid database. You will learn about:
- Logical data modeling and sound design
- Building blocks of a relational database
- Normalizing your data
- Keys, indexes, views, stored procedures
- Field specifications, table relationships
- Business rules and data integrity
- Avoiding mistakes and troubleshooting
- If you have little or no experience with database design and need to create a database for your application, this class should be a requirement.
How You Benefit
The demand for Delphi developers as highly increased during the recent past years, leading toward a more recognised profession. Software developers are highly regarded in the world of IT, with an ever-growing need for more qualified and experienced experts. Getting a better-understanding of the inner workings of the software system and application-level debugging is time-saving during software development. Knowing how to find more detailed information about bugs and solving them yourself, giving you the knowledge to draw more accurate conclusions based on programming knowledge rather than seeking the web for an hypothetical answer. By getting training with real-world problems and the latest tools and techniques, you will stay a step ahead of the others when competing for the same position. Delphi will always an ace in your sleeve that will be used on a day-to-day basis quite rapidly.
How the Course is Run
This course is by no means a 3-day lecture. Instead, you will be engaged in a number of individual and group hands-on exercises to reinforce and solidify everything that is taught in the class. Some of the exercises are held in a competitive nature, followed by class discussion to pin point elegant approaches and solutions that various individuals or groups may have used. Despite the fact that the course is held in Italy, Germany or Canada, take home exercises will be available for the type-A personalities attending the course. The course can be available in alternate languages depending on the selected location.
What’s Included
- 3 Days of Expert Instruction from a senior instructor with real-world experience and deep knowledge of course content.
- Guaranteed small class size (less than 12 Students), you get an intimate learning setting not offered at any of our competitors.
- IITAC Development DVD. Includes every program covered in the course for at home study, development tools, Reverse Code Engineering Tools, training files.
- Snacks and refreshments included.
- IITAC Certified Software Development Professional (Delphi) exam fees for the certification according to ISO/IEC 17024.
- Lecture and Lab Exercises.
Who Should Attend
If you are interested in the field of software development, want to learn how to dissect problems and algorithms, search for security vulnerabilities and bugs, want to discuss cutting edge technologies, techniques and ideas then this class is for you.
Learning Environment
Against to direct class materials, slides and hands-on exercises, students will have many opportunities to engage in one-on-one questions with instructors. Students get trained the practical way with intensive supervision. As students bring their own laptop, work done during the bootcamp gets not lost. Furthermore, students will be divided into groups by experience to foster student-student knowledge transfer as well.
What to bring
Students must bring their own laptop running an installation of Linux, Microsoft® Windows® 2000, XP, Vista or 2003 either natively or within a virtual machine. Students should have Delphi installed. VMWare Desktop with already configured Windows and Linux virtual machines is optional. All other tools will be provided for the students in the class room. Prospective students should be comfortable operating Microsoft Windows and have a basic understanding of programming concepts.
Pricing
Bootcamp pricing is 1.499 Euro per Person. Minimum of 5 participiants, maximum of 12 participiants.
BOOTCAMP: C++ Fundamentals Bootcamp
| July 24, 2008 9:00 am | to | July 26, 2008 4:00 pm |
| August 19, 2008 9:00 am | to | August 21, 2008 4:00 pm |
| September 25, 2008 9:00 am | to | September 27, 2008 4:00 pm |
| October 23, 2008 9:00 am | to | October 25, 2008 9:00 am |
| November 27, 2008 9:00 am | to | November 29, 2008 4:00 pm |
C++ is a general-purpose programming language. C++ is regarded as a mid-level language, as it comprises a combination of both high-level and low-level language features. It is a statically typed, free-form, multi-paradigm, usually compiled language supporting procedural programming, data abstraction, object-oriented programming, and generic programming.
Bjarne Stroustrup developed C++ in 1979 at Bell Labs as an enhancement to the C programming language and named it “C with Classes”. In 1983 it was renamed to C++. Enhancements started with the addition of classes, followed by, among other features, virtual functions, operator overloading, multiple inheritance, templates, and exception handling. The C++ programming language standard was ratified in 1998 as ISO/IEC 14882:1998, the current version of which is the 2003 version, ISO/IEC 14882:2003. A new version of the standard (known informally as C++0x) is being developed.
What you will learn
This bootcamp was designed for students who already have a basic understanding of programming and want to learn the art of coding in C++. Eclipse IDE and GCC are the main programs that will be used along with several other public tools that will be distributed on-site and software will be created by the student themselves as a learning objective. Some advanced programming techniques will also be taught such as:
- Building a project with Eclipse IDE
- Development under Linux and Windows
- Cross-Platform debugging
- Buffer Overflows and their prevention
In this 3 day hands-on course, you will gain the necessary skills to discover the true nature of any C++ binary. You will learn how to recognize the high level language constructs (such as branching statements, looping functions and STL) critical to performing a thorough and professional development of a binary. After learning these important introductory skills, you will advance to:
- develop own applications in C++
- transform problems to algorithms to running software applications
- prevent software vulnerability
IITAC will train you on the standard C++ development IDE Eclipse.
The content in detail
- Introduction to C++ (Variables, int, float, double, char, Incrementing, Decrementing, Constants, Boolean)
- Code Flow (IF-THEN-ELSE, SWITCH, FOR loops, WHILE loops, REPEAT UNTIL loops)
- I/O
- Subroutines (Functions, Procedures, Paremeters, Prototypes)
- Fields (Arrays, multidimensional Arrays)
- Strings
- Structures
- Pointer (Pointer as parameter, Fields as pointer, Pointer Artihmetic)
- Classes
- Standard Template Library (STL) and how to build own tenplates (Function Templates, Class Templates)
- Exceptions
- Application’s Code Vulnerabilities (Common code vulnerabilities, Weak points research, Code-Flow analysis, Binary Analysis)
How You Benefit
The demand for C++ developers as highly increased during the recent past years, leading toward a more recognised profession. Software developers are highly regarded in the world of IT, with an ever-growing need for more qualified and experienced experts. Getting a better-understanding of the inner workings of the software system and application-level debugging is time-saving during software development. Knowing how to find more detailed information about bugs and solving them yourself, giving you the knowledge to draw more accurate conclusions based on programming knowledge rather than seeking the web for an hypothetical answer. By getting training with real-world problems and the latest tools and techniques, you will stay a step ahead of the others when competing for the same position. C++ will always an ace in your sleeve that will be used on a day-to-day basis quite rapidly.
How the Course is Run
This course is by no means a 3-day lecture. Instead, you will be engaged in a number of individual and group hands-on exercises to reinforce and solidify everything that is taught in the class. Some of the exercises are held in a competitive nature, followed by class discussion to pin point elegant approaches and solutions that various individuals or groups may have used. Despite the fact that the course is held in Italy, Germany or Canada, take home exercises will be available for the type-A personalities attending the course. The course can be available in alternate languages depending on the selected location.
What’s Included
- 3 Days of Expert Instruction from a senior instructor with real-world experience and deep knowledge of course content.
- Guaranteed small class size (less than 12 Students), you get an intimate learning setting not offered at any of our competitors.
- IITAC Development DVD. Includes every program covered in the course for at home study, development tools, Reverse Code Engineering Tools, training files.
- Snacks and refreshments included.
- IITAC Certified Software Development Professional (C++) exam fees for the certification according to ISO/IEC 17024.
- Lecture and Lab Exercises.
Who Should Attend
If you are interested in the field of software development, want to learn how to dissect problems and algorithms, search for security vulnerabilities and bugs, want to discuss cutting edge technologies, techniques and ideas then this class is for you.
Learning Environment
Against to direct class materials, slides and hands-on exercises, students will have many opportunities to engage in one-on-one questions with instructors. Students get trained the practical way with intensive supervision. As students bring their own laptop, work done during the bootcamp gets not lost. Furthermore, students will be divided into groups by experience to foster student-student knowledge transfer as well.
What to bring
Students must bring their own laptop running an installation of Linux, Microsoft® Windows® 2000, XP, Vista or 2003 either natively or within a virtual machine. Damn Vulnerable Linux is provided. Students should also have GCC and Eclipse installed. VMWare Desktop with already configured Windows and Linux virtual machines is optional. All other tools will be provided for the students in the class room. Prospective students should be comfortable operating Microsoft Windows and have a basic understanding of programming concepts.
Pricing
Bootcamp pricing is 1.499 Euro per Person. Minimum of 5 participiants, maximum of 12 participiants.

