Perhaps I need to start with the emacs, bash command line, and svn, but then move into task based learning… like processing tide file or GPS logs from a station.
Dale Chayes suggested looking at what the Bioinformatics crowd has done with the O’Reilly. I think that maybe Bioinformatics Programming Using Python by Model might be an interesting place to look.
Please buy a copy of the book from me the author. I will be working to find a publishing site. The electronic version of this book will always be available under a Non-commercial Creative Commons license. The best way to tell an open source author that you appreciate their work and want more is to purchase the physical book (or e-Reader version if I get around to making one).
You are free to use any code that I have included in this book under either the GPL version 3, BSD, or MIT license.
- FIX: explain that code is usable either open or closed source
- FIX: point to license files.
By the end of the book, you will be able to go out on ship for a research cruise, collect a range of data types, process the data, interpret the data, prepare a series of reports, and submit the data to NOAA’s NGDC for permanent archive. Along the way you will learn how to do these tasks using free open source software (FOSS) and know where to look for help and additional closed software should you need more.
- http://sepwww.stanford.edu/data/media/public/sep//jon/repropreface.html
- Might make good data sets for research tools http://sepwww.stanford.edu/public/docs/sepdatalib/toc_html/
- Writing advice
- http://en.wikipedia.org/wiki/Reproducibility#Reproducible_research
- http://www.emilsit.net/blog/archives/difficulties-in-data-analysis/
- http://science.slashdot.org/story/10/02/09/1336250/Call-For-Scientific-Research-Code-To-Be-Released
But not limited to marine science, however it will focus on tasks that would be done in general ocean mapping
I will try to provide closed source alternatives if your needs outstrip the FOSS software
http://www.iho-ohi.net/iho_pubs/standard/M510thed08.pdf
M510thed08.pdf - STANDARDS OF COMPETENCE for Hydrographic Surveyors, M-5 Tenth Edition, 2008, Guidance and Syllabus for Educational and Training Programmes
| B2.1 Computer Fundamentals | PF | Explain how the following components interact to form a computer system: central processor unit, storage devices, storage media, input and output ports and devices. Describe the input and output devices particularly useful in geomatics (hydrographic) computer systems. | List appropriate criteria for selecting computer systems for hydrographic data acquisition, processing, and management. Explain the interfacing hardware standards for peripheral devices: RS-232, USB, SCSI etc. |
| B2.2 System and Application Software | PP | Describe the architecture of operating system software, such as Windows, UNIX and Linux. List the functions and operations provided by an operating system. Operate common application software systems such as spreadsheet, word processor, graphics software, and internet browser. | |
| B2.3 Programming | PF | Describe software development procedures: statement of requirements, interface design, algorithm development, flowcharts, pseudocode. Define syntax, data types and structures, control structures, arrays, pointers, functions, and file processing procedures for a modern programming language, such as Visual Basic, Visual C++, or Java. | Write computer programs using a modern programming language, to solve practical problems. |
| B2.4 Communication Tools and Internet | PP | Explain the networking concepts underlying Internet and intranet communications. Describe the features, resources and security issues of the Internet. Conduct searches for specialized information using Internet tools. | Explain the different Internet access modes, and their bandwidths. Upload hydrographic information to a web page. |
| B2.5 Database and Information Systems | FF | Define different types of database management systems, and explain the architecture, functions and operations provided by each. | Describe the development of an information system, built upon database management software. Explainthespecialrequirements of geospatial information systems |
Also E4.4 a & b, E4.5
Hopefully, each year will result in a new copy of the book.
A manual for devices and sensors used in the field.
Longevity and access
NOAA Field Procedures manual
Freshmeat.net, rpmfind, version tracker, sourceforge
How can you tell how good software is?
You don’t have to be a programmer to see some aspects of code quality.
Are they active? Are people getting help?
ls, cp, mv
- Straight forward checksum. This will be used with NMEA
- MD5, SHA, and other hash functions
FIX: include the databases chapter here
Blender MeshLab Google Sketchup (closed but free) Creating a 3D PDF
IVS3D Fledermaus
These media types are great ways to capture what was done at the time and provide an excellent resource to train those that follow in your footsteps.
How to collaborate in the office or at sea.
FIX: write. Why would you want noises from the ocean?
- Volcanoes
- Ship noise
- Animal noises
- Structures and devices in the ocean make noise (platforms, coring, etc).
FIX: how to record sound FIX: cover audacity for editing audio
Adobe’s SoundBooth
Playing and converting
Final Cut Pro and Adobe Premier
There are very wide range of ways that you can contribe back to the community. Please consider one or more of these. The more you contribute to these communities the more they will give back to you. You don’t have to be a serious programmer to help out. Easy ways to help are donate (assuming your institution allows it), but support contracts from the authors, blog about how you use the software, help with translating manuals and the software itself if you speak other languages, answer a question or two in IRC. Or if the author of the software has written a book about it, purchase a copy of the book.
Once you know the basics of a language or tool, you often need something to jog your memory. Templates and cheat sheets are often the perfect form to get the brain moving again. I encourage you to alter these to make them your own.
=======
Enough to keep you safe and when to get an expert to help
support contracts, contractors, checking on peoples capabilities and responsiveness