All posts by admin

How to Fix a Laptop Slowdown Due to RAM

Problem:

  • You have a laptop with 48 GB of RAM.
  • Your computer becomes slow when the used RAM exceeds 16 GB.
  • You want to find out what causes the issue.

Solution:

  1. Open  PowerShell as an administrator.
  2. Execute the command below.
    Get-CimInstance Win32_PhysicalMemory | Format-Table BankLabel, Capacity, Manufacturer, Speed, PartNumber
  3. You may see that you have two RAM modules, and their sizes are different, as shown below.
    BankLabel    Capacity Manufacturer Speed PartNumber
    ---------    -------- ------------ ----- ----------
    BANK 0    17179869184 SK Hynix      3200 H***********N-XN
    BANK 2    34359738368 SK Hynix      3200 H***********N-XN
  4. If this is true, your RAM is using Flex mode.
  5. Check your DDR type with the command below.
    Get-CimInstance Win32_PhysicalMemory | Select-Object Manufacturer, PartNumber, Speed, MemoryType, SMBIOSMemoryType
  6. If you see 26, you have DDR4;
    if 24, you have DDR3;
    if 34, you have DDR5.
  7. Check your DDR type with the command below.
    winsat mem
  8. If your measured speed is around 28,000 MB/s, it means an effective bandwidth of about 1.1 channels — exactly what Flex Mode produces (one full channel, one partial).
  9. Option 1: Keep your RAM modules as is. 28,000 MB/s is sufficient for office and coding tasks.
  10. Option 2: Replace your RAM modules with two 16 GB or two 32 GB modules of the same size to enable full dual-channel operation and achieve up to 40% better performance in memory-intensive tasks such as running virtual machines, heavy multitasking, or video editing.

How to Fix the Salesforce “Related List Filters” Property Having an Invalid Value

Problem:

  • You have a Salesforce Lightning Record Page with many related lists.
  • You want to update it.
  • When pressing the Save button you get the error: The ‘Dynamic Related List – Single’ component’s ‘Related List Filters’ property has an invalid value..
  • You want to know which related list causes the issue.

