Tiny Player version 2.4.0 is out now on iOS. This release comes with many improvements under the hood and brings several new features: 
 
	 Chapter support for podcasts and audiobooks 
	 Remember playback position 
	 Drag entire folders into the browser uploader 
	 Dark mode support in browser interface 
 

Tiny Loader version 1.3.0 is out now. This update brings the following changes: 
 
 	 Fix transcoding of files with embedded cover art 
 	 Fix transcoding of files with very high sample rates 
 	 Rewritten in Swift. Goodbye Objective-C! 
 

Type Raiders is now playable in a browser. Try it here . 
 Thanks to Sokol there wasn’t much extra coding to do, just some platform specific tweaks and the WASM build setup. I used to have built in support for LZ4 and Ogg in the engine but ditched it to keep things simple. For the web build I compress audio with Opus & apply gzip compression on textures. Those get decompressed during…
Tiny Player version 2.2.1 is out now on iOS. This release fixes a potential crash when processing files with special characters or long filenames. Handling of audio interruption events has been improved. 

Superforce 2.1 is out now on the AppStore. This update brings the following improvements: 
 
 	 Gamepad support 
 	 New collision handling system 
 	 Tilt sensitivity increased to save your wrist 
 	 Engine optimizations 
 

An updated version of Tiny Player for Mac is out now. 
 
 	 Fixed playback controls on latest OS 
 	 Updated icon 
 	 Added support for m4b audio book files 
 
Full changelog here .
I'm rewriting my 3 shipped games. It's a big technical overhaul and I'm also updating some gameplay elements. 
 Devastro was my first shipped game and it is by far the most complex one. AI, collisions, pathfinding, bots, vehicles, cutscenes, level editor... about 60000 lines of Java in total. I decided to rewrite it in C++ and convert it from PC to mobile. 
 Type Raiders was my second…
10th anniversary edition of Superforce is out now. Available on the AppStore. 
 It's a small update. I made a few UI layout tweaks for recent phone models and upgraded parts of the engine. 
 
 OpenGL renderer replaced with a Sokol -based one → Metal 
 OpenAL replaced with a custom mixer + Sokol → Core Audio 
 Performance improvements for texture loading & music streaming 
…
Tiny Player version 2.1.0 is out now on iOS. What’s new? 
 
 	 Open tinyplayer.net in your browser and the running Tiny Player app will appear automatically. You don't have to type the IP address anymore. 
 
 
 There had been a few minor releases since 2.0: 
 2.0.4 
 
 	 Fix seeking in files with less common sampling frequencies 
 	 Fix saving…
Tiny Player version 2.0 is out now on iOS. This is a rather big update: 
 
 	 Refreshed user interface 
 	 Import from Files 
 	 ZIP support 
 	 Equalizer (high-shelf/low-shelf) 
 	 Embedded lyrics 
 	 Designated 'incoming' folder 
 
 
 
 	 Removed support for variable playback rate 
 	 Removed 'autosort' feature 
…
Tiny Loader version 1.2.5 is out now. Tiny Loader is the companion Mac app for Tiny Player for iOS . This update brings support for Apple Silicon. 

An updated version of Tiny Player for Mac is out now. 
 
 	 Tweaked the main UI a little bit, extending the playlist to be edge-to-edge 
 	 Added support for the mp4 file extension 
 
Full changelog here .

A small bugfix release of Tiny Player for Mac is out now. M3U files containing Windows \ path delimiters should be parsed correctly and the “Sudden termination” macOS feature is disabled to make sure the current playlist is saved properly.
For the last few years I had been using DigitalOcean to host this website & a few others, file sync and my git repos . Fairly low traffic stuff on a single VPS instance. It was nice and cheap. But still… the recent 20% price increase got me thinking… 
 Can I build my own server? 
 
 Turns out I could! And it was a lot of fun. 
 I used a 10th generation Intel NUC with…
