• Kyoto 🍁 5A29DCAB-F9A3-4597-9EA3-A3720EC5C4C2.jpg C31A9E80-1387-4D7B-BC41-22CDA699503A.jpg 26180019-EF07-44C1-BC1C-21A631D2A2C1.jpg


  • I missed this place. Tokyo. E45DEA7D-7690-4530-A739-9FCA9A5BE5BE.jpg 7380BA68-54CE-4A4D-8213-A9D8808A3D34.jpg B980D5E7-DE52-4E56-9C39-75D7D9D91BFE.jpg


  • Lisbon B164FD21-9F41-448D-AFA8-5B6278E6ADF0.jpg 7F136DF9-E10D-4654-8589-908E94C24CD9.jpg 9D54AFAD-DAEE-43DD-A2EE-A74D197233AA.jpg


  • Tate Modern - Olafur Eliasson: In Real Life BA25C59C-A949-4B6C-A981-72ABD8C410E5.jpg D8D53819-D7F9-4497-8932-634FFB7F183C.jpg


  • Grossglockner High Alpine Road 11BC8481-1DD3-420B-BBB8-B926B9FC1B01.jpg


  • I hope you are not tired of Japan pictures yet. We arrived in Osaka! A6E70F5D-2990-4F7B-B9F8-4623EC2A8ADA.jpg B865B725-ECCF-49A0-88E2-DF0E31C7D02B.jpg 74415D79-E75D-4804-8470-E54D9FA36890.jpg 7FD1158B-2675-4CBB-9072-45D4036F3CB2.jpg


  • Be aware, they will steal all your peanuts. In the first picture, the humans are behind the bars, not the monkeys. 🐒 BB9C6925-BAE0-42D8-9017-2F02060FDD9F.jpg 330347AE-8774-4A42-A558-691FD964E540.jpg


  • Be aware, they will steal all your cookies. CAD698DE-22C6-4862-A631-778B9E54D2AC.jpg A5A34F70-A808-48F7-9831-ABD3BECF3082.jpg


  • I love the houses here. B3BCA51F-9377-45F3-809B-83BDFDC5EA42.jpg F629350F-0168-4A4C-B99E-89E5FC683821.jpg


  • First full day in Kyoto! 21BA3678-35CA-4B74-B284-89ADF7B3D6CA.jpg 222F38A0-8865-430D-AB91-11958C78FC7D.jpg 3E7A69BD-933A-484F-B254-B9BEDFDC2496.jpg


  • Senso-ji Temple E04C6210-5357-40AA-80E4-16D16E59349F.jpg


  • Tokyo! 46836381-6718-4AAF-AAF3-BE8030FA5077.jpg


  • Icro 1.0

    Waiting for review

    I just submitted version 1.0 of my new App “ Icro” to App review. Icro is a 3rd party micro.blog client. It’s heavily inspired by popular Twitter clients like Tweetbot and Twitterrific. The first lines of code for this App were written over a year ago. At first I worked on it only a few days. After gaining interest in the whole micro.blog community again, I picked up the project again at the end of March this year.

    Minimal features

    The feature list for version 1.0 is pretty minimal. It has the functionality to post and reply plain text to micro.blog and self-hosted Wordpress sites. It gives the possibility to view the different available streams:

    • The timeline with posts and mentions from people you follow
    • Mentions
    • Your favorited posts
    • The micro.blog discover section
    • Conversations

    It also has native views for a list of people a user follows and users profile section. Icro caches the timeline to up to 400 posts and saves the reading position.

    I decided to cut the features to this bare minimum in order to ship as soon as possible. I was tired of having projects lying around in an “almost useable” state. The feature backlog for upcoming version is already packed!

    TestFlight

    This was the first time I used Apple TestFlight for a private App with a testing group > 5. The last time I shipped a 1.0 was in 2013, back then TestFlight was still an independent company waiting to be acquired by Apple. 😉 After 4 builds, 70 people tried out the beta. This was an incredibly valuable and rewarding experience. The first feedback blew me away and helped to fill the backlog for upcoming versions. But prioritising those feature requests is not easy. Everyone uses micro.blog slightly different and has different needs. I need to figure out what my vision for the App will be in the long run and then decide on what I should focus next. With this, I want to thank all the testers!

    Code

    All my own code in Icro is written in Swift 4.1. It follows an easy MVVM pattern without Rx. The binding between the viewModel and the view is done using simple blocks. This is the cloc output without dependencies:

          58 text files.
          57 unique files.                              
          14 files ignored.
    
    github.com/AlDanial/cloc v 1.74  T=0.35 s (124.8 files/s, 9169.4 lines/s)
    -------------------------------------------------------------------------------
    Language                     files          blank        comment           code
    -------------------------------------------------------------------------------
    Swift                           34            512            194           2264
    JSON                             9              0              0            260
    C/C++ Header                     1              0              3              0
    -------------------------------------------------------------------------------
    SUM:                            44            512            197           2524
    -------------------------------------------------------------------------------
    

    As mentioned earlier, I use many 3rd party dependencies in Icro. I work full-time as an iOS engineer, and there is only so much motivation and time left to rebuild components that other developers already built and open-sourced. Every single one of those dependencies would be easy to replace with either another 3rd party dependency, an official Apple API or implement myself. I already have plans to replace some dependencies with own solutions. For example, the “pod” I use to display full-screen images. If anyone is curios, this is the podfile:

    use_frameworks!
    
    target 'Icro' do
    	pod 'Kanna'
        pod 'SDWebImage/GIF'
        pod 'FontAwesome.swift'
        pod 'wpxmlrpc'
        pod 'SwiftMessages'
        pod 'Lightbox'
        pod 'DTCoreText'
        pod 'KeychainAccess'
        pod 'AcknowList'
    end
    
    

  • It’s 6:37am and I fixed two crashes and implemented double tapping on TabBarItems to scroll up. I want to submit the final 1.0 version on May 1st, one more week to go!


  • Thanks to Workflow.app, posting to my Jekyll site on my phone is easier than on the Mac. I’m now testing prose.io to post from the browser on my Mac.