[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"posts:::10:6:":3,"$fmAbo7HX1697lOJ4AVNBJl1PR7wUF0IkR_62krtbwQAE":123},{"data":4,"meta":119},[5,28,49,67,84,103],{"relatedTools":6,"_id":7,"id":8,"title":9,"alt":10,"category":11,"date":12,"author":13,"readTime":14,"content":15,"image":16,"more":17,"extendedContent":18,"asHTML":17,"headTitle":19,"metaDesc":20,"photoCredit":21,"createdAt":22,"updatedAt":23,"uuid":24,"categorySlug":25,"tags":26},[],"644a650a774c389bc4de01b8","change-your-default-browser","Change your default browser!","full screen browser on  laptop","Hacks","2023-04-27T12:03:00.000Z","Michal",2,"Are you a tech-savvy Mac user? Then you'll love this solution: change your default browser to an app that's not even a browser at all! Let me explain the problem: when you receive incoming messages with links, you want to be able to open them easily by clicking, but sometimes you'd like certain links to open in Chrome (like Google Meet) and others in Safari (like Medium.com). Read further to learn how to do this.","https:\u002F\u002Fmsatbsx.sgp1.digitaloceanspaces.com\u002Fnews\u002Flaptop-browser.jpg","true","\u003Ch2>Setup is easy. At least for geeks ;)\u003C\u002Fh2>\nInstal Finicky App:\u003Cbr>\n\u003Cpre>\nbrew install --cask finicky\n\u003C\u002Fpre>\ncreate your configuration file at ~\u002F.finicky.js\u003Cbr>\nbelow you have my first experiments. \n\u003Cpre>\nmodule.exports = {\n  defaultBrowser: \"Safari\",\n\n  handlers: [\n    {\n      match: [\n        \"apple.com*\", \n        finicky.matchDomains(\u002F.*\\.apple.com\u002F)\n      ],\n      browser: \"Safari\"\n    },\n    {\n      match: [\n        \"google.com*\", \n        finicky.matchDomains(\u002F.*\\.google.com\u002F)\n      ],\n      browser: \"Brave Browser\"\n    },\n    {\n      match: [\n        \"atlassian.net\u002F*\", \n        \"*.atlassian.net\u002F*\", \u002F\u002F match subdomains\n      ],\n      browser: \"Google Chrome\"\n    }\n    ,\n    {\n      match: [\n        \"miro.com\u002F*\",\n      ],\n      browser: \"Google Chrome\"\n    },\n    {\n      match: [\n        \"127.0.0.1\u002F*\"\n      ],\n      browser: \"Brave Browser\"\n    }\n  ]\n}\n\u003C\u002Fpre>\nLast part is set default browser to Finicky at System Settings > Desktop & Dock > Default web browser (in Ventura, older OSX version have a bit different places). \nDone. With the example below, you'll open local addresses in Brave, Google, Miro and Atlassian in Chrome, others in Safari. This is only the tip of an iceberg. It is JS, you can go way further with custom conditions!\u003Cbr>\nLearn more about Finicky \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fjohnste\u002Ffinicky\" target=\"_new\">here\u003C\u002Fa>","Change your default browser to Finicky","Tech-savvy Mac users, learn how to open certain links in Chrome & others in Safari by changing your default browser. Not to a browser at all!","Unsplash\u002FMichal","Thu Apr 27 2023 20:05:30 GMT+0800 (Singapore Standard Time)","Mon Dec 04 2023 19:44:45 GMT+0800 (Singapore Standard Time)","cc6ce5f3-d805-4515-86e5-b77ef2be0cf4","hacks",[27],"App Review",{"relatedTools":29,"_id":30,"id":31,"title":32,"alt":33,"category":34,"date":35,"author":13,"readTime":36,"content":37,"image":38,"more":17,"extendedContent":39,"asHTML":17,"headTitle":40,"metaDesc":41,"photoCredit":42,"createdAt":43,"updatedAt":44,"uuid":45,"categorySlug":46,"tags":47},[],"643fd1a0774c389bc4de01b6","engineers-mission-does-not-change","Engineers mission does not change.","da vinci","Thought","2023-04-19T11:31:00.000Z",1,"New engineering solutions continue to grow at an exponential rate. Amazing! But what difference does this make in our daily tasks? The goal remains the same: deliver your solution as simply as possible. As Leonardo da Vinci once said, \"Simplicity is the ultimate sophistication.\" Take some time to consider this before writing your next block of code.","https:\u002F\u002Fmsatbsx.sgp1.digitaloceanspaces.com\u002Fnews\u002Fda-vinci.jpg","\u003Ch2>Here is a bit of truism for developers.\u003C\u002Fh2>\n\u003Cp>In coding, elegance lies in simplicity. Strive for code that is clear, concise, and easy to understand. Avoid unnecessary complexity and convoluted solutions. Just as da Vinci saw sophistication in simplicity, in the world of development, sophisticated and effective solutions often arise from keeping code straightforward and uncomplicated. Prioritize readability and maintainability, as these are the hallmarks of a sophisticated and well-crafted codebase. Embrace simplicity not just as a design choice but as a guiding philosophy in your coding practices, for in simplicity, you'll find the true sophistication of a well-engineered solution.\u003C\u002Fp>\n\u003Cp>Just take a pause. Rethink and iteratively improve your code.\u003C\u002Fp>","Engineers mission.","Tech solutions are growing fast! How does this help us? Keep it simple & remember Leonardo's advice: \"Simplicity is the ultimate sophistication.\" ","public domain","Wed Apr 19 2023 19:33:52 GMT+0800 (Singapore Standard Time)","Mon Dec 04 2023 19:45:05 GMT+0800 (Singapore Standard Time)","5786a12f-0c05-469c-a56b-dfd1e871aebc","thought",[48],"CTO work",{"relatedTools":50,"_id":51,"id":52,"title":53,"alt":54,"category":11,"date":55,"author":13,"readTime":36,"content":56,"image":57,"more":17,"extendedContent":58,"asHTML":17,"headTitle":59,"metaDesc":60,"createdAt":61,"updatedAt":62,"uuid":63,"categorySlug":25,"tags":64},[],"64352530774c389bc4de01b2","end-to-end-testing-tool-done-right","Playwright, end to end testing tool done right.","Playwright website screenshoot","2023-04-11T09:14:00.000Z","End-to-end testing is essential, especially when considering regression tests. All the platforms I've used in the past feel dated, as though I'm using Windows 95. Recently, while experimenting with Svelte, I came across Playwright. It's amazing! There's hardly any learning curve, and it's all integrated into my IDE. Give it a try - you won't regret it!","https:\u002F\u002Fmsatbsx.sgp1.digitaloceanspaces.com\u002Fnews\u002Fplaywright_small.png","\u003Ch2>Can be doing e2e tests easy? Possible with \u003Ca href=\"https:\u002F\u002Fplaywright.dev\" target=\"_blank\" rel=\"noopener\">Playwright.\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>End-to-end testing is an indispensable aspect of ensuring the robustness of software, particularly when it comes to executing regression tests. Traditionally, the platforms available for such testing have often felt outdated, reminiscent of an era long past. However, my recent exploration of Playwright has been nothing short of revelatory, especially as I dabbled with Svelte.\u003C\u002Fp>\n\u003Cp>The experience is nothing short of amazing! Unlike its counterparts, Playwright brings a refreshing modernity to the testing landscape. What sets it apart is not just its effectiveness but the seamless integration into my integrated development environment (IDE). The learning curve is remarkably gentle, making it accessible even for those new to the world of end-to-end testing. For anyone seeking an agile, contemporary solution for testing, I wholeheartedly recommend giving Playwright a try – the efficiency and user-friendly experience it brings to the table are truly game-changers in the realm of software testing. You won't regret making it a part of your testing toolkit!\u003C\u002Fp>","Playwright end to end tests","End-to-end testing made easy with Playwright: no learning curve, works with your IDE, and no more Windows 95 feels. Get it and thank me later!","Tue Apr 11 2023 17:15:28 GMT+0800 (Singapore Standard Time)","Mon Dec 04 2023 19:45:37 GMT+0800 (Singapore Standard Time)","8855a586-4d53-401e-b6f0-a47478becd65",[65,66],"Testing","TDD",{"relatedTools":68,"_id":69,"id":70,"title":71,"alt":72,"category":11,"date":73,"author":13,"readTime":14,"content":74,"image":75,"more":17,"extendedContent":76,"asHTML":17,"headTitle":77,"metaDesc":78,"photoCredit":13,"createdAt":79,"updatedAt":80,"uuid":81,"categorySlug":25,"tags":82},[],"64325dc5774c389bc4de01ad","understand-flex-box-in-minutes","Learn FlexBox in minutes.","Flex Box demo app screenshoot","2023-04-09T06:33:00.000Z","A few years ago, I conducted a session with individuals who were beginning their journey as front-end developers. It was quite surprising to me that they were having difficulty understanding FlexBox. To assist them, I created this demo using TailwindCSS classes - it might be of help to you too!","https:\u002F\u002Fmsatbsx.sgp1.digitaloceanspaces.com\u002Fnews\u002Fflex-box-demo-enhanced-center.jpg","\u003Ch2 class=\"text-3xl font-bold tracking-tight text-gray-900 sm:text-4xl\">Try it!\u003C\u002Fh2>\nJust add a few boxes and play with radio buttons. \u003Cbr>\nBy clicking them you \u003Cspan class=\"font-semibold\">only change classes of the playground container div\u003C\u002Fspan> (with white background). Classes assigned to colourful boxes are never updated after they have been generated (random: background, width and height).\u003Cbr>\nIf you want to see under the hood, check it on \u003Ca href=\"https:\u002F\u002Fcodepen.io\u002Fmichalszymaniak\u002Fpen\u002FabWmdyQ\" rel=\"noopener\" style=\"color: rgb(14 165 233)\" class=\"font-semibold\" target=\"_new\">Codepen\u003Ca> or clone from \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmsatbsx\u002Flearn-flexbox-with-tailwindcss\" style=\"color: rgb(14 165 233)\" class=\"font-semibold\" target=\"_new\">Github\u003C\u002Fa>.\n\u003Cscript src=\"\u002Fflexbox-app.js\">\u003C\u002Fscript>\n\u003Cdiv id=\"wrapper\">\u003C\u002Fdiv>","Understand FlexBox","A few years ago I helped new front-end devs with their FlexBox struggles. Check out my TailwindCSS demo to help you too - it might be just what you need!","Sun Apr 09 2023 14:40:05 GMT+0800 (Singapore Standard Time)","Tue Dec 05 2023 15:38:28 GMT+0800 (Singapore Standard Time)","c4709b47-43b7-4b3f-9fed-12f33a9686f5",[83],"",{"tags":85,"relatedTools":86,"_id":87,"id":88,"title":89,"alt":90,"category":91,"date":92,"author":13,"readTime":93,"content":94,"image":95,"more":17,"extendedContent":96,"asHTML":17,"photoCredit":21,"createdAt":97,"updatedAt":98,"uuid":99,"headTitle":100,"metaDesc":101,"categorySlug":102},[],[],"642ccca516bc82c4efe966ef","the-managers-path-by-camille-fournier","The Manager's Path by Camille Fournier.","Book Cover: The Manager's Path by Camille Fournier","Books","2023-04-05T01:16:00.000Z",3,"Promoted as a guide to help you grow as a technology manager, this book offers valuable quotes, interesting examples, and references to other books. Unfortunately, I found it to be a waste of my money and time. Read on to find out why.","https:\u002F\u002Fmsatbsx.sgp1.digitaloceanspaces.com\u002Fnews\u002FmangersPath.jpg","\u003Ch2>Why \"The Manager's Path\" is not a best book of all time.\u003C\u002Fh2>\n\u003Cp>Let me tell you a story how I imagine the background of this book.\u003Cbr>\nCamille Fournier was always the best student in the class, sitting next to the teacher, being active and prepared. To be better than the smart ones.\u003Cbr>\u003C\u002Fp>\n\u003Cp>At some point in her career, she was encouraged to write a book about her experiences as a successful manager. Instead of sharing her own knowledge and insights, she did what she did best in school: compiling research from other sources and attempting to create a book. Cool?  Nope.\u003Cbr>\u003Cbr>\u003C\u002Fp>\n\u003Cp>This ultimately led to a collection of randomly-assembled thoughts from various authors, resulting in inconsistent advice throughout the book. For example, Camille advises readers early on to come prepared for one-on-one meetings but not give status reports, only to later suggest that managers must deal with their reporters seriously if they don't provide status reports - contradicting her own advice. This is just one of many signs, there is no author vision in the book.\u003Cbr>\u003Cbr>\u003C\u002Fp>\n\u003Cp>In conclusion, while there are some valuable pieces of information within the book courtesy of other authors, there is no consistent story being told and no unique insight being provided by Camille herself. My advice would be to read the original sources instead of relying on Camille's copy.\u003C\u002Fp>\n","Wed Apr 05 2023 09:19:33 GMT+0800 (Singapore Standard Time)","Sat Nov 25 2023 17:23:58 GMT+0800 (Singapore Standard Time)","66f0640a-150c-401c-8133-633dedd2bbed","The Manager's Path - book review","A guide to help tech managers, with valuable quotes and examples, but unfortunately not worth the money or time. Read on for why.","books",{"tags":104,"relatedTools":105,"_id":106,"id":107,"title":108,"alt":109,"category":11,"date":110,"author":13,"readTime":36,"content":111,"image":112,"more":17,"extendedContent":113,"asHTML":17,"createdAt":114,"updatedAt":115,"uuid":116,"headTitle":117,"metaDesc":118,"categorySlug":25},[],[],"64278a9bf53e2c80941a3be3","prompt-engineering","Prompt engineering. ","Bird on a wire","2023-03-31T16:00:00.000Z","AI is revolutionising the way code is written. With the use of AI-based coding tools like GitHub's Copilot, we can rapidly and effortlessly generate intricate algorithms that would ordinarily take an extended amount of time to compose manually. However, these are just blocks of code; soon it will be the entire application. The requisite skill of today is not another framework or programming language; we need to effectively prompt AI to write what we desire.","https:\u002F\u002Fmsatbsx.sgp1.digitaloceanspaces.com\u002Fnews\u002Fbird.png","\u003Ch2>Job of the future you can do today.\u003C\u002Fh2>\n\u003Cp>\"Prompt engineering\" emerges as a critical job of the future, if not a contemporary necessity, within the evolving landscape of artificial intelligence and human-computer interaction. In a world increasingly defined by conversational interfaces, virtual assistants, and chatbots, the ability to craft effective and engaging prompts becomes paramount. This role involves not only the technical know-how to design and implement conversational agents but also the nuanced understanding of language, user behavior, and context. With the rise of natural language processing (NLP) and machine learning, prompt engineers play a pivotal role in creating interactions that are intuitive, context-aware, and user-friendly.\u003C\u002Fp>\n\u003Cp>As AI becomes more integrated into various facets of our lives, from customer service to virtual companionship, the expertise in prompt engineering becomes indispensable for shaping positive user experiences and ensuring that technology seamlessly aligns with human needs and expectations. In essence, prompt engineering is not just a job of the future; it's a dynamic and influential role that is shaping the present and will continue to do so as AI technologies advance.\u003C\u002Fp","Sat Apr 01 2023 09:36:27 GMT+0800 (Singapore Standard Time)","Sat Nov 25 2023 16:19:44 GMT+0800 (Singapore Standard Time)","9b6c6645-4b38-4d11-ae06-3341b6f8e42d","Prompt engineering is coming.","AI is revolutionising coding: tools like GitHub's Copilot generate intricate algorithms quickly, creating entire applications. Read more!",{"totalnoOfPosts":120,"page":121,"perPage":122,"noOfPostOnCurrentPage":122},82,10,6,{"enabled":124},true]