Tiny Player version 1.5.2 is out now on iOS. This update contains two fixes: 
 
 	 Always show IPv4 address for uploads (instead of mangled IPv6) 
 	 Fix dark mode background color in player controls area 
 
If you encounter any problems, please let me know .

Recently I had been getting reports that the playlist wasn’t saved properly but I couldn’t reproduce this error. I added tons of extra logging and asked people to send me log files. 
 Here’s what I discovered: 
 
 	 A database migration was failing while renaming a table column 
 	 ...and it would happen only on macOS 10.14 or older 
 	 ...because…
I'm happy to announce Tiny Player for Mac version 1.6.0. The headline feature of this release is Quick search . Here's how it works: 
 
 Open Preferences → Library and add your music folder(s).
 Files are not copied anywhere or modified. 
 
 Press ⌘F to open the search box and start typing 
 Drag, drop, boom 
 
 As always, if you like the app, you can buy me a…
Tiny Player for Mac version 1.5.9 is out now. I have optimized the loading of playlist items and metadata. This improves the responsiveness of the app when loading many files at once.
Tiny Player for Mac version 1.5.8 is out now. This update fixes saving of playlists (m3u) and the track info window (⌘I) sometimes not appearing. Download here or update your installation through Preferences. 

Tiny Player version 1.5.1 is out now on iOS. This update brings one new feature: you can drag down the playback controls area to reveal and resize the cover image. 
 
 

Tiny Player version 1.5.0 is out now on iOS. The app was rewritten in Swift which should make it easier to add new features. If you encounter any problems, please let me know . 

Tiny Player for Mac version 1.5.0 is out now. The app was rewritten in Swift which should make it easier to add new features. If you encounter any problems, please let me know . 
 UPDATE : version 1.5.7 fixes some stability issues. Download
Both Tiny Player for iOS and Tiny Player for Mac have been rewritten in Swift . 
 It took a lot of time & effort but it was a necessary step and I’m happy with how it went. 
 Generally I wanted to keep the app working at the end of each programming session. I started with a few refactorings of the Objective-C code that I knew would make things easier later. Then I rewrote the smaller…
Tiny Player for Mac version 1.4.3 is out now. This update brings back the flat icon, adds ability to click right time indicator to toggle remaining/total track time and 1 bugfix.
Tiny Player for Mac version 1.4.0 is out now. This update brings cover art in the main window. Use the horizontal split divider above the playlist to adjust. 
 Drag the divider all the way down to collapse the playlist completely and show just the playback controls and cover art. 
 
 And of course going 100% tiny is still an option, too. 

Tiny Player for Mac version 1.3.6 is out now. This update contains several bugfixes, improved compatibility with macOS 10.11 and improved formatting of playlist duration while loading. And you can now Buy me a coffee . 
 
 See the full changelog for more details. 

Tiny Player for Mac version 1.3.0 is out now. This update brings the following improvements: 
 
 	 Control center and media keys support 
 	 Customization of displayed track information 
 	 Fix sorting of files dropped on Dock icon 
 	 Winamp-style keyboard shortcuts (ZXCVB) 
 	 Drag playlist items into other apps as files 
 
See the full…
Tiny Player version 1.4 is out now. This update brings the following changes: 
 
 	 Dark mode support 
 	 New icon set 
 	 Optimizations & bug fixes 
 
This version of Tiny Player requires iOS 13.0 or newer. I know this leaves some users behind. Sorry. I need to modernize the code to keep adding new features.
 
 
 
 

Tiny Loader version 1.2.4 is out now. Tiny Loader is the companion Mac app for Tiny Player for iOS . This update brings the following improvements: 
 
 	 Optimized for dark mode 
 	 Big Sur style icon 
 

Tiny Player for Mac version 1.2.13 is out now. This update brings the following improvements: 
 
 	 Optimized for Apple Silicon Macs 
 	 Big Sur style icon 
 

