Skip to main content

Posts

Showing posts with the label Software

What is avahi in Linux?

avahi is a Linux implementation of a   protocol   also known as "Rendezvous" or "Bonjour"). Its goal is to let devices, connected to the local network, broadcast their IP-address together with their   function . Hence the printer can from time to time broadcasts : My IP is   192.168.23.45   and I can print any postscript document with ipp prottocol; a NAS can say: My IP is   192.168.23.88   and I can stream music, save your backups, and act as a fileserver. If it is not what you want to hear on your network you can stop / disable the avahi daemon with the standard  systemctl  command, but if you run a cups-broadcast daemon, it will start the avahi itself. Linux uses  fictive  users usually for security reasons, not to give the attacker any chance to hack a process owned by root. So you can see a  postfix  or  mail , and  postgres  or  mysql  users. The daemon, owned by such unprivileged user, gives...

Interview preparation Guide for Software Engineers

- Designing Data-Intensive Applications by Martin Kleppmann Amazon: https://amzn.to/4dlfPed - Database Internals by Alex Petrov Amazon: https://amzn.to/3YI515e - System Design Interview (Volume 1) by Alex Xu Amazon:  https://amzn.to/3WJzwVV   - System Design Interview (Volume 2) by Alex Xu Amazon:  https://amzn.to/3M7zEtv   - Grokking the System Design Interview https://lnkd.in/ebEwFWbP - Grokking the Advanced System Design Interview https://lnkd.in/e_c2CWge - Donne Martin's System Design Primer https://github.com/krmadhukar/system-design-primer - Site Reliability Engineering: How Google Runs Production Systems https://lnkd.in/edYzQwXW - The Site Reliability Workbook: Practical Ways to Implement SRE https://lnkd.in/e9tKypna - Understanding Distributed Systems https://amzn.to/4fGzg2H - Fundamentals of Software Architecture - Mark Richards & Neal Ford https://amzn.to/3Xdozxv - Software Architecture: The Hard Parts - Mark Richards & Neal Ford https:...

𝐅𝐑𝐄𝐄 𝐂𝐨𝐮𝐫𝐬𝐞𝐬 𝐲𝐨𝐮 𝐰𝐢𝐥𝐥 𝐫𝐞𝐠𝐫𝐞𝐭 𝐧𝐨𝐭 𝐭𝐚𝐤𝐢𝐧𝐠 𝐢𝐧 𝟐𝟎𝟐𝟒

1 Introduction Generative Al imp.i384100.net/5gNjVj 2. Generative AI with Large Language Models imp.i384100.net/k0qRez 2 a) React Fundamentals imp.i384100.net/9gYeRW 2 b) Angular: imp.i384100.net/eKWR9r 2 c) SEO: imp.i384100.net/xkGnW5 3. Generative Adversarial Networks (GANs) Specialization imp.i384100.net/DKNLPn 4. Introduction to Artificial Intelligence (AI) imp.i384100.net/QyQKoA 5. AI Engineering imp.i384100.net/9gYeRy 6. Natural Language Processing Specialization imp.i384100.net/rQPgZR 7. Deep Learning Specialization imp.i384100.net/jrL1k5 8. Generative AI for Data Scientists Specialization imp.i384100.net/k0qReN 9. IBM Data Science Professional Certificate imp.i384100.net/AWNK91 10. Introduction to Data Science imp.i384100.net/GmNDek 11. Learn SQL Basics for Data Science imp.i384100.net/Vm54E3 12. Excel for Business imp.i384100.net/g1EojB 13. Python for Everybody imp.i384100.net/B0MKrL 14. Machine Learning Specialization imp.i384100.net/WqkYnM 15. SQL for Data Science imp.i38410...

Golden rule of Programming - Don’t code today what you can’t debug tomorrow.

  One of the golden rule of programming is : 💡 Don’t code today what you can’t debug tomorrow. Below some advices to improve yourself every day : 👉Master Your Tools: Become proficient in the programming languages, frameworks, and tools relevant to your field. 👉Problem-Solving Skills: Develop strong problem-solving skills to efficiently tackle coding challenges. 👉Debugging Proficiency: Sharpen your debugging skills to identify and fix issues quickly. 👉Algorithmic Understanding: Develop a strong understanding of algorithms and data structures for efficient problem-solving. 👉Code Readability: Write clean and readable code; it helps you and others understand and maintain it. 👉Time Management: Prioritize tasks, set deadlines, and manage your time effectively to stay productive. 👉Continuous Learning: Stay updated with industry trends, new technologies, and best practices to enhance your skills. 👉Testing: Embrace testing methodologies to ensure the reliability and correctness of ...

