Skip to main content.
May 20th, 2010

Java 7 New Features – Seminar in Technical University – Sofia, Organized by the Bulgarian Java User Group (BGJUG)

I was speaker along with my colleague Mihail Stoynov at the seminar organized by the Bulgarian Java User Group (BGJUG) on 20 May 2010 in the Technical University of Sofia. We presented the upcoming Java 7 and its amazing new features like the built-in JVM support of dynamic languages (Da Vinci Virtual Machine), the small language changes that will make the developer’s life better (project Coin) and the proposed support of closures, lambda expressions and extension methods (project Lambda).

BGJUG-seminar-Java-7-Nakov-Stoynov

It was nice seminar and the developer’s community was actively interrupting our talk with interesting and even quarrelsome questions. Some people just didn’t want to believe that 90% of the new enhancements in Java 7 are already implemented in the Microsoft .NET Framework. I hope one day Java will catch up and .NET will also benefit of its features. The future will show what will happen. In the mean time both Java and C# will benefit from the amazing features from the dynamic languages like Python, Ruby, Groovy, JavaScript Perl and even untraditional functional languages like Lisp and Haskell.

BGJUG-seminar-Java-7-Auditory

Download the presentation here: Java-7-New-Features-Nakov-BGJUG-Sofia-TU-20.05.2010.pptx.

Download the examples here: NetBeansProjects-Java-7-seminar-BGJUG.zip.

Posted by nakov as news, java, blog at 8:36 PM EEST

Comments Off

May 10th, 2010

C# Fundamentals Course @ Telerik Academy Finished

The Telerik Academy free training program for .NET software engineers is an exciting opportunity for smart and motivated young people to be trained for 6 months for real world software engineers and start their professional career.

C# Fundamentals Course – Part I

We started our first training season in March 2010 with free C# programming course for 6 groups of 16 students. Students attended this course were selected among nearly 250 candidates who were filtered by CV, cover letter, English test, IQ test and computer science test. Best performing 96 candidates started their free trainings in class with the bases of computer programming course (Fundamentals of C# Programming Course – Part I). The first course was just the start. It was held for 1 month (3 times weekly) and was focused on writing simple C# programs with primitive data types, loops and arrays. Trainers were Svetlin Nakov, the principal technical trainer in Telerik Corporation and Momchil Tomov, winner in many Informatics Olympiads.

C# Fundamentals Course – Part II

