{
    "version": "https:\/\/jsonfeed.org\/version\/1.1",
    "title": "Ilya Birman’s Blog: posts tagged release",
    "_rss_description": "Ilya Birman’s blog on design, cities, music, and life",
    "_rss_language": "en",
    "_itunes_email": "ilyabirman@ilyabirman.net",
    "_itunes_categories_xml": "<itunes:category text=\"Arts\"><itunes:category text=\"Design\" \/><\/itunes:category>\r\n<itunes:category text=\"Society &amp; Culture\"><itunes:category text=\"Personal Journals\" \/><\/itunes:category>\r\n<itunes:category text=\"Technology\" \/>\r\n",
    "_itunes_image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/userpic\/userpic-square@2x.jpg?1573933764",
    "_itunes_explicit": "no",
    "home_page_url": "https:\/\/ilyabirman.net\/meanwhile\/tags\/release\/",
    "feed_url": "https:\/\/ilyabirman.net\/meanwhile\/tags\/release\/json\/",
    "icon": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/userpic\/userpic@2x.jpg?1573933764",
    "authors": [
        {
            "name": "Ilya Birman",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/",
            "avatar": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/userpic\/userpic@2x.jpg?1573933764"
        }
    ],
    "items": [
        {
            "id": "379",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/superpedestrian\/",
            "title": "Superpedestrian fleet management interface",
            "content_html": "<p>Check out the Superpedestrian fleet management interface:<\/p>\n<div class=\"e2-text-picture\">\n<a href=\"https:\/\/ilyabirman.net\/superpedestrian\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/superpedestrian-cover.jpg\" width=\"920\" height=\"607\" alt=\"\" \/>\n<\/a><\/div>\n<p>I like designing interfaces of this kind where you need to figure out an obscure process.<\/p>\n",
            "summary": "Check out the Superpedestrian fleet management interface",
            "date_published": "2025-07-18T18:39:08+03:00",
            "date_modified": "2025-07-18T18:30:49+03:00",
            "tags": [
                "interface",
                "projects",
                "release"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/superpedestrian-cover.jpg",
            "_date_published_rfc2822": "Fri, 18 Jul 2025 18:39:08 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "379",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/superpedestrian-cover.jpg"
                ]
            }
        },
        {
            "id": "378",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/samara-metro-map\/",
            "title": "Samara metro map",
            "content_html": "<p>Check out the new <a href=\"https:\/\/ilyabirman.net\/samara\/\">Samara metro map<\/a>:<\/p>\n<div class=\"e2-text-picture\">\n<a href=\"https:\/\/ilyabirman.net\/samara\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/samara-metro.png\" width=\"2000\" height=\"870\" alt=\"\" \/>\n<\/a><\/div>\n<p>Designed  by Nikolay Romanov, directed by myself. Special thanks to Sergey Chikin and Leonid Motovskih.<\/p>\n",
            "summary": "Check out the new Samara metro map",
            "date_published": "2025-06-09T10:26:07+03:00",
            "date_modified": "2025-06-09T10:26:01+03:00",
            "tags": [
                "maps",
                "projects",
                "release",
                "Samara",
                "transit maps"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/samara-metro.png",
            "_date_published_rfc2822": "Mon, 09 Jun 2025 10:26:07 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "378",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/samara-metro.png"
                ]
            }
        },
        {
            "id": "375",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/parus-wayfinding\/",
            "title": "Wayfinding elements for “Parus” station",
            "content_html": "<p>Another project, <a href=\"https:\/\/ilyabirman.net\/parus\/\">wayfinding elements for “Parus” station<\/a>:<\/p>\n<div class=\"e2-text-picture\">\n<a href=\"https:\/\/ilyabirman.net\/parus\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/parus-map.jpg\" width=\"920\" height=\"651\" alt=\"\" \/>\n<\/a><\/div>\n",
            "summary": "Another project, wayfinding elements for “Parus” station",
            "date_published": "2024-11-11T09:40:08+03:00",
            "date_modified": "2024-11-11T09:39:54+03:00",
            "tags": [
                "maps",
                "projects",
                "release",
                "wayfinding"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/parus-map.jpg",
            "_date_published_rfc2822": "Mon, 11 Nov 2024 09:40:08 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "375",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/parus-map.jpg"
                ]
            }
        },
        {
            "id": "373",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/wb-suppliers-wayfinding\/",
            "title": "Wayfinding for Wildberries suppliers",
            "content_html": "<p>Check out <a href=\"https:\/\/ilyabirman.net\/wb\/suppliers\/\">a new large project<\/a>: wayfinding for suppliers of Wildberries, the largest Russian online retailer.<\/p>\n<div class=\"e2-text-picture\">\n<a href=\"https:\/\/ilyabirman.net\/wb\/suppliers\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/wb-wall-kl@fx.jpg\" width=\"1500\" height=\"1002\" alt=\"\" \/>\n<\/a><\/div>\n<p>Wayfinding is not about drawing signs, but about streamlining the whole scenario of how people find something, and even how they understand what they need to look for. The project included signage, maps, printed instructions, a mobile website, an LED board, and a banner. And that’s all systematized for multiple warehouses.<\/p>\n",
            "summary": "Check out a new large project: wayfinding for suppliers of Wildberries, the largest Russian online retailer",
            "date_published": "2024-10-31T12:09:13+03:00",
            "date_modified": "2024-10-31T12:08:32+03:00",
            "tags": [
                "projects",
                "release",
                "wayfinding"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/wb-wall-kl@fx.jpg",
            "_date_published_rfc2822": "Thu, 31 Oct 2024 12:09:13 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "373",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/wb-wall-kl@fx.jpg"
                ]
            }
        },
        {
            "id": "371",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/tashkent-metro-official-map\/",
            "title": "Official Tashkent metro map",
            "content_html": "<div class=\"e2-text-picture\">\n<a href=\"https:\/\/ilyabirman.net\/tashkent-metro\/map-2\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/tashkent-metro-girls.jpg\" width=\"1200\" height=\"800\" alt=\"\" \/>\n<\/a><\/div>\n<p>A new version of our Tashkent metro map <a href=\"https:\/\/ilyabirman.net\/tashkent-metro\/map-2\/\">is now an official map<\/a>.<\/p>\n",
            "summary": "A new version of our Tashkent metro map is now an official map...",
            "date_published": "2024-10-14T10:16:34+03:00",
            "date_modified": "2024-10-14T10:17:06+03:00",
            "tags": [
                "release",
                "Tashkent",
                "transit maps"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/tashkent-metro-girls.jpg",
            "_date_published_rfc2822": "Mon, 14 Oct 2024 10:16:34 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "371",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/tashkent-metro-girls.jpg"
                ]
            }
        },
        {
            "id": "360",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/chelyabinsk-transit-reform-communication\/",
            "title": "Chelyabinsk transit reform communication",
            "content_html": "<p>Check out the case about one of the stages in <a href=\"https:\/\/ilyabirman.net\/chelyabinsk\/reform\/\">Chelyabinsk transit reform communication<\/a> — route changes from January 1, 2022:<\/p>\n<div class=\"e2-text-picture\">\n<a href=\"https:\/\/ilyabirman.net\/chelyabinsk\/reform\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/chelyabinsk-transit-reform-communication.jpg\" width=\"1200\" height=\"600\" alt=\"\" \/>\n<\/a><\/div>\n",
            "summary": "Check out the case about one of the stages in Chelyabinsk transit reform communication — route changes from January 1, 2022...",
            "date_published": "2023-08-08T14:24:33+03:00",
            "date_modified": "2023-08-08T14:23:30+03:00",
            "tags": [
                "design",
                "projects",
                "release",
                "transportation",
                "wayfinding"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/chelyabinsk-transit-reform-communication.jpg",
            "_date_published_rfc2822": "Tue, 08 Aug 2023 14:24:33 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "360",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/chelyabinsk-transit-reform-communication.jpg"
                ]
            }
        },
        {
            "id": "342",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/derbent-bus-map\/",
            "title": "Derbent bus map",
            "content_html": "<p>Check out our new transit map. This time it’s <a href=\"https:\/\/ilyabirman.ru\/derbent\/\">Derbent<\/a>:<\/p>\n<div class=\"e2-text-picture\">\n<a href=\"https:\/\/ilyabirman.net\/derbent\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/derbent-bus-map-cover@2x.jpg\" width=\"1000\" height=\"500\" alt=\"\" \/>\n<\/a><\/div>\n<p>We made it with Nikita Dubrovin. The city is undergoing a public transport reform. The first bunch of bus routes have been simplified: 3, 4, 7, 10. The challenge was to lay out the old routes, which are still confusing. In several years, all routes will look reasonable.<\/p>\n",
            "summary": "Check out our new transit map. This time it’s Derbent",
            "date_published": "2022-10-25T16:11:36+03:00",
            "date_modified": "2022-10-25T16:13:22+03:00",
            "tags": [
                "projects",
                "release",
                "transit maps",
                "transportation",
                "wayfinding",
                "work"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/derbent-bus-map-cover@2x.jpg",
            "_date_published_rfc2822": "Tue, 25 Oct 2022 16:11:36 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "342",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/derbent-bus-map-cover@2x.jpg"
                ]
            }
        },
        {
            "id": "322",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/emcee-for-music\/",
            "title": "Emcee 2.2 for Music",
            "content_html": "<p>The new version of Emcee has been released with support for macOS Catalina’s new Music app. Other changes include better Dark Theme support and bug fixed. The app is now called Emcee for Music, but it still supports iTunes in earlier versions of macOS. Developed by Alexey Blinov, directed by myself.<\/p>\n<div class=\"e2-text-picture\"><p><a href=\"http:\/\/itunes.apple.com\/ru\/app\/id408774844\" class=\"button buy-button big-button\">Buy in the App Store<\/a><\/p>\n<\/div>",
            "summary": "The new version of Emcee has been released with support for macOS Catalina’s new Music app. Other changes include better Dark Theme support and bug fixed",
            "date_published": "2019-11-01T14:58:22+03:00",
            "date_modified": "2019-11-01T14:58:08+03:00",
            "tags": [
                "Emcee",
                "release"
            ],
            "_date_published_rfc2822": "Fri, 01 Nov 2019 14:58:22 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "322",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": []
            }
        },
        {
            "id": "307",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/jouele-pro\/",
            "title": "Jouele Pro",
            "content_html": "<div class=\"e2-text-picture\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/jouele-2015-logo@2x.png\" width=\"273\" height=\"64\" alt=\"Jouele Pro\" \/>\n<\/div>\n<p>Jouele is an amazing audio player for the web. It was built to look simple and beautiful, and to use a simple and beautiful declarative API. With Jouele, you write code like this:<\/p>\n<pre class=\"e2-text-code\"><code>&lt;a href=&quot;ilya-birman-use-me-mix.mp3&quot; class=&quot;jouele&quot;&gt;\n  Ilya Birman: Use Me (DJ Mix)\n&lt;\/a&gt;<\/code><\/pre><p>And you get a player like this:<\/p>\n<div class=\"e2-text-audio\">\n<div class=\"e2-jouele-wrapper\"><a class=\"jouele\" data-space-control=\"true\" href=\"http:\/\/promodj.com\/download\/6419453\/\">Ilya Birman: Use Me (DJ Mix)<\/a><\/div>\n<\/div>\n<p>Playlists, repeating and keyboard control were gradually added in the recent years. But we wanted Jouele to be even more advanced and versatile. And we didn’t want to sacrifice the declarative nature of Jouele’s APIs.<\/p>\n<p>So we came up with something great: <a href=\"https:\/\/ilyabirman.net\/projects\/jouele\/pro\/\">Jouele Pro<\/a> with custom controls. Let me tell you about it.<\/p>\n<h2>What you can do with Jouele Pro<\/h2>\n<p>I’ve recently started publishing <a href=\"https:\/\/ilyabirman.net\/mixes\/use-me\/\">interactive playlists<\/a> for my DJ mixes. You can click the cover art to start and pause playback. You can click a track’s name, and the mix will jump to that track. And the currently playing track gets automatically highlighted in the playlist when the playback reaches it.<\/p>\n<p><a href=\"https:\/\/ilyabirman.net\/mixes\/use-me\/\">Try it<\/a> before reading on.<\/p>\n<p>The magic is that neither the cover art, nor the playlist are a part of the Jouele user interface. The are just part of the page, layed out the way I want. But they gain their special abilities by using Jouele Pro’s declarative API.<\/p>\n<p>So I have a player inserted with the code above, by using the CSS class <tt>jouele<\/tt> on an HTML <tt>a<\/tt> element. And I want the cover image to initiate and pause playback.<\/p>\n<p>Here’s what I do:<\/p>\n<pre class=\"e2-text-code\"><code>&lt;img\n  src=&quot;cover.jpg&quot;\n  class=&quot;jouele-control&quot;\n  data-type=&quot;play-pause&quot;\n\/&gt;<\/code><\/pre><p>That’s it. Now, when you click this image, the mix starts to play.<\/p>\n<p>And to make the playlist items clickable, I do this:<\/p>\n<pre class=\"e2-text-code\"><code>&lt;tr class=&quot;jouele-control&quot;\n  data-type=&quot;seek&quot; data-to=&quot;0:45:38&quot;\n&gt;\n  &lt;td&gt;0:45:38&lt;\/td&gt;\n  &lt;td&gt;Tensal&lt;\/td&gt;\n  &lt;td&gt;Achievement 3&lt;\/td&gt;\n&lt;\/tr&gt;<\/code><\/pre><p>Now when you click on a track’s name, you go directly to it in the mix.<\/p>\n<p>I also want the cover art to look somehow “active” when the music is playing. Here’s what I do in CSS:<\/p>\n<pre class=\"e2-text-code\"><code>img.jouele-is-playing {\n  outline: rgba(255, 255, 255, .2) 10px solid;\n}<\/code><\/pre><p>That’s it. Jouele Pro dynamically sets the class <tt>jouele-is-playing<\/tt> on each of its controls during playback, so the cover art highlighting now works. No JavaScript needed.<\/p>\n<p>The same way the highlighting of the currently playing playlist item works. The actual HTML code for each playlist item is this:<\/p>\n<pre class=\"e2-text-code\"><code>&lt;tr class=&quot;jouele-control&quot;\n  data-type=&quot;seek&quot; data-range=&quot;0:45:38...0:48:55&quot;\n&gt;\n  &lt;td&gt;0:45:38&lt;\/td&gt;\n  &lt;td&gt;Tensal&lt;\/td&gt;\n  &lt;td&gt;Achievement 3&lt;\/td&gt;\n&lt;\/tr&gt;<\/code><\/pre><p>This line is not just to jump to a point in time, but it also corresponds to a time range. To dynamically highlight it, I use this CSS:<\/p>\n<pre class=\"e2-text-code\"><code>tr.jouele-is-within {\n  background: rgba(255, 255, 255, .2);\n  color: #fd0093;\n}<\/code><\/pre><p>That’s it. Jouele sets the class <tt>jouele-is-within<\/tt> to all its range controls when the playback is within this range.<\/p>\n<p>If there are several players on a page, the controls control the one that was playing previously, or the first one on the page, if nothing was playing before. You can link the controls to a particular player.<\/p>\n<p>Jouele Pro is $39 per domain name. The free Jouele is available as before.<\/p>\n<p>Links:<\/p>\n<ul>\n  <li><a href=\"https:\/\/ilyabirman.net\/projects\/jouele\/\">Jouele<\/a><\/li>\n  <li><a href=\"https:\/\/ilyabirman.net\/projects\/jouele\/pro\/\">Jouele Pro<\/a><\/li>\n  <li><a href=\"https:\/\/ilyabirman.net\/projects\/jouele\/documentation\/\">Documentation<\/a><br \/>\n  How to use the declarative API and the controls. There is also an example of a full custom player built with the controls<\/li>\n  <li><a href=\"http:\/\/eugene-lazarev.ru\/\">Evgeniy Lazarev<\/a>, the developer of Jouele and Jouele Pro<\/li>\n<\/ul>\n",
            "summary": "Jouele is an amazing audio player for the web. It was built to look simple and beautiful, and to use a simple and beautiful declarative API",
            "date_published": "2019-05-18T19:21:19+03:00",
            "date_modified": "2019-05-18T19:18:28+03:00",
            "tags": [
                "Jouele",
                "my products",
                "projects",
                "release"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/jouele-2015-logo@2x.png",
            "_date_published_rfc2822": "Sat, 18 May 2019 19:21:19 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "307",
            "_rss_enclosures": [
                {
                    "url": "http:\/\/promodj.com\/download\/6419453\/",
                    "type": null,
                    "length": ""
                }
            ],
            "_e2_data": {
                "is_favourite": true,
                "links_required": [
                    "highlight\/highlight.js",
                    "highlight\/highlight.css",
                    "jquery\/jquery.js",
                    "jouele\/jouele.css",
                    "jouele\/jouele.js"
                ],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/jouele-2015-logo@2x.png"
                ]
            }
        },
        {
            "id": "310",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/chelyabinsk-trams-diagram-2018\/",
            "title": "The new Chelyabinsk Trams diagram",
            "content_html": "<p>Over ten years ago I made <a href=\"https:\/\/ilyabirman.net\/projects\/chelyabinsk-trams\/2008\/\">the diagram of Chelyabinsk trams and trolleybuses<\/a>. That design turned out to be very successful: dozens of designers used it as a reference for building their own diagrams. It wouldn’t be as good if not for Artem Gorbunov’s generous help.<\/p>\n<p>Three years ago, together with Alexander Karavaev we <a href=\"https:\/\/ilyabirman.net\/projects\/chelyabinsk-trams\/2015\/\">made a new version of the diagram<\/a>. It had a lot of design inventions: the “pencil-drawn” layer for buses and trolleybuses, the “watercolour” rivers and lakes, 3D terminals, the new shape of the stops’ ticks. With that diagram, a logo for chelyabinsk trams was born: the city’s coat of arms decorated with a pantograph.<\/p>\n<p>Then Polina Lesnikova joined the team. She re-drew the map to account for the changes in routes. Together with Alexander, they changed a lot of details after testing the legibility of the previous version. Thus we arrived at <a href=\"https:\/\/ilyabirman.net\/projects\/chelyabinsk-trams\/2018\/\">the new diagram<\/a>:<\/p>\n<div class=\"e2-text-picture\">\n<a href=\"https:\/\/ilyabirman.net\/projects\/chelyabinsk-trams\/2018\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/chelyabinsk-trams-2018-full.jpg\" width=\"1280\" height=\"1102\" alt=\"\" \/>\n<\/a><\/div>\n<p>Some landmarks were added. The bus-and-trolleybuses layer gave the previous version some visual richness, and it was interesting to scrutinise. Unfortunately, it didn’t provide any notable utility, so we decided to remove it. This helped to simplify the geometry of lines and make the fonts bigger. The new diagram looks stronger.<\/p>\n<p>Designed by Polina Lesnikova and Alexander Karavaev, art-directed by myself.<\/p>\n",
            "summary": "Over ten years ago I made the diagram of Chelyabinsk trams and trolleybuses. That design turned out to be very successful",
            "date_published": "2018-02-18T15:49:19+03:00",
            "date_modified": "2018-02-18T15:54:41+03:00",
            "tags": [
                "projects",
                "release",
                "transportation"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/chelyabinsk-trams-2018-full.jpg",
            "_date_published_rfc2822": "Sun, 18 Feb 2018 15:49:19 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "310",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": true,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/chelyabinsk-trams-2018-full.jpg"
                ]
            }
        },
        {
            "id": "300",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/aegea-2-7\/",
            "title": "Aegea 2.7 released",
            "content_html": "<div class=\"e2-text-picture\">\n<a href=\"http:\/\/blogengine.me\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-og-image-en.jpg\" width=\"1200\" height=\"630\" alt=\"Aegea 2.7 Released\" \/>\n<\/a><\/div>\n<p><a href=\"http:\/\/blogengine.me\/\">Aegea 2.7<\/a> has been released. Aegea is a great blogging engine.<\/p>\n<h2>What’s new<\/h2>\n<p>There are several new design themes, which look like this:<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-2-7-matrix@2x.jpg\" width=\"1044\" height=\"724\" alt=\"\" \/>\n<\/div>\n<p>All new themes are based on the existing theme Plain, but redefine some CSS variables:<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-2-7-code@2x.jpg\" width=\"839\" height=\"566\" alt=\"\" \/>\n<\/div>\n<p>Above is the code of the theme “Douglas”, which looks like this:<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-2-7-douglas@2x.jpg\" width=\"1024\" height=\"704\" alt=\"\" \/>\n<\/div>\n<p>You can now easily preview the themes from Settings. There is a link that opens <a href=\"https:\/\/ilyabirman.net\/meanwhile\/settings\/theme-preview\/\">a special contrived page<\/a>, which includes all sorts of blog elements to test. This makes building themes much easier as you can preview your CSS in one place instead of wandering around the blog looking for elements to check.<\/p>\n<p>The editor now supports these Google Docs keyboard shortcuts, thanks to Igor Adamenko:<\/p>\n<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" class=\"e2-text-table\">\n  <tr>\n    <td style=\"text-align: left\">⌘B<\/td>\n    <td style=\"text-align: left\">bold<\/td>\n  <\/tr>\n  <tr>\n    <td style=\"text-align: left\">⌘I<\/td>\n    <td style=\"text-align: left\">italic<\/td>\n  <\/tr>\n  <tr>\n    <td style=\"text-align: left\">⌘K<\/td>\n    <td style=\"text-align: left\">hyperlink<\/td>\n  <\/tr>\n  <tr>\n    <td style=\"text-align: left\">⌘⌥1<\/td>\n    <td style=\"text-align: left\">heading<\/td>\n  <\/tr>\n  <tr>\n    <td style=\"text-align: left\">⌘⌥2<\/td>\n    <td style=\"text-align: left\">subheading<\/td>\n  <\/tr>\n  <tr>\n    <td style=\"text-align: left\">⌘⌥0<\/td>\n    <td style=\"text-align: left\">usual paragraph<\/td>\n  <\/tr>\n  <tr>\n    <td style=\"text-align: left\">⌘]<\/td>\n    <td style=\"text-align: left\">indent<\/td>\n  <\/tr>\n  <tr>\n    <td style=\"text-align: left\">⌘[<\/td>\n    <td style=\"text-align: left\">outdent<\/td>\n  <\/tr>\n<\/table>\n<p>There are also multiple improvements to the features related to social networking, comments, search, RSS and JSON feed, uploading of images and audio.<\/p>\n<h2>About Aegea<\/h2>\n<p>An engine is a program that runs on the blogger’s website. It provides the writing tools to the author, shows the posts to the readers and lets them write comments. Medium.com (or similar) is simpler, but they can shut down and take all your posts offline. With an engine, the blog runs on your own website and you have access to the files and the database (you don’t have to deal with the files or the database, but you own all the data).<\/p>\n<p>I want most people to have access to personal blogging in this way. That’s why it uses the most easily available platform: PHP with MySQL.<\/p>\n<p>Aegea powers this and many other blogs. Among my favourites:<\/p>\n<ul>\n  <li><a href=\"https:\/\/oleganza.com\/\">Oleg Andreev<\/a>, software designer and crypto-anarchy historian, on Bitcoin and related stuff<\/li>\n  <li><a href=\"http:\/\/daniellesden.com\/blog\/\">Daniel Lesden<\/a> on music production<\/li>\n  <li><a href=\"http:\/\/deathbypassivevoice.com\/\">Death by Passive Voice<\/a>, on writing, by Max Bears<\/li>\n<\/ul>\n<p>With Aegea, you can use one of the built-in themes or customise it however you like (this blog is an example). Be flexible with comments: allow and disallow them globally or per post. Refine posts using Drafts. Add images, videos, audio or code to illustrate your point. Organise your writing with tags.<\/p>\n<p>Designers, writers, musicians and software developers use Aegea to show their work, communicate and spread knowledge. They love it because it’s simple and fast yet does everything they need. Aegea is free for personal use and paid for business use.<\/p>\n<p>Learn more and get Aegea at <a href=\"http:\/\/blogengine.me\/\">blogengine.me<\/a>.<\/p>\n",
            "summary": "Aegea 2.7 has been released. Aegea is a great blogging engine",
            "date_published": "2017-12-08T17:53:00+03:00",
            "date_modified": "2017-12-08T17:52:50+03:00",
            "tags": [
                "Aegea",
                "my products",
                "projects",
                "release"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-og-image-en.jpg",
            "_date_published_rfc2822": "Fri, 08 Dec 2017 17:53:00 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "300",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": true,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-og-image-en.jpg",
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-2-7-matrix@2x.jpg",
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-2-7-code@2x.jpg",
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-2-7-douglas@2x.jpg"
                ]
            }
        },
        {
            "id": "289",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/likely-2-2-3\/",
            "title": "Likely 2.2.3",
            "content_html": "<p>Likely are great social sharing buttons.<\/p>\n<p>We’ve recently <a href=\"http:\/\/ilyabirman.net\/projects\/likely\/\">released version 2.2.3<\/a> which fixes the Google Plus counter.<\/p>\n<p>See also:<\/p>\n<ul>\n  <li><a href=\"https:\/\/github.com\/ilyabirman\/Likely\/releases\/\">Likely on GitHub<\/a><\/li>\n  <li><a href=\"http:\/\/iamakulov.com\">Ivan Akulov<\/a> (Likely maintainer).<\/li>\n<\/ul>\n",
            "summary": "Likely are great social sharing buttons",
            "date_published": "2017-07-25T01:51:44+03:00",
            "date_modified": "2017-07-25T01:51:41+03:00",
            "tags": [
                "Likely",
                "release"
            ],
            "_date_published_rfc2822": "Tue, 25 Jul 2017 01:51:44 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "289",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": []
            }
        },
        {
            "id": "281",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/emerge-1-3-1\/",
            "title": "Emerge 1.3.1",
            "content_html": "<p>I’ve updated <a href=\"http:\/\/ilyabirman.net\/projects\/emerge\/\">Emerge to version 1.3.1<\/a>, where I’ve fixed a couple of bugs. One is related to the display of the spinner. The other, to console errors when using CSS images. If you aren’t bothered but these, there’s no need to update.<\/p>\n<p>If you’ve bought Emerge, you get the updates for free. Just re-download using the same link you got when you bought the script. Or drop me a line if you have any questions.<\/p>\n",
            "summary": "I’ve updated Emerge to version 1.3.1, where I’ve fixed a couple of bugs. One is related to the display of the spinner",
            "date_published": "2017-05-27T21:15:45+03:00",
            "date_modified": "2017-05-27T21:16:06+03:00",
            "tags": [
                "Emerge",
                "release"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/emerge-logo.png",
            "_date_published_rfc2822": "Sat, 27 May 2017 21:15:45 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "281",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/emerge-logo.png"
                ]
            }
        },
        {
            "id": "274",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/aegea-2-6\/",
            "title": "Aegea 2.6 released",
            "content_html": "<div class=\"e2-text-picture\">\n<a href=\"http:\/\/blogengine.me\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-og-image-en.jpg\" width=\"1200\" height=\"630\" alt=\"Aegea 2.6 Released\" \/>\n<\/a><\/div>\n<p><a href=\"http:\/\/blogengine.me\/\">Aegea 2.6<\/a> has been released. Aegea is a great blogging engine.<\/p>\n<p>What’s new:<\/p>\n<ul>\n  <li>Continuous autosaving of form data in post editors. Data is being saved locally in the browser. If the browser or the OS crashes, when you open the editor again, your latest changes will be there. If you edit the post from another device and save the changes to server, the most recent server version will open.<\/li>\n  <li>The new search finds more relevant posts, works faster and formats the results in a better way. It will not show the full posts, but just the fragments with the search query. If the found post contains images, it will show their thumbnails for quicker identification. For example, try searching <a href=\"http:\/\/ilyabirman.net\/meanwhile\/found\/street\/\" class=\"nu\">“<u>street<\/u>”<\/a> in this blog.<\/li>\n  <li>It’s now easier to set a post’s cover image for social networks. Just drag an image into the editor’s page. If you drop in onto the Text field, if will be inserted in text, but if you drop it outside the Text field, it will just get added to the post. Social networks will see it as part of the post, but it will not get displayed in its text.<\/li>\n  <li>Improved database migration from older versions.<\/li>\n  <li>Multiple other small improvements.<\/li>\n<\/ul>\n<p>An engine is a program that runs on the blogger’s website. It provides the writing tools to the author, shows the posts to the readers and lets them write comments. Medium.com (or similar) is simpler, but they can shut down and take all your posts offline. With an engine, the blog runs on your own website and you have access to the files and the database (you don’t have to deal with the files or the database, but you own all the data).<\/p>\n<p>I want most people to have access to personal blogging in this way. That’s why it uses the most easily available platform: PHP with MySQL.<\/p>\n<p>Aegea powers this and many other blogs. Among my favourites:<\/p>\n<ul>\n  <li><a href=\"http:\/\/deathbypassivevoice.com\/\">Death by Passive Voice<\/a>, on writing, by Max Bears<\/li>\n  <li><a href=\"http:\/\/daniellesden.com\/blog\/\">Daniel Lesden blog<\/a>, on music production, by Daniel Lesden.<\/li>\n<\/ul>\n<p>With Aegea, you can use the built-in neutral theme or customise it however you like (this blog is an example). Be flexible with comments: allow and disallow them globally or per post. Refine posts using Drafts. Add images, videos, audio or code to illustrate your point. Organise your writing with tags.<\/p>\n<p>Designers, writers, musicians and software developers use Aegea to show their work, communicate and spread knowledge. They love it because it’s simple and fast yet does everything they need. Aegea is free for personal use and paid for business use.<\/p>\n<p>Learn more and get Aegea at <a href=\"http:\/\/blogengine.me\/\">blogengine.me<\/a>.<\/p>\n",
            "summary": "Aegea 2.6 has been released. Aegea is a great blogging engine",
            "date_published": "2017-05-05T10:59:53+03:00",
            "date_modified": "2017-05-05T10:59:50+03:00",
            "tags": [
                "Aegea",
                "my products",
                "projects",
                "release"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-og-image-en.jpg",
            "_date_published_rfc2822": "Fri, 05 May 2017 10:59:53 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "274",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": true,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-og-image-en.jpg"
                ]
            }
        },
        {
            "id": "244",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/introducing-aegea\/",
            "title": "Introducing Aegea",
            "content_html": "<div class=\"e2-text-picture\">\n<a href=\"http:\/\/blogengine.me\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-og-image-en.jpg\" width=\"1200\" height=\"630\" alt=\"Introducing Aegea\" \/>\n<\/a><\/div>\n<p>Introducing <a href=\"http:\/\/blogengine.me\/\">Aegea<\/a>, a great blogging engine.<\/p>\n<p>An engine is a program that runs on the blogger’s website. It provides the writing tools to the author, shows the posts to the readers and lets them write comments. Medium.com (or similar) is simpler, but they can shut down and take all your posts offline. With an engine, the blog runs on your own website and you have access to the files and the database (you don’t have to deal with the files or the database, but you own all the data).<\/p>\n<p>I want most people to have access to personal blogging in this way. That’s why it uses the most easily available platform: PHP with MySQL.<\/p>\n<p>Aegea powers this and many other blogs. Among my favourites:<\/p>\n<ul>\n  <li><a href=\"http:\/\/deathbypassivevoice.com\/\">Death by Passive Voice<\/a>, on writing, by Max Bears<\/li>\n  <li><a href=\"http:\/\/daniellesden.com\/blog\/\">Daniel Lesden blog<\/a>, on music production, by Daniel Lesden.<\/li>\n<\/ul>\n<p>With Aegea, you can use the built-in neutral theme or customise it however you like (this blog is an example). Be flexible with comments: allow and disallow them globally or per post. Refine posts using Drafts. Add images, videos, audio or code to illustrate your point. Organise your writing with tags.<\/p>\n<p>Designers, writers, musicians and software developers use Aegea to show their work, communicate and spread knowledge. They love it because it’s simple and fast yet does everything they need. Aegea is free for personal use and paid for business use.<\/p>\n<p>Learn more and get Aegea at <a href=\"http:\/\/blogengine.me\/\">blogengine.me<\/a>.<\/p>\n",
            "summary": "Introducing Aegea, a great blogging engine",
            "date_published": "2016-12-29T14:09:53+03:00",
            "date_modified": "2016-12-29T14:38:42+03:00",
            "tags": [
                "Aegea",
                "my products",
                "projects",
                "release"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-og-image-en.jpg",
            "_date_published_rfc2822": "Thu, 29 Dec 2016 14:09:53 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "244",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": true,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/aegea-og-image-en.jpg"
                ]
            }
        },
        {
            "id": "242",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/emerge-1-3\/",
            "title": "Emerge 1.3 with video support and replay control",
            "content_html": "<div class=\"e2-text-picture\">\n<a href=\"http:\/\/ilyabirman.net\/projects\/emerge\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/emerge-logo.png\" width=\"252\" height=\"252\" alt=\"Emerge.js, a page load coordinator\" \/>\n<\/a><\/div>\n<p>In 2013, I released <a href=\"http:\/\/ilyabirman.net\/projects\/emerge\/\">Emerge<\/a>, a page load coordinator:<\/p>\n<blockquote>\n<p>Normally, when a complex web page is loading, elements appear in random order, causing unpleasant flashing. To replace it with nice and coordinated animations, programming is required. Emerge.js simplifies the task by removing the need to write any JavaScript code. The framework uses a declarative approach, where you specify the desired behaviour for each element and do not think about the implementation.<\/p>\n<\/blockquote>\n<p>See also <a href=\"http:\/\/ilyabirman.net\/meanwhile\/all\/emerge\/\">the introductory blog post<\/a>.<\/p>\n<p>Version 1.3 adds support for video tags and an easy-to-use replay control useful for debugging.<\/p>\n<h2>Update for free<\/h2>\n<p>If you’ve bought Emerge, you get the updates for free. Just re-download using the same link you got when you bought the script. Or drop me a line if you have any questions.<\/p>\n",
            "summary": "In 2013, I released Emerge, a page load coordinator",
            "date_published": "2016-12-24T14:53:07+03:00",
            "date_modified": "2016-12-25T22:27:14+03:00",
            "tags": [
                "Emerge",
                "release"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/emerge-logo.png",
            "_date_published_rfc2822": "Sat, 24 Dec 2016 14:53:07 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "242",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": true,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/emerge-logo.png"
                ]
            }
        },
        {
            "id": "240",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/likely-2-2\/",
            "title": "Likely 2.2 for single-page applications and more",
            "content_html": "<p>We’ve just released <a href=\"http:\/\/ilyabirman.net\/projects\/likely\/\">Likely 2.2<\/a> which adds support for single-page applications and includes many more improvements.<\/p>\n<p><a href=\"https:\/\/twitter.com\/iamakulov\">Ivan Akulov<\/a>, the project’s maintainer, writes:<\/p>\n<blockquote>\n<p>Most modern single-page apps use History API which allows developers navigate between pages without refreshing them. Since 2.2, Likely supports this API out of the box! If you place the buttons on a page and then do <tt>history.pushState ()<\/tt> or <tt>history.replaceState ()<\/tt>, Likely will automatically catch these changes and update itself. (Navigating backwards and forwards is also supported, of course.)<\/p>\n<\/blockquote>\n<p>If you don’t use History API, call <tt>likely.initiate ()<\/tt> when you need the buttons to update.<\/p>\n<p>Since 2.1 we have a Telegram button, and now we add LinkedIn:<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"https:\/\/ilyabirman.net\/meanwhile\/pictures\/likely-linkedin@2x.png\" width=\"130\" height=\"33\" alt=\"Likely LinkedIn button\" \/>\n<\/div>\n<p>There are also great improvements under the hood. As the result, the file size has been cut in half. And the code is now covered with automated tests.<\/p>\n<p>See the <a href=\"https:\/\/github.com\/ilyabirman\/Likely\/releases\/tag\/v2.2.0\">GitHub release page<\/a> for a more detailed description.<\/p>\n",
            "summary": "We’ve just released Likely 2.2 which adds support for single-page applications and includes many more improvements",
            "date_published": "2016-12-17T15:03:34+03:00",
            "date_modified": "2016-12-17T15:13:28+03:00",
            "tags": [
                "Likely",
                "release"
            ],
            "image": "https:\/\/ilyabirman.net\/meanwhile\/pictures\/likely-linkedin@2x.png",
            "_date_published_rfc2822": "Sat, 17 Dec 2016 15:03:34 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "240",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/ilyabirman.net\/meanwhile\/pictures\/likely-linkedin@2x.png"
                ]
            }
        },
        {
            "id": "217",
            "url": "https:\/\/ilyabirman.net\/meanwhile\/all\/likely-2\/",
            "title": "Likely 2.0 does not require jQuery",
            "content_html": "<p>The new version of <a href=\"http:\/\/ilyabirman.net\/projects\/likely\/\">Likely<\/a> social sharing buttons does not require jQuery (Thanks to Evgeny Steblinsky) and includes a new icon for Google Plus.<\/p>\n",
            "summary": "The new version of Likely social sharing buttons does not require jQuery (Thanks to Evgeny Steblinsky",
            "date_published": "2015-09-21T12:29:34+03:00",
            "date_modified": "2016-12-17T15:32:09+03:00",
            "tags": [
                "Likely",
                "release"
            ],
            "_date_published_rfc2822": "Mon, 21 Sep 2015 12:29:34 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "217",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": []
            }
        }
    ],
    "_e2_version": 4259,
    "_e2_ua_string": "Aegea 12.0a (v4259e)"
}