introduction svetlin nakov telerik corporation
TRANSCRIPT
Fundamentals of C# Programming
CourseIntroduction
Svetlin NakovTelerik
Corporationwww.telerik.com
Table of Contents1. About Telerik
2. Telerik Academy
3. Software Academy
4. Trainers Team
5. Course Contents
6. Exams
7. Teaching Resources
8. The Software Engineering Essay
9. Requirements for All Trainees2
About TelerikWhat Makes Telerik so Successful?
About Telerik What Telerik does?
Leading vendor of ASP.NET AJAX, Silverlight, WPF, Window Phone 7 and ASP.NET MVC components, ORM, Reporting, and CMS solutions and Visual Studio plugins
Headquartered in Bulgaria Offices in USA, Canada, UK,
Germany, Australia
450 employees – mostly developers Employer #1 in Bulgaria for 2010 Microsoft Gold Certified Partner
4
Why Telerik is Successful?
Hard Work Essential to the success of any
company Constant Improvement
Adaptive to changes Open Communication
Everyday we get feedback and improve our products and work processes
Good People The greatest capital of the company
5
Investing in People Telerik is constantly investing in people Everyday improvement of the
employee’s skills
Mentoring / coaching programs
Microsoft certification programs Telerik strongly supports the community Sponsors conferences for software
engineers (PDC, DevDays, TechEd, DevReach, …)
Sponsors books, contests and other events
Supports few University courses
6
Telerik AcademyFree Trainings for Software Engineers
About Telerik Academy Telerik Academy is an initiative for Telerik for training of young software engineers
Four main streams Software Academy
.NET Essentials QA Academy Developer Support
School Academy Kids Academy Student Courses
8
Telerik Software AcademyWhat is It? How It Works? The Learning Track
Software Academy Training Program
Objectives Train young people in software engineering with the .NET technologies Practical training with lots of
practice
Cutting edge technologies from Microsoft
Software engineering skills Supplement the University education
Hire the best students in the Telerik development teams
Support the IT industry development
10
Telerik Academy Learning Track
11
C# Fundamentals
(part II)
C# Fundamentals
(part I)
Dev Academy(part I)
QA Academy
DS Academy
Dev Academy(short course)
Dev Academy (parts II-XI)
300 attendees 180 attendees 120 attendees
30att.
40att.
70att.
20att.
30att.
20att.
~ 20-25 graduates hired~ 10-12 graduates hired~ 10-15 graduates hired
C# Fundamentals
(part III)
Support Basics
1 month
1 week4 months
2-3 months
Trainers Team
Trainers Team Svetlin Nakov, PhD
Manager Technical Training,Telerik Corp., Telerik Academy
20 years software developmentexperience
10+ years experience as trainer Author of 6 books Speaker of hundreds of events E-mail: svetlin.nakov [at]
telerik.com Web site / Blog: http://nakov.com
13
Trainers Team (2) Doncho Minkov
Technical Trainer,Telerik Corp, Telerik Academy
Student in Sofia University Software Engineering
Contestant in the Informatics competitions
Graduate of the first season of Telerik Software Academy
Email: doncho.minkov [at] telerik.com
Blog: http://minkov.it
Trainers Team (3) Nikolay Kostov
Technical Trainer, Telerik Corp. Student in Sofia University
Computer Science
Contestant in the IT and Informatics competitions
Graduate of the second season of Telerik Software Academy
Email: nikolay.kostov [at] telerik.com
Blog: http://nikolay.it
Trainers Team (4) Alon Rotem
Senior .NET developer,Sitefinity CMS, Telerik Corp
Member of Telerik's Telerockers
Working in the IT industry since 1996 Experienced with .NET technologies
since 2006
Industrially experienced with C#, C++, Visual Basic and VBA, Delphi,
classic ASP and ASP.NET, all frontend and backend development
Email: alon.rotem [at] telerik.com Blog:
http://alonintheworld.blogspot.com/
16
Ilian Iliev Software Engineer, Telerik Corp. Stream Company Co-Founder Student in Technical University
Computer Systems and Technologies
Contestant in Mathematics competitions
Graduate of the second season ofTelerik Software Academy
Email: ilian [at] ilievdev.net Blog: http://ilievdev.net
Trainers Team (5)
17
Dimitar Dimitrov Software Developer,
Sitefinity CMS, Telerik Corp
Student in Technical University
Computer Science
Graduate of the second season of Telerik Software Academy
Email: dimitar.dimitrov [at] telerik.com
Trainers Team (6)
18
Antonio Stoilkov Developer Trainee,
Telerik Corp. Student in New Bulgarian University
Informatics
Contestant in the IT competitions Graduate of the second season of
Telerik Software Academy Email: antonio.stoilkov [at]
gmail.com
Trainers Team (7)
19
Trainers Team (8) George Atanasov
WPF/Silverlight Developer,Telerik Corp.
Student in Sofia University Software Engineering
3.5 years software developmentexperience
3 years experience at 3D & graphic design
Contestant in the IT competitions E-mail: gogo.atn [at] gmail.com
20
George Georgiev Informatics and IT competitions
contestant AcademyZ trainer
C++, OpenGL, C#
Student in Sofia University Software engineering
Third season of Telerik Software Academy trainee
E-mail: georgi.stef.georgiev [at] gmail.com
Trainers Team (9)
C# Fundamentals:
Course ContentsWhat Topics Shall We
Cover?
Course Objectives Fundamentals of C# Programming course: Give the trainees the fundamental
computer programming knowledge and skills
Establish the logical and algorithmic thinking
Development of problems solving skills
Learn basic data structures, algorithms and object-oriented programming (OOP) concepts
Prepare for learning the technologies
Web, databases, SQL, ASP.NET, XAML, etc.
23
Course Topics: First Month
1. Introduction to Programming
2. Primitive Data Types and Variables
3. Operators, Expressions and Statements
4. Console Input / Output
5. Conditional Statements
6. Loops
7. Intermediate Exam #1
8. Arrays
9. Numeral Systems
10.Methods 24
Course Topics: Second 2 Months
11.Recursion and Recursive Algorithms
12.Creating and Using Objects
13.Exceptions Handling
14.Strings and Text Processing
15.Defining Classes
16.Text Files
17. Intermediate Exam #2
18.Linear Data Structures
19.Trees and Graphs
20.Dictionaries, Hash Tables and Sets25
Course Topics: Last 2 Months
21.Algorithms Complexity and Data Structures
22.Object-Oriented Programming Fundamentals
23.Lambda Expressions and LINQ
24.High-Quality Programming Code
25.Methodology of Problems Solving
26.Problems Solving Practice #1
27.Problems Solving Practice #2
28.Problems Solving Practice #3
29.Final Exam26
Training Duration Lectures: 39 hours (11 + 9 + 19)
Practical exercises: 55 hours (13 + 17 + 25)
Homework: ~ 108 hours (38 + 60 + 74)
Exams: 3 x 6 hours
Allocation
Part I: ~ 1 month @ 2 times weekly, 4 hours
Part II: ~ 1.5 months @ 2 times weekly, 4 hours
Part III: ~ 2 months @ 2 times weekly, 4 hours
27
Why C# and .NET Framework?
Microsoft is one of the industry leaders
.NET Framework and C# are the primary development technologies in the MS ecosystem
The C# language
Contemporary object-oriented language
Widespread and very popular
Easy to learn
Most Telerik products target the .NET platform
28
Why English?
Why the slides are in English?
English is the native language of the software engineers
Forget about not learning it!
Specific terminology is betternot to be translated
29
ExamsIntermediate
and Final Exams
Exams Exams measure individual performance Serve as filter for skillful people
Half of the students pass forward
Exams are not the only filter!
31
Intermediate Exams Intermediate exam #1
3-5 practical problems for 6 hours
Covers all learned topics up to the moment
Solutions are evaluated for correctness only
Best students continue in Part II of the course
Intermediate exam #2 Similar to intermediate exam #1
Best students continue in Part III of the course
32
Final Exam The final exam is the ultimate filter
4-5 practical problems for 6-8 hours Covers the entire course content More complex problems
Need of more skills and logical thinking
Evaluation of the solutions: Correctness – are the solutions well
tested? Efficiency – are data structures used
efficiently? Quality of code – does it follow best
practices?
33
The Exams Testing System
All exams will be tested automatically Through our online judge system
You will be able to test working with the system right before the exam
How the Testing (Judge) System works? You submit C# files
It tests your solution with predefined tests
34
Homework Assignments
Homework assignments are due in 1 week after each lecture
Submission instructions will be published at the course Web site
Expect this week a form for homework submission
The C# Game Submit your everyday work
progress in our web form on the course web site
35
Scoring System for Exam #1
For the intermediate exam #1 Exam – 75%
Essay – 10%
Homework + C# Game – 15%
Forums activity – bonus up to 10%
Measured as percentage of the total discussions
Helping the other students – bonus up to 10%
Each student's points who is helped him
Bug submissions in the Book – bonus up to 10%
36
Scoring System for Exam #2
For the intermediate exam #2 Exam – 80%
Homework + C# Game – 20%
Forums activity – bonus up to 10%
Bug submissions in the Book – bonus 10%
Helping the other students – bonus up to 10%
Translation of some chapter of the Book
Bonus up to 10%
Application with cover letter
37
Scoring for the Final Exam
For the final exam Exam – 80% Homework + C# Game – 20% Bug submissions in the Book –
bonus 10% All problems from the Book – bonus 10% Solved with detailed description (by
template)
Forums activity – bonus up to 10% Helping the other students – bonus
up to 10% Translation of some chapter of the
Book
38
ResourcesWhat We Need in Addition to this
Course Content?
The Textbook
The official textbook for this course
“Introduction to Programming with C#”, Nakov S. and his team, 2010
Freely downloadable from: www.introprogramming.info
40
The entire C# fundamentals course strictly follows the book contents
Web Site & Discussion Group
Please subscribe to "Telerik Academy" discussion group in Google Groups:
Discuss the course exercises with your colleagues
Find solutions to the exercises
Share source code and ideas The C# Fundamentals course official web site: 41
http://csharpfundamentals.telerik.com
http://groups.google.com/group/telerikacademy
Required Software Software needed for this course:
Microsoft Windows
Microsoft Visual Studio 2010 or Visual C# 2010 Express Edition (free version of VS 2010)
.NET Framework 4.0
42
My Way to the Software
Engineering ProfessionOur Essay for the Software Academy
Engineers
Essay Objective Answer some questions about yourself Is the "software engineer"
profession right for me? Am I motivated enough to become a
software engineer? Am I ready to spent enough time to
master the profession? What makes a software engineer
capable and successful professional?
To realize what to expect and to motivate yourself or to just leave the course
44
Essay Objective (2)
Write the essay on yourself This is what you think of the
profession, your what is your motivation and passion to become or not a software engineer?
Don't cheat, you will be caught!
Use the template and answer the questions with your own words
Expected length: 5 to 10 pages Deadline: 2 weeks after this presentation
45
Requirements for All TraineesThe Training Program Requires 100% Commitment!
Requirements for All Trainees
Basic computer skills
We don’t teach computer literacy
English
Ability to read technical documentation in English is enough
Very serious attitude
Long-term commitment
8 hours / day (average)
47
Full Commitment Key factors for succeeding in the Telerik Academy Training Program Solid motivation
“Wise guys” are not welcome
Serious attitude
Willingness for really hard work
All your time
50% in class (for the lectures and exercises)
50%-500% at home (for the homework)
48
Invest in Yourself!
Invest in yourself!
Invest in your training!
Invest in your skills development!
49
… Unless you consider yourself a bad investment. Do you?
Questions?
Questions?
Fundamentals of C# Programming Course
http://academy.telerik.com
Introduce Yourself! Now introduce yourself to the others Who are you, what is your
background, why you came at the Telerik Software Academy, …?