DEV Community

Discussion on: What are the core concepts that a new developer needs to know?

Collapse
 
aarone4 profile image
Aaron Reese

Data constructs (sets, tuples, arrays, objects, linked lists), basic algorithms, immutability, transaction scope and database locking, database normalisation to at least 3nf. Functional, procedural and object oriented development paradigms, source code control, esp Git. Clean code, SOLID principles. Soft skills (empathy, listening, compromise, NLP strategies for building rapport) industry specific knowledge and terminology.

Collapse
 
tominekan profile image
Tomi Adenekan

What are transaction scope and database locking and database normalisation?

Collapse
 
aarone4 profile image
Aaron Reese

Transaction scope is where you need to update multiple database records t o complete a business process. For example. Debit my bank account, credit yours. Either both should succeed (commit) or both should fail (rollback). Locking describes what can happen to records whilst they are being written to or read. Should you be able to read the balance off my account if another process is currently updating the balance figure. Does the decision change if it is updating something else like the overdraft credit limit?