After a month of trainings with lectures, exercises, assignments and problems solving in class the best 36 attendees (2 groups x 18 students) were selected through an exam to attend the second part of the course (Fundamentals of C# Programming Course – Part II) which focuses on more complicated fundamental programming concepts such as advanced data structures (hash tables, balanced trees, etc.), algorithms, high-quality code construction and problems solving methodology. This course was really advanced and could be compared to the best courses in programming fundamentals, data structures and algorithms in the top 5% of the Universities worldwide. Trainers again were Svetlin Nakov and Momchil Tomov. Problems solved in class and at the graduation exams were nearly the same level like at the Bulgarian National Olympiad of Informatics. The course took 1 month of everyday learning, practicing and problems solving. The final exam was really hard, consisting of 4 problems (Olympiad-level) for 5 hours.

C# Fundamentals Course – Part II

Both C# fundamentals courses were based on the leading free computer programming fundamentals book “Introduction to programming with C#” authored by Svetlin Nakov and his team. All lecture materials, PowerPoint slides, live demonstrations, exercises as well as video-trainings are available for free download and use from the Telerik Academy Web site, in the section C# Programming Fundamentals.

.NET Essentials Course

The best 18 students graduated the C# Fundamentals course will continue their real world software engineering trainings for more 3 months in the course “.NET Development Essentials” which covers the most important .NET development technologies such as databases, XML, ADO.NET, LINQ, LINQ-to-SQL, ADO.NET Entity Framework, ASP.NET and AJAX, Windows Forms, Silverlight, Windows Presentation Foundation (WPF), web services, WCF as well as software engineering fundamental concepts and team working.

Selection Process and Employment in Telerik

Students awarded to take part in the “.NET Essentials” course are selected through an internal selection process which includes series of exams and individual interviews. Telerik trains people for free not just for fun but because it is growing by employing really motivated and extremely skillful young developers that could not be found in the Universities or from other software development companies (with some small exceptions). It is well-known that Telerik is better employer than 95% of the IT companies in Bulgaria due to his excellent team, challengeable projects, cutting edge technologies, development processes based on industry’s best practices, good remuneration and benefits and great work atmosphere. Thus we can easily attract and hire people from other software companies but our requirements are very, very high and the candidates coming from other companies just can’t meet them (with some exceptions). This is the reason why we started our training center and the Telerik Academy free .NET trainings program. We want to train and grow our own .NET ninja developers because we can’t find enough tremendously skillful, well motivated and exciting .NET software engineers to hire. Telerik is large and powerful corporation and we want to grow not just for the number of developers but for extreme quality that drives our success. That’s why we are investing to produce super skillful great developers.

After our internal selection process the best 18 people will start their training in the .NET Essentials course for 3 months (everyday, full time) and will be hired in Telerik as internship trainees. After their graduation they will expand our development teams and will enter in their professional software development career by unique high speed jumpstart like no other else.

The next season of Telerik Academy is planned for September 2010 when new 96 people with have the chance to be trained for free in our unique top-quality training center for .NET developers. In the mean time you could join our official discussion group at http://groups.google.com/group/telerikacademy/.

Posted by nakov as .net, news, blog at 6:24 PM EEST

Comments Off

May 3rd, 2010

Java 7 New Features – Seminar in Cairo, at the Egyptian Java User Group (EGJUG)

Last week I was invited by Ahmed Hashim, the Egyptian Java User Group (EGJUG) leader for a technical talk about what is coming in Java 7. I was happy to perform a talk in the Faculty of Computers and Informatics (FCI) of Cairo University in front of 60-70 keen Java developers:

Nakov-EGJUG-Java-7-Seminar-May-2010-1

I presented the key new features coming with the next release of the Java platform: Java 7, which is expected to be released at the end of 2010. I started by explaining the new concepts about the dynamic languages support in the JVM, the new invokedynamic bytecode instruction, the new module system developed under the project Jigsaw, the extended annotations syntax (JSR 308). I put special attention to the interesting small language enhancements implemented in the project Coin that will make the developer’s life easier: automatic resource management, the new “diamond <>” syntax for generic collections, the concept of collections literals that allow directly specifying the elements of collection at its creation, the indexed [] access to the elements of lists and maps, the new underscore _ syntax for numbers and the new binary format for integers. The exciting new concept of “closures” coming from the functional programming (and already implemented in C# and dynamic languages like Ruby and Python) was explained in details. Special attention was given to the benefits of using function types (method handles) instead of interfaces for implementing callback behavior, the concept of lambda functions and lambda expressions and how all this stuff can be used for efficiently processing collections with extension methods and parallel processing on multi-core / multi-CPU machines. Finally I mentioned few other new features coming with the Java 7 platform: compressed 64-bit oops, garbage-first GC, upgraded class-loaders, URLClassLoader.close(), Unicode 5.1 and support for SCTP and SDP protocols. All features that were implemented in the latest (at the time of presentation) early access preview build 89 of JDK 7 (Java SE 1.7.0-ea-b89) was demonstrated with live examples.

Nakov-EGJUG-Java-7-Seminar-May-2010-2

 It was interesting seminar and attendees entered into a passionate discussion. Due to the uninterruptable sequence of questions we finished in 3 hours instead of 1.5 hours as initially planned.

Nakov-EGJUG-Java-7-Seminar-May-2010-3

I am impressed by the good level of technical expertise of the Egyptian developers in Cairo. The Egyptian Java developers I met were really nice guys and girls, smart and eager for knowledge and motivated to learn new technologies and concepts. Most of them could look a bit strange for the European people (young men with long beards and young girls with covers on their heads) but these people are normal developers, very friendly and polite, smart and skillful – just good developer community.

I didn’t miss my chance to visit Giza and the 7000-years-old pyramids in the desert near Cairo, which is “must visit” when traveling to Egypt.

Nakov-Giza-Pyramids

I hope EGJUG someday will invite me again for exciting technical talks.

Download my PowerPoint presentation about Java 7: Java-7-New-Features-Nakov-EGJUG-Cairo-2-May-2010.pptx.

Download also the demonstration examples: Java7-Demos-Netbeans6.9beta.zip.

Special thanks to Ahmed Hashim who organized this event and my enjoyable stay in Cairo and to my colleague Mihail Stoynov who is my co-author in the presentation.

Posted by nakov as news, java, blog at 7:43 PM EEST

Comments Off

April 24th, 2010

Java 7 Seminar by Svetlin Nakov and Mihail Stoynov @ BGOUG in Plovdiv

On 24 April 2010 I was invited along with my colleague Mihail Stoynov as speakers at a half-day seminar on Java 7. In 3 sequential sessions we presented in deep details what is coming with the new release of the Java platform – Java 7, which is expected to be released in the end of 2010.

Nakov-Stoynov-BGJUG-Java-7-Seminar

The event was part of the spring conference of the Bulgarian Oracle User Group (BGOUG), as part of its new initiative towards growing the Java community. The BGOUG is old and mature community organization that organizes conferences, seminars and Oracle community events for more than 10 years, strongly supported by Oracle Corp. but independent entity. There were about 200 people at the seminar which was held from 23 to 25 April 2010 in the city of Plovdiv.

Our Java 7 talk was about 60 software engineering professionals. It was exciting seminar with great interest of all attendees (nobody left the talk even after the third hour). The new language changes and technologies were interesting to the auditory and there was a discussion on some of the topics.

Java 7 – Technical Content

To be honest my colleague Mihail prepared most of the presentation materials and demonstrations. I was talking about the dynamic languages in JVM, the new invokedynamic bytecode instruction, method handles and dynamic invocations. There was attractive demo which shows how to dynamically invoke a method which is not known at compile time. I also prepared an interesting talk about the closure in Java, the lambda calculus, lambda expressions, lambda functions, first class functions, functional programming, extension methods and parallel processing that are expected to come with Java 7. It is really nice to see how dramatically the everyday collections processing will be changed. For example with a simple single line of code we will be able to extract the names of a list of persons that match some predicate (inline Boolean condition, e.g. firstName == ”Peter”) and arrange them in alphabetical order.

The rest of the talk was focused on: Java modularity and project Jigsaw, the small language enhancements from the project Coin, the JSR 203: NIO 2, Compressed 64-bit oops, Garbage-First GC, Upgraded Class-Loaders, URLClassLoader.close(), Unicode 5.1, SCTP and SDP protocols.

The demonstrations were based on the early access preview version of JDK 7 – Java SE 1.7.0-ea-b89 and NetBeans 6.9 beta that supports almost all of the features implemented b89. All features that were implemented in b89 were demonstrated. The others left just on the slides but the concepts were made clear by the presenters.

Downloads

Download the Java 7 presentation: Java-7-New-Features-Stoynov-Nakov-BGOUG-Plovdiv-24-April-2010.pptx

Download the demonstration examples: Java-7-New-Features-BGOUG-Stoynov-Nakov.(NetBeans.6.9Beta.demos).zip

Posted by nakov as news, java, blog at 8:40 PM EEST

Comments Off

April 12th, 2010

Svetlin Nakov was Awarded with a PhD Degree in Informatics

Today Svetlin Nakov defended successfully his PhD thesis titled “Automatic Extraction of False Friends from Parallel Bilingual Corpus” and was awarded with the scientific and educational degree “Doctor of Philosopy” (PhD) in Informatics in the area of computational linguistics.

Svetlin Nakov - PhD - defense

The thesis was defended according to the Bulgarian law, in front of the Specialized Scientific Council in Informatics and Mathematical Modeling of the Higher Attestaion Commission of the Bulgarian Academy of Sciences (BAS). Unlike Western Europe and USA in Bulgaria PhD degree is given by national specialized scientific council consisting of about 20 distinguished scientists.

Svetlin Nakov - PhD thesis defense - discussions

The Start

I started work on my PhD thesis in 2007 after I changed my research area to computational linguistics. Initially it was hard to find a research topic which was not well researched and where open questions exist that could be approached. With the help of my research advisor Prof. Paskaleva and by the help of external consultants we found an interesting research topic: false friends. It was relatively easy to research and develop new algorithms for extracting false friends, especially for Bulgarian and Russian due to the fact that cognates and false friends in this particular pair of languages was never been researched by computational linguists. Additionally the idea to use the Web as a corpus was just started to get popular approach for natural language processing and information retrieval.

False Friends – Definition

False friends are words in different languages that are similar spelling and are perceived as similar but have different meanings. For example Bulgarian word “стар” which means “old” and is pronounced [star] and the English word “star” are false friends. They have exactly the same pronunciation but have entirely different meanings.

Automatic Extraction of Cognates and False Friends from Parallel Bilingual Corpus – Abstract

The PhD thesis “Automatic Extraction of Cognates and False Friends from Parallel Bilingual Corpus” conducts research about cognates and false friends between Bulgarian and Russian and proposes algorithms for their extraction. New methods for measuring orthographic and semantic similarity (monolingual and cross-lingual) are proposed and their applications in solving various computational linguistics tasks are demonstrated, particularly for synonyms extraction, distinguishing between cognates and false friends and improving words alignment. A two-step method for automatic extraction of false friends from bi-texts is proposed: at the first step pairs of words with similar orthography are collected from the text and at the second step these pairs are categorized as cognates or false friends on the basis of measuring the cross-lingual semantic similarity between them using the Web as a corpus and by applying statistical techniques accounting their occurrences and co-occurrences in the corresponding sentences in the bi-text.

Scientific Research and Publications

During my work as PhD student I managed to publish 7 scientific papers related to my PhD thesis (as author or co-author):

Regardless of the fact that most of my publications were made in Bulgaria, these are published in prestigious conferences like RANLP which is ranked in the top 5 conferences in computational linguistics in the world. It is notable that most of the distinguishing authors cited in my papers attend the RANLP conference.

In the beginning it was new to me how to write high-quality scientific papers that will be accepted with high probability in distinguishing conferences in computational linguistics but I got solid help from my co-authors and my scientific advisor. Initially I believed that it is more complex to invent a new concept, method, framework, theorem, formula or algorithm and to obtain valuable scientific results than to publish them as paper. I found that this assumption is not exactly true – sometimes it takes more time and effort to publish the scientific results than to obtain them.

Lessons Learned

What I learned from my PhD is how to conduct scientific research: how to perform scientific experiments, how to evaluate the obtained results, how to draw motivated conclusions and how to publish the results in a way that will make the reviewers happy. I learned how to write scientific papers with ease: how to structure their content, how to state the proposed ideas as motivated extension of the most recently published scientific achievements (related work), how to present the experiments, how to describe the obtained results in short but clear manner and how to cite related publications. It was nice experience and now I know when I am reading an article whether it is low-quality marketing text or well motivated scientific work.

Graduating PhD Means Really Hard Work!

I started my PhD just as a natural continuation of my high education. I graduated bachelor and masters degrees with excellent results and with ease and I thought PhD will also be easy, but it was different, entirely different.

When I started my PhD work I was author of 4 books and had solid experience as software engineer and trainer so I believed I am good writer and developer and engineer and will cope with the PhD challenge with ease. But conducting scientific research is different. It is not just an application of existing knowledge to solve a specific problem or successfully deliver a software project. It is about inventing new concepts, methods and algorithms, not previously know to anybody. It is about researching open problems, about inventing and experimenting new methods for approaching them and about finding new algorithms and formulating new concepts that could not be found in any book or publication.

PhD Thesis == 5-10 Times * Master’s Thesis

I needed about a month of active work to write my Master’s Thesis. Most people invest similar amount of time and effort for theirs. To prepare and defend a PhD Thesis I needed 5-10 times more effort, time and work. Publishing a valuable research paper could take few weeks for inventing new ideas, trying them, conducting experiments and obtaining meaningful results and takes more few weeks to write the paper itself in a way that makes the reviewers happy. Publishing 7 papers means 5-6 months of active work which I did for 3 years mostly in the weekends. Writing the PhD Thesis itself takes additionally a month of full time work. Thus compared to a typical Master’s Thesis graduating successfully a PhD degree takes 5-10 times more effort than to write a Master’s Thesis.

This was my experience. I am sure that some people graduate successfully with less effort but I could not afford myself doing low-quality work. I am just a person who works hard and with high-quality.

If I knew how much effort this PhD degree would require I would probably not start it.

Downloads

If you are interested in my research area, please feel free to download the presentation of my PhD thesis: Nakov-PhD-Thesis-False-Friends-Presentation.ppt (PowerPoint presentation, in Bulgarian).

Also download the extended resume of my work (abstract): Nakov-PhD-Avtoreferat-False-Friends.pdf (PDF file, in Bulgarian).

Posted by nakov as news, blog at 8:22 PM EEST

Comments Off

March 2nd, 2010

High-Quality-Programming Code Course @ Sofia University (FMI)

On 23 February 2010 the course “High-Quality Programming Code” which is held in the Technical University of Sofia (TU) started in Sofia University (SU), at the Faculty of Mathematics and Informatics (FMI). It was approved by the Faculty Council as optional subject. This means that students can choose whether to go to the course or not, but if they choose to go to the course, it becomes a regular subject with graduation mark at the end.

On the photo below, the principal lecturer Svetlin Nakov explains the course objectives, assesment and the concepts of building high-quality programming code during the software construction process:

High-Quality Code - Sofia University - Pic2

Content

The content of the course is similar with the one in the Technical University (High-Quality Programming - TU - Sofia). The target group is again young students studying computer science related specialties.

Assessment

The assessment is based on the same requirements as it is in the Technical University – test and course project (divided into two parts – entrance project and final project). The interesting part is that the second part of the project (the final project) needs refactoring of the entrance project of the students from the other university. The purpose of the entrance project is to get some code written without any quality requirements so after finishing the course students from the other university should do the refactoring and write unit tests of some entrance project submitted by their colleagues. SU students will refactor the code written by TU students and vice versa.

Awards and Certification

Best students will be awarded with certificates and awards from our sponsor: Telerik Academy (http://academy.telerik.com).

Students

There is high interest for this course. About 150 students are visiting the lectures regularly:

High-Quality Code - Sofia University

The lectures and other training materials can be downloaded from the official Web site of the course “High-quality Programming Code”: http://codecourse.telerik.com/.

Posted by snakov as news, blog at 12:03 PM EET

Comments Off

February 23rd, 2010

High-Quality Programming Code Course @ TU-Sofia

The course “High-Quality Programming Code” provides fundamental principles and practices for building high-quality software with focus on the source code. The course is held as elective training in the Technical University of Sofia (TU-Sofia) and targets the students from the computer science related specialties. Its aims are to improve junior developers showing them best programming practices.

Started at 10 February 2010

The course started on 10 February 2010 and the main lecturer Svetlin Nakov explained the students what is high-quality software and introduced the concept of writing high-quality progamming code:

High-Quality Code - TU - Pic2

Course Objectives

The main objective of the course is to introduce the students to the principles of high-quality programming code construction during the software development process. The quality of the code is discussed in its most important characteristics – correctness, readability and maintainability. Two fundamental concepts – “loose coupling” and “strong cohesion” are defined and their effect on the construction of classes and subroutines is discussed. Best practices for organization of the methods, logical programming constructs as well as some methodologies for testing, debugging and code optimization are explained.

Attendees

The course is attended by nearly 150 students:

High-Quality Code - TU

Assessment

The course will end with an assessment based on test (theory) and course project (practice). The test consists of 35 questions covering the course content. The course project has two parts: entrance project (small programming problem that should be solved in C #, Java or C++) and final project (refactoring of low-quality code and adding unit tests). Students from the Technical University will refactor the code written by their colleagues from Sofia University and vice versa. This will make an informal competition between the universities and will promote writing low quality code at the entrance projects and delivering high-quality code with the final project.

Certification and Awards

Best students will be awarded with certificates and awards from our sponsor: Telerik Academy (http://academy.telerik.com).

More Information

More information on the official web site of the course: http://codecourse.telerik.com/.

Posted by snakov as news, blog at 11:52 AM EET

Comments Off

February 20th, 2010

Telerik Academy Courses Started

On 20 February 2010 I started the “C# Fundamentals” course at Telerik Academy. This is the first level of training, just before the “.NET Development Essentials” course, covering the .NET Framework class library, databases, SQL Server and LINQ, Web technologies, ASP.NET and AJAX, Windows Forms, WPF and Silverlight, as well as software engineering.

The C# Fundamentals course covers the fundamental concepts of computer programming, loops, arrays, methods, recursion, data structures, algorithms, logical thinking, problems solving and object-oriented programming. It is attended by 96 people divided into 6 groups with 16 people each. The course is split into two parts, each followed by an exam. Those who graduate the whole Telerik Academy training program will be presented with the opportunity to join the Telerik team and help Telerik to deliver exceptional software to the world. The courses themselves are aiming to provide free real-world practical training for ambitious and devoted young people.

The course content follows the free open-source book “Introduction to Programming with C#” - www.introprogramming.info.

For more information visit the “C# Fundamentals” course web site.

Most interested could also join the Telerik Academy unofficial discussions group where the lectures, exercises and solutions are actively discussed: http://groups.google.com/group/telerikacademy.

Posted by snakov as news, blog at 11:54 PM EET

Comments Off

January 22nd, 2010

Course “High-Quality Programming Code” at FMI Reached Its Capacity

I was recently warned by students from the Faculty of Mathematics and Informatics (FMI) at Sofia University that our course “High-Quality Programming Code” was offered for only 100 students like most elective courses at FMI. We are looking for a way to extend the maximum allowed attendees but we cannot go aside the official administrative rules at the Faculty.

All Students from FMI will be Accepted

The course organizers agree that all FMI students who want to attend this course are welcome to take part in all training activities (lectures, exercises and course projects) even when not officially joined through the official university information system “SUSI”. We hope we will be given large enough hall to fit all attendees. Students who pass successfully all their exams and graduate this course will be allowed to reuse their grades for the next year.

For more information keep checking the “News” section at the course’s official Web site: http://codecourse.telerik.com.

Posted by nakov as news, blog at 4:42 PM EET

Comments Off

January 19th, 2010

Course “High-Quality Programming Code” in FMI and TU-Sofia

Starting from February 2010 I will lead a team of software engineering professionals from Telerik Corporation who will teach the course “High-Quality Programming Code” in the Faculty of Mathematics and Informatics (FMI) at Sofia University and at the Technical Univesity - Sofia (TU-Sofia). The course complements the fundamental university education with important software development and code construction concepts and best practices. The outcomes for the students are the acquisition of knowledge and skills for building high-quality programming code, practical skills for code refactoring and unit testing.

Course Organizers

The course is organized by Svetlin Nakov and his team with the cooperation of the Department of Software Technologies in FMI and the Students Council in TU-Sofia. The course is supported and sponsored by Telerik Corporation (large Bulgarian software development company recently listed in the Red Herring: Global 100 Winners).

Course Annotation

The „High-quality programming code” course objective is to introduce the students to the principles of high-quality programming code construction during the software development process. The quality of the code is discussed in its most important characteristics – correctness, readability and maintainability. The principles of construction of high-quality class hierarchies, classes and methods are explained. Two fundamental concepts – “loose coupling” and “strong cohesion” are defined and their effect on the construction of classes and subroutines is discussed. Some advices for correctly dealing with the variables and data are given, as well as directions for correct naming of the variables and the rest elements of the program. Best practices for organization of the logical programming constructs are explained. Some methodologies for testing, debugging and code optimization are introduced. Attention is given also to the “refactoring” as a technique for improving the quality of the existing code. The principles of good formatting of the code are defined and explained. The concept of “self-documenting code” as a programming style is introduced. The techniques and practices for constructing high-quality programming code discussed in the course are independent of the programming languages.

Training Program

  1. Course Overview. Introduction to High-Quality Programming Code. Entrance Project
  2. Fundamentals of Software Engineering
  3. Naming Identifiers in the Source Code. Naming Classes, Methods, Variables, Parameters and Other Elements of the Code
  4. Designing High-Quality Classes and Class Hierarchies. Best Practices in the Object-Oriented Design
  5. High-Quality Methods. Strong Cohesion and Loose Coupling
  6. Using Variables, Data, Expressions and Constants Correctly
  7. Using Control Structures, Conditional Statements and Loops Correctly
  8. Correctly Formatting the Code. Code Documentation, Comments and Self-Documenting Code. Code Conventions
  9. Defensive Programming. Using Exceptions Correctly. Performance Tuning and Code Optimization
  10. Code Integration. Refactoring Existing Code to Improve Its Quality
  11. Software Quality Assurance. Testing and Debugging. Unit Testing. Test-Driven Development
  12. Development Tools. Development Environments. Change Management Systems. Code Analysis Tools. Automated Testing Tools. Automated Build Tools. Continuous Integration Tools
  13. Test Covering the All Studied Topics
  14. Course Projects: Assignment, Guidelines and Discussion
  15. Psychology of Computer Programming

Lecturers Team

Requirements to the Students

Assesment and Exams

Assessment is based on test (theory) and course project (practice). The test consists of 40 questions covering the course content. The course project has two parts: entrance project (small programming problem that should be solved in C#, Java or C++) and final project (refactoring of low-quality code and adding unit tests).

Official Web Site

Visit the official Web site of the course “High-Quality Programming Code”: http://codecourse.telerik.com/.

Posted by nakov as news, blog at 2:01 PM EET

Comments Off

« Previous Entries  Next Entries »