3 * [[HarvardExtensionSchool]] -- Undergraduate courses of **Mathematics** and
4 **Educational Technologies**.
6 * **Unviersità degli Studi di Firenze** -- I attended only one term of
7 **Software Engineering** (computer Science exam **30/30 cum laude**).
8 In 1995, I dropped out to work for a startup in the emerging field of
11 * **Istituto Tecnico Commerciale "A.Volta", Firenze** -- High-school diploma
12 in **Mathematics and Computer Science** with a rating of **56 out of 60**.
13 This course included a good amount of **Electronic Engineering**.
15 === Non-formal studies and self-teaching ===
17 Over the years I tried to compensate for lack of proper university-grade
18 education by making the local libraries much richer:
20 * **Compilers**, reading several textbooks such as CompilersPrinciplesTechniquesAndTools,
23 * **Algorithms** -- many, including classics such as DonaldKnuth's bible TheArtOfComputerProgramming,
24 CambridgeUniversityPress's NumericalRecipes and NicholasWirth's ancient, but still
25 brillant, "Algorithms + Data Structures = Programs".
27 * **Operating Systems** -- Too many to mention here, most of which quite
28 theoretical and boring. Of course, my favorite will always be AdvancedProgrammingInTheUnixEnvironment.
30 * **Networking** -- Several books, including TcpIpIllustrated, several RFCs and
33 * **Programming Languages** -- All the obvious textbooks such as BjarneStroustrup's
34 SeePlusPlusProgrammingLanguage, and many others like the old SeeProgrammingLanguage,
35 ThinkingInJava, and dozens of C++ books.
37 * **Programming Techniques** -- Countless. Such as SeePlusPlusTemplateMetaprogramming
38 and the controversial ModernSeePlusPlusDesign by AndreiAlexandrescu.
39 My absolute favourite is BrianKernighan's and RobPike's ThePracticeOfProgramming.
41 * **Software Architecture and Design** -- All the "must-read" classics such as
42 GangOfFour's DesignPatterns, UmlDistilled and UmlDesignPatterns.
44 * **Project Management** -- My favourite certainly is TheMythicalManMonth, but I've
45 read a few others such as ExecutionPlainAndSimple.
47 * **Technical Writing** -- TheElementsOfStyle and DonaldKnuth's TheTexBook are my
48 favourites on the topics of stylish writing and typesetting.
50 * **Numerical Methods** -- I'm sorry to have quite a thin mathematical background.
51 Nevertheless, I enjoyed reading DonaldKnuth's ConcreteMathematics and
52 CambridgeUniversityPress' NumericalRecipes.
54 * **Database** -- Relational algebra, principles of schema normalization, SQL.