Posts

Showing posts with the label tips

Finds: "You Want Microservices, But Do You Really Need Them?" - A Docker Blog

I stumbled upon a great read from Docker titled “Do You Really Need Microservices?” , and it echoes a lot of what I personally lean toward in system design. While microservices are often treated as the industry’s holy grail, the article reinforces that monoliths still make a lot of sense especially for teams with limited resources. For me, understanding one coherent system, its purpose, and its domain is far more valuable than chasing architectural trends for the sake of it. A well-designed monolith is easier to manage, more predictable in both performance and cost, and avoids the operational overhead that microservices inevitably bring. Worth a read if you're evaluating architecture choices for your next project.

Finds: "How to do I clear system data on Mac OS?" - A Reddit Discussion

Mac, always running out of space, especially if you're a developer (Xcode, argh!). This isn’t a new find, but since I just ran through it again, I figured it’s worth posting here for my own reference and maybe it’ll help someone else squeeze out that last bit of disk space. Here you go:  How to do I clear system data on Mac OS?

AI: Using ChatGPT to Translate Language Packs

Image
Thanks to the advent of accessible LLMs like ChatGPT, translating a language pack for an application is now easy and quick. There was a time when we relied on Google Sheets with the translate function for this task—not only was it difficult to maintain, but it was also less accurate. With tools like ChatGPT, translations can be customised for an application’s context, and most importantly, the format of the language pack is easily retained. You can simply copy the translated pack as a ready-to-use file without needing any further processing. Cost effective and efficient! Try this step-by-step : Load your language pack (e.g., JSON, XML). Paste it into ChatGPT, specifying context, desired tone, and any important instructions. Copy the translated output and use it directly in your app. This is a simple example (I think the instructions could be written better, pardon me).

Security: Implement DMARC to Protect Your Domain from Email Spoofing and Phishing

While it’s not mandatory, implementing SPF (Sender Policy Framework) and DKIM (DomainKeys Identified Mail) has become common practice to protect your email from spoofing and improve deliverability. However, these alone are not sufficient, as SPF and DKIM do not enforce alignment between the "From" address and the authenticated domain. An attacker can send an email that passes SPF and DKIM checks but uses a different "From" address domain, potentially misleading recipients. To minimize or prevent this scenario, you should enhance your email security by implementing DMARC (Domain-based Message Authentication, Reporting, and Conformance). DMARC policies instruct email providers on how to handle emails that fail DMARC validation, helping to protect your domain from spoofing and phishing attacks. Additionally, DMARC enables you to monitor the actions taken by email providers. Here are the primary DMARC policies: None : Allow the email to be delivered normally, even if it...

Security: Sanitise Text Input Before Hashing for a More Secure Application

Hashing can be a resource-intensive process for many programming languages. If your application has a text input interface that doesn't limit the number of characters, it can be exploited by attackers who supply excessively large inputs. This can potentially slow down your application or, in the worst-case scenario, cripple it entirely—an attack known as a Denial of Service (DoS). To protect your application, always validate and sanitise text input by checking its length before hashing. This simple measure can significantly enhance the security and stability of your application. Disclosure: This entry is based on a collection of my personal notes, and some of the information may be outdated or no longer relevant. If you notice any inaccuracies, please let me know in the comments. I appreciate your feedback and will correct the entry as needed. :)