|3/8(Thu) @ DeNA||3/9(Fri) @ Yahoo! JAPAN|
I'd like ot introduce techniques for using the Swift Package Manager to develop CLI tools as quickly as possible.
Swift Package Manager has features such as initial templates and Xcode project generation functions, but if you try to make something, you will stumble around in many places.
In this talk I will introduce the settings and techniques for developing CLI tools using Swift, useful libraries etc. without putting effort on such non-essential place."
ARKit has been announced and I think that many people are interested in 3D programming. Now that middleware for game development is also substantial, it is now not difficult to display 3D objects on the screen. Even in iOS development, Apple provides a nice library called SceneKit, which has useful functions ranging from scene graphs, shading, physics simulation and collision detection. But do you know how 3D data to be displayed is processed by the GPU and displayed on the screen? This LT explains the graphics pipeline which is the backbone of the mechanism of 3D rendering and it is possible to understand which classes and functions are playing the role of pipeline in low level 3D rendering libraries such as Metal and OpenGL (ES) I will explain it as much as possible.
Uber has made an architecture framework for iOS / Android mobile called RIBs open source in November 2017. I will explain it together with its overview and usage, Pros / Cons and others.
My team is currently recommending implementations without Interface Builder, such as Storyboard and xib / nib files. Why did you decide to implement almost all UI with code? I will talk from the viewpoint of Interface Builder and team development.
Also, I would like to talk about tips for implementing UI on code and timing to use Interface Builder.
Nowadays, A/B testing is really a popular practice to ignite product improvement cycle, and we can know what our customers prefer with it.
However, implementing A/B testings is often complex because targets of an A/B testing frequently scattering and it's hard to know its influential range.
Therefore, we need to be really careful when we delete it or change it.
I'm working on it these days, so I want to share the swifter way of implementing A/B testings using protocols, associatedtype and other powerful swift functions.
Immutable objects are commonly used in modern programming to avoid changing shared objects via references. When we want to update an immutable object, we need to create a new instance whose properties have same values as ones of the original object except the property we want to update. It works well for small objects, but does not for large objects like images. An image may hold tens of millions of pixels as its properties. It is impractical to copy all of the pixels in an image when we want to update just one pixel in it. Swift provides another way to avoid the problem of shared objects: value types. When instances of value types are assigned to variables or passed to functions, they are copied and never shared. It means value types can be used in the same way as immutable objects to avoid sharing. In Swift, almost all types in the standard library are value types. Even collection types are provided as value types using the copy-on-write technique. It enables us to implement an
Image type as a value type easily. I have developed the library EasyImagy ( https://github.com/koher/EasyImagy ), which provides an
Image type implemented as a value type. In this talk, I will show you advantages of value types in Swift through examples of the
In this talk, we will discover why Result<T, E> matters more than Result<T>.
I'll pick up some interesting things from Swift's bug report.
Bertrand Meyer advocated CQS (Command Query Separation). Understanding this concept leads to safe and robust programming. CQS is effectively used in various scenes. Of course, even with Swift's language design. By looking at the movement of mutating func of Swift, let's think about what is CQS and what's pleased about."
What is a block chain represented by a bit coin? Why is value found in virtual currency? What kind of applications are decentralized applications that run distributedly on the block chain network which is peer to peer. For Swift engineers, mainly client side application development, I will talk about the block chain world, the role of client side application engineers there, and a foothold for trying to implement the application with Swift.
I am now working most of the time on server side swift (mosty on Kitura and sometimes on Perfect). Right now as I am running few exprimentations on my existing app "universal time table widget" making it better and making a proper bakend on swift.
And I had started my own startup related to eductation and that is the main prodcut I am working on and it will be a production class software written mainly in Swift (Backend + iOS app) used by thousands of students and teachers definitely by the 2nd quarter of this year because I have granted permission to run an early stage beta version in few colleges and schools. It's 2nd quarter because it will take around 3 months to complete alpha testing and new session in schools and colleges start in the month of April in India.
I want to write a program that I can use easily at a terminal, but I can not write a shell script … at that time, you can write a program with Swift, which we are good at! So I will briefly explain how to create a terminal program
If you are an iOS application engineer, some people may find it difficult to communicate with designers. It is very dangerous if you can not understand convincingly because of differences in knowledge of the characteristics of iOS and UIKit. Also, the communication cost of checking whether the UI defined by Sketch is the same as the UI of the application is also an issue.
Communication is indispensable in developing with a team. And it is important to prevent communication becoming negative.
In order to solve this problem our team carried out "design design at Atomic Design" and "pair programming with designer".
In this talk I'd like to talk about approaches and aims to solve problems and what I was happy with actually doing.
I'd like to talk as you!!!
Kouhei a.k.a gaopin1534. An iOS engineer, used to be a server side engineer. Love technologies and beer.
While creating AbemaTV (Japanese TV app, https://abema.tv/) in his work, he also dedicates his time to functional programming and open source projects. He is a huge fan of Swift, Haskell, and any statically typed languages that compiler can check his bad code, yet he also loves unpredictable, dynamic world he lives in now.
His posts about Swift on Qiita are well known among Japanese iOS developers. He has also been developing SWIFT QUEST, which is an online book for programming beginners to learn programming from Hello World to monads using only Swift.
Yahoo! JAPAN で iOS/Android アプリ開発をしたり勉強会運営をしたりしています。文章のように直感的にコードが読み書きできるプログラミング言語、特にSwiftが好きです。あと音楽と漫画が好きです。
Fresh graduate from computer science engineering(bachelors), was working as an iOS engineer in a startup now started my own company and working directly with my college director and persuing masterrs in computer science in the upcoming academic session.
He has developing “Famm” album app for family and “Pairy” for couples. He likes physics so much that he has developing “Lib arXiv” app to view articles on arXiv.org.
リクルートマーケティングパートナーズで教育系サービスの開発を行っています。Kyobashi.swiftの主催を行っています。「コード : ボルダリング : ゲーム = 0.9 : 1.0 : 1.0」で日々を暮らしています。
DeNAのSWETで、主にモバイルアプリのテスト戦略、自動テスト、CI/CD環境の整備などを担当。 iOS Test Night / Android Test Nightの主宰をしています。