In Xcode 16, Apple quietly introduced the ability to format your Swift files using Swift Format. I’m a long-time user of SwiftLint, but having such a tool built into Xcode would be a great convenience, so I decided to give it a try. Here is my description of why I use such a tool, how well it works compared to the alternatives, and how I...
In 2012, with OS X Mountain Lion, Apple added a feature called Gatekeeper . It had been available earlier as a command line utility, but this was the first time they made it accessible through System Preferences. Gatekeeper allowed users to control which apps could be installed on their Macs by offering three options: allow apps from App Store,...
In Xcode 16, project files and folders are arranged differently in the Project navigator. What used to be a group is now a folder, and this simple change has some interesting effects. At first, I was against the new scheme - in fact in my SwiftUI for Mac 2024 article, I specifically recommended reverting back to the old group method. But after...
A couple of months ago, I got a message from App Store Connect pointing out that one of my iPhone apps - Berio’s Sequenza VII - had not been updated in 3 years and so would be removed from the App Store unless I updated it within 90 days. I disagree with this policy, but small developers like me can’t fight Apple. Since I want the app to remain...
Over the years, I have written articles and sample apps to demonstrate the new features of each year’s SwiftUI updates with particular emphasis on macOS app development. Last year, the major update to SwiftUI was the new data flow system using the Observation framework. I covered that in my article SwiftUI Data Flow 2023 but I didn’t feel there...
I started writing books for Kodeco when I was asked to contribute some Mac content to SwiftUI by Tutorials. I quickly learned that I really enjoyed long form technical writing but I wanted to create more Mac-specific content. After some negotiations, Kodeco agreed to my plan to write macOS by Tutorials and the first edition was published in April...
In April 2022, Kodeco published the first edition of macOS by Tutorials. Nothing stays the same in the world of Apple development, so I started to plan an update after WWDC 2023. At around that time, Kodceo was going through a transformation from being like a library to being more of an educational institution. Their focus is now on multi-modal...
If you’re an iOS developer who wants to branch out into creating native macOS apps, this is the book for you! The book is available for sale through Gumroad at macOS by Tutorials. If you’d like to check out the start of the book including the table of contents and the first chapter, you can read it online at macOS by Tutorials Sample. Version...
macOS by Tutorials If you're an iOS developer who wants to branch out into creating native macOS apps, this is the book for you! Written by Sarah Reichelt. Available from Gumroad. Edition 2.0.1 published on...
Several years after I started planning it, Man Reader version 2 is now available. This is a major update with a completely new, modern, user interface and it’s available from the Mac App Store. Man Reader is a utility app for reading macOS’s man pages. Man Reader allows quick, convenient and easy access to the man pages on your system, useful for...
Several years after I started planning it, Man Reader version 2 is now available. This is a major update with a completely new, modern, user interface and it’s available from the Mac App Store. Man Reader is a utility app for reading macOS’s man pages. Man Reader allows quick, convenient and easy access to the man pages on your system, useful for...
SwiftUI is a reactive framework where the data drives the UI. In 2019, I wrote a post detailing how I manage the various forms of data flow through a SwiftUI app, and with the help of others in the community, I iterated over this until I had a good understanding of the concepts and which methods you should use when. In 2021, I updated the post to...
I’ve written another book! This one is for people who want to get started in macOS development and here it is: macOS Apprentice, published by kodeco.com (formerly raywenderlich.com). If you’re a beginner or near-beginner who wants to start learning Swift, SwiftUI and AppKit for building Mac apps, then this is the book for you. img { margin:...
Last month, I posted about writing my new todo app called To-Day: why I wrote it and how I wrote it. At the time, I mentioned that I had set it up to install updates using Sparkle but there was too much detail to include in the initial post. So here, as promised, is the article about implementing Sparkle. One of the great conveniences of App...
When I sit down at my computer at the start of a work day, I typically like to plan out the broad outline of my work. This is the three or four major tasks for my day. I don’t want a minute-by-minute plan, just a list of the major items, so that I can check them off as I work, and get to the end of the day without feeling like I’ve forgotten...
As we round out the year, there are several new addresses I’d like people to use to contact me or get my book. First, raywenderlich.com has re-branded to Kodeco. Still the same great content created by terrific people, but with a fresh new design that makes it easier to follow the learning path that you prefer. If you want to read my macOS by...
In December 2019, I wrote a series of articles about using SwiftUI to build a Mac app. And in July 2020, I re-visited the sample app to apply the new SwiftUI features made available in macOS BigSur. Now that macOS Ventura and Xcode 14 are in beta, it’s time to build the app again while learning how to incorporate the new APIs. Right now, it’s...
If you read my blog or tweets, you will have detected that I recently wrote a book called macOS by Tutorials, published by raywenderlich.com. in this post, I’m going to show you what hardware and software I used to write it. Hardware # I use an 24 inch M1 iMac - yellow. I’ve always loved the form factor of the iMacs. They offer a superb...
Apple has announced that their 2022 World Wide Developers Conference will again be an online event from June 7 to 11. The poster shows a very dark Swift logo in a coloured circle. While I have long since given up trying the read the tea leaves of Apple’s graphics to work out what they will announce, I always enjoy speculating. But this year, I...
I can finally reveal the reason I have not been blogging. I have been busy writing a book. It’s finally out, so here it is: macOS by Tutorials, published by kodeco.com (formerly raywenderlich.com). img { margin: 10px auto; border: 0.5rem #dfe7f0 solid; border-radius: 0.5rem; } .dark-theme img { margin: 10px auto; ...
Not much action on the site lately as I work on other projects. But I have finally got around to adding a search option to the site. I use Hugo as a static site generator, which is great but Hugo doesn’t come with any search facility. Today, I read an article by Jesse Squires on Replacing Google Search with DuckDuckGo and while I had already...
So I gambled… I hoped Apple would do the right thing by developers who paid for access to the Developer Transition Kit (DTK) to get the first Apple Silicon Macs, but I was wrong and I lost. UPDATE - 6 Feb 2020: Apple has responded to feedback from me and other disgruntled developers and so I didn’t lose as much as I thought. Apple is now giving...
With the option to create apps using the SwiftUI App life cycle, we get a new way to set up menus in Mac apps. This post will explore some of the ways to do this as well as look at the default menu groups that Apple gives us. When you create a new Mac app, the standard menu items are included for you. Using the commands modifier on the...
SwiftUI gives us a completely new way to lay out out user interfaces, in a declarative and responsive way. Your data dictates what is displayed. But this leads to a new problem - how should the data models be constructed and how can they be passed around between the various views that make up your app? In this post, I intend to discuss the...
I have just released Crossfix and Crossfix Lite for iPhone. They are both the same anagram assistant solver for crosswords, particularly cryptic crosswords. The Lite version is free but limits you to three solves per day. The full version is unlimited with no ads, no recurring subscriptions and works with family sharing. img { margin: 10px...
Now available on the App Store for iPhones. Also works on Apple Silicon Macs. # Crossfix # Crossfix Lite # Programmers are basically puzzlers, and programming is the world’s best type of puzzle, but I like to start my day with a cryptic crossword. Like programming, cryptic crossword clues have their own syntax and what seems like...
Do you play World of Warcraft? # Have you ever agonised over a new piece of gear - are those stats better or worse for my class and specialization? Is your computer festooned with sticky notes reminding you that your prot pally needs haste over mastery but the enhancement shaman needs agility? Get rid of the notes and use the Stats for WoW app...
In December 2019, I wrote a series of articles about using SwiftUI to build a Mac app. At WWDC 2020, Apple announced macOS 11 Big Sur along with Xcode 12 and a heap of new features for SwiftUI, so I decided to try creating my test app again and seeing how much had changed. You can read the earlier articles and if you are interested, download the...
Snapshot testing is a technique that has been very popular in the web development world and it seems like a great way to test SwiftUI user interfaces. I read about snapshot tests in a recent blog post and was intrigued, but I had some difficulty getting it to work, so when I finally succeeded, I decided to share my experiences in the hope that...
My current work in progress is an iPhone app designed to make it easier to solve crossword anagrams by emulating and improving upon an ability that was there when we used to do crosswords on paper, but is missing for digital crosswords. But I cannot think of a clever name for the app, so please read the story and contact me with your name...
As developers, we are used to thinking of color as a numeric way to specify a particular tint. But in SwiftUI, Color - like almost everything else - is actually a View in its own right. This leads us to two very interesting questions: how do we use a view to specify a color and how can we use the fact that Color is View? Specifying a Color #...
As a rule, I prefer to use fonts that come pre-installed with the system. That means that your interface is already familiar to users, you get dynamic font sizing and if Apple updates the fonts, you get the updates without doing anything. But sometimes, you really need to use a different font in your apps, and as the process of getting a custom...
Last year, I wrote a 3 part series of articles on using SwiftUI to build a Mac app. I would like to thank everyone who contacted me about this series. It was received very well and revealed that there is still a large amount of interest in programming for the Mac. Some of the responses I got were pointing out different or better ways to do...
In part 1 of this series, I created a Mac app using SwiftUI. The app uses a Master-Detail design to list entries in an outline on the left and show details about the selected entry in the detail view on the right. In part 2 I explored using menus, adding all the expected user interface elements and opening secondary windows. In this third and...
In part 1 of this series, I created a Mac app using SwiftUI. The app uses a Master-Detail design to list entries in an outline on the left and show details about the selected entry in the detail view on the right. Now it is time to explore some more of the features of a Mac app with SwiftUI. Menus # I had already discovered that the menu bar...
So far, nearly all the articles I have seen about SwiftUI show it being used for iOS, more particularly for iPhone. But SwiftUI works on all Apple’s platforms, and as I am primarily a Mac developer, I decided to try out a Mac app and see what happened. img { margin: 10px auto; } Setup # I opened up Xcode and created a new project...
img { margin: 10px auto; } At WWDC 2019, Apple surprised us all by announcing a completely new declarative UI framework called SwiftUI. Quoting snippets from the Apple announcements, “SwiftUI is an innovative, exceptionally simple way to build user interfaces across all Apple platforms with the power of Swift” and “SwiftUI uses a...
Mark Time is now available now from the iTunes App Store for iPhone and iPad as an assistant for celestial navigators. Mark Time is an application for Celestial Navigation that solves the problem of how to take an accurate time reading to go with each sextant sighting. By simply tapping the screen you can record the exact time UTC as you take...
img { margin: 10px auto; border: 0.5rem #dfe7f0 solid; border-radius: 0.5rem; } .dark-theme img { margin: 10px auto; border: 0.5rem #4a4d50 solid; border-radius: 0.5rem; } .social_footer img { border: none; box-shadow: none; } I sometimes like to focus on aspects of the Swift language that get...
I think I wrote the first version of Pic-a-POD in 2003 and have been updating and maintaining it ever since, but the time has come to shut it down. I haven’t been able to find a picture of the original version, but here is one from 2005: And here it is today: It was written originally as a convenient way to download the daily picture-of-the-day...
img { margin: 10px auto; border: 0.5rem #dfe7f0 solid; border-radius: 0.5rem; } .dark-theme img { margin: 10px auto; border: 0.5rem #4a4d50 solid; border-radius: 0.5rem; } .social_footer img { border: none; box-shadow: none; } Now that most of my Mac apps have been updated to support macOS...
img { margin: 10px auto; border: 0.5rem #dfe7f0 solid; border-radius: 0.5rem; } .dark-theme img { margin: 10px auto; border: 0.5rem #4a4d50 solid; border-radius: 0.5rem; } .social_footer img { border: none; box-shadow: none; } With the release of macOS Mojave on 24th September 2018, I have...
Hands up everyone who can remember how to work with Swift strings, especially when it comes to substrings and ranges? …. Nobody? Me neither. So I decided that I would work it out once and create myself a library to make it easy for myself in the future. And then I thought that other people might like it too. So I have created my first open...
What is Functional Programming and how can we use it in Swift? Search online for any definition of functional programming and you will find many different definitions, few of which are practically helpful. I have no claim to be an expert, but as a Swift enthusiast, this is what I have distilled out of the morass. What is Functional...
Its been a long time since the last update to Time In Words for iOS but after prompting by Apple (update or we will remove it from the App Store), I finally did it. I was never really happy with the last design of Time in Words for iOS, particularly for the iPad, so this was a good opportunity to do a complete re-design, bringing the app more...
TL;DR: I don’t track you either on my web site or through my apps. If you want to contact me, please do so but I will not initiate any contacts. As anyone who gets email would realise by now, the EU has introduced a General Data Protection Regulation designed to enhance online privacy. You will have been getting lots of emails announcing new...
Just a quick post to let you know about some recent app updates… Man Reader # Man Reader v 1.10 was released on 11 May 2018. I had to update Man Reader in November 2017 because of a really strange “feature” that arrived with macOS High Sierra. Man Reader displays the man pages as HTML which allows the tabs and internal links to work using...
Man Reader is a utility app for reading macOS’s man pages. Man Reader allows quick, convenient and easy access to the man pages on your system, useful for programmers, system administrators and tweakers. Buy Man Reader from the Mac App Store Man pages are available for the Unix commands used mostly in Terminal or when shell scripting. These man...
Luciano Berio wrote a series of Sequenzas for various instruments with Sequenza VII being the one for oboe. Preparing this work creates some unique problems for the oboist as Berio did not adhere to any time signature that could be indicated by a metronome. Instead, each line consists of 13 bars (measures) with each bar’s length specified in...
Why is important to style your code? How do you decide on a style? Is there a way to enforce this style automatically? What is style in Swift? # Style applies to writing in any programming language and refers to the way you structure your code. For example, how to you arrange braces? if theValue 10 { // do one thing } else { // do...
Icon Builder 5.0 is now available from the Mac App Store. This is a complete re-write for better compatibility with Apple’s latest icon requirements. Read on to see what I have fixed and how… Problems # When I came to create a new iOS app recently, I found out that Icon Builder had fallen behind Apple’s requirements in three ways: The 1024 x...
I gave a Masterclass on Swift at the NCSS Summer School 2018 in the University of Sydney on 9th January 2018. This post contains useful links for use in relation to the material covered during my class. Online Sandboxes # We ❤️ Swift Sandbox IBM Swift Sandbox Resources # Gist of Code Samples Slides from Presentation Contact Details #...
Man ReaderVersion 2.0, Updated: 13 Oct 2023 To-DayVersion 1.9.4, Updated: 22 Jan 2024
Mark Time is an application for Celestial Navigation that solves the problem of how to take an accurate time reading to go with each sextant sighting. Here is how it was developed… A day in the life of a software developer - “it would be great if there was an app that did…” One of the family is learning celestial navigation and was struggling...
Yesterday, I came to update my blog: I had a new post in draft form and I wanted to update the Swift code to version 4. However installing High Sierra had removed Jekyll which is the site generator that I had been using. I re-installed Jekyll but found that it had been updated from version 2 to version 3. Jekyll Problems # Then my problems...
Updated: 3rd September 2017. Checked syntax using Xcode 9.0 beta 6. Added section on allowing for nulls. Since JSON has become the de facto standard for data transfers around the internet, there has always been a lot of interest in Swift libraries to parse JSON into Swift classes or structs. Searching for “swift json library” on GitHub discovers...
Last week I got a 10.5” iPad Pro. I have had an iPad ever since the original release, but I have to confess to mainly using it for content consumption rather than creation. Since I am usually close to a Mac anyway, there didn’t seem a lot of point. But now that iOS 11 is really addressing the issue of making the iPad a “pro” device, I decided to...
jsonfeed.org has announced a new format for web site feeds, designed as an alternative to RSS. TrozWare has had an XML RSS feed for years, but I don’t think anyone ever uses it (I certainly don’t), so today I have replaced it with a JSON feed, which you can access through the button at the top of every page. I am sure many JSON Feed viewers will...
I use my iPad to play games as a form of relaxation. Nearly all the games I play are puzzle apps with levels that can be played in a few minutes. Nearly all of them are free to install. So how do they make money? Now I would be the last person you should consult about marketing but it has always seemed to me that the best way to market your...
I gave a Masterclass on Swift at the NCSS Summer School 2017 in Sydney on 8th January 2017. This post contains useful links for use during and after my class. IBM Swift Sandbox Sandbox Code Samples # Strings Optionals Functions Closures Objects Protocols Generics Contact Details: # Email: sarah@troz.net Twitter: @trozware Slides: NCSS...
I am looking for beta testers for my latest Mac app: Work. Work is a project organizer app for developers, designers, students or any professional who works with multiple projects involving files & folders, web pages, email addresses and lists of tasks. Click the link above for more information and help for getting started. Work requires macOS...
A quick update to Man Reader to version 1.8 is now available through the Mac App Store. The main reason for this version was that Man Reader was not previously detecting man pages installed by third-party IDEs in the Applications folder. There was also an issue with Man Reader failing to display the text of the previously selected man page on app...
Man Reader has just been updated to version 1.7 and is available through the Mac App Store. The main reason for this update was to make the app work well with macOS Sierra, as I found that version 1.6 was sometimes crashing on launch. While doing this, the update was rejected by the App Store reviewers because it crashed on OS X 10.10. Since I no...
I have recently started what I hope will be a weekly podcast with my friend and colleague, Jerry Daniels. Each podcast will be about 30 minutes in length. We will discuss Macs, iPhones, iPads, macOS, iOS, programming and anything tech-related that we find interesting. I hope you will find it entertaining and informative, so please join us. We are...
Icon Builder is a Mac app that takes a single image file and creates all the different image sizes that you need to make a set of icons for your app: Mac, iPhone, iPad, iOS Universal or Apple Watch. Version 4, released 16 September 2016 is available through the Mac App Store. What’s New in Version 4: # Added support for iMessage apps and...
Dice Pass 1.1 is now available from the Mac App Store. What does Dice Pass do? # Dice Pass is a utility to app to generate random passphrases based on the Diceware system. Diceware uses a table of pre-defined words, each assigned a 5 digit code number containing the digits 1 to 6. The official way to generate a phrase is to roll 5 dice for...
With the release of iOS 10 and the need to update iOS apps to suit, I have decided it is time to retire some of my lesser-performing apps as it is not worth the effort required to maintain them. At the moment, the following iOS apps are no longer available: A Knight’s Move Dice Pass Pic-a-POD Quick Score - Tennis For the first three listed there,...
Man Reader has been updated to version 1.6 with the permissions needed for finding all available man pages and a fix for search terms being over-written after a background update. Man Reader 1.6 is now available through the Mac App Store. Change Log: # Permissions fix when searching for available man pages. Fixed error with new search term...
I recently got an email from someone who had purchased Dice Pass for Mac from the Mac App Store but had been unable to get it to run. This person was using OS X 10.9.3. I checked the App Store specifications and it showed that 10.9 was the minimum system requirement, so it should have worked. But going back to my Xcode project, I found that it...
Sets are the forgotten collection type in many languages, including Swift. I think most developers use Arrays without really considering the advantages of using a Set but they have some amazingly useful features that should make them a part of any progammer’s toolkit. If you want to follow along with a playground, you can download it here. What...
One of the problems with using 19th Hole on the Apple Watch is making the app show every time you raise your wrist. My solution to this was to go into Settings (either on my iPhone through the Watch app, or directly on the watch) and change it to “Resume Last Activity” on wrist raise. This worked fine but as I usually prefer the watch face to...
As the Apple Watch hits its first birthday, there seems to be in increasing number of bloggers complaining about it. One (which I refuse to link to) titled “My Year of Hell With the Apple Watch”. I think the article has since been re-published with a slightly less inflammatory title, but really! Did somebody rivet the watch to his wrist? If it...
I ran into an unusual problem when testing my latest app: “What Is My Speed?”. It is now available from the iTunes App Store, but getting there was a struggle. TL;DR Xcode is terrible at renaming projects, so it is a really good idea to have worked out your app’s name before starting. I would even recommend creating an app ID in your Apple...
“What Is My Speed?” is available now from the iTunes App Store for iPhone and Apple Watch. If you read my recent blog post on Road Trip Apps you will have realised that I was working on an app to fill a gap that I discovered in our road trip app arsenal. So here it is: “What Is My Speed?” for iPhone. Track your speed on your iPhone while driving,...
Over the past few months, we have done two long road trips: one approximately 4,000 km and the other about 1,800 km. These gave us the chance to try out various apps for navigation and travel information. We live in Queensland, Australia and some of these comments may be country-specific. Navigation # The basic navigation came down to three...
One of the big debates among Swift developers is when to use structs and when to use classes. Classes are the building blocks of object-oriented programming but structs as provided by Swift are newly powerful. Structs have been around in C-based languages for a long time, but Swift has made them more powerful and given them more features so that...
Today I plan to discuss optionals since they were a feature of Swift that I found difficult to grasp at first. What is an optional in Swift? # An optional is a variable of a specified type that can also be nil. Why does this matter? # In Objective-C, any object type could be nil. If you declared a variable like this: NSString *myString;...
Loops are a fundamental building block of any program. Doing repetitive tasks fast and accurately is what computers are really good at and what we humans get very bored doing. Swift offers several different ways to perform loops, but today we are going to concentrate on for-loops. The most basic form of loop is the for-in loop. There are two ways...
One of the nice things about Swift is how clean your code looks. A lot of the weird characters that pepper the code of other languages has been eliminated: No more semi-colons, asterisks etc. But then you are reading somebody else’s code and you find these angle brackets all over the place and they don’t seem to make sense. What does this mean?...
I was driving through the town of Singleton the other day and of course, it got me thinking about using singletons in my apps. Singletons were a commonly used pattern in Objective-C programming and appear in many of Apple’s own APIs, but seem to be increasingly frowned upon in the Swift world. So what is a singleton? # A singleton is a class...
Do not use !. Use let, not var. Allow the compiler to infer types. Read on for more details… 1. Do not use ! # Swift uses optionals for values that can be nil. To use an optional value, you need to “un-wrap” it first, which means getting the actual value out, assuming that the value exists and the optional is not actually nil. Optionals are...
While not strictly a part of my Learning Swift series, today I thought I would discuss some of the ways to configure and use Xcode to be a more productive and comfortable programmer. 1. Editor color themes and fonts: # Step through the supplied themes and find the best one for you. Then click the ‘+’ button at the bottom of the list and...
The first thing to do is to download the latest version of Apple’s Swift Programming Language book from the iBooks Store. You can just read this book, especially the first section: “A Swift Tour”, but you will get more out of it if you follow along with the playground. There is a link to download the playground from the book which you can use...
Firstly, I can give you the technical answer, as published by Apple: Swift is a new programming language for iOS, OS X, watchOS, and tvOS apps that builds on the best of C and Objective-C, without the constraints of C compatibility. Swift adopts safe programming patterns and adds modern features to make programming easier, more flexible, and more...
Icon Builder 3.2 is now available from the Mac App Store. Icons for Apple Watch apps now have their alpha channel removed. Tidier folder structure for related files (iTunes Artwork files and Read Me). Updated to work with Xcode 7’s Assets.xcassets folders. Creates iPad Pro icons for Xcode 7.2 or later. Fix for Retina Macs creating double-sized...
I have started a new Twitter account so that I can provide rapid support to users of my apps. Please contact me @trozware if you have any questions, suggestions, bug reports or would just like to chat. I will also be using this account to promote my new Learning Swift series.
Welcome to Learning Swift. # This is the first post in what I hope will be an extensive series dealing with the Swift language. Here are some of the questions I hope to answer: Should I learn Swift? Why? Why is Swift so great? How should I start learning Swift? I already know Objective-C - how do I convert? After that, I am planning a series of...
It has come to my attention that there are two possible issues with Icon Builder 3.0.1 when using icons created for an Apple Watch app. Once of them is something I can fix and the other appears to be a bug in Xcode 7.2 Update: Version 3.2 of Icon Builder is now available in the Mac App Store. This removes the alpha channel from icons for a watch...
Man Reader has been updated to version 1.5 with a major improvement in the way it looks for available man pages. Man Reader 1.5 is now available through the Mac App Store. Change Log: # Much improved searching for available man pages. Sand-boxed version now works just as well as the non-sand-boxed. The main feature of this version is that it...
19th Hole for iPhone and Apple Watch version 3 is now available through the iTunes App Store. This version is a complete re-write to accommodate the changes in iOS 9 and watchOS2. The major changes are to do with the way the iPhone and the Watch communicate. In watchOS1, all the brains of the app had to live in the iPhone, meaning that every...
We live in a world of passwords and passphrases and there is a constant struggle between having a secure and a memorable password. As a result, many of us re-use passwords even though we know this is a bad idea. XKCD had a wonderful comic that illustrated the theory of using a passphrase composed of words that are easy to remember but with a...
I realise that every one has written one of these posts, but given that everyone looks for and notices different things, I think it is still valid. My first impression was “Why does it come in such a large box?”. The courier delivered two boxes - my 38mm Apple Watch Sport and Tim’s 42mm Apple Watch Sport. They both came in long boxes, with the...
Time In Words for iOS started off as a fun gimmick, emulating the Qlocktwo type of time display where the relevant words are highlighted in some way to spell out the time as a sentence. This very quickly evolved into what I hoped would be more useful app, still showing the original display, but also providing the current time & date as complete...
As described in a previous post, about 9 days ago I submitted my first Apple Watch app for review. The app was an extension of my golf scoring app: The 19th Hole. I expected that App Store review times would go up dramatically once Apple had allowed developers to submit watch apps, but this proved to be incorrect. Three days after submission, the...
I have just submitted my first Apple Watch app to the iTunes App Store. This is a scary thing to do, since I have never seen, touched or used an Apple Watch and all I had to go on was the Simulator that Apple supplies with Xcode. At the moment, Apple has only made a limited set of Apple Watch features available to developers, and all Apple Watch...
When I converted my site to Jekyll & GitHub, one of the things I left behind was a collection of LiveCode (Revolution) stacks. For many years I was active in the Revolution community before going in other directions and over that time, I built up a small library of stacks that I released into the public domain. LiveCode is a cross-platform rapid...
So why an announcement for such a minor upgrade? Version 3.0 got no announcement because it was not the release I wanted. Having downloaded the Xcode 6.2 & 6.3 betas, I had worked out what icons were needed to a WatchKit app. This, combined with several other changes, made me bump the version number to 3.0. Sadly, Apple rejected the update...
Apple now allows app developers to add a video preview of their app when uploading to iTunes Connect. This video is shown to potential purchasers when they are looking at an app in the iTunes App Store, just like the screen shots. I have been working on an update to 19th Hole and since it uses a custom method for data input, I decided that a...
Today I am experimenting with automating post generation. Firstly, there is the structure of the post Markdown document, which really boils down to the file name and the header. I have set up a macro in Typinator so that I just type the title of the post in a text document. I copy that title to the clipboard and type the shortcut. The header is...
So here is where I need to get used to Jekyll and how things are done. I will end up automating this when I am sure of the process, but for now, I am just going to work my way through it. Start up the local Jekyll server: I opened Terminal and used cd to get to the folder containing my site. Next I started the Jekyll server locally using jekyll...
Welcome to TrozWare’s new site. # It appears that I am not alone in deciding to move away from WordPress. WordPress is great - easy to set up and with lots of cool themes to allow customisation of your site. But it is slow, especially if (like me) you are running on a low-cost shared server. I had been reading about Jekyll, so I decide to give...
Man Reader 1.4 is now available through the Mac App Store. The new features and fixes are: # Fix for plain text view not wrapping correctly for odd-sized fonts. Fix for HTML text view over-riding font colors that may be invisible. Search for missing entry (e.g. g++) no longer requires Enter or Return. Better automatic selection of matching...
Some people are moving away from email, but for me, it remains the best way to communicate online. I get to keep a record of conversations and the attached files are with the text so I can always see the context. But I think everyone would agree that Apple have dropped the ball with Mail in OS X Mavericks, and to a lesser extent, in iOS 7. So I...
So my latest app is way outside my usual sphere but that’s what happens when family decide that what you do might actually be useful! My son is an oboist and he is currently learning Berio’s Sequenza VII for Oboe. This is a weird piece without a standard time signature. Instead each line has 13 bars with each bar being allocated a certain time...
Icon Builder 1.2 was released on 18 September 2013. It was an update with 2 new functions: The ability to create images to suit an Xcode 5 assets library The ability to create icons with the required sizes for IOS 7 apps. Knowing that iOS 7 apps can only be built using Xcode 5, I linked the switch for these 2 abilities in a single check box. The...
Icns Maker and Icon Builder have both just been updated to support Xcode 5. Icon Builder is a Mac app that takes your images and creates all the required icon files for use in your iOS apps. It now supports Xcode 5’s image assets folders and if you are using Xcode 5, it will create the icon sizes required for iOS 7 app. Icns Maker is a Mac app...
For some time now, I have been aware of the increasing trend towards using Markdown for text editing and for creating HTML. Markdown has been on my list of “things I should learn some day” so I was interested last week to read about a new iBooks book called The MacSparky Markdown Field Guide. This was sufficient inspiration so I got the book and...
UPDATE: September 2016 - A Knight’s Move for iOS is no longer available. A Knight’s Move for Mac is still supported. A Knight’s Move has been updated to version 1.3. The Mac version is available through the Mac App Store. Three new level packs: # Eight by Eight Bishops Rule Castles Eight by Eight has every puzzle set in a chessboard sized...
These instructions are no longer valid. As of version 1.5, the App Store version of Man Reader has solved the sand-boxing issues and is now as powerful as the non-sand-boxed version. The non-sand-boxed version will no longer be supported or updated, so please revert to the App Store version. As with all apps in the App Store, Man Reader is...
These instructions are no longer valid. As of version 1.5, the App Store version of Man Reader has solved the sand-boxing issues and is now as powerful as the non-sand-boxed version. The non-sand-boxed version will no longer be supported or updated, so please revert to the App Store version. If you find that Man Reader is not working well for you...
January 18th 2013: Both of the icon building apps have now been updated to fix a but that made incorrect icon sizes when running on a Retina MacBook Pro. Icns Maker uses your image to create an icns file for Mac apps. Icon Builder uses your image to create the suite of icon files needed for iOS apps.
Icns Maker which makes an icns icon file for Mac apps, and Icon Builder which makes the suite of png files needed for iOS apps, are both compatible with the Retina MacBook Pro. However it was recently brought to my attention (thanks Cameron), that when running on a Retina MBP, all the icon files were exactly twice as large as they should be. The...
Announcing two new apps for creating icons for with Mac or iOS projects: Icns Maker helps you convert a single image into a .icns file in two steps. Icon Builder creates all the files needed to set up your icons for any iOS project. Creating icon files for Mac apps: # In versions of Xcode before 4.4, Apple provided an app called “Icon...
There are been a lots of stories going around about lengthening Mac App Store review times. Shiny Developments crowd-sourced data certainly backs this up although they have much more data for iOS apps than for Mac apps. Some people, including Lex Friedman of MacWorld and John Gruber of Daring Fireball, are suggesting that the delays are due to...
UPDATE: September 2016 - A Knight’s Move for iOS is no longer available. A Knight’s Move for Mac is still supported. A Knight’s Move for iOS has been updated to take advantage of the taller iPhone 5 screen. In-app purchasing of packs has been removed from both Mac & iOS versions. For iOS, the app is now free but supported by iAds (please click...
I have started work updating my iOS apps to fill the larger screen of an iPhone My iPhone 5 is on order - I missed out on the first shipment, but hopefully it won’t be too long. Meanwhile, I will just test in the iPhone Simulator and hope this is OK. But it was a puzzle to me how to get an app to fill the longer screen. I have the latest Xcode...
UPDATE: September 2016 - A Knight’s Move for iOS is no longer available. A Knight’s Move for Mac is still supported. A Knight’s Move for iPad & iPhone has just been updated to version 1.1 There were some minor changes: New puzzle pack: Majestic. iPhone now shows an info button of there is more help available for a particular puzzle. (This info...
The update of Man Reader to version 1.1 has just become available through the Mac App Store. This update has a bunch of new features - thanks to everyone who made suggestions. As detailed in a previous post, there have been major issues getting this app approved with Apple’s new sand-boxing restrictions fully in place. But to their credit, the...
As of June 2012, all apps submitted to the Mac App Store have to be sandboxed i.e. they have to be able to run in a limited environment where they cannot interfere with other apps or other parts of the system. While this is generally a good thing, there are problems when apps have legitimate reasons for requiring access to other resources. One...
Time In Words screen saver has just been updated to version 1.1 and is now fully compatible with Mountain Lion. It is free to use and can be downloaded here. The basic screen saver worked before, but searching for an alternative time zone would crash System Preferences. That is now fixed. The screen saver also shows a thumbnail image when in...
UPDATE: September 2016 - A Knight’s Move for iOS is no longer available. A Knight’s Move for Mac is still supported. “A Knight’s Move” is a fun, addictive and simple puzzle game based on the movements of chess pieces. Your goal is to move your white knight across a board to a target square using the same movements as a knight in chess. Pawns may...
In Mac OS X 10.7 (Lion), Apple decided to make it more difficult to access your Library folder, presumably to stop people doing stuff that made apps crash. But as a developer, I need access to my Library folder a lot. I need to check that preferences are being saved correctly. If I have an app that uses the Application Support folder, then I need...
The latest update for Pic-a-POD for Mac is now available through the Mac App Store. Bug fix: # selecting an iPhoto pic from the Recent Desktops menu now works correctly. New features: # Better indication of downloads and when large pics are not yet available Direct link to App Store in Help menu - please rate or review.
Man Reader launched on the Mac App Store a couple of days ago and yesterday I got an email from a purchaser who reported that Man Reader was not displaying the man pages for MacPorts, even though he had the paths set up correctly. I installed MacPorts to check this out and ran into the same problem. Running the command “man port” in Terminal...
Having just completed the my first screen saver for Mac - the Time In Words Screen Saver, I thought I would share some of the experiences. I am using OS X Lion (10.7) and Xcode 4.3.2 The first thing is to create a new project in Xcode using the Screen Saver template: Xcode sets up a project for you with everything you need for a screen saver...
Working out what operating systems to support in your software is always a difficult decision. I only program for Mac & iOS systems for starters. This is because they are the systems I use and understand. I am not interested in expending the time & money needed to program and test my software for other systems. Within the Mac & iOS ecosystems,...
The new iPad has a Retina display, meaning that the pixel density is much greater. For some apps, this is a problem as their graphics are now scaled and look pixellated. However Time In Words is very simple. It uses standard fonts and interface widgets with no images or external graphics apart from the icon. The icon may not look perfect on a new...
My iPhone 4 is now 18 months old, and it’s Home button is starting to feel the strain. These buttons have been used much more than originally intended, with the new multitasking required double-presses, not to mention access to the camera etc. So basically , it is wearing out. The phone is out of warranty and there is no way I am going to pay for...
Time In Words for Mac has just been approved and is now available for free from the Mac App Store. For more details, check out the Time In Words for Mac web page.
With the introduction of OS X 10.7 (Lion), Apple removed the obvious scroll bars from windows and replaced them with a much more subtle scroll indicator, that only appears when you are actually scrolling. This was designed to match the iOS scrolling, as was the swap of scroll direction which makes much more sense if you use a trackpad. With the...
As part of the design for [Time In Words for Mac][1], I had to work out the interface for selecting time zones. With [Time In Word for iOS][2], I used picker wheels which are excellent for selecting hierarchical data. On the Mac, there is no such thing as the iOS picker wheel and so I had to consider what to use instead. When you ask the system...
Time In Words is now available at the App Store. Time In Words is a clock and calendar app that takes you out of the digital era and back to when saying “quarter to seven” or “five past two” was accurate enough. Check out the Time In Words web page for more info and screen shots.