Posts

Notes on learning MongoDB database design

As I have done a quick refresh and slightly improved my SQL database design knowledge over past few days, I felt that I should also get some exposure to MongoDB database design. So far, I have used fairly simple MongoDB schemas in the tutorial projects I have gone through and perhaps some simple project variations that I did. I need to get more exposure. This post has related notes. MongoDB Schema Design Best Practices, https://www.youtube.com/watch?v=QAqK-R9HUhc by MongoDB, around 10 mins, April 2021 community.mongodb.com https://www.mongodb.com/resources/solutions/use-cases/mongodb-application-modernization-guide - Downloaded file: MongoDB_Modernization_Guide-ans0zbdf0i.zip has RDBMS to MongoDB Migration White Paper.pdf and other files including sample DB. RDBMS to MongoDB Migration White Paper.pdf - 20 pages: Has examples of simple to medium complexity RDBMS design along with MongoDB schemas ('converted'); "The $lookup aggregation pipeline stage provides JOIN capabili

Notes on refreshing and improving my knowledge on SQL Database Design

Last updated on 15th Oct. 2024 In my past software industry career (1984 to 2002), I had done some amount of SQL database related work but not much. So I was not a database design expert. But I could understand simple to medium complexity database designs and use SQL on command line or through programs to do CRUD operations on the database. Given the above background and given that some web dev projects use SQL databases instead of NoSQL databases, I would like to refresh and improve my knowledge on SQL database design. This post has notes related to this activity. ================== Around 13th to 14th Oct.: About yellow and red key icons, and blue, red and white diamond icons before columns in entities in ER diagrams: What do the mysql workbench column icons mean, https://stackoverflow.com/questions/10778561/what-do-the-mysql-workbench-column-icons-mean explains what these icons stand for. Excellent article on ERD: What is Entity Relationship Diagram (ERD)?, https://www.visual-parad

Notes on ASP.Net Core web dev platform

A web dev. project that I am starting to study, uses ".Net Core" for the back-end and ReactJS for the front-end. I want to get a quick overview of .Net Core and am doing some reading/viewing on it in short bursts. Notes about it are given below. ASP.NET Core,  https://dotnet.microsoft.com/en-us/apps/aspnet seems to be the main official docs page. Some key points from it: Free. Cross-platform. Open source. A framework for building web apps and services with .NET and C#. Supported on Windows, Linux, and macOS Hmm. That's quite interesting. My last industry project, IIRC, was on ASP.NET and C# in 2002. I don't think it was free then, nor cross-platform (I think it was only Windows platform then) and not open source. Quite fascinating that 22 years later, the name of the web dev. platform has not changed much - from ASP.NET to ASP.NET Core and the language is still C#. Of course, the features of ASP.NET Core as well as C# today will be far more than what it was 22 years

Closer look at Bhagavad Gita REST API and JSON public GitHub repos

Last updated on 14 Oct. 2024 My post: Bhagavad Gita and some other Hindu scripture websites/web apps with source code (Next.js, React, React Native, REST API, JSON, AI-ChatGPT), https://raviswdev.blogspot.com/2024/05/bhagavad-gita-and-hindu-scripture.html  lists some public Gita repositories including REST API and JSON repos. At the time I put up the post, I did not spend much time on details of the REST API and JSON repos. Now I am taking a closer look at them. About the two REST APIs listed in my above post: https://github.com/gita/bhagavad-gita-api is in Python. I don't want to get into Python stuff now. https://github.com/vedicscriptures/bhagavad-gita-api is in Express JS and uses mongoose. I think I should be able to go through this source code. More details covered later on in this post. About the three Gita JSON data sources listed in my above post: https://github.com/bhavykhatri/DharmicData/tree/main/SrimadBhagvadGita has 18 JSON files with translations for each chapter

Notes on quick 1st round of remaining part of John Smilga Node Express tutorial (after Tasks project)

Last updated on 9 Oct. 2024 2 & 3 Oct. 2024: Continuing from after Tasks project in John Smilga Express tutorial...Node.js Projects, https://youtu.be/rltfdjcXjmk?t=11235  (from around 3 hrs, 7 mins in the video). The next project taken up is the Store project. express-async-errors, https://www.npmjs.com/package/express-async-errors Most of the source code of the Store project is straight-forward and somewhat similar to Tasks project. However, controllers\products.js has fair deal of complexity as it uses the various query features of Mongoose find() with Query String params being the mechanism for specifying the query to the get route ('routed' to getAllProducts() method in controllers\products.js file). The code for string data query is simple. Numeric data query code is complex which is covered below in some detail. Chaining the find method conditionally with sort and select methods, and unconditionally with skip and limit methods is new in the tutorial. The await keyword

Biodata/résumé (simple) project related notes

Last updated on 6 Oct. 2024 Over past few days I am updating my (Ravi S. Iyer) biodata/résumé  - GitHub repo . Some notes related to the biodata source files/project are given below: How to load CSS files using JavaScript?, https://www.geeksforgeeks.org/how-to-load-css-files-using-javascript/ Get Query String Parameters with JavaScript, https://davidwalsh.name/query-string-javascript To force Chrome to discard cache for specific site/URL and reload page: Ctrl+F5 . I had to do this to get Chrome to show my latest biodata page hosted on github. Ref: clear cache for specific website in Google chrome, https://support.google.com/chrome/thread/16531954/clear-cache-for-specific-website-in-google-chrome?hl=en To save a web page (biodata, in this case) in colour as PDF in Chrome, check "Background graphics" option in Save As PDF dialog. Ref: Win10 - Is there a way to print a web page to PDF in color?, https://www.reddit.com/r/techsupport/comments/nlnw7s/win10_is_there_a_way_to_print_a

Notes on 3rd round of Node.js, Express.js, Mongoose and MongoDB tutorials with quick refresher of (simple) Blog full stack app

Last updated on 30 Sep. 2024 Note: I had done first and second round of Full Stack (MERN) web development based on my roadmap with second round getting over sometime in March 2024. The first and second round notes of sections  related to Node, Express, Mongoose and MongoDB can be viewed here:  https://raviswdev.blogspot.com/2024/03/learning-web-app-development-through.html#nodejsexpressjs .  I don't think there is a clear differentiation between notes of 1st and 2nd rounds. 24 Sep. 2024: Started refreshing my Node.js and Node Express learning. I think the last time I did non-trivial Node.js, Express (or Mongoose/MongoDB) was in March 2024. So there has been a break of around 6 months. https://www.mongodb.com/developer/languages/javascript/getting-started-with-mongodb-and-mongoose/ In express tutorial, methods-public\styles.css uses: h5 + h5 {   margin-left: 1rem; } ---- The '+' is an adjacent sibling selector. Ref: '+ (plus) Sign:' section in Understand '+'