Presentation is loading. Please wait.

Presentation is loading. Please wait.

]po[ - „Excellent Developers“ Frank Bergmann, 2007-12-01.

Similar presentations


Presentation on theme: "]po[ - „Excellent Developers“ Frank Bergmann, 2007-12-01."— Presentation transcript:

1 ]po[ - „Excellent Developers“ Frank Bergmann, 2007-12-01

2 What is an Excellent Developer?  An excellent developer is 10x faster then a good developer.  How to become “excellent”?  Read through other’s code: –Learn what is there in order to copy, paste and modify. –Learn the difference between clean and ugly code. –Learn new concepts, methods and tricks.  Think in bigger chunks: –“Components” are a kind of boxes wired by “Glue Code” following a limited number of “Patterns”. –New components may or may not fit with the other components you’ve got around. –Thinking in pages, fields and algorithms is not enough anymore. I’d not hire you!  Good developers write good code.  Great developers write great code.  Excellent developers copy, past & modify great code.

3 Architects vs. Administrators OpenACS Basics SysAdmin Software Dev. OpenACS Architect OpenACS Admin  Architect: Develop new functionality that become used by others  Admin: Run big systems with many users. OpenACS Developer

4 “OpenACS Basics” OpenACS Base  Configure system  Modify existing code  Write small extensions  Debug/ find errors SQL Base  Understand OpenACS queries  Understand part of the OpenACS data model  Write basic queries  Inner and outer joins  Use Pl/SQL API Logs & Debug  Read “error.log”  Use /ds/  Debug SQL Queries Linux Base  Use basic BASH commands  Use Emacs/VI for editing  Basic file permissions  Restart server TCL Base  Basic TCL syntax & commands  List syntax {} and [list]  Understand lists and arrays CVS Base  Checkout and commit files  Retrieve specific versions  Compare version differences

5 “OpenACS Developer” OpenACS Developer  Configure system  Modify existing code  Write small extensions  Debug/ find errors SQL Advanced  Understand PlPg/SQL  ACID Transactions  Performance optimization, selectivity, tradeoffs, … Logs & Debug  Performance tuning  Find errors in most packages  Be informed about the status of important packages Linux Admin  Install, maintain and update Linux  Understand and implement security concepts  Linux performance optimization TCL Developer  Understand advanced TCL constructs, uplevel & stacks  Deep understanding of Form- & List builder CVS Advanced  Release organization  Branching and joins

6 “OpenACS Architect” OpenACS Architect  Develop new libraries to be used by others  Introduce new technologies (Ajax?, XO-TCL, …) SQL Data Modelling  Understand similarities and differences between UML, Entity-Relationship and other modeling methods  Understand performance & usability impact of modeling decision Product Development  Understand user’s needs from the functional side  “Dream up” solutions for users TCL Advanced  Write new TCL “commands” and control structures Community & Competition  Know who is doing what in the community  Learn about new trends & technologies  Know the competing applications with their strength and weaknesses Sales & Finance  Find sponsors to pay for extensions  Sell your ideas to the community

7 “OpenACS Admin” OpenACS Admin  Run large OpenACS installations with high uptime SQL  Understand the internals of Oracle and PostgreSQL Security & Policies  Understand pros & cons of security policies. Select the right policy for your organization.  Follow-up on relevant security bulletins  Understand how to introduce policies in an organization Systems Monitoring  Understand Nagios, BigBrother and others  Perform proactive maintenance Linux/Solaris Admin  Understand Unix internals (schedulers, I/O system, locks, cross-bars & NUMA, …)  Understand RAID & storage networks

8 Frank Bergmann frank.bergmann@project-open.com www.project-open.com


Download ppt "]po[ - „Excellent Developers“ Frank Bergmann, 2007-12-01."

Similar presentations


Ads by Google