Designing – ‘Right to forget’

How to do right-to-be-forgetten right (IMHO) – Create an identity store (with atleast known ids and proxies for ids)– Create a key pair per identity– Encrypt private data with the public key– Decrypt private data with the private key (along with RBAC, Audit, logging and time bound access token)– Delete the private key when the user exercises his right-to-forget.– Remember the user’s decision and continue to encrypt private data that comes in future (however this time there is no way to decrypt.) Note : identity registration, store, public key access for a given id can all be services which may […]

Musings on design patterns

From Client server to MVC to microservices there has been a steady progression in application architectures. The core driver for these paradigm shifts are  MVC has championed a few ideas for these questions : three core component types : models, views, controllers are ‘identified’ i.e. explicitly labeled. Given this PoV, you can now think of the problems/characteristics of these 3 components in a more focused manner. Please note that all three components may be needed/present in the same architectural layer ex: a web app written in Angular, let’s say, may have all 3 components. Microservices has championed a few ideas […]

GraphQL + gRPC – A thought experiment

Thought experiment : A native integration between GraphQL and gRPC would be awesome, isn’t it? where gRPC serves transport and GraphQL serves schema. Some context : Question is are the above 4 features already supported by gRPC.? To summarize GraphQL, as a language, acts like SQL for the frontend (a.k.a backend for the frontend) and is an excellent interface for enterprise systems. However, GraphQL doesn’t prescribe, mandate or come with any transport mechanisms and optimizations there of. This is where gRPC shines. In the future, if there is a deeper integration between the two, which seems theoretically possible from the above, […]

The Telomere-to-Telomere Human Genome Sequence

Might be worth your attention : https://lnkd.in/gQWEuGaA“The complete sequence of a human genome”Abstract:“Since its initial release in 2000, the human reference genome has covered only the euchromatic fraction of the genome, leaving important heterochromatic regions unfinished. Addressing the remaining 8% of the genome, the Telomere-to-Telomere (T2T) Consortium presents a complete 3.055 billion–base pair sequence of a human genome, T2T-CHM13, that includes gapless assemblies for all chromosomes except Y, corrects errors in the prior references, and introduces nearly 200 million base pairs of sequence containing 1956 gene predictions, 99 of which are predicted to be protein coding.  This post was later published […]

Unlocking Insights: A Knowledge Graph Connecting Clinical Trials, Medical Vocabulary, and Research Articles

Summary – Using this knowledge graph, comprising of 4 co-existing bi-partite graphs, one can move from any trial, across the globe, to medical vocabulary of diseases/interventions, to research articles. Also discover relationships b/w various medical topics through co-occurrences in articles.– Graph includes trials across the globe from nearly 20 clinical trial registries. Data is sourced from WHO’s ICTRP and clinicaltrials.gov– Links from trial to MeSH vocabulary are added for conditions and interventions employed in the trial.– Links from trial to PubMed articles are added. PubMed’s experts curate this metadata information for each article.– 4 co-existing bi-partite graphs b/w trial–> condition, trial–> intervention, […]

Why algorithmic thinking is needed

Introduction Problem modeling Solution Approach Approach 1 : Brute force Analysis Approach 2 : Sort file B and do binary search for file A’s contents Analysis Approach 3 : Sort file A and B and do file co-parsing by streaming both files Analysis Author : Madhulatha Mandarapu Context: This post was later published on LinkedIn here.

Enterprise Knowledge Graphs and the need for it

Today, most enterprises have a Business Intelligence and analytics teams. They address the time-sensitive, operational needs of the organization. Also, importantly, business decisions are taken based on insights discovered from these platforms. Often AI/ML helps project into the future. Most often, BI platforms and the need for a workforce is acknowledged and highly valued by CXO team. Data from various departments including sales and R & D flows into BI platforms via data warehouses/data lakes / lake houses. However, direct access to operational DBMS systems is still needed at times. Also, data may need to flow in reverse ETL from […]

Open knowledge graph on clinical trials

VaidhyaMegha is building an open knowledge graph on clinical trials, comprising Specification Below is a very brief specification Additionally, clinical trial -> clinical trial links across trial registries will also be discovered and added. Source code Current State Reference VaidhyaMegha’s prior work on Last 3 are covered in the “examples” folder here. They were covered in separate public repos here earlier. This post was later published on LinkedIn here.

FAQ : Cloud : NFRs, FOSS and Cost : TL;DR version

Note : This is why you need architects and why every cloud provides blueprints, certifications, blogs, sample applications and are constantly trying to refine, refactor, rebuild their services. Source : Decades of experiences across many cloud providers. Trigger : Recent conversations with enterpreneurs/clients/prospects. Reference : What is an NFR? What is TL;DR This post was later published on LinkedIn here.

Web 3.0

1 Introduction Given the interest generated recently due to Elon Musk’s and Jack Dorsey’s tweets on Web 3.0. Here are few topics, thoughts, thought experiments and ideas. 1.1 Topics Web 1.0 – Static content – HTML, URI, URL, HTTP. Access/Read content from anywhere with a browser. Web 2.0 – Interactive – Apps – Forms, AJAX, Search, Secure access, reports – WSDL, SOAP, REST, GraphQL, TLS. Web 3.0 – Decentralized, Semantic, No trust/permissions needed – IPFS, Blockchain. Current hyperlinks may break, redirect, subvert (by updated pages). No versioning feasible. Search engines fill this gap only slightly using page ranking and other heuristics/proxies for […]