ÿþ<?xml version="1.0" encoding="utf-16"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <title>Edgar R. Chavez .. Systems development </title> <link rel="stylesheet" href="../erc01.css" type="text/css" /> </head> <body> <div id="top"> <img class="quill" src="../Images/myquill5.png" alt="myQuill"></img> <h2> Edgar R. Ch&aacute;vez</h2> <h3> Systems development </h3> </div> <div class="NavigationLinks"> <hr class="myLine" /> <ul> <li><a href="../home.html"> Home </a></li> <li><a href="./computers.html"> Computers </a></li> </ul> <hr class="myLine" /> <ul> <li><a href="./se.html"> Systems development </a></li> </ul> <ul class="NavMargin1"> <li><a href="#buildtools"> Build tools </a></li> </ul> <ul class="NavMargin2"> <li><a href="#ant"> Ant </a></li> <li><a href="#cmake"> CMake </a></li> <li><a href="#make"> Make </a></li> <li><a href="#maketutorials"> Make tutorials </a></li> <li><a href="#scons"> SCons </a></li> </ul> <ul class="NavMargin1"> <li><a href="#documentation"> Documentation </a></li> <li><a href="../www/dom.html"> DOM </a></li> <li><a href="#misc"> Miscellaneous </a></li> <li><a href="#prettyprint"> Pretty printers </a></li> <li><a href="#regex"> Regular expressions </a></li> <li><a href="#texteditors"> Text editors </a></li> <li><a href="#versionmgmt"> Version management </a></li> </ul> <hr class="myLine" /> </div> <div class="InfoArea"> <div id="buildtools"><span class="Subhead2"> Build tools </span> <div class="Tab5"> <span id="ant" class="Subhead3"> Ant </span> <p><a href="http://ant.apache.org/"> Ant </a> &nbsp; The Apache Ant Project </p> <p><a href="http://ant.apache.org/manual/index.html"> Ant Manual </a></p> <p><a href="http://ant.apache.org/manual/index.html"> Ant tutorials </a> &nbsp; At Apache </p> <span id="cmake" class="Subhead3"> CMake </span> <p><a href="http://www.cmake.org/"> CMake </a> &nbsp; A cross-platform, open-source build system. CMake is a family of tools designed to build, test, and package software. CMake is used to control the software compilation process using simple platform and compiler-independent configuration files. CMake generates native makefiles and workspaces that can be used in the compiler environment of your choice. </p> <span id="make" class="Subhead3"> Make </span> <p><a href="http://frank.mtsu.edu/~csdept/FacilitiesAndResources/make.htm"> An Introduction to the UNIX Make Utility </a></p> <p><a href="http://make.paulandlesley.org/autodep.html"> Advanced Auto-Dependency Generation </a> &nbsp; This document describes a very useful method for having make itself create and maintain dependencies completely automatically. </p> <p><a href="http://www.gnu.org/software/make/manual/html_node/index.html"> GNU Make Manual </a></p> <p><a href="http://en.wikipedia.org/wiki/Make_%28software%29"> make (software) </a> &nbsp; Wikipedia entry. </p> <p><a href="http://www.oreilly.com/catalog/make3/book/"> Managing Projects with GNU Make, Third Edition </a> &nbsp; By Robert Mecklenburg. Open source book, which is also published by O'Reilly. Available here as nine separate PDF files. See also <a href="http://www.wanderinghorse.net/computing/make/"> Stuff for GNU Make</a> for a copy in OpenDocument format and other goodies. </p> <p><a href="http://miller.emu.id.au/pmiller/books/rmch/"> Recursive Make Considered Harmful </a></p> <p><a href="http://www.opussoftware.com/tutorial/TutMakefile.htm"> The Make File </a> &nbsp; A tutorial description. </p> <p><a href="http://freshmeat.net/articles/view/1702/"> What is Wrong with Make? </a></p> <span id="maketutorials" class="Subhead3"> Make tutorials </span> <p><a href="http://www.eng.hawaii.edu/Tutor/Make/"> Make - a tutorial </a> &nbsp; <img src="../Images/stars4.g if" alt="Rank4" /> &nbsp; By Ben Yoshino, University of Hawaii. </p> <p><a href="http://www.cs.colby.edu/maxwell/courses/tutorials/maketutor/"> A Simple Makefile Tutorial </a> &nbsp; By Bruce Maxwell, Colby College, Waterville, Maine. </p> <p><a href="http://www.cems.uvm.edu/~snapp/maketutorial/make.html"> Makefile tutorial </a> &nbsp; By Robert Snapp, University of Vermont. </p> <p><a href="http://mrbook.org/blog/tutorials/make/"> Makesfiles </a> &nbsp; A short tutorial by example. </p> <p><a href="http://www.cs.umd.edu/class/spring2002/cmsc214/Tutorial/makefile.html"> Makefiles </a> &nbsp; By Charles Lin, University of Maryland. A slightly more detailed tutorial. </p> <span id="scons" class="Subhead3"> SCons </span> <p><a href="http://www.scons.org/"> SCons </a> &nbsp; An Open Source software construction tool; reliable, automatic dependency analysis built-in for C, C++ and Fortran. </p> </div></div> <div id="documentation"><span class="Subhead2"> Documentation </span> <div class="Tab5"> <p><a href="http://www.scriptdoc.org/"> ScriptDoc </a> &nbsp; ScriptDoc provides a uniform format for documenting code created with dynamic languages including JavaScript. </p> </div></div> <div id="misc"><span class="Subhead2"> Miscellaneous </span> <div class="Tab5"> <p><a href="http://www.gnu.org/software/gdb/"> GDB </a> &nbsp; The GNU Project debugger, allows you to see what is going on inside another program while it executes, or what it was doing at the moment it crashed. GDB (1) start your program, specifying anything that might affect its behavior; (2) make your program stop on specified conditions; (3) examine what has happened, when your program has stopped; and (4) change things in your program, so you can experiment with correcting the effects of a bug. The program being debugged can be written in Ada, C, C++, Objective-C, Pascal, and many other languages. Those programs might be executing on the same machine as GDB or on another remote machine. GDB can run on most UNIX and Microsoft Windows variants. </p> <p><a href="http://airs.com/ian/configure/"> The GNU configure and build system </a></p> <p><a href="http://www.gnustep.org/"> GNUstep </a> &nbsp; Cross-platform, object-oriented framework for desktop application development. Based on the OpenStep specification originally created by NeXT (now Apple), GNUstep enables developers to rapidly build sophisticated software by employing a large library of reusable software components. See also the <a href="http://www.gnustep.org/experience/Windows.html"> GNUstep Windows installer</a>.</p> <p><a href="http://msdn2.microsoft.com/en-us/library/aa260976(VS.60).aspx"> Hungarian Notation </a> <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; by Charles Simonyi. The original article. See also the <a href="http://en.wikipedia.org/wiki/Hungarian_notation#cite_note-simonyi-0"> Wikipedia article </a></p> <p><a href="http://www.cs.washington.edu/orgs/acm/tutorials/"> Tutorials </a> &nbsp; University of Washington ACM Group. </p> </div></div> <div id="prettyprint"><span class="Subhead2"> Pretty-printers </span> <div class="Tab5"> <p><a href="http://www.softpanorama.org/Utilities/beautifiers.shtml"> Beautifiers and Pretty Printers </a> &nbsp; Introduction and links to pretty printers for several languages. See also the Wikipedia article <a href="http://en.wikipedia.org/wiki/Prettyprint"> Prettyprint </a> for links to other code beautifiers. </p> <p><a href="http://www.linuxjunkies.org/html/C-C++Beautifier-HOWTO.html"> C C++ Beautifier How-to </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; Explains how to use indent, cb, and bcpp to beautify C and C++ in UNIX, DOS, Windows, and other operating systems. Very thorough. Includes links to pretty printers for other languages, plus other unrelated but interesting information. </p> <p><a href="http://www.gnu.org/software/indent/"> GNU Indent </a> &nbsp; controls the alignment of braces and declarations, program indenting, and formatting of C and, to some extent, C++ programs. Source and documentation (in Postscript and PDF formats) are supposed to be available <a href=""> here</a>, but as of February 17, 2008 they were not. Online documentation available <a href="http://www.cims.nyu.edu/systems/software/desc/indent.html">here</a>. Windows users should look at <a href="http://gnuwin32.sourceforge.net/packages/indent.htm"> Indent for Windows</a>.</p> <p><a href="http://www.w3.org/People/Raggett/tidy/"> HTML Tidy </a> &nbsp; See also the <a href="http://tidy.sourceforge.net/"> HTML Tidy Project </a></p> <p><a href="http://jcay.com/javascript-code-improver.html"> JavaScript Code Improver </a> &nbsp; Simple and easy to use. Can handle JavaScript embedded in web pages or standalone files. See also <a href="http://www.thedance.net/~roth/CAC/BEAUTIFIERS/code_beautifiers.html"> PL/SQL, JSP, Java, and Javascript 'Beautifiers' (Reformatters)</a> for other alternatives. </p> <p><a href="http://www.curiousconcept.com/jsonformatter/"> JSON Formatter </a></p> <p><a href="http://peephole.cs.ucdavis.edu/"> Peephole Pretty Printing </a> &nbsp; Peephole pretty printing is an optimization of <a href="http://homepages.inf.ed.ac.uk/wadler/topics/language-design.html#prettier"> Wadler's pretty print algorithm. </a> Source code can be downloaded. </p> <p><a href="http://www.ee.ryerson.ca/~elf/prettyp/"> prettyp </a> &nbsp; The prettyp package consists of a suite of programs that generates "pretty" PostScript source code listings using TeX. Various languages supported; additional languages can be easily added. </p> <p><a href="http://www.prettyprinter.de/module.php?name=PrettyPrinter"> prettyprint.de </a> &nbsp; An online code beautyfier for PHP, Java, C++, C, Perl, JavaScript, CSS. You paste your code in one window; the beautified code is shown below. Dos not work well with C or C++ case statements. </p> <p><a href="http://jg.org/pprint/"> Webpage Pretty Printer and Beautifier</a> &nbsp; HTML, Javascript, and CSS nicely formatted. Seems to work only with plain text files; if not, it goes into an infinite loop. </p> </div></div> <div id="regex"><span class="Subhead2"> Regular expressions </span> <div class="Tab5"> <p><a href="http://pubs.opengroup.org/onlinepubs/007908799/xbd/re.html"> Regular Expressions </a> &nbsp; The Single UNIX Specification, Version 2 </p> <p><a href="http://www.zytrax.com/tech/web/regex.htm"> Regular Expressions - User's Guide </a></p> <p><a href="http://en.wikipedia.org/wiki/Regular_expression_examples"> Regular expression examples </a></p> <p><a href="http://zez.org/article/articleprint/11/"> Regular Expressions explained </a> &nbsp; Jan Borsodi </p> </div></div> <div id="texteditors"><span class="Subhead2"> Text editors </span> <div class="Tab5"> <p><a href="http://www.arachnoid.com/arachnophilia/"> Arachnophilia </a> &nbsp; A powerful customizable programming editor with some special HTML production and editing features.</p> <p><a href="http://bend.codeplex.com/"> Bend </a> &nbsp; A modern text editor. Requires Windows 7. </p> <p><a href="http://en.wikipedia.org/wiki/Comparison_of_text_editors"> Comparison of text editors </a> At Wikipedia </p> <p><a href="http://bluefish.openoffice.nl/"> bluefish </a> &nbsp; A powerful editor for programmers and webdesigners. It many programming and markup languages, and focuses on editing dynamic and interactive websites. An open source development project, released under the GNU GPL licence. Runs on POSIX-compatible operating systems including Linux, FreeBSD, MacOS-X, OpenBSD and Solaris. See an independent <a href="http://code.google.com/p/bluefish-win/"> Bluefish-Windows project </a> for a native Bluefish binary for Windows. </p> <p><a href="./unix.html#ed"> Ed </a></p> <p><a href="./unix.html#emacs"> Emacs </a></p> <p><a href="http://www.thefreecountry.com/webmaster/htmleditors.shtml"> Free HTML editors </a></p> <p><a href="http://www.chami.com/HTML-Kit/"> HTML-Kit </a> &nbsp; A free, full-featured editor for HTML, XHTML, XML, CSS, JavaScript, PHP and other text files. More than 400 plugins available, including HTML Tidy for creating standards-compliant web pages. </p> <p><a href="http://www.liquidninja.com/metapad/"> Metapad </a> &nbsp; Small, fast, free editor for Windows. </p> <p><a href="./unix.html#nano"> Nano </a></p> <p><a href="http://www.flos-freeware.ch/notepad2.html"> Notepad2 </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; Excellent editor for Windows: small, fast, and free. You can view source with color-highlighted syntax, with different color schemes for different file types. The author replied to an e-mail very quickly and politely, although the answer, had I bothered to look it up, was clearly and thoroughly documented. </p> <ul class="noLineBreak"> <li><a href="http://code.kliu.org/misc/notepad2/"> Extended version </a> &nbsp; Supports code folding, an installer allowing clean and completely undoable Windows Notepad replacement, additional syntax schemes, and other improvements. </li></ul> <p><a href="http://for.mat.bham.ac.uk/R.W.Kaye/latex/main.htm"> PFE </a> &nbsp; Programmer's File Editor. Developed by A. Phillips of Lancaster University. Powerful and free; recommended for editing source code. Available in 16-bit and 32-bit versions. Unfortunately, not updated in several years. <a href="http://gnosis.cx/publish/programming/review_pfe.html"> This review</a> describes some of its features and benefits.</p> <p><a href="http://www.cs.colostate.edu/helpdocs/vi.html"> Basic vi commands </a> &nbsp; vi is the default text editor that comes with Unix. </p> <ul class="noLineBreak noBullets"><li><a href="http://www.eng.hawaii.edu/Tutor/vi.html"> Mastering the vi editor </a> &nbsp; University of Hawaii </li></ul> <p><a href="http://www.vim.org/about.php"> Vim </a> &nbsp; An advanced text editor that seeks to provide the power of the de-facto Unix Vi editor, with a more complete feature set. It&#8217;s useful whether you&#8217;re already using vi or a different editor.</p> <ul class="noBullets noLineBreak"><li><a href="ftp://ftp.vim.org/pub/vim/doc/book/vimbook-OPL.pdf"> Vim tutorial </a> &nbsp; Steve Oualline </li></ul> </div></div> <div id="versionmgmt"><span class="Subhead2"> Version management </span> <div class="Tab5"> <p><a href="http://www.cvshome.org/"> CVS </a> &nbsp; CVS is the Concurrent Versions System, the dominant open-source network-transparent version control system. CVS is useful for everyone from individual developers to large, distributed teams. </p> <p><a href="http://darcs.net/"> darks </a> &nbsp; A free, open source source code management system. <>/p> <p><a href="http://www.loria.fr/%7Emolli/cvs/doc/cvs_toc.html"> Version Management with CVS </a> &nbsp; The official CVS manual. This link is easier to read and faster than <a href="http://www.cvshome.org/docs/manual/"> this one </a> from the CVS homepage. </p> <p><a href="http://cvsbook.red-bean.com/"> The CVS Book: Open Source Development with CVS </a> &nbsp; By Karl Fogel and Moshe Bar, Second Edition. </p> <p><a href="http://git.or.cz/"> Git </a> &nbsp; Fast Version Control System. Git is an open source version control system designed to handle very large projects with speed and efficiency. It is also well suited for small personal repositories. It is especially popular in the open source community. </p> <p><a href="http://subversion.tigris.org/"> Subversion </a> &nbsp; The goal of the Subversion project is to build a version control system that is a compelling replacement for CVS in the open source community. The software is released under an Apache/BSD-style open source license. </p> </div></div> <div class="Quote1"> <hr class="myLine" /> If we built houses the way we build software, the first woodpecker to come along would destroy civilization. <br /> -- Cliff Stoll <hr class="myLine" /> </div> </div> <div class="MyCopyright"> <hr class="myLine" /> Copyright &copy; 2003-2012 by Edgar R. Ch&aacute;vez. All rights reserved. <hr class="myLine" /> </div> </body> </html>