[{"data":1,"prerenderedAt":417},["ShallowReactive",2],{"navigation":3,"\u002Fblog\u002Freflections-on-how-we-code":286,"\u002Fblog\u002Freflections-on-how-we-code-surround":410},[4],{"title":5,"path":6,"stem":7,"children":8,"page":285},"Blog","\u002Fblog","blog",[9,13,17,21,25,29,33,37,41,45,49,53,57,61,65,69,73,77,81,85,89,93,97,101,105,109,113,117,121,125,129,133,137,141,145,149,153,157,161,165,169,173,177,181,185,189,193,197,201,205,209,213,217,221,225,229,233,237,241,245,249,253,257,261,265,269,273,277,281],{"title":10,"path":11,"stem":12},"2020 - The best Javascript Frameworks","\u002Fblog\u002F2020-the-best-javascript-frameworks","blog\u002F2020 - The best Javascript Frameworks",{"title":14,"path":15,"stem":16},"5 Essential Reasons for E2E Testing","\u002Fblog\u002F5-essential-reasons-for-e2e-testing","blog\u002F5 Essential Reasons for E2E Testing",{"title":18,"path":19,"stem":20},"5 Mistakes Front-end Developers should Avoid","\u002Fblog\u002F5-mistakes-front-end-developers-should-avoid","blog\u002F5 Mistakes Front-end Developers should Avoid",{"title":22,"path":23,"stem":24},"5 Things to motivate you to perform Unit Testing","\u002Fblog\u002F5-things-to-motivate-you-to-perform-unit-testing","blog\u002F5 Things to motivate you to perform Unit Testing",{"title":26,"path":27,"stem":28},"52 Articles, 7 Books and a Pandemic","\u002Fblog\u002F52-articles-7-books-and-a-pandemic","blog\u002F52 Articles, 7 Books and a Pandemic",{"title":30,"path":31,"stem":32},"6 Levels of Autonomous Vehicles","\u002Fblog\u002F6-levels-of-autonomous-vehicles","blog\u002F6 Levels of Autonomous Vehicles",{"title":34,"path":35,"stem":36},"ADAS","\u002Fblog\u002Fadas","blog\u002FADAS",{"title":38,"path":39,"stem":40},"Ambient Intelligence","\u002Fblog\u002Fambient-intelligence","blog\u002FAmbient Intelligence",{"title":42,"path":43,"stem":44},"Best 5 Hybrid Mobile App Development Frameworks","\u002Fblog\u002Fbest-5-hybrid-mobile-app-development-frameworks","blog\u002FBest 5 Hybrid Mobile App Development Frameworks",{"title":46,"path":47,"stem":48},"Best Practices for Code Testing","\u002Fblog\u002Fbest-practices-for-code-testing","blog\u002FBest Practices for Code Testing",{"title":50,"path":51,"stem":52},"Blockchains - How and Why?","\u002Fblog\u002Fblockchains-how-and-why","blog\u002FBlockchains - How and Why",{"title":54,"path":55,"stem":56},"Brain Computer Interfaces","\u002Fblog\u002Fbrain-computer-interfaces","blog\u002FBrain Computer Interfaces",{"title":58,"path":59,"stem":60},"Computational Fluid Dynamics","\u002Fblog\u002Fcomputational-fluid-dynamics","blog\u002FComputational Fluid Dynamics",{"title":62,"path":63,"stem":64},"Computer Vision","\u002Fblog\u002Fcomputer-vision","blog\u002FComputer Vision",{"title":66,"path":67,"stem":68},"Cryptography","\u002Fblog\u002Fcryptography","blog\u002FCryptography",{"title":70,"path":71,"stem":72},"Cyber-Physical Systems: Where Digital Meets Reality","\u002Fblog\u002Fcyber-physical-systems","blog\u002FCyber-Physical Systems",{"title":74,"path":75,"stem":76},"Design Patterns - Why and How?","\u002Fblog\u002Fdesign-patterns-why-and-how","blog\u002FDesign Patterns - Why and How",{"title":78,"path":79,"stem":80},"Edge AI: Revolutionizing Intelligence at the Edge","\u002Fblog\u002Fedge-ai","blog\u002FEdge AI",{"title":82,"path":83,"stem":84},"Edge Computing","\u002Fblog\u002Fedge-computing","blog\u002FEdge Computing",{"title":86,"path":87,"stem":88},"Embracing Decentralized Development","\u002Fblog\u002Fembracing-decentralized-development","blog\u002FEmbracing Decentralized Development",{"title":90,"path":91,"stem":92},"Extended Reality Simplified","\u002Fblog\u002Fextended-reality-simplified","blog\u002FExtended Reality Simplified",{"title":94,"path":95,"stem":96},"Good practices for Git","\u002Fblog\u002Fgood-practices-for-git","blog\u002FGood practices for Git",{"title":98,"path":99,"stem":100},"How do browsers work","\u002Fblog\u002Fhow-do-browsers-work","blog\u002FHow do browsers work",{"title":102,"path":103,"stem":104},"How to be a Full Stack Engineer","\u002Fblog\u002Fhow-to-be-a-full-stack-engineer","blog\u002FHow to be a Full Stack Engineer",{"title":106,"path":107,"stem":108},"How to be an effective Engineer?","\u002Fblog\u002Fhow-to-be-an-effective-engineer","blog\u002FHow to be an effective Engineer",{"title":110,"path":111,"stem":112},"How to choose components for a desktop PC on your own","\u002Fblog\u002Fhow-to-choose-components-for-a-desktop-pc-on-your-own","blog\u002FHow to choose components for a desktop PC on your own",{"title":114,"path":115,"stem":116},"Industry 4.0","\u002Fblog\u002Findustry-4","blog\u002FIndustry 4",{"title":118,"path":119,"stem":120},"Industry 4.0 & Mixed Reality","\u002Fblog\u002Findustry-4-and-mixed-reality","blog\u002FIndustry 4 & Mixed Reality",{"title":122,"path":123,"stem":124},"Internet of Behaviours","\u002Fblog\u002Finternet-of-behaviours","blog\u002FInternet of Behaviours",{"title":126,"path":127,"stem":128},"Internet of Things","\u002Fblog\u002Finternet-of-things","blog\u002FInternet of Things",{"title":130,"path":131,"stem":132},"Let's talk about SOLID Principles","\u002Fblog\u002Flets-talk-about-solid-principles","blog\u002FLets talk about SOLID Principles",{"title":134,"path":135,"stem":136},"LiDAR","\u002Fblog\u002Flidar","blog\u002FLiDAR",{"title":138,"path":139,"stem":140},"Machine Vision -Transforming Industries AI","\u002Fblog\u002Fmachine-vision-transforming-industries-ai","blog\u002FMachine Vision -Transforming Industries AI",{"title":142,"path":143,"stem":144},"Mathematics in Software Engineering","\u002Fblog\u002Fmathematics-in-software-engineering","blog\u002FMathematics in Software Engineering",{"title":146,"path":147,"stem":148},"Micro Frontends - A Modern Approach to Front-End Development","\u002Fblog\u002Fmicro-frontends-a-modern-approach-to-front-end-development","blog\u002FMicro Frontends - A Modern Approach to Front-End Development",{"title":150,"path":151,"stem":152},"Natural Language Processing","\u002Fblog\u002Fnatural-language-processing","blog\u002FNatural Language Processing",{"title":154,"path":155,"stem":156},"Optimizing for Search Engines","\u002Fblog\u002Foptimizing-for-search-engines","blog\u002FOptimizing for Search Engines",{"title":158,"path":159,"stem":160},"Physics Engine","\u002Fblog\u002Fphysics-engine","blog\u002FPhysics Engine",{"title":162,"path":163,"stem":164},"Point cloud","\u002Fblog\u002Fpoint-cloud","blog\u002FPoint cloud",{"title":166,"path":167,"stem":168},"Processes for Better Software Volume 1","\u002Fblog\u002Fprocesses-for-better-software-volume-1","blog\u002FProcesses for Better Software Volume 1",{"title":170,"path":171,"stem":172},"Processes for Better Software Volume 2","\u002Fblog\u002Fprocesses-for-better-software-volume-2","blog\u002FProcesses for Better Software Volume 2",{"title":174,"path":175,"stem":176},"Processes for Better Software Volume 3","\u002Fblog\u002Fprocesses-for-better-software-volume-3","blog\u002FProcesses for Better Software Volume 3",{"title":178,"path":179,"stem":180},"Quantum Computers","\u002Fblog\u002Fquantum-computers","blog\u002FQuantum Computers",{"title":182,"path":183,"stem":184},"Quantum Computing and its Potential Impact on Software Development","\u002Fblog\u002Fquantum-computing-and-its-potential-impact-on-software-development","blog\u002FQuantum Computing and its Potential Impact on Software Development",{"title":186,"path":187,"stem":188},"Quantum Cryptography","\u002Fblog\u002Fquantum-cryptography","blog\u002FQuantum Cryptography",{"title":190,"path":191,"stem":192},"Ray tracing - What you need to know","\u002Fblog\u002Fray-tracing-what-you-need-to-know","blog\u002FRay tracing - What you need to know",{"title":194,"path":195,"stem":196},"Reflections on how we code","\u002Fblog\u002Freflections-on-how-we-code","blog\u002FReflections on how we code",{"title":198,"path":199,"stem":200},"Robotic Process Automation","\u002Fblog\u002Frobotic-process-automation","blog\u002FRobotic Process Automation",{"title":202,"path":203,"stem":204},"Self Driving Cars - A Better Tomorrow","\u002Fblog\u002Fself-driving-cars-a-better-tomorrow","blog\u002FSelf Driving Cars - A Better Tomorrow",{"title":206,"path":207,"stem":208},"Semantic Web - A Smarter Future","\u002Fblog\u002Fsemantic-web-a-smarter-future","blog\u002FSemantic Web A Smarter Future",{"title":210,"path":211,"stem":212},"Sensor Fusion","\u002Fblog\u002Fsensor-fusion","blog\u002FSensor Fusion",{"title":214,"path":215,"stem":216},"Serverless Computing and the Future","\u002Fblog\u002Fserverless-computing-and-the-future","blog\u002FServerless Computing and the Future",{"title":218,"path":219,"stem":220},"Shaders","\u002Fblog\u002Fshaders","blog\u002FShaders",{"title":222,"path":223,"stem":224},"Smart Home Automation","\u002Fblog\u002Fsmart-home-automation","blog\u002FSmart Home Automation",{"title":226,"path":227,"stem":228},"The Horizon of Cybersecurity","\u002Fblog\u002Fthe-horizon-of-cybersecurity","blog\u002FThe Horizon of Cybersecurity",{"title":230,"path":231,"stem":232},"The Perils of Ray-Tracing","\u002Fblog\u002Fthe-perils-of-ray-tracing","blog\u002FThe Perils of Ray-Tracing",{"title":234,"path":235,"stem":236},"The Psychology of Software Bugs Understanding and Preventing Common Mistakes","\u002Fblog\u002Fthe-psychology-of-software-bugs-understanding-and-preventing-common-mistakes","blog\u002FThe Psychology of Software Bugs - Understanding and Preventing Common Mistakes",{"title":238,"path":239,"stem":240},"Top 5 Advantages of MongoDB","\u002Fblog\u002Ftop-5-advantages-of-mongodb","blog\u002FTop 5 Advantages of MongoDB",{"title":242,"path":243,"stem":244},"Top Trends in Augmented Reality","\u002Fblog\u002Ftop-trends-in-augmented-reality","blog\u002FTop Trends in Augmented Reality",{"title":246,"path":247,"stem":248},"Top features of Unreal Engine","\u002Fblog\u002Ftop-features-of-unreal-engine","blog\u002FTop features of Unreal Engine",{"title":250,"path":251,"stem":252},"Unity 3D - Why to go with it?","\u002Fblog\u002Funity-3d-why-to-go-with-it","blog\u002FUnity 3D - Why to go with it",{"title":254,"path":255,"stem":256},"Virtual Reality Advantages","\u002Fblog\u002Fvirtual-reality-advantages","blog\u002FVirtual Reality Advantages",{"title":258,"path":259,"stem":260},"Virtual Test Drive & Autonomous Driving","\u002Fblog\u002Fvirtual-test-drive-and-autonomous-driving","blog\u002FVirtual Test Drive & Autonomous Driving",{"title":262,"path":263,"stem":264},"WebAssembly and Progressive Web Apps","\u002Fblog\u002Fwebassembly-and-progressive-web-apps","blog\u002FWebAssembly and Progressive Web Apps",{"title":266,"path":267,"stem":268},"What are Best Practices?","\u002Fblog\u002Fwhat-are-best-practices","blog\u002FWhat are Best Practices",{"title":270,"path":271,"stem":272},"What are Digital Twins?","\u002Fblog\u002Fwhat-are-digital-twins","blog\u002FWhat are Digital Twins",{"title":274,"path":275,"stem":276},"What makes Mixed Reality the next big thing?","\u002Fblog\u002Fwhat-makes-mixed-reality-the-next-big-thing","blog\u002FWhat makes Mixed Reality the next big thing",{"title":278,"path":279,"stem":280},"Why Game Engines?","\u002Fblog\u002Fwhy-game-engines","blog\u002FWhy Game Engines",{"title":282,"path":283,"stem":284},"Why we need User Experience Design?","\u002Fblog\u002Fwhy-we-need-user-experience-design","blog\u002FWhy we need User Experience Design",false,{"id":287,"title":194,"author":288,"body":292,"date":401,"description":402,"extension":403,"image":404,"meta":405,"minRead":406,"navigation":407,"path":195,"seo":408,"stem":196,"__hash__":409},"blog\u002Fblog\u002FReflections on how we code.md",{"name":289,"avatar":290},"Aghil Jose",{"src":291,"alt":289},"\u002Fassets\u002Fimages\u002Fabout.jpg",{"type":293,"value":294,"toc":390},"minimark",[295,299,302,307,313,316,319,322,325,328,332,338,341,344,349,355,358,361,365,371,374,377,380,383,387],[296,297,298],"p",{},"It is no secret that different engineers or team of engineers have different\nstandards for what they consider as quality in code. Sometimes, some engineers\nconsider something as the way to do it. But that opinion might not be shared\nby many others.",[296,300,301],{},"Now, there are a lot of things I mean from them like paradigms, how we\nseparate concerns or even whether using nested ternaries is good or bad. Not\njust the use of semicolons, tabs vs. spaces or formatting. Most of these\npreferences and ideals are influenced by our environments, technologies we use\nand coworkers.",[303,304,306],"h3",{"id":305},"coworkers","Coworkers",[296,308,309],{},[310,311],"img",{"alt":305,"src":312},"\u002Fassets\u002Fimages\u002Fblog\u002F051020\u002Fcoworkers.jpg",[296,314,315],{},"In our careers, almost all of us will encounter people from many spectrums.\nThere will be people who are extremely motivated and passionate about what\nthey are building. Also, there are people who are just the opposite. Yes, it\nis not just black and white, there is a lot of grey in between.",[296,317,318],{},"No engineer can’t do it all by themselves. There might be someone who reads\nthis and having a smirk saying, I am a team of one or I code this many hours a\nday, I turned my startup to unicorn all by myself. But you still might have\nused open source frameworks or might have stumbled upon a problem and had\nhelp. Point is, you have had help from other human beings. (Oh, if you have\ndone it without any of these. Respect!)",[296,320,321],{},"The people we work with, greatly influences the way we code. Certain\nengineers, as all humans do, will have predilections. For example, whoever\nstarted building the product might have loved a certain framework and would\nhave refused to let it go even though its time has come and gone long ago. Or\nthey didn’t like seeing style.css files in your project and done all the\nstyling with inline CSS. Now, you might have to follow through as this may be\nthe available option.",[296,323,324],{},"But it goes beyond that. Even the choices of people working on the product\nfrom another team will also mold your code. If you are a front-end engineer,\nyou will probably need some data. Those data will be usually from the back-end\nengineers. They are going to tell you, how and when you are going to get it\nand in which format. So, this will influence how you write your interactions\nwith the API and your data layer, if you might.",[296,326,327],{},"Also, if you are working with people who are significantly smarter, with more\nexperience and cares about us and our code getting better, you will find\nyourself writing better code through time.",[303,329,331],{"id":330},"environmental-influences","Environmental influences",[296,333,334],{},[310,335],{"alt":336,"src":337},"environment","\u002Fassets\u002Fimages\u002Fblog\u002F051020\u002Fenvironment.jpg",[296,339,340],{},"Your priorities are going mainly to be a function of the size of your company\nor your team. Consider two teams, one might be weighted under the bureaucracy\nof middle or upper management and enterprise release cycles while the other\nmight be struggling to release a product before they run out of resources.",[296,342,343],{},"The matter of urgency also contributes to this. If there isn’t any, you might\nnot get things done as quickly as you could have. Instead, you might write\nmore tests or write less future legacy codes. Now the following are how the\nsize of your team or company could influence your code.",[345,346,348],"h2",{"id":347},"small-companies","Small Companies",[296,350,351],{},[310,352],{"alt":353,"src":354},"small","\u002Fassets\u002Fimages\u002Fblog\u002F051020\u002Fsmall.jpg",[296,356,357],{},"You have to get things done. This could mean you writing less unit tests. The\nnumber of people who look and review your code will be less. There might not\neven be a manual Quality Assurance before the release. You will have to find a\nway to write less brittle code or find an efficient and effective way of\nwriting automation that delivers what it is supposed to.",[296,359,360],{},"You will deal with legacy code more. You might be writing code that might have\nto be thrown out completely and start over. Ideally you keep in mind that\nevery chunk of code has a timeline and you should write it accordingly.",[345,362,364],{"id":363},"big-companies","Big Companies",[296,366,367],{},[310,368],{"alt":369,"src":370},"big","\u002Fassets\u002Fimages\u002Fblog\u002F051020\u002Fbig.jpg",[296,372,373],{},"Horizontal organisational structures are rare in big companies. This means\nthere could be someone on your team that will only merge code if it satisfies\ntheir definition of ‘good code’. Now, this could be good or bad.",[296,375,376],{},"You are most probably not in a hurry. Your output will be diminished. Your job\nusually won’t be on the line because money is usually not an issue in an\nestablished, profitable company.",[296,378,379],{},"You will still have to work with legacy code. You might be dealing with\ntechnologies that aren’t well documented or easy to work with. This will add\ntime to your work and make you slower.",[296,381,382],{},"CI\u002FCD will just work if someone senior or more involved has done their job.\nYou wouldn’t have to spend time with the hassles around the infrastructure.\nThis could make you faster.",[303,384,386],{"id":385},"good-engineers-who-learns-constantly-will-observe-radical-changes-in-the-way-they-write-code","Good engineers who learns constantly will observe radical changes in the way they write code.",[296,388,389],{},"Disclaimer : The views and opinions expressed in the article belong solely to the\nauthor, and not necessarily to the author's employer, organisation, committee\nor other group or individual.",{"title":391,"searchDepth":392,"depth":392,"links":393},"",2,[394,396,397,398],{"id":305,"depth":395,"text":306},3,{"id":330,"depth":395,"text":331},{"id":347,"depth":392,"text":348},{"id":363,"depth":392,"text":364,"children":399},[400],{"id":385,"depth":395,"text":386},"2020-10-04","What are some of the factors that help the way we evolve as an engineer.","md","\u002Fassets\u002Fimages\u002Fblog\u002F051020\u002Ftitle.jpg",{},5,true,{"title":194,"description":402},"Y328QFY5q2VZmaRyah_3L5XLYWLfuArNpqaCf1sDwZI",[411,414],{"path":99,"title":98,"description":412,"date":413},"How does a typical browser loads and displays a webpage.","2020-10-11",{"path":107,"title":106,"description":415,"date":416},"The necessary skills needed for any software engineer.","2020-09-28",1790439209607]