Monday, July 31, 2023
How AI Large Language Models work: Explained in simple English
Sunday, July 30, 2023
Great Soul: Mahatma Gandhi and His Struggle with India by Joseph Lelyveld
How to export your Last.fm Scrobbles
I like this tool and it should have been part of the main Last.fm product itself.
It is simple to use. Just enter your Last.fm username, select the type of data to export and the file format and start exporting. In fact, you can enter any Last.fm username and it will scrape the data for you.
Here is a screencap of my data being exported. 😊
Thanks to Ghan64 for this useful tool.
Saturday, July 29, 2023
Today I Learned: Voyager 1 is almost 15 billion miles away from Earth and still can communicate
Friday, July 28, 2023
World's largest wind turbine has been switched on
A 16-megawatt MySE 16-260 turbine, the world's largest wind turbine which was designed by Mingyang Smart Energy, has been switched on.
Photo by Jeremy Bishop on Unsplash |
Laura Simmons writes about the announcement at IFLScience.
Wednesday, July 26, 2023
Overture Maps Foundation released it's first Open Map Dataset
Photo by Jeremy Bishop on Unsplash |
Monday, July 24, 2023
A PC Assembler Website
- http://web.archive.org/web/http://pcassembler.tripod.com/
- http://web.archive.org/web/http://pcassembler.tripod.com/com_corr.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/whatuneed.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/unpack_case.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/smps.htm
- http://web.archive.org/web/http://pcassembler.tripod.com/smps.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/setmotherboard.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/processor.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/heatsink.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/ram.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/motherboard_install.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/fdd.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/hdd.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/optical.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/videocard.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/pci.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/finishing.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/poweringup.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/troubleshooting.htm
- http://web.archive.org/web/https://pcassembler.tripod.com/standardize.htm
Twitter rebranded to X
X.com now points to twitter.com.
— Elon Musk (@elonmusk) July 23, 2023
Interim X logo goes live later today.
Tuesday, July 18, 2023
A Chrome Extension to Bookmark all Tabs
What This Extension Does
Why I Wrote This Extension
Steps
- Set up your development environment
- Install a text editor such as Visual Studio Code or Notepad++. Visual Studio Code v1.8 has been used in this walkthrough.
- Create a new folder for the project.
- Create an icon file
- In the project folder, create an image file named icon.png which will be the icon for your extension.
- Create a manifest file
- In the project folder, create a file named manifest.json
- Add the following content to the file
{"manifest_version": 3,"name": "BookmarkMyTabs","version": "1.0","description": "A Chrome extension to bookmark all open tabs","author": "yourname@example.com","permissions": ["tabs","bookmarks"],"background": {"service_worker": "service_worker.js","type": "module"},"action": {"default_icon": "icon.png"}} - Create the extension service worker
- In the project folder, create a file named service_worker.js
- Add the following content to the file
- // File: Service-Worker.js// File Version: 1.0// Project: BookmarkMyTabs Chrome Extensionconsole.log("BookmarkMyTabs Service-Worker Start");const sOurBookmarkFolder = "BookmarkMyTabs";const cParentIdBmkBar = '1'; // 1 = Bookmarks bar. 2 = Other bookmarksconst cParentIdBmkOther = '2'; // 1 = Bookmarks bar. 2 = Other bookmarksconst cOurParentId = cParentIdBmkBar;chrome.windows.onRemoved.addListener(function(windowId) {console.log("!! Exiting the Browser !!");});chrome.action.onClicked.addListener((tab) => {startBookmarking();});function startBookmarking(){// Search for our bookmark folderchrome.bookmarks.search( {title: sOurBookmarkFolder},function(treeNode) {if (treeNode.length != 0) {console.log("Bookmark folders found: " + treeNode.length);// Find the oldest folder that was created// Ignore any other folder with the same name that the user may have// createdlet ourFolderNode = treeNode[0];for (const node of treeNode) {if (cOurParentId == node.parentId &&node.dateAdded < ourFolderNode.dateAdded){console.log("Node: " + node.id + " Date Added: " +node.dateAdded);ourFolderNode = node;}}//console.log("Oldest node: " + ourFolderNode.id + " Date Added: "//+ ourFolderNode.dateAdded);if (cOurParentId == ourFolderNode.parentId) {console.log("Bookmark folder id: " + ourFolderNode.id);console.log("Bookmark folder index: " + ourFolderNode.index);console.log("Bookmark folder parentId: " + ourFolderNode.parentId);// Create our bookmarksbookmarkOpenTabs(treeNode[0]);}else {// Folder not found inside cOurParentIdconsole.log("Bookmark folder not found in the correct location");addFolderAndBmkTabs();}}else {console.log("Bookmark folder not found");addFolderAndBmkTabs();};});}// Bookmark open tabs under the given node// Param node: A BookmarkTreeNode objectfunction bookmarkOpenTabs(node){console.log("+bookmarkOpenTabs()");chrome.bookmarks.getChildren(node.id.toString(),function(bmkList){chrome.tabs.query({}, function(tabs) {let bFound = false;tabs.forEach(function(tab) {console.log("HERE");// Check if the bookmark already existsif (0 < bmkList.length){console.log(' bookmarkOpenTabs() -> Existing bookmarks: ' +bmkList.length);bFound = false;for (const bmk of bmkList){if (tab.title == bmk.title && tab.url == bmk.url) {bFound = true;break;}}}if (false == bFound){chrome.bookmarks.create( {parentId: node.id.toString(),title: tab.title,url: tab.url},() => {console.log(' bookmarkOpenTabs() -> Bookmark added: ' +tab.title);});}});});});console.log("-bookmarkOpenTabs()");}// Add our bookmark folder and bookmark open tabsfunction addFolderAndBmkTabs(){chrome.bookmarks.create( {parentId: cOurParentId,title: sOurBookmarkFolder},function(newFolder) {console.log("Created bookmark folder: " + newFolder.title);bookmarkOpenTabs(newFolder);});}console.log("BookmarkMyTabs Service-Worker End");
- Load the extension in Chrome
- Open Google Chrome
- Go to 'chrome://extensions' in the address bar
- Enable 'Developer mode' by toggling the switch
- Click on 'Load unpacked' and select the folder containing the project files
- If there were no errors, the new extension should be listed in the Extensions page
- If your new extension doesn’t show up in the Chrome toolbar, then drop down the Extensions tool and make
it visible by clicking on the Pin icon
- Now your Extension's icon should show up in the toolbar
- Now we are all set to test this Extension
- Test the extension
- Open multiple tabs in Chrome
- Click on the extension icon in the Chrome Toolbar
- All open tabs should now be bookmarked in the folder name that you provided in your script
- That's it. Now you have a working extension that silently bookmarks all open tabs instantly
I don't want to use this. What other option do I have?
- At the top right, click More (the three dots)
- Go to Bookmarks > Bookmark All Tabs
- In the dialog that pops up, provide a name of the folder where you want to add the bookmarks and click on
Save.
- You are done.
References
Friday, July 14, 2023
Chandrayaan-3 Launched
LVM3 M4/Chandrayaan-3 Mission:
— ISRO (@isro) July 14, 2023
LVM3 M4 vehicle🚀 successfully launched Chandrayaan-3🛰️ into orbit.
Sunday, July 9, 2023
Play Content on Google Home
If you have Google Assistant enabled smart speakers or display devices, like the Google Home, you probably already use them with various commands to play content and control your connected devices. On this page, I will list voice commands that you can use to play audio and video content on these devices.
You can start with the conventional voice command "Hey Google" or "Okay Google" to activate the Google Assistant.
Google Assistant-enabled Devices
First a little bit of a build-up. There are several Google Assistant-enabled devices nowadays. The Assistant may be on your phone, speaker, Android Auto-compatible car, TVs, wearables and other devices. A list of devices available in the market can be found here: https://assistant.google.com/platforms/phones/
The commands listed here have been tested on a Lenovo Smart Display that runs the Google Assistant.
Play News
Play the News
Play the latest news about <topic>
Play Technology News
Play Business News
Play Sports News
Play World News
Play Entertainment News
Play Politics News
Play Science News
Play Health News
Play Art & Lifestyle News
Play National News
Wednesday, July 5, 2023
Threads launched by Meta Platforms
Posts on Threads can be 500 characters long and can contain photos, links and videos (up to 5 minutes length). Twitter which started with 140-character limit in 2006, currently provides 280-character limit for posts. At this point the platform is available as mobile apps for Android and iOS only.
Monday, July 3, 2023
A Visit to the Toledo Museum of Art - Random Travel Instinct
The Toledo Museum of Art is an internationally known art museum located in the Old West End neighborhood of Toledo, Ohio. It houses a collection of more than 30,000 objects. With 45 galleries, it covers 280,000 square feet and is currently in the midst of a massive multiyear expansion plan to its 40-acre campus. The museum was founded by Toledo glassmaker Edward Drummond Libbey in 1901.
We visited the museum several times between 2018 and 2021 and this video is a slideshow of photos shot at the galleries.
The official website of the museum is at https://www.toledomuseum.org/