<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Luka Peharda - Fullstack engineer</title><description>Web engineer specializing in PHP and JS (JavaScript)</description><link>https://lukapeharda.com/</link><item><title>Leave a failing test before you go on vacation</title><link>https://lukapeharda.com/article/leave-a-failing-test-before-you-go-on-vacation/</link><guid isPermaLink="true">https://lukapeharda.com/article/leave-a-failing-test-before-you-go-on-vacation/</guid><description>Every year I dread coming back from vacation not because of the work, but because I have no idea where I left off. A failing test, a well-written TODO, and a slow first day back are all you need to ease back in.</description><pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate></item><item><title>How to write better</title><link>https://lukapeharda.com/article/how-to-write-better/</link><guid isPermaLink="true">https://lukapeharda.com/article/how-to-write-better/</guid><description>We&apos;re taught to write to explain, but that&apos;s not how good writing works. Good writing changes how readers think. It doesn&apos;t need to be original, just valuable. Know your audience. Open with their problem. Finish with your solution.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Do We Still Need NoSQL in 2026?</title><link>https://lukapeharda.com/article/nosql-vs-relational/</link><guid isPermaLink="true">https://lukapeharda.com/article/nosql-vs-relational/</guid><description>I graduated university in 2007. Back then, databases meant one thing: tables, rows, and relationships. A user has orders. Orders have products. Everything is connected, and you draw those connections carefully on a whiteboard before you write a single line of code.</description><pubDate>Mon, 23 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Bittersweet Feeling</title><link>https://lukapeharda.com/article/bittersweet-feeling/</link><guid isPermaLink="true">https://lukapeharda.com/article/bittersweet-feeling/</guid><description>The duality of software development: a bug report is both a problem to solve and a milestone to celebrate.</description><pubDate>Thu, 30 Jan 2025 00:00:00 GMT</pubDate></item><item><title>Why I Hate Black Fridays: A Developer&apos;s Thurs-dread Manifesto</title><link>https://lukapeharda.com/article/why-i-hate-black-fridays/</link><guid isPermaLink="true">https://lukapeharda.com/article/why-i-hate-black-fridays/</guid><description>A developer&apos;s survival guide to the chaotic Thursday before Black Friday, where marketing creativity meets software implementation madness.</description><pubDate>Thu, 28 Nov 2024 00:00:00 GMT</pubDate></item><item><title>One idea, one article</title><link>https://lukapeharda.com/article/one-idea-one-article/</link><guid isPermaLink="true">https://lukapeharda.com/article/one-idea-one-article/</guid><description>When it comes to writing, trying to cram too many ideas into one article is like stuffing 10 clowns into a tiny car—chaos! By focusing on one clear idea, you keep your readers engaged and your message crisp.</description><pubDate>Wed, 23 Oct 2024 00:00:00 GMT</pubDate></item><item><title>When does the TDD approach make sense?</title><link>https://lukapeharda.com/article/when-does-the-tdd-approach-make-sense/</link><guid isPermaLink="true">https://lukapeharda.com/article/when-does-the-tdd-approach-make-sense/</guid><description>To do TDD or not to do TDD? That is the question. Personally I never bought into TDD practices. But I always use TDD when I need to develop a feature that will require me to test a lot of different variants and edge cases.</description><pubDate>Thu, 17 Oct 2024 00:00:00 GMT</pubDate></item><item><title>Code refactoring: what is it and why should you do it</title><link>https://lukapeharda.com/article/code-refactoring-what-is-it-and-why-should-you-do-it/</link><guid isPermaLink="true">https://lukapeharda.com/article/code-refactoring-what-is-it-and-why-should-you-do-it/</guid><description>Refactoring is like a makeover for your code, keeping it tidy and efficient without changing what it does. It&apos;s essential for code hygiene, making it easier to read, maintain, and even boosting performance. Think of it as paying off technical debts and adding a fresh coat of paint to your code&apos;s home.</description><pubDate>Thu, 28 Mar 2024 00:00:00 GMT</pubDate></item><item><title>Use EXISTS instead of COUNT &gt; 0 when checking if records exist</title><link>https://lukapeharda.com/article/use-exists-instead-of-count/</link><guid isPermaLink="true">https://lukapeharda.com/article/use-exists-instead-of-count/</guid><description>When checking for the existence of SQL records, it&apos;s more efficient to use the exists method instead of count. The exists method breaks the loop as soon as it finds the first record, making it more performant.</description><pubDate>Wed, 14 Feb 2024 00:00:00 GMT</pubDate></item><item><title>Using Tailwind CSS classes in markdown</title><link>https://lukapeharda.com/article/using-tailwindcss-classes-in-markdown/</link><guid isPermaLink="true">https://lukapeharda.com/article/using-tailwindcss-classes-in-markdown/</guid><description>In order to speed up article publishing I had to find a solution to use Tailwind CSS classes in markdown content. This article describes two different solutions.</description><pubDate>Tue, 31 Oct 2023 00:00:00 GMT</pubDate></item><item><title>Why I Migrated to Astro from Gatsby</title><link>https://lukapeharda.com/article/why-i-migrated-to-astro-from-gatsby/</link><guid isPermaLink="true">https://lukapeharda.com/article/why-i-migrated-to-astro-from-gatsby/</guid><description>Read about why I decided to migrate my website to Astro. What I&apos;m liking and what I&apos;m not liking as much.</description><pubDate>Thu, 12 Oct 2023 00:00:00 GMT</pubDate></item><item><title>100 lines of code per file</title><link>https://lukapeharda.com/article/100-lines-of-code-per-file/</link><guid isPermaLink="true">https://lukapeharda.com/article/100-lines-of-code-per-file/</guid><description>It has gotten to my attention that one of the biggest dev companies in the region has a pull-request requirement that checks whether each file committed is under 100 lines long. It seems like a pretty stupid requirement, right?</description><pubDate>Tue, 25 Oct 2022 00:00:00 GMT</pubDate></item><item><title>Unexpected benefits of estimations</title><link>https://lukapeharda.com/article/unexpected-benefits-of-estimations/</link><guid isPermaLink="true">https://lukapeharda.com/article/unexpected-benefits-of-estimations/</guid><description>Did you know you can use the estimation to jump-start and beat procrastination? Reasons for the procrastination can be because we don&apos;t know how to do something or even what needs to be done.</description><pubDate>Tue, 31 May 2022 00:00:00 GMT</pubDate></item><item><title>How to generate a full Tailwind CSS palette from a single color</title><link>https://lukapeharda.com/article/how-to-generate-a-full-tailwind-css-palette-from-a-single-color/</link><guid isPermaLink="true">https://lukapeharda.com/article/how-to-generate-a-full-tailwind-css-palette-from-a-single-color/</guid><description>You have an app where you allow users to select their brand color in order to style their website. Naturally, you use different shades of the color in your design - in some places you use ligher ones, and in other darker ones. But the problem is ...</description><pubDate>Wed, 27 Apr 2022 00:00:00 GMT</pubDate></item><item><title>Why wrapping 3rd-party calls to external services is always a good idea</title><link>https://lukapeharda.com/article/why-wrapping-3rd-party-calls-to-external-service-is-always-a-good-idea/</link><guid isPermaLink="true">https://lukapeharda.com/article/why-wrapping-3rd-party-calls-to-external-service-is-always-a-good-idea/</guid><description>When using a 3rd-party package that makes calls (or API requests) to an external service it is always a good idea to wrap 3rd-party service with a thin wrapper (Facade).</description><pubDate>Thu, 31 Mar 2022 00:00:00 GMT</pubDate></item><item><title>How to Refactor a Method With Optional Params</title><link>https://lukapeharda.com/article/refactoring-optional-method-params/</link><guid isPermaLink="true">https://lukapeharda.com/article/refactoring-optional-method-params/</guid><description>While refactoring and optimising legacy code I&apos;ve ran into a method signature inconsistency which caused performance issues and was being done without developer intention.</description><pubDate>Fri, 25 Feb 2022 00:00:00 GMT</pubDate></item><item><title>Write Before You Think</title><link>https://lukapeharda.com/article/write-before-you-think/</link><guid isPermaLink="true">https://lukapeharda.com/article/write-before-you-think/</guid><description>Writing makes me think clearly and what is more important, more efficiently. And it helps me to structure my thoughts.</description><pubDate>Fri, 14 Jan 2022 00:00:00 GMT</pubDate></item><item><title>How to Become Better (Developer)</title><link>https://lukapeharda.com/article/how-to-become-better-developer/</link><guid isPermaLink="true">https://lukapeharda.com/article/how-to-become-better-developer/</guid><description>Fundamentals are forever. So it would be wise to invest your time to grow those.</description><pubDate>Fri, 29 Jan 2021 00:00:00 GMT</pubDate></item><item><title>Writing Year in Review Article</title><link>https://lukapeharda.com/article/writing-year-in-review-article/</link><guid isPermaLink="true">https://lukapeharda.com/article/writing-year-in-review-article/</guid><description>My attempt at writing the Year in Review Article for 2020.</description><pubDate>Mon, 04 Jan 2021 00:00:00 GMT</pubDate></item><item><title>Interesting reads - volume #13</title><link>https://lukapeharda.com/article/interesting-reads-volume-13/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-volume-13/</guid><description>Woohoo, we&apos;re already at lucky number 13! Did you know that number 13 is considered lucky to the Chinese? Featuring @adamwathan, @marcelpociot, @calebporzio and many others.</description><pubDate>Thu, 06 Aug 2020 00:00:00 GMT</pubDate></item><item><title>Interesting reads - volume #12</title><link>https://lukapeharda.com/article/interesting-reads-volume-12/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-volume-12/</guid><description>We again have a selection of PHP (mostly Laravel but there are Symfony and WordPress reads as well) and JavaScript (React). Though there is a lot of assorted tech reads as well (and some CSS ones).</description><pubDate>Tue, 30 Jun 2020 00:00:00 GMT</pubDate></item><item><title>Interesting reads — volume #11</title><link>https://lukapeharda.com/article/interesting-reads-volume-11/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-volume-11/</guid><description>This month there may be more React links than usual due to me building a new web app using React hooks and learning the intricacies of hooks to stop DDoSing my app 😜</description><pubDate>Fri, 29 May 2020 00:00:00 GMT</pubDate></item><item><title>Interesting reads — volume #10</title><link>https://lukapeharda.com/article/interesting-reads-volume-10/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-volume-10/</guid><description>Another month has passed so it is time for another collection of interesting reads collected in the last month or so. Some links are a bit older but good and applicable nonetheless. Mostly PHP and JavaScript this time but there are a few unrelated gems as always.</description><pubDate>Thu, 30 Apr 2020 00:00:00 GMT</pubDate></item><item><title>Interesting reads — volume #9</title><link>https://lukapeharda.com/article/interesting-reads-volume-9/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-volume-9/</guid><description>I know you’ve been impatiently waiting for this month’s installment of Interesting Reads. Again, a collection of mostly PHP, Laravel, WordPress and JavaScript links but there should be something for everybody to enjoy.</description><pubDate>Mon, 30 Mar 2020 00:00:00 GMT</pubDate></item><item><title>Interesting reads — volume #8</title><link>https://lukapeharda.com/article/interesting-reads-volume-8/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-volume-8/</guid><description>A lot of WordPress, Laravel and JavaScript articles and tips this month. Even though they are showcased in some framework or an app (what would you call a WordPress, a framework, or an app, or maybe both?) most of its principles are universal and can be applied to different programming languages and frameworks.</description><pubDate>Thu, 27 Feb 2020 00:00:00 GMT</pubDate></item><item><title>Interesting reads — volume #7</title><link>https://lukapeharda.com/article/interesting-reads-volume-7/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-volume-7/</guid><description>Good news, by popular demand (wink wink Zvonko) I’m continuing with Interesting reads. I know what you’re thinking — your year could not have started with better news than this :D</description><pubDate>Fri, 31 Jan 2020 00:00:00 GMT</pubDate></item><item><title>Interesting reads — volume #6</title><link>https://lukapeharda.com/article/interesting-reads-volume-6/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-volume-6/</guid><description>In this volume, there are a couple of interesting articles related to WordPress and Laravel as well as JavaScript ones (plus few goodies and scare pieces).</description><pubDate>Wed, 17 Jan 2018 00:00:00 GMT</pubDate></item><item><title>Interesting reads — volume #5</title><link>https://lukapeharda.com/article/interesting-reads-volume-5/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-volume-5/</guid><description>In this volume we have a few WordPress articles, a bit of CSS, Go, PHP, React, SVG and a lot of boilerplates and starter kits, seasoned with some AI (ML and CV). FTW :)</description><pubDate>Fri, 19 May 2017 00:00:00 GMT</pubDate></item><item><title>Interesting reads — volume #4</title><link>https://lukapeharda.com/article/interesting-reads-volume-4/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-volume-4/</guid><description>Ahoy, dear readers. It seems that time of the month has come again! Yes, you are correct — it is time for the new edition of Interesting reads. Although I’m trying to write one on a weekly basis, days just keep slipping away from me.</description><pubDate>Mon, 03 Apr 2017 00:00:00 GMT</pubDate></item><item><title>Interesting reads — volume #3</title><link>https://lukapeharda.com/article/interesting-reads-volume-3/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-volume-3/</guid><description>Greeting readers! Volume 3 has been in the making for the last month or so. Not because there wasn’t something to report home about, but due to my busy schedule and the snowboarding trip that I went to :)</description><pubDate>Fri, 17 Mar 2017 00:00:00 GMT</pubDate></item><item><title>Interesting reads — volume #2</title><link>https://lukapeharda.com/article/interesting-reads-volume-2/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-volume-2/</guid><description>Another issue of interesting links &amp; reads. Removed &apos;weekly&apos; from email because it seems I&apos;m unable to stay on schedule.</description><pubDate>Fri, 10 Feb 2017 00:00:00 GMT</pubDate></item><item><title>My first WordPress website</title><link>https://lukapeharda.com/article/my-first-wordpress-website/</link><guid isPermaLink="true">https://lukapeharda.com/article/my-first-wordpress-website/</guid><description>T&apos;was the summer of 2009. when I got approached to create a WordPress based website for a small company. That ended up being my first WordPress project.</description><pubDate>Fri, 27 Jan 2017 00:00:00 GMT</pubDate></item><item><title>Interesting reads - week #1</title><link>https://lukapeharda.com/article/interesting-reads-week-1/</link><guid isPermaLink="true">https://lukapeharda.com/article/interesting-reads-week-1/</guid><description>Soooooo, I‘m thinking of doing some sort of weekly compilation of interesting articles and contents found on the web from web developers perspective.</description><pubDate>Thu, 12 Jan 2017 00:00:00 GMT</pubDate></item><item><title>WordPress issue: menu disappeared after saving</title><link>https://lukapeharda.com/article/wordpress-menu-disappeared-saving/</link><guid isPermaLink="true">https://lukapeharda.com/article/wordpress-menu-disappeared-saving/</guid><description>Recently I&apos;ve ran into a serious pickle - WordPress menu disappeared on me after adding new items and clicking on &quot;Save menu&quot; button.</description><pubDate>Wed, 29 Jul 2015 00:00:00 GMT</pubDate></item><item><title>WordPress tip: Show posts without any category or even custom term</title><link>https://lukapeharda.com/article/wordpress-tip-show-posts-no-category-term/</link><guid isPermaLink="true">https://lukapeharda.com/article/wordpress-tip-show-posts-no-category-term/</guid><description>Recently I needed to show posts that weren&apos;t in any of the categories (for my custom archive page). It is a very common problem that you encounter when adding new custom post types to WordPress.</description><pubDate>Fri, 30 Jan 2015 00:00:00 GMT</pubDate></item><item><title>WordPress tip: Catching callbacks in admin</title><link>https://lukapeharda.com/article/catch-callbacks-wordpress-admin/</link><guid isPermaLink="true">https://lukapeharda.com/article/catch-callbacks-wordpress-admin/</guid><description>Useful WordPress hook that allows you to catch callbacks in WordPress admin.</description><pubDate>Tue, 06 Aug 2013 00:00:00 GMT</pubDate></item><item><title>Creating simple tasks app with Backbone.js and Slim micro framework</title><link>https://lukapeharda.com/article/creating-simple-tasks-app-with-backbone-js-and-slim-micro-framework/</link><guid isPermaLink="true">https://lukapeharda.com/article/creating-simple-tasks-app-with-backbone-js-and-slim-micro-framework/</guid><description>In a series of articles I’ll create simple task management web application based on Backbone.js. To save data and persist it to database I’ll use Slim PHP micro RESTful server.</description><pubDate>Tue, 16 Apr 2013 00:00:00 GMT</pubDate></item><item><title>Android JSON-RPC client and PHP Zend Framework server</title><link>https://lukapeharda.com/article/android-json-rpc-client-and-php-zend-framework-server/</link><guid isPermaLink="true">https://lukapeharda.com/article/android-json-rpc-client-and-php-zend-framework-server/</guid><description>XML-RPC rules, but the amount of data it generates is its big disadvantage. This is where JSON-RPC steps in. Data it generates is significally smaller, this isn’t suprising as JSON is known as fat free XML.</description><pubDate>Sat, 11 Jun 2011 00:00:00 GMT</pubDate></item><item><title>How to build PHP XML-RPC server, client and Android application</title><link>https://lukapeharda.com/article/how-to-build-php-xml-rpc-server-client-and-android-app/</link><guid isPermaLink="true">https://lukapeharda.com/article/how-to-build-php-xml-rpc-server-client-and-android-app/</guid><description>This article will show how to build PHP XML RPC server and how to consume provided services with PHP and an Android application as a client. PHP side of things will be built on top of Zend Framework and for Android will be using very thin XML RPC library android-xmlrpc.</description><pubDate>Wed, 23 Mar 2011 00:00:00 GMT</pubDate></item></channel></rss>