Solution:

  1. Clone the Lightning Record Page.
  2. Click each related list and check the Related List Filters section for any error message in red.
  3. If no error message can be found, delete each related list and click Save after each deletion.
  4. When the error no longer appears, examine the last deleted related list to identify which properties caused the issue.

 

    How to Use AI to Boost Your Productivity

    Motivation:

    You want to leverage AI to boost your productivity. However, you do not know specifically what it can do for you.

    Suggestions:

    I. If you are reading a book, you can try the following tasks.

    1. Ask ChatGPT to help you summarize the long content you have read to clarify any unclear points, so that you can follow the subsequent content more easily.

    Example prompt: summarize the content below in 5 sentences:
    [Your long content here]

    2. Ask ChatGPT to clarify unknown concepts in the summary.

    • Example prompt 1: what is [unknown concept here] in 1 sentence.
    • Example prompt 2: Give a bit more detail about [unknown concept here].

    II. If you are writing an article, you can try the following tasks.

    1. Ask ChatGPT to help you rewrite your sentences grammatically and fluently.

    Example prompt: grammar? [Your content here]

    2. Try asking ChatGPT to translate content to English.

    Example prompt: translate the following to English: [Your content here]


    III. If you are learning a topic, you can try the following tasks.

    1. Ask ChatGPT to explain difficult terms using specific examples.

    Example prompt: Explain hashtable using simple, specific examples.

    2. Ask ChatGPT to distinguish between two or more concepts.

    • Example prompt 1: Distinguish virtualization from emulation.
    • Example prompt 2: Distinguish library, framework, and platfrom.

    3. Ask ChatGPT to search for research paper related to a terminology or product.

    Example prompt: Give me a research paper related to qemu.

    4. Ask ChatGPT for a diagram that explains the relationship among three or more concepts.

    Example prompt: Give me a diagram explaining the relationship among hardware, os, qemu, xv6, and xv6 programs.

    5. Ask ChatGPT to clarify your understanding or answer your question.

    • Example prompt 1: Does the page table store program data or the physical RAM addresses of that data?
    • Example prompt 2: Does PM2 automatically use the .env file?
    • Example prompt 3: Why does the Azure WAF block requests to WebResource.axd?

    IV. If you are maintaining a product, you can try the following tasks.

    1. Ask ChatGPT to fix a maintenance issue after receiving an error message.

    Example prompt: How to fix the Salesforce issue: “Cannot deactivate the Default Workflow User”

    2. Try asking ChatGPT for the quickest way to complete a simple task.

    Example prompt: Give me the quickest way to serve static HTML files from a folder using Node.js.

    3. Try asking ChatGPT to convert a Unix script into a Windows script.

    Example prompt: Convert the script below from Ubuntu to Windows:

    [Your script here]


    V. If you are developing a product, you can try the following tasks.

    1. Try asking Cursor to code a simple feature.

    Example prompt: Implement a user-level sleep program for xv6, along the lines of the UNIX sleep command. Your sleep should pause for a user-specified number of ticks. A tick is a notion of time defined by the xv6 kernel, namely the time between two interrupts from the timer chip. Your solution should be in the file user/sleep.c.

    Salesforce Platform: Lessons Learned

    Lesson Learned 1: UI Modification

    Problem:

    You need to build a UI that is not supported by Salesforce’s built-in features.

    Context:

    The beauty of Salesforce is that it provides most of the features we need for inputting data, saving data, and generating reports. Therefore, we can develop complex applications with very reasonable effort (a few days). The disadvantage is that we must follow Salesforce’s UI, business, and data conventions for customization.

    If we need to develop specific UIs that are not supported by Salesforce customization (for example, changing the position of the ‘Save’ button), then we must use the LWC framework. Development with the LWC framework requires significantly more effort (weeks or months) compared to using Salesforce’s built-in features.

    Solution:

    Carefully evaluate the costs and benefits before implementing something that is not supported by Salesforce’s built-in features.

    Lesson Learned 2: Estimating Development Effort.

    Problem:

    You may incorrectly estimate the effort required to build a solution on the Salesforce platform.

    Context:

    Development on the Salesforce platform may not require much effort, but discovering the requirements through trial and error (e.g., business workflows, Conga templates, UI tweaking) and devising an appropriate solution (e.g., necessary apps, objects/fields, formulas, UIs, reports, Conga code, guides, data schema) can require substantial effort.

    Solution:

    Requirements and solution discovery are often the most challenging tasks, so you should allocate sufficient risk reserve for them in the development effort.

     

     

        Topic 27 – Introduction to Blockchain

        Why do I need to learn about blockchain?

        Blockchain offers an interesting and unique solution for applications that require distributed consensus.

        Today, a key skill for software developers is the ability to use blockchain-based platforms and tools to solve real-world problems involving distributed agreements.

        What can I do after finishing learning about blockchain?

        You will be to create decentralized applications (dApps) using platforms like Ethereum or Hyperledger, and smart contract programming language like Solidity.

        That sounds fun! What should I do now?

        First, please read this book to learn about the core protocols and algorithms in cryptography: Bruce Schneier (1996). Applied Cryptography – Protocols, Algorithms and Source Code in C. Wiley.

        After that, please read this book to learn about the core concepts of Bitcoin: Arvind Narayanan et al. (2016). Bitcoin and Cryptocurrency Technologies – A Comprehensive Introduction. Princeton University Press.

        After that, please read the books below to learn programming with Bitcoin:

        After that, please read this book to learn programming with Ethereum: Andreas M. Antonopoulos and Gavin Wood (2018). Mastering Ethereum. O’Reilly Media.

        After that, please read this book to learn programming blockchain using Hyperledger Fabric: Matt Zand et al. (2021). Hands-On Smart Contract Development with Hyperledger Fabric V2. O’Reilly Media.

        After that, please audit this course to gain some ideas about the application of blockchain: MIT 15.S12 Blockchain and Money, Fall 2018 (Lecture Slides).

        Terminology Review:

        • Public Keys.
        • Private Keys.
        • Digital Signatures.
        • Digital Signature Scheme.
        • Cryptographic Hash Functions.
        • Merkle Tree: Binary Data Tree with Hashes.
        • Bitcoin: Digital money ecosystem.
        • bitcoin: Unit of currency.
        • Bitcoin Users.
        • Bitcoin Wallets.
        • Bitcoin Addresses.
        • Bitcoin Transactions.
        • Blockchain Explorer.
        • Bitcoin Mining, Miners.
        • The Chain of Transactions.
        • Bitcoin Core: The reference implementation of the bitcoin system.
        • Bitcoin Exchanges.
        • Bitcoin Network.
        • Double‐Spending Attacks.
        • Block Chain: Timestamped Append-Only Log.
        • Sybil Attack: Copies of nodes that a malicious adversary can create to look like there are a lot of different participants.
        • Proof of Work: Find a number, or nonce, such that H(nonce || prev_hash || tx || tx || … || tx) < target.
          51‐Percent Attack.
        • Account-Based Ledger: The ledger keeps track of account balances.
        • Unspent Transaction Output: A transaction output that can be used as input in a new transaction.
        • Transaction-Based Ledger: The ledger keeps track of individual transaction outputs.
        • Coinbase Transactions.
        • Bitcoin Scripting Language.
        • Turing Incompleteness.
        • Stateless Verification.
        • Candidate Block.
        • Genesis Block.
        • Ethereum: The world computer.
        • Ether.
        • Externally Owned Accounts (EOAs).
        • Contract Accounts.
        • Solidity.
        • Smart Contracts.
        • Ethereum Clients.
        • Ethereum Networks.
        • Permissionless Blockchain.
        • Permissioned Blockchain.

        After finishing blockchain, please click on Topic 28 – Introduction to AI Agent Development to continue.

         

         

        How to Prevent Driver Updates on Windows 10

        Motivation:

        • Your computer may become unstable with new drivers.
        • For instance, installing a new graphics driver could cause the screen to go black.

        Solution:

        Combine the three methods below for maximum effectiveness.

        Method 1: Disable Automatic Driver Updates via System Settings

          • Open Control PanelSystem and SecuritySystem.
          • Click Advanced system settings (left pane).
          • Under the Hardware tab, click Device Installation Settings.
          • Select “No (your device might not work as expected)”.
          • Click Save Changes.

          Method 2: Use Group Policy Editor (Only on Pro, Enterprise, Education)

          • Press Win + R, type gpedit.msc, press Enter.
          • Navigate to:
            Computer ConfigurationAdministrative TemplatesWindows ComponentsWindows Update.
          • Double-click Do not include drivers with Windows Updates.
          • Set it to Enabled, then click OK.

          Method 3: Use Device Installation Restriction in Group Policy

          • In gpedit.msc, go to:
            Computer ConfigurationAdministrative TemplatesSystemDevice InstallationDevice Installation Restrictions
          • Enable “Prevent installation of devices that match any of these device IDs”
          • Get the device’s hardware ID:
          • Open Device Manager → right-click the device → Properties → Details tab → select Hardware Ids
          • Add the hardware ID(s) to the policy.

           

          How to Convert Windows Server 2022 from Evaluation to Full Edition

          Motivation:

          • You installed Windows Server 2022 Evalution and now want to upgrade to the full edition.
          • However, when you tried changing the product key through the Activation settings, you encountered an error.

          Solution:

          1. Open Command Prompt (Admin).
          2. Execute the command below.
            Dism /online /Set-Edition:ServerStandard /ProductKey:XXXX-XXXX-XXXXX-XXXXX-XXXXX /AcceptEula
          3. Restart your computer.
          4. Open Command Prompt (Admin) again.
          5. Execute the commands below.
            slmgr.vbs /ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
            slmgr /ato

           

          How to Install Only Outlook from Microsoft 365 Suite

          Problem:

          • You already have Office 2007 with license key. However Office 365 email service does not work with Outlook 2007.
          • You have to use Outlook 365 to connect to Office 365 email service.
          • However you still want to use Word, Excel and Power Point 2007 because you do not have to log in Office 365 account for activation and you want to avoid accidential uploading files to your Office 365 account.
          • You also still want to use Word, Excel and Power Point 2007 because of their speed and the ability to paste an image to center of a slide.
          • In summary, you wish to install Outlook 365 only.

          Solution:

          1. Download Office Deployment Tool.
          2. Extract the exe file to C:\Users\admin\Downloads\O365. (Replace admin with your Windows username.)
          3. Copy configuration-Office365-x64.xml to outlook.xml.
          4. Modify the content of the outlook.xml file as below.
            <Configuration>
            
              <Add SourcePath="C:\Users\admin\Downloads\O365" OfficeClientEdition="32" Channel="Current">
                <Product ID="O365ProPlusRetail">
                  <Language ID="en-us" />
                  <ExcludeApp ID="Access" />
                  <ExcludeApp ID="Bing" />
                  <ExcludeApp ID="Excel" />
                  <ExcludeApp ID="Groove" />
                  <ExcludeApp ID="Lync" />
                  <ExcludeApp ID="OneDrive" />
                  <ExcludeApp ID="OneNote" />
                  <!--  <ExcludeApp ID="Outlook" /> -->
                  <ExcludeApp ID="PowerPoint" />
                  <ExcludeApp ID="Publisher" />
                  <ExcludeApp ID="Teams" />
                  <ExcludeApp ID="Word" />
                </Product>
              </Add>
            
              <!--  <Updates Enabled="TRUE" Channel="Current" /> -->
            
              <!--  <Display Level="None" AcceptEULA="TRUE" />  -->
            
              <!--  <Property Name="AUTOACTIVATE" Value="1" />  -->
            
            </Configuration>
          5. Open Command Prompt (Admin).
          6. Execute the commands below.
            cd C:\Users\admin\Downloads\O365
            setup.exe /download outlook.xml
            setup.exe /configure outlook.xml
          7. If you have any issues with the steps then recheck Microsoft guide.
          8. You may also use online Office Customization Tool to to create a configuration file and download it for using with the Office Deployment Tool.

          Increasing Classic Outlook font size:

          1. On the File tab, choose Options > Mail.
          2. Under Compose messages, choose Stationery and Fonts.
          3. On the Personal Stationery tab, under New mail messages or Replying or forwarding messages, choose Font.
          4. Refer to Microsoft guide for more information.

          Creating Classic Outlook signatures:

          1. On the File tab, choose Options > Mail.
          2. Under Compose messages, choose Signature.

           

          How to Sync Content between your MacBook and iPhone over Wi-Fi

          Motivation:

          You want to sync content between your MacBook and iPhone over Wi-Fi.

            Solution:
            1. Connect your iPhone to your MacBook using a USB or USB-C cable.
            2. In the Finder on your MacBook, select iPhone in the Finder sidebar.
            3. Click General tab in the button bar.
            4. Select the Show this iPhone when on Wi-Fi checkbox.
            5. Click Sync button.
            6. Unplug your iPhone from your MacBook.
            7. Restart both devices.
            8. From now on, when your iPhone and MacBook connect to the same Wi-Fi you will see your iPhone device in the Finder sidebar, and you can sync content between them without having to use a cable.
            9. Sometimes if your MacBook cannot find your iPhone then just restart your MacBook and it will find your iPhone device again.