how to setup password for an AWS EC2 running instance

The AWS EC2 Linux instance uses a .pem private key file to authenticate the default ubuntu user account. Let us learn about how to set up a password on your running EC2 instance, Prerequisites You have ec2 instance running You have root access to ec2 instance Step 1 Connect to your Linux ec2 instance via putty (/ssh). Step 2 Login to your running instance Step 3 Execute below command: sudo passwd ec2-user And write the password Step 4 Now it’s time to go to the directory /etc/ssh and follow below command sudo vim sshd_config Step 5 After you apply the command,  Press “i” and Now go to the “passwordauthentication” and write “yes” After change, it please save it Perfect Step 6 Last command is sudo service sshd restart and disconnect and login again using username and password 

How to debug Python code in VS Code with arguments passed from command line

 Debugging Python code in VS Code with arguments passed from the command line is a straightforward process. Here are the steps you can follow: 1. Open the Python file that you want to debug in VS Code. 2. Set breakpoints in the code where you want to pause and inspect variables. 3. Open the Debug panel in VS Code by clicking on the Debug icon in the Activity Bar or by pressing `Ctrl+Shift+D` on Windows or `Cmd+Shift+D` on Mac. 4. Click on the "create a launch.json file" button and select "Python" as the environment. 5. In the launch.json file that opens, modify the "args" attribute to include the command-line arguments you want to pass to the Python script. For example:    ```    "args": ["arg1", "arg2"]    ```    Replace "arg1" and "arg2" with the actual arguments you want to pass. NOTE: Add the below property in the launch.json file.     "purpose" : [ "debug-in-terminal" ] 6. Save the ...

Regular Expressions

Regular Expressions List of meta characters: . ---> Any one character ? ---> Zero or one + ---> One or more * ---> zero or more ^ ---> at the beginning of the string $ ---> at the end of the string [abc] ---> any one of a b c {m} ---> 'm' times {m,n} ---> at least m times, at most n times | ---> or \ ---> escape sequence character \s ---> a space \d ---> a digit \w ---> a word \b ---> a word boundary examples: \d ---> a single digit number (0 to 9) \d\d ---> a two digit number (0 to 99) \d\d\d ---> a three digit number (000 to 999) NOTE: ?, +, *, {} are used as Quantifiers (to represent quantity) \d{3} ---> same as above \d{3,5} ---> either 3 digit or 5 digit number hell?o ---> helo | hello hell+o ---> hello | helllo | helllllo | ... hrll*o ---> helo | hello | helllo | helllllo | ... he(ll)+o ---> hello | hellllo | hellllllo | ... S = "hi hello how are hello" hello ---> Yes ^hello ---> No h...

Go error: go : go.mod file not found in current directory or any parent directory; (working on GOPATH/src)

As of Go 1.16, the   GO111MODULE   environment variable is treated as "on" by default, meaning Go expects to find a   go.mod   file, and no longer falls back to pre-module   GOPATH   behavior. If you want to go back to the pre-1.16 behavior, you now have to explicitly specify  GO111MODULE=auto , but you're far better off creating a  go.mod  file. See  https://golang.org/doc/go1.16#go-command  and  https://golang.org/ref/mod Source - https://stackoverflow.com/questions/67929883/go-error-go-go-mod-file-not-found-in-current-directory-or-any-parent-director 

𝐈𝐧𝐭𝐞𝐫𝐯𝐢𝐞𝐰 𝐐𝐮𝐞𝐬𝐭𝐢𝐨𝐧𝐬 | Amazon 2022

 Amidst the massive layoffs in Tech industry in these tough times, there are many of us preparing right now for interviews. LeetCode is a good source to look at the current level of questions. Below is the list of questions currently being asked by Amazon in the last 3 to 4 months. -- 𝐆𝐫𝐚𝐩𝐡𝐬 1) Process Ordering - https://lnkd.in/dN4ErKyE 2) Number of Islands - https://lnkd.in/dHQJGhPJ 3) k Jumps on Grid - https://lnkd.in/dKM_ETsM) -- 𝐓𝐫𝐢𝐞 1) Finding Prefix in Dictionary - https://lnkd.in/dpRvFDq5 -- 𝐓𝐫𝐞𝐞 1) Binary Tree Top Down View - https://lnkd.in/dmun-Pn3 2) Traversing binary tree in an outward manner. 3) Diameter of a binary tree [Path is needed] - https://lnkd.in/dH-w_DQV -- 𝐒𝐥𝐢𝐝𝐢𝐧𝐠 𝐰𝐢𝐧𝐝𝐨𝐰 1) Contains Duplicates III - https://lnkd.in/djcWHTaX 2) Minimum Window Substring [Variation of this question] - https://lnkd.in/dPfnQZmr -- 𝐋𝐢𝐧𝐤𝐞𝐝 𝐋𝐢𝐬𝐭 1) Reverse a Linked List II - https://lnkd.in/diHAJZUJ 2) Remove Loop From Linked List - https://lnkd...

