Software Engineering
all about standards, conventions, ethics, practices
Coding Best Practices - Ways of Working
- Follow coding standards
- Use git
- Write Unit testing - use code to test the small units of programme, test standalone modules.
- Write integration testing - use code to test if modules work correclty when connected together.
- Do funcitonal testing - as a tester, test the functionality of the application.
- Test business outcomes, verify by business people
- Work with people smarter than you
- do pair programming
Open Source Contribution
- Why? - It is a great way to grow and evovle, learn, build your skill and be part of community, grow your network, showcase your presence.
- Links - OpenSourceGuide
Working on someone else's code
- Start a debugger
- Step into and over, understand the variable values, add breakpoints.
Links
- 3 EDX Soft engg - https://www.edx.org/course/software-engineering-basics-for-everyone
- 2 edx Soft Engg MM - https://www.edx.org/micromasters/ubcx-software-development
- 1 edx Algorithms and Data Structures MM - https://www.edx.org/micromasters/ucsandiegox-algorithms-and-data-structures
- g4g DSA - https://www.geeksforgeeks.org/complete-roadmap-to-learn-dsa-from-scratch/
Coding Naming Conventions
- Python - Use underscores
- Javascript - Camel Case
- files and folders - use hyphen. Link google style guide
Computer Science
- Thread is the smallest sequence of instructions that can be managed independently. It is common for a process to have multiple active threads, sometimes sharing resources such as memory or file handles. Multithreaded web servers start a pool of threads and select a thread from the pool to handle each incoming request.
- Daemon - In multitasking computer operating systems, a daemon is a computer program that runs as a background process, rather than being under the direct control of an interactive user.
- Unix Domain Socket or Unix-Socket is endpoint for data communication between processes. Eg, Docket client (process-1) and Docker daemon (process-2) communicate using a REST API over Unix Sockets.
OOPS
- Object is a Class and has
attributes
- variablesmethods()
- functions
2025-01-12
January 12, 2025