"Server-side Swift Is Undervalued": Interview With Paul Hudson

    Looking at recognized IT experts - with their detailed books, confident reports and slender blog posts - you can feel them by some special creatures who know everything in their field, never worry before going on stage and were born with a keyboard in their hands . But it is worth talking to such a person as you discover that with his vast knowledge he is quite alive.

    Paul Hudson is known as an expert in Swift and iOS. Website Hacking with Swift , a number of books, reports at conferences like dotSwift and SwiftConf, Twitter account with 17,000 followers, the YouTube-channel - that's all it is. And we talked with him: from what he started with, to tips that he can give to novice speakers / bloggers.

    - You are widely known in the iOS community, but it may not be obvious from the outside what exactly you are doing. Do you work for yourself or in any company?

    - My main job is writing books. Such people, I think, are becoming less and less. All my working time is occupied by Swift: I either write on it or write about it. And I am delighted with this, I really like to learn new things, experiment, repair the consequences of my experiments, and then write about what I learned.

    - How did you start developing for iOS?

    - At that time, iOS was also called the iPhone OS. I had a Flashzilla application that corresponded to my personal interests at that time: it showed the cards in different languages, and you saw the word in English, and then you memorized the translation into others (French, Spanish, Japanese, and Latin). Apple didn’t accept this application in the App Store due to the fact that the name “Flash” was in its name, and they were still nervous about Adobe Flash - you feel how long ago it was!

    - If you look at your books or topics of your reports, you will get the feeling that you know about iOS development in general. Are there any other topics you would like to go into?

    - I do not think that there is at least one person who would know everything about developing for iOS. I doubt that there is anyone who knows at least 25% - I don’t know so much. Due to the fact that writing books is my main occupation, I can explore any technologies that interest me. For example, when Siri Shortcuts appeared, I was so captured by them that I quickly became a great activist of this technology. This inspiration inevitably permeates my books, because I want to share it with others. There are many topics that I would like to study further, and I hope that in a month or two I will be able to tell about it.

    - The site Hacking with Swift says that you participated in the development of more than 100 mobile applications. This is an impressive number - can you tell us about a particular project that has become particularly interesting and valuable for you?

    - In fact, the number is higher: only my personal projects that I worked on in my spare time are taken into account in that calculation. In general, the most interesting was my work with UBS in Switzerland. I liked how attentive they were to the details: they wanted everything to work smoothly, and they proceeded primarily from quality, not budget considerations. It was often very difficult to meet their expectations, but I just liked it: such a demanding attitude helps to grow.

    - Also on the site it says that for eight years you have been doing computer journalism. What did you write about and where can you find your articles?

    - I wrote about many topics and published in many magazines, but mostly my articles were published in one very specialized and geek magazine called Linux Format. At first I edited reviews, then they made me deputy editor and, finally, editor. I really liked my work: I got acquainted with the most advanced computer technologies, selected the most vivid and told readers all over the world. Incidentally, this magazine has a Russian version , and it still comes out.

    - Today, many believe that the developer can be useful for a career to write articles or blog. However, there is the opposite opinion that this does not help professional growth. What do you think? When does it become important for a developer to become an author?

    - I think that writing and talking about my work can be very useful.

    Firstly, it helps to clarify a lot for yourself. If you decide to write in a blog (or tell from the stage) about GCD, Core ML, Siri Shortcuts, or anything else, you should be sure that you have really studied the problem in its entirety. This motivates you to do more research, experiment, to find out as best you can.

    Secondly, those articles that you write will serve as excellent documentation for yourself in the future, when you move on to another problem and forget all about what you are doing so hard now. We are able to maintain our specialization only for a short time, and when we stop devoting all our time to something, we quickly get the feeling that we are no longer qualified in this matter. There is nothing terrible in it, it is quite natural, and here your blog can help you - after reading your article, you will quickly recall what you have already worked on.

    Third, your blog or presentations can help you become more famous in the community: either because you created something useful that has become widely known, or because you have shown the diligence, willpower and innovation you need to create something. like that.

    At the same time, I understand perfectly well that there are many people in our community who are unable or unwilling to have a blog or make presentations, because they have families and other things. Some people want a full and interesting life besides work, and after 5 hours they don’t want to think about code. Such people are also important for our community, and, in my opinion, it is unfair to say that someone is not passionate about programming, simply because they do not have a blog. We all will be much better without this discrimination.

    - Your Twitter and GitHub accounts have the “twostraws” username. Where did it come from?

    - This is a question that I get asked most often! When I was a child, my parents were very poor. A trip to McDonalds was a small holiday for us, and I always took two straws for my milkshake to get everything from this event. These kinds of habits that we develop in childhood remain with us for the rest of our lives - even today I have a strange involuntary need for two straws.

    - One of your books is called “Server-Side Swift”. What do you think about the current prospects of Swift as a server language?

    “I think Swift is undervalued as a server language in our community — it is used much more often than is commonly believed. Many try to write on it out of curiosity and find that Swift development skills are applicable to web development. This opens up so many possibilities.

    - The key question about Swift as a backend development language is whether it was tested in production. What can you tell about it?

    - Some large companies, such as Mercedes Benz or ING, are already using Swift in production on servers, and only a few years have passed.

    - You spoke at many different conferences - how did you first try yourself as a speaker? What would you recommend to developers who are preparing for their first report?

    - At first, all my reports were inside my company, the first public appearance was at Forward Swift 2016 - there I led six-day seminars, following one after the other. It was a very difficult first experience, I would not recommend anyone to start with this. I like doing public appearances, and since then I have had a lot of them.

    If you are thinking about how to make your first report, I would recommend choosing a small topic that fascinates you, or at least that you have experience - you can speak with her at some local meeting. This will help you gain self-confidence, after which you can participate in a larger event. You can tell what you learned from Swift and what mistakes you made - reports on this topic are always helpful. If you start to defend the position on MVVM / MVC or TDD / BDD, then someone may not agree with you, but when you talk about your experience, what worked for you, and what did not work - what can you argue ?

    - On your site it is written that you work not only with Swift, but also with Java, C # and other languages. Tell me, if a programmer wants to grow professionally outside of iOS, what is worth learning?

    “It’s written on my website because, in my opinion, it’s too easy for a programmer to get acquainted with one language, one platform and one IDE and assume that they have chosen the“ best ”. I do not think that there is a better language, a better platform or a better IDE. If you spend time in both Python and C # and JavaScript — yes, yes — JavaScript — you will definitely be attracted to something in each of these languages ​​— thanks to this, you will grow as a programmer. At one time I was developing games for Xbox 360, and I was amazed at how beautiful the API was made by Microsoft. Some of them I later ported to Linux using Python and OpenGL - I wanted others to work with them too.

    This does not mean that you have to be an expert in all areas that I have just mentioned - I am not sure that this is possible at all. But at least it’s worth getting to know them - ask that it excites people who are discussing React vigorously, it will give you new strength to work with Swift and help you improve yourself.

    - Have you ever been to Russia?

    - Yes, and I really liked it. I was in Moscow, Veliky Novgorod and St. Petersburg, and I was impressed by the architecture in these cities. In addition, my interest was fueled by the fact that my favorite author came from there - Vladimir Nabokov.
    Soon Paul will be in Russia again: he will speak at our Mobius conference (Moscow, December 8-9). And, surprisingly, his report will be about Swift (and more specifically, how to start writing code smarter and faster with the help of certain restrictions). And besides this, Mobius will have many other things for mobile developers, both iOS and Android.

    Also popular now: