How to write Great Proposal

2594ac7ce91fd7d9a3ce71ca7cc2d0c0?s=47 d_date
June 18, 2020

How to write Great Proposal

2594ac7ce91fd7d9a3ce71ca7cc2d0c0?s=128

d_date

June 18, 2020
Tweet

Transcript

  1. How to write Great proposal Daiki Matsudate @d_date iOS Developer

  2. Understand the Call for proposal

  3. Understand the Call for proposal ओ࠵͕ͲΜͳτʔΫΛ΋ͱΊ͍ͯΔ͔Λཧղ͢Δ ϓϩϙʔβϧΛॻ͍ͯग़͚ͩ͢ͳΒ؆୯͕ͩɺ ਓؒ*͕৹ࠪͯ͠ɺ࠾୒͢΂͖͔൑அ͢ΔҎ্ɺͦ͜ʹ͸ج४͕͋Δ େྔͷϓϩϙʔβϧΛࡹ͍͍ͯΔͱ͍͏͜ͱΛ૝૾ͯ͠ΈΔ *2020೥ݱࡏɺ͢΂ͯͷΧϯϑΝϨϯεͷProposal͸ਓ͕ؒݟ͍ͯΔʢ͸ͣʣ

  4. https://fortee.jp/iosdc-japan-2020/speaker/proposal/cfp

  5. https://www.papercall.io/tryswifttokyo2020

  6. Think topics you want to talk

  7. Think topics you want to talk Ԡื͍ͨ͠τϐοΫΛߟ͑Δ ྫʣ ϓϩμΫτͷۤ࿑࿩ ϓϩμΫτͰ͏·͍ͬͨ͘͜ͱ

    Swiftͷݴޠػೳ etc…
  8. Think topics you want to talk Ԡื͍ͨ͠τϐοΫΛߟ͑Δ • νϡʔτϦΞϧͰ׬݁͠ͳ͍ •

    ex.) CombineΛ࢖ͬͯΈͨɺΑΓ͸ɺCombineͷ͸·ΓͲ͜Ζ΍ϕετϓϥ ΫςΟεΛฉ͖͍ͨ • τʔΫͰฉ͖͍͔ͨͲ͏͔ • هࣄͰ͸ͳ͘ɺτʔΫͰฉ͘ϝϦοτΛߟ͑ͯΈΔ • ࣋ͪ࣌ؒͰऩ·Δ͔Ͳ͏͔
  9. Topic Examples

  10. Topic Examples ͜͜Ͱ঺հ͢ΔτϐοΫΛऔΓѻ͔ͬͨΒͱݴͬͯ࠾୒͞ΕΔΘ͚Ͱ ͸͋Γ·ͤΜ ݸਓͷ޷ΈͳͷͰɺࢀߟ·Ͱʹɻ

  11. Topic Examples Auto Layout • ͲΜͳʹ੩తʹؤுͬͯ΋ϨΠΞ΢τ͸յΕΔ • Ͳ͏΍ͬͯޮ཰తʹ૊ΜͰ͍͔͘ʁ • Compositional

    Layout • յΕͨ΋ͷΛͲ͏΍ͬͯݕ஌͢Δ͔ʁ • ଟछଟ༷ͳσόΠεͰͲ͏΍ͬͯςετ͢Δ͔ʁ • etc…
  12. Topic Examples Cross Platform • FlutterͰXXͨ͠ -> ͪΐͬͱതଧ͔΋ • ωΠςΟϒͱΫϩεϓϥοτϑΥʔϜΛൺֱͨ͠

    • ͜ͷล͸ӡӦͷ޷Έ΋͋Δ • etc…
  13. Topic Examples SwiftUI • WWDC 19Ͱൃද͞Ε͕ͨɺϓϩμΫτ΁ͷಋೖࣄྫ͸·ͩ·ͩগͳ͍ • ৽ن։ൃͰ͢΂ͯSwiftUIͰ࡞ͬͨ࿩ • طଘΞϓϦΛSwiftUIʹϦϓϨΠε͍ͯ͘͠ͱ͖ͷ࿩

    • ಛఆͷModifierʹؔ͢ΔίΞͳ࿩͸͓ͦΒ͘·ͩ΢έ͕ѱͦ͏ • WWDC 20Ͱͷൃද࣍ୈͳͱ͜Ζ΋͋Δ
  14. Topic Examples Combine • WWDC 19Ͱൃද͞Ε͕ͨɺϓϩμΫτ΁ͷಋೖࣄྫ͸·ͩ·ͩগͳ͍ • CombineͱRxSwift, ReactiveSwiftͱͷൺֱ •

    CombineΛ෦෼ಋೖͨ͠ • ಋೖͨ݁͠ՌͲ͏ͳ͔ͬͨ
  15. Topic Examples Combine - ྫɿCombineΛ෦෼తʹϓϩμΫτʹಋೖ͢Δ WWDC 19Ͱൃද͞ΕͨCombine͸Apple͕ൃදͨ͠1st partyͷϦΞΫςΟϒϓϩάϥϛϯάͷϑϨʔϜ ϫʔΫͰ͢ɻCombine͸ϦΞΫςΟϒϓϩάϥϛϯάΛimport CombineͷҰߦͰϓϩμΫτʹಋೖΛՄೳ

    ʹ͠·͢ɻ RxSwift΍ReactiveSwiftͳͲଞͷ3rd partyͷϦΞΫςΟϒϓϩάϥϛϯάͷϑϨʔϜϫʔΫΛ࢖͍ͬͯͯ ΋ɺCombineΛϓϩμΫτʹ෦෼తʹಋೖ͢Δ͜ͱͰɺͦͷԸܙ͸ଘ෼ʹड͚ΒΕ·͢ɻ ͔͠͠ɺUIKitͰ࢖͏ʹ͸ɺCombineͷPublisher΍SubscriptionɺDemandͱ͍ͬͨ֓೦Λཧղ্ͨ͠Ͱ֦ ு͢Δඞཁ͕͋ͬͨΓɺ࣮ࡍʹOperatorΛ࢖͓͏ͱ͢Δͱιʔείʔυ͕ެ։͞Ε͍ͯͳ͍ͨΊɺυΩϡ ϝϯτͰ͔͠ڍಈΛ௥͏͜ͱ͕Ͱ͖ͣɺ؆୯ʹར༻Ͱ͖ͳ͍Օॴ͕͋Δͷ͕࣮ଶͰ͢ɻ ͜ͷτʔΫͰ͸ɺCombineͱRxSwift, ReactiveSwiftͱͷࠩ෼Λ؆୯ʹ঺հ͠ɺUIKitͱCombineΛ૊Έ߹Θ ͤɺطଘͷϓϩμΫτͰಋೖ͢ΔͨΊͷํ๏ͱɺ࣮ࡍʹಋೖͨ͜͠ͱʹΑΔޮՌʹ͍ͭͯ঺հ͠·͢ɻ
  16. Proposal Tips

  17. Proposal Tips λΠτϧͷ໋໊ • 3rd partyͷαʔϏε໊Λ࢖ͬͨλΠτϧΛආ͚ͯΈΔ • ʙͷ࿩ɺ͸͍͋·͍ʹڹ͘ • ແཧʹλΠτϧ೧Βͳ͍ʢେتརͰ͸ͳ͍ʣ

    • ԿͷτʔΫͳͷ͔͕Θ͔ΔΑ͏ʹ͢Δ • etc…
  18. Proposal Tips λΠτϧͷ໋໊ - 3rd partyͷαʔϏε໊Λ࢖ͬͨλΠτϧΛආ͚ͯΈΔ ❌ FirebaseΛ࢖ͬͯɺXXΛYY͢Δ ⭕ XXΛޮ཰తʹYY͢Δ

  19. Proposal Tips λΠτϧͷ໋໊ - 3rd partyͷαʔϏε໊Λ࢖ͬͨλΠτϧΛආ͚ͯΈΔ ❌ FirebaseΛ࢖ͬͯɺXXΛYY͢Δ ⭕ XXΛޮ཰తʹYY͢Δ

    3rd partyͷαʔϏε໊ΛλΠτϧʹೖΕΔͱɺͦΕʹڵຯ͕͋Δɺ࢖͍ͬͯΔਓ͔͠ର৅ʹ ͳΒͣɺͦͷΧϯϑΝϨϯεͰฉ͖͍ͨτʔΫͱัΒ͑ΒΕΔ͔͸ඍົʢݸਓͷײ૝ʣɻ ͋Δఔ౓λʔήοτ͸޿͘ͱΔํ͕ྑ͍͔΋ɻ ໰୊ղܾͷखஈͱͯ͠ɺ3rd partyͷαʔϏε͕࢖͑Δ͜ͱ͸ຊจͰه͢ͷ͕޷Έ
  20. Proposal Tips ࿦ཧతʹॻ͘ʢ͓͢͢Ίߏ੒ʣ • Ұൠ࿦ɾ֓ཁ • ໰୊ఏى • ղܾํ๏ •

    ఏҊʢPropose) ͜ͷϑΥʔϚοτʹଇΔͱɺ٬؍తʹ͔͚Δ͜ͱ͕ଟ͍ɻ
  21. Proposal Tips ࿦ཧతʹॻ͘ʢ͓͢͢Ίߏ੒ʣ- ͬ͘͞ͱॻ͍ͯΈͨྫ WWDC 19Ͱൃද͞ΕͨSwiftUI͸ɺObjective-Cͷ࣌୅͔Βड͚ܧ͕ΕͨAPI΍ɺAuto LayoutͳͲUIKitͷҨ࢈͔Β ։ൃऀΛղ์ͯ͘͠Ε·͢ɻ֤ը໘͝ͱʹStateΛઃܭ͢ΔΑ͏ͳߏ੒͸ɺMVVMͳͲผͷઃܭύλʔϯΛར༻Λ ࣔࠦ͠·͢ɻ ͔͠͠ɺUIKitʹ࠷దԽ͞ΕͨઃܭύλʔϯΛ౰ͯ͸ΊΑ͏ͱͯ͠΋ɺViewͷϥΠϑαΠΫϧͷҧ͍͔Βɺͦͷ·

    ·దԠͤ͞Δͷ͸೉͍͠Ͱ͠ΐ͏ɻ ͜ͷ໰୊Λղܾ͢ΔҰॿͱͯ͠ɺBrandon WilliamsͱStephen Ceils͕ఏএͨ͠Composable ArchitectureΛ঺հ͠ ·͢ɻComposable Architecture͸ɺFunctional Programingͷӳ஌Λू݁͠ɺRedux΍ElmΛϕʔεʹ͠ͳ͕Βɺ ֤ը໘ͷStateΛΞϓϦશମͷStateʹঢ՚ͤ͞Δ͜ͱ͕Ͱ͖·͢ɻ ͜ͷτʔΫͰ͸ɺComposable ArchitectureΛࣗࣾΞϓϦʹಋೖͯ͠10ϲ݄ӡ༻ͨ͠ܦݧΛ΋ͱʹɺΞʔΩςΫ νϟͷ֓ཁͱ͸·ΓͲ͜ΖɺಋೖʹΑΓಘΒΕͨ΋ͷΛ঺հ͠·͢ɻτʔΫΛฉ͘ʹ͋ͨΓɺFunctional Programmingͷ஌ࣝ͸ͳͯ͘΋ཧղ͢Δ͜ͱ͕Ͱ͖·͢ɻ
  22. Proposal Tips ࿦ཧతʹॻ͘ʢ͓͢͢Ίߏ੒ʣ- ͬ͘͞ͱॻ͍ͯΈͨྫ WWDC 19Ͱൃද͞ΕͨSwiftUI͸ɺObjective-Cͷ࣌୅͔Βड͚ܧ͕ΕͨAPI΍ɺAuto LayoutͳͲUIKitͷҨ࢈͔Β ։ൃऀΛղ์ͯ͘͠Ε·͢ɻ֤ը໘͝ͱʹStateΛઃܭ͢ΔΑ͏ͳߏ੒͸ɺMVVMͳͲผͷઃܭύλʔϯΛར༻Λ ࣔࠦ͠·͢ɻ ͔͠͠ɺUIKitʹ࠷దԽ͞ΕͨઃܭύλʔϯΛ౰ͯ͸ΊΑ͏ͱͯ͠΋ɺViewͷϥΠϑαΠΫϧͷҧ͍͔Βɺͦͷ·

    ·దԠͤ͞Δͷ͸೉͍͠Ͱ͠ΐ͏ɻ ͜ͷ໰୊Λղܾ͢ΔҰॿͱͯ͠ɺBrandon WilliamsͱStephen Ceils͕ఏএͨ͠Composable ArchitectureΛ঺հ͠ ·͢ɻComposable Architecture͸ɺFunctional Programingͷӳ஌Λू݁͠ɺRedux΍ElmΛϕʔεʹ͠ͳ͕Βɺ ֤ը໘ͷStateΛΞϓϦશମͷStateʹঢ՚ͤ͞Δ͜ͱ͕Ͱ͖·͢ɻ ͜ͷτʔΫͰ͸ɺComposable ArchitectureΛࣗࣾΞϓϦʹಋೖͯ͠10ϲ݄ӡ༻ͨ͠ܦݧΛ΋ͱʹɺΞʔΩςΫ νϟͷ֓ཁͱ͸·ΓͲ͜ΖɺಋೖʹΑΓಘΒΕͨ΋ͷΛ঺հ͠·͢ɻτʔΫΛฉ͘ʹ͋ͨΓɺFunctional Programmingͷ஌ࣝ͸ͳͯ͘΋ཧղ͢Δ͜ͱ͕Ͱ͖·͢ɻ Ұൠ࿦ɾ֓ཁ ໰୊ఏىʢ΋͏ͪΐͬͱॻ͍ͨํ͕͍͍͔΋ʣ ղܾํ๏ ఏҊ
  23. Proposal Tips ৭ʑݴ͚ͬͨͲ… • ࿩͍ͨ͜͠ͱΛ࿩͢ͷ͕Ұ൪ • τʔΫʹधཁ͕͋Δ͔͸ӡӦ͕൑அ͢ΔͷͰɺԲͤͣग़͢ • ࿩͍ͨ͜͠ͱ͕ᐆດͳΒɺϓϩϙʔβϧʹམͱͤͳ͍͸ͣ •

    ඞཁे෼ͳ৘ใ͕ॻ͍ͯ͋Ε͹େৎ෉ʢϙΤϜॻ͔ͳ͍ʣ • ෆ҆ͳΒपΓͷਓʹݟͯ΋Β͏ • աڈʹ࠾୒͞Εͨ΋ͷΛಡΉ