General advice:
Advice for graduates:
With respect to software development:
- An Introduction to Model-Based Systems Engineering (MBSE) introduces the use of a model, systems thinking, and systems engineering. This approach also overlaps with problem solving and object modelling that people use in software engineering where one of the challenges is to get the right choice of boundaries around significant components. I found that author Craig Larman (Applying UML and Patterns) has a good experimental approach to choosing between many smaller subsystems with many inter-connections but internal simplicity versus fewer larger subsystems with fewer inter-connections but higher internal complexity (he suggests growing the boundaries until the subsystems are too complex, and then shrinking a little to get the sweet spot).
- Wikipedia has useful information on Problem Solving including material on TRIZ (which has been used at universities such as RMIT).
- Qualitative reasoning and the science of design by Yumi Iwasaki (download link), Knowledge Systems Lab Stanford Uni.; Real world applications of qualitative reasoning: Introduction to the special issue by Yumi Iwasaki (KSL Stanford, later than 1997).
- How To Frame A Problem To Find The Right Solution. By Paloma Cantero-Gomez, Forbes (10-Apr-2019).
- Advice for researchers: Persistence, Simplicity, Skepticism, Criticism and learning from others, Goal setting, Grab bag. Compiled by Mike Dahlin from CS @ Uni Texas who has a curated advice page.
- Modest Advice for New Graduate Students, by Dorsa Amir (medium April 2018).
- How to Have a Bad Career in Research/Academia, by David Paterson, EECS @ UCB.
With respect to software development:
- Defensive Coding Style by Red Hat.
- This debugging pep talk comes from a cp2377 subject that I once taught.
No comments:
Post a Comment