I just got charged 0.30£ by Niantic, the publisher of Pokemon Go, to verify my age during the user registration process. The payment was initiated from the iOS app and done through a web form. No IAP. 
 Now I can only hope Niantic doesn't charge me for something my kids do in the game. 
 This is exactly the kind of thing I fully expect Apple to protect me from. 
 Yes, AppStore Reviews…
Keeping track of installed applications on multiple computers is a hassle. 
 Homebrew had been great for installing command line tools and libraries on macOS. Using Chocolatey on my Windows machine inspired me to take things a step further and try the 'cask' subcommand for installing desktop Mac apps as well. 
 brew cask install firefox blender handbrake vlc 
 Works great. It's now…
Tiny Player for Mac version 1.2.12 is out now. This update brings the following improvements: 
 
 	 Press ⌘C to copy playlist (or selection) as text 
 	 Right click title/subtitle to copy info about current track 
 	 Organize menu items 
 

I started playing around with MagicaVoxel a while ago. I’m not going to use it for Devastro 2 but I can imagine some city simulation game using graphics made this way: tiny & cute with great lighting. It constrains things in a way I would be happy to work with. 
 

As part of my Blender practice session, I tried to re-create the icon of Sketch . 
 Here’s the original: 
 
 I found two different shapes that could match this image in an orthographic view. 
 One: 
 
 Two: 
 
 And a third shape with a flat top if we use a perspective camera and level it vertically with the mid section of the object: 
 
 To match the…
Some things to check before releasing a mobile application. Slightly iOS specific. 
 Startup 
 
 	 Start in different orientations 
 	 Start app with no internet connection 
 	 Delete all user data. Is the first start behaving correctly? 
 	 Install and use previous version of app. User data migrated correctly? 
 
 OS 
 
 	 Dark mode…
Tiny Loader version 1.2.3 is out now. Tiny Loader is the companion Mac app for Tiny Player . The app is now notarized with Apple. This makes it easier to launch the first time after downloading. 

Tiny Player for Mac version 1.2.11 is out now. This update brings the following improvements: 
 
 	 Notarized with Apple 
 	 Improved UI for empty playlist 
 

Number of commits is not a good metric for productivity, project health or anything else really. But let’s pretend! It may be OK as a simple activity indicator… 
 Here’s a Python script I made that graphs daily commit counts on a git repository by year. 
 Download the script here. Requires Python 3 and PIL/Pillow. 
 Usage: 
 pip3 install pillow
python3…
The latest annoying update from Dropbox made me look around for an alternative. 
 iCloud, Google Drive and OneDrive might seem like the obvious candidates but I’d rather avoid them. Why? They are too much like Dropbox. Sooner or later they are going to introduce a similarly annoying UI blunder, crippling limitation or an unfriendly plan. 
 So I decided to try Syncthing instead.…
I just got a notice from Apple that Superforce has been removed from the App Store. Oh no! 
 Luckily, it was not due to violation of any of the intricate compatibility or privacy rules… it just had not been updated for a while. Not fresh enough! 
 I’m going to prepare a new build, test it on as many recent devices as I can get my hands on and submit it for review. Superforce…
Tiny Player for Mac version 1.2.9 is out now. This update brings the following improvements: 
 
 	 Restart current track when double-clicked in playlist 
 	 Fix color scheme on older systems 
 	 Fix resize bug in compact mode 

Following the development of the Witness was fun. Jonathan Blow, a very talented game designer, took over 7 years to make it. When the game finally came out, I thought I had seen enough screenshots and read enough blog posts about the process that actually playing it wasn’t necessary. 
 
 But one day it went on sale on Steam and I decided to give it a try, just to see if it would run…
I do not need everything to sound great. I prefer hearing things the way they were recorded. Good or bad. That’s what studio monitors are for. 
 With that in mind, I started looking around for entry-level studio monitors to replace my old pair of Edirol MA-15Ds . I decided to get a pair of Adam Audio T7V speakers . It was obviously a big step up. 
 
 The speakers look very…