<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Dino Angelov</title><link>https://dangelov.com/</link><description>Recent content on Dino Angelov</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Sun, 04 May 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://dangelov.com/index.xml" rel="self" type="application/rss+xml"/><item><title>Trading with Claude (and writing your own MCP server)</title><link>https://dangelov.com/blog/trading-with-claude/</link><pubDate>Sun, 04 May 2025 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/trading-with-claude/</guid><description>Ever wanted to check on your portfolio and trade some stocks directly with Claude? Well you&amp;rsquo;re in luck.
Claude and MCP In November 2024, Anthropic open-sourced MCP (Model-Context Protocol) to standardize the way AI assistants interact with other tools. This standardization allows AI assistants to seamlessly integrate with various tools and platforms, enhancing their capabilities and usability. Since then, it&amp;rsquo;s been growing in popularity and adoption, slowly becoming a key component in the development of AI-powered tools and applications.</description></item><item><title>Building a Home HQ: When a Tablet Just Won't Do</title><link>https://dangelov.com/blog/homehq-custom-org-tablet/</link><pubDate>Sun, 03 Nov 2024 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/homehq-custom-org-tablet/</guid><description>As a software engineer, I&amp;rsquo;ve learned that there are two types of solutions to any problem: the practical one, and the one that lets you play with new toys. So, as one of these days my girlfriend and I were discussing ways to better organize our household chores and upcoming events, I could have simply grabbed a tablet and called it a day. But where&amp;rsquo;s the fun in THAT?
The Vision What I wanted was an info center – something that would blend seamlessly into our home while providing at-a-glance information about our daily lives.</description></item><item><title>Remove a package dependency added via Swift Package Manager in Xcode 14.0 beta 4</title><link>https://dangelov.com/blog/remove-dependency-swift-package-manager-xcode-14/</link><pubDate>Mon, 07 Aug 2023 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/remove-dependency-swift-package-manager-xcode-14/</guid><description>I was recently working on v2 of Rest, a macOS &amp;amp; Windows app I built some years ago. It’s a break reminder app useful if you spend a lot of time on the computer.
I had some trouble getting sound to play reliably on macOS Ventura&amp;rsquo;s beta (13.0 Beta 22A5311f), so I decided to try and install SwiftySound. Immediately ran into a dead end since it doesn&amp;rsquo;t support loading from Asset catalogs, so I decided to remove it and look for a solution elsewhere.</description></item><item><title>Showing and hiding alternate menu items in Swift on macOS</title><link>https://dangelov.com/blog/swift-alternate-menu-items-option-key/</link><pubDate>Mon, 22 Aug 2022 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/swift-alternate-menu-items-option-key/</guid><description>For v2 of Rest I wanted to have menu items that show alternate titles and actions when the user holds Option.
After going through a couple of answers on StackOverflow and discussions they linked to, I found out it&amp;rsquo;s now way easier than ever to achieve it. There&amp;rsquo;s no need to run custom loops or set unnecessary keyboard shortcuts at all.
So here&amp;rsquo;s how you do it.
First, in your Storyboard/XIB, create all your menu items.</description></item><item><title>Movable windows in Swift with no title bar</title><link>https://dangelov.com/blog/movable-swift-windows-no-titlebar/</link><pubDate>Sun, 14 Aug 2022 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/movable-swift-windows-no-titlebar/</guid><description>I recently sorted through 300+ emails of feedback for Rest, a macOS app I built some years ago. If you spend a lot of time on the computer, the app reminds you to take regular breaks.
With my newfound motivation for a v2, I got to work. Since macOS 13 (Ventura) is due to be released soon, I wanted to use the latest possible tech and SDKs to build it - making it easier to maintain going forward.</description></item><item><title>Remove a package dependency added via Swift Package Manager in Xcode 14.0 beta 4</title><link>https://dangelov.com/blog/remove-swift-package-manager-dependency/</link><pubDate>Sun, 07 Aug 2022 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/remove-swift-package-manager-dependency/</guid><description>I was recently working on v2 of Rest, a macOS &amp;amp; Windows app I built some years ago. It&amp;rsquo;s a break reminder app useful if you spend a lot of time on the computer.
I had some trouble getting sound to play reliably on macOS Ventura&amp;rsquo;s beta (13.0 Beta 22A5311f), so I decided to try and install SwiftySound. Immediately ran into a dead end since it doesn&amp;rsquo;t support loading from Asset catalogs, so I decided to remove it and look for a solution elsewhere.</description></item><item><title>Generate animations and video with Go, gg and ffmpeg</title><link>https://dangelov.com/blog/generating-animations-video-golang-gg-ffmpeg/</link><pubDate>Sun, 08 Nov 2020 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/generating-animations-video-golang-gg-ffmpeg/</guid><description>I&amp;rsquo;ve been making some generative art pieces lately and publishing them on my other Instagram account and I wanted to make some animations. Result first:
So far I had only been using the excellent gg (Go Graphics) package for some static art. But how do you go from some static images to a video?
Pretty easy apparently and you can follow along with the simple project I setup as a playground.</description></item><item><title>Make a PDF look scanned</title><link>https://dangelov.com/blog/make-a-pdf-look-scanned/</link><pubDate>Fri, 06 Nov 2020 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/make-a-pdf-look-scanned/</guid><description>Sometimes you need to fill out and send a document back, and a lot of places expect you to print and scan it, but not always do you have a printer handy or cloes by. In that case, you can fill out all the info directly in the document you received or even create the PDF yourself. You can then run it through ImageMagick and have it look like you filled it out, printed it, and then scanned it.</description></item><item><title>Connect a Raspberry Pi or Orange Pi to your Arch machine</title><link>https://dangelov.com/blog/connect-a-raspberry-pi-or-orange-pi-to-your-arch-machine/</link><pubDate>Sat, 21 Mar 2020 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/connect-a-raspberry-pi-or-orange-pi-to-your-arch-machine/</guid><description>Make sure the ethernet controllers on your machine and the Pi both have auto MDIX capabilities. If they do, you won&amp;rsquo;t need a crossover cable.
Connect your Pi to your Arch machine. Open the Advanced network configuration and edit your Ethernet/Wired connection (double-click). Under IPv4 Settings &amp;gt; Method, select Shared to other computers. Add an address:
Address Netmask Gateway 10.0.0.1 8 10.0.0.1 And then save.</description></item><item><title>Push Notifications for iOS and Android with a PHP back end</title><link>https://dangelov.com/blog/push-notifications-for-ios-and-android-with-a-php-back-end/</link><pubDate>Sat, 21 May 2016 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/push-notifications-for-ios-and-android-with-a-php-back-end/</guid><description>(Note: For Android, I only cover the PHP code used to send the notifications, while for iOS the guide is a lot more thorough.)
Foreword At Free-eBooks.net, many of our readers wanted an easy way to get notified through our mobile apps about the newest titles we receive, so after exploring our options a bit, we set about implementing push notifications. What’s more, they’re also a great way to grow retention — don’t let people forget about your app.</description></item><item><title>1 Year in the App Store – when “Move Fast and Break Things” doesn’t work</title><link>https://dangelov.com/blog/1-year-in-the-app-store-when-move-fast-and-break-things-doesnt-work/</link><pubDate>Wed, 30 Jul 2014 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/1-year-in-the-app-store-when-move-fast-and-break-things-doesnt-work/</guid><description>Yesterday I read Chad Etzel’s experience with his indie games in his post titled My iOS Indie-Game Numbers. In it, Chad generously shares a lot of information about his apps and the struggles he’d had. He also links to Jared Sinclair, who had previously also shared his experience. Both of them are a good read.
This account, my own “a year in hindsight” post, has been in my drafts for a while now as I’ve been postponing it, thinking these mistakes may be too grave, too simple.</description></item><item><title>An up-to-date guide to using PLCrashReporter in your app</title><link>https://dangelov.com/blog/an-up-to-date-guide-to-using-plcrashreporter-in-your-app/</link><pubDate>Fri, 17 Jan 2014 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/an-up-to-date-guide-to-using-plcrashreporter-in-your-app/</guid><description>A while back, I received an email from a user of Rest.app that it was crashing for him a couple of seconds after start. I tried to replicate the issue by asking for the app settings and running it on the same OS version as he did, but I couldn’t pintpoint the problem. I did try to tighten up a few code areas that I thought might be the cause, but I didn’t have anything solid.</description></item><item><title>Dimming an external non-Mac monitor</title><link>https://dangelov.com/blog/dimming-an-external-non-mac-monitor/</link><pubDate>Fri, 01 Nov 2013 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/dimming-an-external-non-mac-monitor/</guid><description>I’ve started using an external monitor with my Mac a while ago and it’s always been bothering me that at night while my Mac’s screen does dim, the external monitor doesn’t.
A few days ago, I decided to see if there was an app that could help me sync the dim level of my external monitor with the MacBook Pro’s built-in monitor. I looked at SmartSaver, Shades, Screen Shades, Shade Control and a bunch of other apps and none of them seemed to be able to do this simple task.</description></item><item><title>Writing my first Mac App</title><link>https://dangelov.com/blog/writing-my-first-mac-app/</link><pubDate>Tue, 02 Jul 2013 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/writing-my-first-mac-app/</guid><description>From 0 to App Store in 1 week. Mentioned on Lifehacker less than 3 weeks in. This is my experience with developing my first Mac App and publishing it in the App Store.
I’ve been “trying” to get into programming for Apple products (whether OS X or iOS) for a while – i got an iPod Touch about 3 years ago in the hope that I could use it to entice myself to write an iOS app.</description></item><item><title>Rest</title><link>https://dangelov.com/blog/rest/</link><pubDate>Wed, 12 Jun 2013 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/rest/</guid><description>Rest is a small OS X (10.7 required) utility that sits in your menubar and reminds you to take a break every now and then.
The app’s menubar icon slowly fills up as you work and will notify you once it’s time to take a break. You can customize the work and break periods and choose whether to be audibly reminded for each.
The app will automatically adjust the break times and reset the timer if you take an earlier or longer break.</description></item><item><title>Getting started with Sublime Text (and becoming more productive)</title><link>https://dangelov.com/blog/getting-started-with-sublime-text-and-becoming-more-productive/</link><pubDate>Wed, 08 May 2013 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/getting-started-with-sublime-text-and-becoming-more-productive/</guid><description>I’ve been trying to convince a few of my colleagues of the wonders of Sublime Text for a while, and I’m hoping this small guide helps make the switch from any previous editors out there. Sublime’s combination of autocompletion, command bar, extensibility, speed and rich features is really hard to find in any other editor. I’m not an IDE guy, so I’ve tried a few code editors starting from my first website in Notepad, continuing in Notepad++, Delphi for PHP, Coda &amp;amp; Espresso, but Sublime is way better than anything I’ve worked in before.</description></item><item><title>Setting up Boris on macOS</title><link>https://dangelov.com/blog/setting-up-boris-on-macos/</link><pubDate>Wed, 08 May 2013 00:00:00 +0000</pubDate><guid>https://dangelov.com/blog/setting-up-boris-on-macos/</guid><description>Boris is a great little REPL (read-eval-print loop, aka interactive shell) for PHP. It allows you to quickly test and try out PHP code in the terminal.
Boris is fairly straightforward to setup and run on Linux, but chances are, you, like me, have never paid much attention to or even tried to use the PHP version that ships with OS X. And it seems like OS X’s PHP is lacking a few features, so you need to follow a few extra steps to get all of this up and running.</description></item><item><title>¡Hola!</title><link>https://dangelov.com/experience/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dangelov.com/experience/</guid><description>I’m quadrilingual — speaking Macedonian, English, Spanish &amp; Serbian.
For more than a decade I’ve been programming professionally, developing backends for cross-platform apps &amp; making websites visited by millions every month, as well as programming native applications for both the desktop and mobile.
I’m interested in new technologies that enable me to do things faster — whether it’s a new programming language (hello Go) or a new sublime text plugin.</description></item></channel></rss>