1) If you don’t do a system architectural design with well-defined interfaces, integration will be a big mess.
2) Design before coding.
🧵
3) If a project is late and you add more people, the project will be even later. 4) Team members that are new to a project are less productive (1/3 to 2/3 less) than the adequately trained people.
5) The average newly hired employee is about as productive as an experienced employee.
6) Two factors that affect productivity are work force experience level and level of project familiarity due to learning-curve effects.
7) Developers productivity varies greatly depending on their individual skills (experience concerning a development activity, knowledge of the tools, methods, and notations used, etc.).
8) Using better and fewer people is more productive than using more less qualified people.
9) The greater the number of developers working on a task simultaneously, the faster that task is finished, but more overall effort is required due to the growing need for communication among developers. Thus, the productivity of the individual developer decreases.
10) The earlier problems are discovered, the less the overall cost will be.
11) The error detection effectiveness of reviews depends greatly on the qualifications and preparations of the reviewers and the completeness and correctness of the documents used as a reference.
12) Reviews of non-technical documents (e.g., requirements specification, user manual) are more effective if the customer is involved.
13) Develop tests before doing the coding.
14) Extreme time pressure leads to decreased productivity.
15) Extreme time pressure leads to a faster rate at which errors are made, which leads to a further delay in the completion date.
16) Error correction is most efficiently done by the document’s author(s).
17) The more errors a document from a previous phase contains, the more errors will be passed on to the next document.
18) Always test everything.
19) Talk to users, not to customers to verify the prototype.
20) Inspection is the most cost-effective measure of finding problems in software.
21) Software inspections find a high percentage of errors early in the development life cycle.
22) The use of inspections can lead to defect prevention, because developers get early feedback with respect to the types of mistakes they are making.
23) Every group has one programmer that is 10 times more productive than everyone else.
24) If you disable Internet surfing, productivity will go down.
25) The number of meetings is determined by the kinds of processes used.
26) Changing requirements are inevitable. Anticipating change with open architectures, adaptable designs, and flexible planning can help to mediate some of the ill effects of these changes.
27) Design for change/variability.
28) Use defensive programming.
29) Configuration management is good.
30) Successful software is designed by people who understand the application of the software (e.g., a well-designed missile control program was designed by someone who understood missiles).
31) Software development requires a substantial time commitment to learning the application domain.
32) Broad application knowledge is acquired more through relevant experience than through training.
33) The more bugs you find, the more buggy the rest of your program will likely be.
34) Tests reveal errors in the code. The better a test is prepared for, the higher amount of detected errors.
35) Sticking with a too-tight schedule increases cost due to a large work force.
36) Motivation is increased through monetary incentives. Increased motivation leads to increased productivity which reduces cycle time.
37) Improving the work environment leads to increased productivity, which reduces cycle time.
38) Matching the tasks to the skills and motivation of the people available increases productivity.
39) Above a certain threshold, work conditions are not a powerful motivator, but below that threshold, they are a powerful de-motivator.
40) The average assimilation delay, the period of time it takes for a new employee to become fully productive, is 80 days.
41) As schedule pressure increases, quality assurance activities (especially walk-throughs and inspections) are often relaxed or suspended altogether.
42) In the absence of schedule pressure, a full-time employee allocates, on average, 60% of his working hours to the project (the rest is slack time: reading mail, personal activities, non-project related company business, etc.).
• • •
Missing some Tweet in this thread? You can try to
force a refresh
5 Rules you need to follow for successful project management:
1. Clear objectives and project scope. Make it clear to yourself, the team and every individual who would partake throughout the project why you are doing this project. It would be amiss to initiate a project and still have to attend to questions about clarity midway.
2. Project planning. Project planning is a part of successful project management that uses schedules such as Gantt charts to plan and subsequently report progress within the project environment.
1. Define Your Goals. Define where you would like to be as an engineer in the medium and long-term.
2. Identify Role Models and Mentors. You can seek inspiration from role models in the comapny you work for or outside your company, including industry leaders. When doing this, don’t just look at the great engineering work they do, but also how they became successful.
3. Commit Yourself to Continuous Professional Development. You should acquire new skills with enthusiasm while being on a constant lookout for new professional development opportunities.
1. Wood screws are perhaps the most commonly recognised type of screw. They have a smooth shank and tapered point that make them ideal for penetrating wood. What they’re used for: all types of wood.
2. Machine screws. Blunt ended screws with threads, typically made from brass or steel.
What they’re used for: fastening metal parts together
3. Thread Cutting Machine Screws. They look similar to standard machine screws, but thread cutting machine screws are self-tapping screws that produce threads in existing holes in metal. What they’re used for: most often used with wood and metal.
Thermodynamics is the study of how energy works in a system. It can be reduced to several basic laws, which British physicist and novelist C.P. Snow cleverly summed up as follows:
1. You can't win. 2. You can't break even. 3. You can't quit the game.
🧵
1. By saying you can't win, Snow meant that since matter and energy are conserved, you can't get one without giving up some of the other (i.e., E=mc²).
2. You can't break even — means that due to ever-increasing entropy, you can't return to the same energy state. Energy concentrated in one place will always flow to places of lower concentration.
10 things every driver should have in their vehicle:
🧵
1/10 First-aid Kit
The obvious reason to carry one is to help after the event of an accident for anyone involved. Many countries around the world require drivers to have a first aid kit in their vehicles at all times.
2/10 Fire Extinguisher 🧯
Cars are susceptible to catching on fire in the event of a violent collision. Using a fire extinguisher might save a vehicle from becoming a total loss and can help drivers feel more secure in their vehicle.