Presentation on theme: "Fundamentals of C# Programming Course"— Presentation transcript:
1Fundamentals of C# Programming Course IntroductionSvetlin NakovTelerik Corporation
2Table of Contents About Telerik Telerik Academy Software Academy Trainers TeamCourse ContentsExamsTeaching ResourcesThe Software Engineering EssayRequirements for All Trainees
3What Makes Telerik so Successful? About TelerikWhat Makes Telerik so Successful?
4About 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
5Why 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
6Investing 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
7Free Trainings for Software Engineers Telerik AcademyFree Trainings for Software Engineers
8About Telerik AcademyTelerik Academy is an initiative for Telerik for training of young software engineersFour main streamsSoftware Academy.NET EssentialsQA AcademyDeveloper SupportSchool AcademyKids AcademyStudent Courses
9Telerik Software Academy What is It? How It Works? The Learning Track
10Software 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
13Trainers 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:
14Trainers 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:
15Trainers 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:
16Trainers 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:
17Trainers 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:
18Trainers 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
19Trainers 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
20Trainers 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
21Trainers 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
22C# Fundamentals: Course Contents What Topics Shall We Cover?
23Course 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.
24Course Topics: First Month Introduction to ProgrammingPrimitive Data Types and VariablesOperators, Expressions and StatementsConsole Input / OutputConditional StatementsLoopsIntermediate Exam #1ArraysNumeral SystemsMethods
25Course 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
26Course 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
28Why 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
29Why 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
31Exams Exams measure individual performance Serve as filter for skillful peopleHalf of the students pass forwardExams are not the only filter!
32Intermediate 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
33Final 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?
34The 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
35Homework 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
36Scoring 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%
37Scoring 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
38Scoring 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
39What We Need in Addition to this Course Content? ResourcesWhat We Need in Addition to this Course Content?
40The 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
41Web 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:
42Required 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
43My Way to the Software Engineering Profession Our Essay for the Software Academy Engineers
44Essay 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
45Essay 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
46Requirements for All Trainees The Training Program Requires 100% Commitment!
47Requirements 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)
48Full 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)
49Invest in Yourself! Invest in yourself! Invest in your training! Invest in your skills development!… Unless you consider yourself a bad investment. Do you?