Presentation on theme: "Fundamentals of C# Programming Course"— Presentation transcript:
1 Fundamentals of C# Programming Course IntroductionSvetlin NakovTelerik Corporation
2 Table of Contents About Telerik Telerik Academy Software Academy Trainers TeamCourse ContentsExamsTeaching ResourcesThe Software Engineering EssayRequirements for All Trainees
3 What Makes Telerik so Successful? About TelerikWhat Makes Telerik so Successful?
4 About Telerik What Telerik does? Headquartered in Bulgaria Leading vendor of ASP.NET AJAX, Silverlight, WPF, Window Phone 7 and ASP.NET MVC components, ORM, Reporting, and CMS solutions and Visual Studio pluginsHeadquartered in BulgariaOffices in USA, Canada, UK, Germany, Australia450 employees – mostly developersEmployer #1 in Bulgaria for 2010Microsoft Gold Certified Partner
5 Why Telerik is Successful? Hard WorkEssential to the success of any companyConstant ImprovementAdaptive to changesOpen CommunicationEveryday we get feedback and improve our products and work processesGood PeopleThe greatest capital of the company
6 Investing in People Telerik is constantly investing in people Everyday improvement of the employee’s skillsMentoring / coaching programsMicrosoft certification programsTelerik strongly supports the communitySponsors conferences for software engineers (PDC, DevDays, TechEd, DevReach, …)Sponsors books, contests and other eventsSupports few University courses
7 Free Trainings for Software Engineers Telerik AcademyFree Trainings for Software Engineers
8 About Telerik AcademyTelerik Academy is an initiative for Telerik for training of young software engineersFour main streamsSoftware Academy.NET EssentialsQA AcademyDeveloper SupportSchool AcademyKids AcademyStudent Courses
9 Telerik Software Academy What is It? How It Works? The Learning Track
10 Software Academy Training Program Objectives Train young people in software engineering with the .NET technologiesPractical training with lots of practiceCutting edge technologies from MicrosoftSoftware engineering skillsSupplement the University educationHire the best students in the Telerik development teamsSupport the IT industry development
13 Trainers Team Svetlin Nakov, PhD Manager Technical Training, Telerik Corp., Telerik Academy20 years software development experience10+ years experience as trainerAuthor of 6 booksSpeaker of hundreds of eventssvetlin.nakov [at] telerik.comWeb site / Blog:
14 Trainers Team (2) Doncho Minkov Technical Trainer, Telerik Corp, Telerik AcademyStudent in Sofia UniversitySoftware EngineeringContestant in the Informatics competitionsGraduate of the first season of Telerik Software Academydoncho.minkov [at] telerik.comBlog:
15 Trainers Team (3) Nikolay Kostov Technical Trainer, Telerik Corp. Student in Sofia UniversityComputer ScienceContestant in the IT and Informatics competitionsGraduate of the second season of Telerik Software Academynikolay.kostov [at] telerik.comBlog:
16 Trainers Team (4) Alon Rotem Senior .NET developer, Sitefinity CMS, Telerik CorpMember of Telerik's TelerockersWorking in the IT industry since 1996Experienced with .NET technologies since 2006Industrially experienced withC#, C++, Visual Basic and VBA, Delphi, classic ASP and ASP.NET, all frontend and backend developmentalon.rotem [at] telerik.comBlog:
17 Trainers Team (5) Ilian Iliev Software Engineer, Telerik Corp. Stream Company Co-Founder Student in Technical UniversityComputer Systems and TechnologiesContestant in Mathematics competitionsGraduate of the second season of Telerik Software Academyilian [at] ilievdev.netBlog:
18 Trainers Team (6) Dimitar Dimitrov Software Developer, Sitefinity CMS, Telerik CorpStudent in Technical UniversityComputer ScienceGraduate of the second season of Telerik Software Academydimitar.dimitrov [at] telerik.com
19 Trainers Team (7) Antonio Stoilkov Developer Trainee, Telerik Corp. Student in New Bulgarian UniversityInformaticsContestant in the IT competitionsGraduate of the second season of Telerik Software Academyantonio.stoilkov [at] gmail.com
20 Trainers Team (8) George Atanasov WPF/Silverlight Developer, Telerik Corp.Student in Sofia UniversitySoftware Engineering3.5 years software development experience3 years experience at 3D & graphic designContestant in the IT competitionsgogo.atn [at] gmail.com
21 Trainers Team (9) George Georgiev Informatics and IT competitions contestantAcademyZ trainerC++, OpenGL, C#Student in Sofia UniversitySoftware engineeringThird season of Telerik Software Academy traineegeorgi.stef.georgiev [at] gmail.com
22 C# Fundamentals: Course Contents What Topics Shall We Cover?
23 Course Objectives Fundamentals of C# Programming course: Give the trainees the fundamental computer programming knowledge and skillsEstablish the logical and algorithmic thinkingDevelopment of problems solving skillsLearn basic data structures, algorithms and object-oriented programming (OOP) conceptsPrepare for learning the technologiesWeb, databases, SQL, ASP.NET, XAML, etc.
24 Course Topics: First Month Introduction to ProgrammingPrimitive Data Types and VariablesOperators, Expressions and StatementsConsole Input / OutputConditional StatementsLoopsIntermediate Exam #1ArraysNumeral SystemsMethods
25 Course Topics: Second 2 Months Recursion and Recursive AlgorithmsCreating and Using ObjectsExceptions HandlingStrings and Text ProcessingDefining ClassesText FilesIntermediate Exam #2Linear Data StructuresTrees and GraphsDictionaries, Hash Tables and Sets
26 Course Topics: Last 2 Months Algorithms Complexity and Data StructuresObject-Oriented Programming FundamentalsLambda Expressions and LINQHigh-Quality Programming CodeMethodology of Problems SolvingProblems Solving Practice #1Problems Solving Practice #2Problems Solving Practice #3Final Exam
27 Training Duration Lectures: 39 hours (11 + 9 + 19) Practical exercises: 55 hours ( )Homework: ~ 108 hours ( )Exams: 3 x 6 hoursAllocationPart I: ~ 1 2 times weekly, 4 hoursPart II: ~ times weekly, 4 hoursPart III: ~ 2 2 times weekly, 4 hours
28 Why C# and .NET Framework? Microsoft is one of the industry leaders.NET Framework and C# are the primary development technologies in the MS ecosystemThe C# languageContemporary object-oriented languageWidespread and very popularEasy to learnMost Telerik products target the .NET platform
29 Why English? Why the slides are in English? English is the native language of the software engineersForget about not learning it!Specific terminology is better not to be translated
31 Exams Exams measure individual performance Serve as filter for skillful peopleHalf of the students pass forwardExams are not the only filter!
32 Intermediate Exams Intermediate exam #1 Intermediate exam #2 3-5 practical problems for 6 hoursCovers all learned topics up to the momentSolutions are evaluated for correctness onlyBest students continue in Part II of the courseIntermediate exam #2Similar to intermediate exam #1Best students continue in Part III of the course
33 Final Exam The final exam is the ultimate filter 4-5 practical problems for 6-8 hoursCovers the entire course contentMore complex problemsNeed of more skills and logical thinkingEvaluation of the solutions:Correctness – are the solutions well tested?Efficiency – are data structures used efficiently?Quality of code – does it follow best practices?
34 The Exams Testing System All exams will be tested automaticallyThrough our online judge systemYou will be able to test working with the system right before the examHow the Testing (Judge) System works?You submit C# filesIt tests your solution with predefined tests
35 Homework AssignmentsHomework assignments are due in 1 week after each lectureSubmission instructions will be published at the course Web siteExpect this week a form for homework submissionThe C# GameSubmit your everyday work progress in our web form on the course web site
36 Scoring System for Exam #1 For the intermediate exam #1Exam – 75%Essay – 10%Homework + C# Game – 15%Forums activity – bonus up to 10%Measured as percentage of the total discussionsHelping the other students – bonus up to 10%Each student's points who is helped himBug submissions in the Book – bonus up to 10%
37 Scoring System for Exam #2 For the intermediate exam #2Exam – 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 BookBonus up to 10%Application with cover letter
38 Scoring for the Final Exam 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
39 What We Need in Addition to this Course Content? ResourcesWhat We Need in Addition to this Course Content?
40 The official textbook for this course The TextbookThe official textbook for this course“Introduction to Programming with C#”, Nakov S. and his team, 2010Freely downloadable from:The entire C# fundamentals course strictly follows the book contents
41 Web Site & Discussion Group Please subscribe to "Telerik Academy" discussion group in Google Groups:Discuss the course exercises with your colleaguesFind solutions to the exercisesShare source code and ideasThe C# Fundamentals course official web site:
42 Required Software Software needed for this course: Microsoft Windows Microsoft Visual Studio 2010 or Visual C# Express Edition (free version of VS 2010).NET Framework 4.0
43 My Way to the Software Engineering Profession Our Essay for the Software Academy Engineers
44 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
45 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 wordsExpected length: 5 to 10 pagesDeadline: 2 weeks after this presentation
46 Requirements for All Trainees The Training Program Requires 100% Commitment!
47 Requirements for All Trainees Basic computer skillsWe don’t teach computer literacyEnglishAbility to read technical documentation in English is enoughVery serious attitudeLong-term commitment8 hours / day (average)
48 Full CommitmentKey factors for succeeding in the Telerik Academy Training ProgramSolid motivation“Wise guys” are not welcomeSerious attitudeWillingness for really hard workAll your time50% in class (for the lectures and exercises)50%-500% at home (for the homework)
49 Invest in Yourself! Invest in yourself! Invest in your training! Invest in your skills development!… Unless you consider yourself a bad investment. Do you?