Edit page PikiWiki
[wiki.git] / ProgrammingLanguages
index d7ead27c4319f21cd360407abf39b71f1c39e1d0..1e409f3c2c8183493e0f48fa774222b15ab31eb2 100644 (file)
@@ -3,18 +3,15 @@ afraid to try exotic ones in real projects, expecially
 because most customers are already scared off enough when
 they see Perl code :-)
 
-=== General Purpose Programming Languages ===
+=== General-purpose ===
 
  * '''C++''' - I know the ISO/IEC C++ 98 standard extensively, including
- most of the recent TR1 additions.  I also know several C++
- ProgrammingFrameworks.
+ most of the recent C++11 additions. I also know several C++ [[ProgrammingFrameworks]].
 
- * '''C''' - I consider C a different language from C++ because you
- end up using a different programming style and ProgrammingFrameworks.
- ISO C89 (and later C99) is the probably the language I've been using
- most often, mostly because I did lots of low-level programming in my
- EmbeddedEngineerRole and because C is still the prominent language
- in open source projects (see OpenSourceDeveloperRole).
+ * '''C''' - I regard C as a distinct language because the programming
+ style and [[ProgrammingFrameworks]] differ considerably from C++.
+ ISO C99 with GNU extensions is the probably the language I've used the most
+ for low-level programming (see [[EmbeddedEngineerRole]] and [[OpenSourceDeveloperRole]]).
 
  * '''Assembly''' - I know assembly from several processors, but I
  can say I'm proficient only with the following:
@@ -23,55 +20,41 @@ they see Perl code :-)
   * Texas Instrument's DSPs (mostly TMS320C5xx)
   * The old Zilog Z80
  
- I've also used several MicroController's, in the sense that I know
+ I've also used several [[MicroController]]'s, in the sense that I know
  the architecture and integrated peripherals.
 
- * '''Java''' - I've been involved in a large Java web application
- (visible here: http://www.fieremostre.it/ ), but mainly as a Tomcat
- administrator and maintainer of the build and deployment system.
- The only development work I did is in user authentication, security
- and database access.  I've also done profiling, optimization and
+ * '''Java''' - I wrote some Java code at Google, although I'm not a skilled
+ Java programmer. Long ago I've helped create a large Tomact-based
+ webapp for [[http://www.fieremostre.it/|Fiere Mostre]], mainly in deployment
+ and production systems, with minor development work for user authentication,
security and database access.  I've also done profiling, optimization and
  performance tuning work for a POS application based on IBM's JPOS.
- I know the Java language and much of JFC, but I'm not really into
- Java any more.
 
-Others you don't know or care about: Pascal, Visual''''''Basic.
+=== Dynamic/Agile ===
 
+ * '''Perl''' - I used to be quite proficient in Perl, but today I use it
+ mostly for one-liners. These tools are a good example of my rusty Perl
+ coding skills:
 
-=== Dynamic Languages ===
+  * [[http://www.codewiz.org/projects/#loginfo|Deluxe Loginfo]]
+  * [[http://www.codewiz.org/projects/#newrpms|Newrpms]]
+  * Extensive customizations to Bugzilla for internal use
 
- * '''Perl''' - I'm quite proficient in Perl, but use it mostly
- for one-liners and small utilities for my SystemAdministratorRole.
- These tools are a good example of my Perl coding skills:
+ * '''PHP''': I've taught PHP in a web programming course as part
+ of my [[TeacherRole]].  I've also written an online shop application
+ in PHP back when PHP4 was not yet mainstream and you had to build it from source.
+ As part of my [[ManagerRole]], I've also coordinated two additional PHP projects
+ at [[DevelerCompany]].
 
-  http://www.codewiz.org/projects/#loginfo
+ * '''Python''': I use Python occasionally for scripting and small webapps.
+ See [[GeekiGeeki]] for an example of my limited Python programming skills.
 
-  http://www.codewiz.org/projects/#newrpms
-
- I've also done deep Bugzilla customizations for a customer,
- which enables me to say that I've also used Perl in a real
- application too.
-
- * '''PHP''': I've teached PHP in a course done as part of
- my InstructorRole.  I've also wrote an
- online shop application in PHP back when PHP4 was not
- yet mainstream and you had to build it yourself.
- As part of my ManagementRole, I've also supervised two
- additional PHP projects developed at DevelerCompany. 
-
- * '''Python''': I know Python just a little.  The PikiPlus engine
- that serves these pages is an example of my Python programming
- skill (but note that MartinPool deserves credit for the initial
- version).
-
- * '''Javascript''': Only superficial knowledge.
+ * '''Javascript'''/'''ECMAscript''': Only superficial knowledge.
 
 === Scripting Languages ===
 
- * '''Bourne Shell''': I've used bash as my main shell
- for a very long time and I've used it extensively for
- automation (see SystemAdministratorRole) and as part
- of using make and autoconf.
+ * '''Bourne Shell''': I've been using bash as my main shell environment
+ and wrote countless scripts to automate my work
 
 === Query languageas ===
 
@@ -82,14 +65,15 @@ Others you don't know or care about: Pascal, Visual''''''Basic.
 
 === Not Properly Languages ====
 
- * '''HTML''': Extensive knowledge of the W3C standards (HTML 4.01
- and XHTML 1.1).
+ * '''regex''': Extended and Perl-compatible regular expressions.
+
+ * '''HTML''': Extensive knowledge of the W3C standards (HTML 4.01 and XHTML 1.1).
 
- * '''CSS''': Incomplete knowledge of the W3C standard (CSS1 & CSS2).
+ * '''CSS''': Some outdated experience with CSS1 and CSS2
 
- * '''LaTeX''': Superficial knowledge (can write documents, not create macros etc.)
+ * '''LaTeX'''
 
- * '''make''': I can do wizardry with GNU Make macros, etc.
+ * '''make''': I can write really obfuscated Makefiles using the GNU Make extended syntax, autoconf, automake, etc.
 
 
 === Useless Languages ====
@@ -97,3 +81,6 @@ Others you don't know or care about: Pascal, Visual''''''Basic.
  * '''awk'''
  * '''sed'''
  * '''REXX'''
+ * '''Turbo Pascal'''
+ * '''Visual Basic'''
+ * '''Brainfuck'''
\ No newline at end of file