𝐒𝐲𝐬𝐭𝐞𝐦 𝐃𝐞𝐬𝐢𝐠𝐧 𝐆𝐨𝐥𝐝𝐦𝐢𝐧𝐞 ❤️️

 System Design rounds are an important part of the Software Engineering interview process because they test a candidate's ability to design and implement large-scale systems. Here is the list of some amazing resource on System Design - ✅ Things you must know in System Design 👉System design basics: https://bit.ly/3SuUR0Y 👉Horizontal and vertical scaling: https://bit.ly/3slq5xh 👉 Load balancing and Message queues: https://bit.ly/3sp0FP4 👉High-level design and low-level design, Consistent Hashing, Monolithic and Microservices architecture: https://bit.ly/3DnEfEm 👉 Caching, Indexing, Proxies: https://bit.ly/3SvyVDc 👉 Networking, How Browsers work, Content Network Delivery ( CDN): https://bit.ly/3TOHQRb 👉 Database Sharding, CAP Theorem, Database schema Design: https://bit.ly/3CZtfLN 👉 Concurrency, API, Components + OOP + Abstraction : https://bit.ly/3sqQrhj 👉 Estimation and Planning, Performance: https://bit.ly/3z9dSPN 👉 Map Reduce, Patterns, and Microservices: https://bit.ly/...

API architectural styles

The following image displays the most common architectural styles for APIs. 🔹 1. REST REST, which was proposed in 2000, is the most widely used style for APIs. It is often utilized between front-end clients and back-end services, and it adheres to six architectural constraints. The payload format may be JSON, XML, HTML, or plain text. 🔹 2. GraphQL Meta proposed GraphQL in 2015. It provides a schema and type system that is ideal for complicated systems where entities' relationships are graph-like. In the diagram below, GraphQL can retrieve user and order information in one call, while REST necessitates multiple calls. GraphQL does not replace REST but can be built upon existing REST services. 🔹 3. Web socket Web socket is a protocol that enables full-duplex communications over TCP. Clients create web sockets to receive real-time updates from back-end services. Unlike REST, which always "pulls" data, web socket allows data to be "pushed". 🔹 4. Webhook Webhook...

UX ದೃಷ್ಟಿಕೋನದಿಂದ ಎಲ್ಲಾ ಪೂರ್ವಾಪೇಕ್ಷಿತ ತಪಾಸಣೆಗಳನ್ನು ಒಂದೇ ಪರದೆಯಲ್ಲಿ ತೋರಿಸುವುದು ಅಥವಾ ಅವುಗಳನ್ನು ಬಹು ಪರದೆಗಳಾಗಿ ವಿಭಜಿಸುವುದು ಉತ್ತಮವೇ?

