X-Git-Url: https://codewiz.org/gitweb?p=wiki.git;a=blobdiff_plain;f=PersonalEducation;h=33528e6b94d44fc56ac7588958b5525803ef933a;hp=81f0610b1e5da97607ea2a95529f85a783468b54;hb=1802ff5e17d69dd35faee801558ea014d41951d6;hpb=11517e29a0335f0da481717bfa8a8ae00bf1b1ff diff --git a/PersonalEducation b/PersonalEducation index 81f0610..33528e6 100644 --- a/PersonalEducation +++ b/PersonalEducation @@ -8,35 +8,37 @@ * Attended one term of Software Engineering course at Unviersita' degli Studi di Firenze in 1994. Computer Science exam '''30/30 cum laude'''. -In 1994 I dropped out of the university to do a job as an EmployedWorker +In 1994 I dropped out of the university to accept a job as an EmployedWorker 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.