X-Git-Url: https://codewiz.org/gitweb?p=wiki.git;a=blobdiff_plain;f=PersonalEducation;h=c0ef689b4bc31c7596db4ffca2fd7edf067a756c;hp=81f0610b1e5da97607ea2a95529f85a783468b54;hb=a9d66248fa444148c56ad9e316074ffac8d7729a;hpb=11517e29a0335f0da481717bfa8a8ae00bf1b1ff diff --git a/PersonalEducation b/PersonalEducation index 81f0610..c0ef689 100644 --- a/PersonalEducation +++ b/PersonalEducation @@ -13,30 +13,32 @@ for a small company, and a few months later for SeacCompany. === Nonformal studies and self-teaching === -Over the years I tried to compensate for lack of university-grade education -by reading and studying on my own: +Over the years I tried to compensate for lack of proper university-grade +education by making the local libraries much richer: * '''Compilers''', reading several textbooks such as CompilersPrinciplesTechniquesAndTools, and many others. - * '''Algorithms''' - textbooks such as DonaldKnuth's TheArtOfComputerProgramming, - CambridgeUniversityPress's NumericalRecipes and even NicholasWirth's ancient - "Algorithms + Data Structures = Programs". + * '''Algorithms''' - many, including classics such as DonaldKnuth's bible TheArtOfComputerProgramming, + CambridgeUniversityPress's NumericalRecipes and NicholasWirth's ancient, but still +brillant, "Algorithms + Data Structures = Programs". - * '''Operating Systems''' - Too many textbooks to mention here, most of - which quite theoretical. My favourite is of course AdvancedProgrammingInTheUnixEnvironment. + * '''Operating Systems''' - Too many to mention here, most of which quite + theoretical and boring. Of course, my favorite will always be AdvancedProgrammingInTheUnixEnvironment. - * '''Networking''' - Many, many books, including TcpIpIllustrated. + * '''Networking''' - Several books, including TcpIpIllustrated, several RFCs and + technical papers. - * '''Programming Languages''' - Using the obvious textbooks such as BjarneStroustrup's - SeePlusPlusProgrammingLanguage, and many others like SeeProgrammingLanguage, - ThinkingInJava. + * '''Programming Languages''' - All the obvious textbooks such as BjarneStroustrup's + SeePlusPlusProgrammingLanguage, and many others like the old SeeProgrammingLanguage, + ThinkingInJava, and dozens of C++ books. - * '''Programming Techniques''' - Many. Such as SeePlusPlusTemplateMetaprogramming. + * '''Programming Techniques''' - Countless. Such as SeePlusPlusTemplateMetaprogramming + and the controversial ModernSeePlusPlusDesign by AndreiAlexandrescu. My absolute favourite is BrianKernighan's and RobPike's ThePracticeOfProgramming. - * '''Software Architecture and Design''' - Lots of titles such as GangOfFour's DesignPatterns, - UmlDistilled and UmlDesignPatterns. + * '''Software Architecture and Design''' - All the "must-read" classics such as + GangOfFour's DesignPatterns, UmlDistilled and UmlDesignPatterns. * '''Project Management''' - My favourite certainly is TheMythicalManMonth, but I've read a few others such as ExecutionPlainAndSimple. @@ -47,3 +49,6 @@ by reading and studying on my own: * '''Numerical Methods''' - I'm sorry to have quite a thin mathematical background. Nevertheless, I enjoyed reading DonaldKnuth's ConcreteMathematics and CambridgeUniversityPress' NumericalRecipes. + + * '''Databases''' - Basics of the relational database theory and relational algebra. + Know how to rewrite schemata into normal form.