UX ದೃಷ್ಟಿಕೋನದಿಂದ, ಪೂರ್ವಾಪೇಕ್ಷಿತ ಚೆಕ್‌ಗಳು ಹಲವಾರು ಅಥವಾ ಸಂಕೀರ್ಣವಾಗಿದ್ದರೆ ಅವುಗಳನ್ನು ಬಹು ಪರದೆಗಳಾಗಿ ವಿಭಜಿಸುವುದು ಉತ್ತಮವಾಗಿದೆ, ವಿಶೇಷವಾಗಿ ಅವುಗಳಿಗೆ ಬಳಕೆದಾರರ ಇನ್‌ಪುಟ್ ಅಥವಾ ಪರಸ್ಪರ ಕ್ರಿಯೆಯ ಅಗತ್ಯವಿದ್ದರೆ. ಒಂದೇ ಪರದೆಯ ಮೇಲೆ ಬಹು ಪೂರ್ವಾಪೇಕ್ಷಿತ ತಪಾಸಣೆಗಳನ್ನು ಪ್ರದರ್ಶಿಸಿದಾಗ, ಅದು ಬಳಕೆದಾರರಿಗೆ ಅಗಾಧವಾಗಿರಬಹುದು ಮತ್ತು ಯಾವ ಚೆಕ್‌ಗಳನ್ನು ಪೂರ್ಣಗೊಳಿಸಲಾಗಿದೆ ಮತ್ತು ಯಾವವುಗಳು ಬಾಕಿ ಉಳಿದಿವೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಕಷ್ಟವಾಗಬಹುದು.  ಇದು ಗೊಂದಲ, ಹತಾಶೆ ಮತ್ತು ದೋಷಗಳಿಗೆ ಕಾರಣವಾಗಬಹುದು. ಪೂರ್ವಾಪೇಕ್ಷಿತ ಚೆಕ್‌ಗಳನ್ನು ಬಹು ಪರದೆಗಳಾಗಿ ವಿಭಜಿಸುವುದರಿಂದ ಬಳಕೆದಾರರಿಗೆ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಹೆಚ್ಚು ನಿರ್ವಹಿಸಬಹುದಾಗಿದೆ. ಪ್ರತಿಯೊಂದು ಪರದೆಯು ನಿರ್ದಿಷ್ಟ ಕಾರ್ಯ ಅಥವಾ ಕಾರ್ಯಗಳ ಸೆಟ್‌ನ ಮೇಲೆ ಕೇಂದ್ರೀಕರಿಸಬಹುದು, ಸ್ಪಷ್ಟ ಸೂಚನೆಗಳು ಮತ್ತು ಪೂರ್ಣಗೊಂಡ ಪ್ರತಿಕ್ರಿಯೆಯೊಂದಿಗೆ. ಇದು ಬಳಕೆದಾರರಿಗೆ ಪ್ರಕ್ರಿಯೆಯ ಮೇಲೆ ಹೆಚ್ಚು ನಿಯಂತ್ರಣವನ್ನು ಹೊಂದಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ ಮತ್ತು ಪೂರ್ವಾಪೇಕ್ಷಿತ ಪರಿಶೀಲನೆಗಳ ಒಟ್ಟಾರೆ ಸಂಖ್ಯೆಯಿಂದ ಕಡಿಮೆಯಾಗಿ ಮುಳುಗುತ್ತದೆ. ಆದಾಗ್ಯೂ, ಪೂರ್ವಾಪೇಕ್ಷಿತ ಪರಿಶೀಲನೆಗಳು ಸರಳವಾಗಿದ್ದರೆ ಮತ್ತು ತ್ವರಿತವಾಗಿ ಪೂರ್ಣಗೊಳಿಸಬಹುದಾದರೆ, ಅವುಗಳನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ಸಂಘಟಿಸಿದರೆ ಮತ್ತು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಸುಲಭವಾಗಿದ್ದರೆ, ಅವುಗಳನ್ನು ಒಂದೇ ಪರದ...

From UX perspective is it good to show all prerequisite checks in a single screen or split them into multiple screens?

From a UX perspective, it's generally best to split prerequisite checks into multiple screens if they are numerous or complex, especially if they require user input or interaction. When multiple prerequisite checks are displayed on a single screen, it can be overwhelming for the user, and it may be difficult to understand which checks have been completed and which ones are outstanding. This can lead to confusion, frustration, and errors. Splitting the prerequisite checks into multiple screens can make the process more manageable for the user. Each screen can focus on a specific task or set of tasks, with clear instructions and feedback on completion. This can help the user feel more in control of the process and less overwhelmed by the overall number of prerequisite checks. However, if the prerequisite checks are simple and can be completed quickly, it may be appropriate to display them all on a single screen, provided they are clearly organized and easy to understand. In this case...

How to use WMI from a .NET Application

To start with, let us see what is WMI and what it offers. WMI is an acronym for Windows Management Instrumentation, which is basically an interface to the Windows OS system settings, drivers, and parameters. It also allows managing Windows personal computers and servers through it. A .NET developer can use WMI to obtain information about drivers installed on the client machine, verify whether the system is licensed or not, check for hardware configuration and a lot more. Quoting Linus Torvalds, “Talk is cheap. Show me the code”, let’s get to the basics of WMI usage. To get data through WMI, a SQL-like query is used. The specific query type is called WQL (WMI Query Language). Don’t let the name confuse you. It is still very similar to SQL. Before diving into code, you should know that Windows comes with a tool called WMI Test Tool, which lets you test WQL queries, to check their correctness and returned results. It is a bit harder to track wrong query results in code, so this tool can s...

Type or Category or Classification of Design Patterns

 Type or Category or Classification of Design Patterns Creational   Based on the concept of creating an object.     Class       Factory Method This makes an instance of several derived classes based on interfaced data or events.     Object       Abstract Factory Creates an instance of several families of classes without detailing concrete classes.       Builder Separates object construction from its representation, always creates the same type of object.       Prototype A fully initialized instance used for copying or cloning.       Singleton A class with only a single instance with global access points.                    Structural   Based on the idea of building blocks of objects.     Class   ...