2015 年末,我離開了這輩子最後一家公司,成爲一名自由職業者。而 iPaste,是我獨立開發的第一款 macOS 產品。html
1.7 年過去了,在發佈新版 iPaste 時,說說這款讓我再也不青澀的做品。git
----- 長文開始警惕線;不喜請繞行 -----github
若是如今作個新產品,事先必定會有充分的調研,好比用戶需求是否真實存在、市場容量、競品分析、技術可行性分析等等,而後纔會立項。web
之因此說不算產品,是由於當初作「貼貼板」時,徹底跳過了這些環節,直接開始碼;更像是個練手的項目。怎麼回事?主要是當時剛剛出來本身單幹,已經至少 3 年沒寫代碼了,作什麼領域的產品,都行,也都不行。在腦子一熱決定先作 macOS 時,腦子裏第一個冒出來的就是貼貼板這個點子,由於本身平時太須要剪貼板增長工具這類產品了。macos
咦,你可能好奇,說好的是 iPaste,怎麼變出個貼貼板?其實,這個產品就是以「貼貼板」這個名字問世的,並保持了最開始的大半年時間。2016 年 9 月底才改名爲 iPaste;這是後話,後面再提。swift
這裏衍伸出一個話題:作產品,是作本身須要的產品,仍是作大衆須要的產品?固然,若是這二者重合,最好。若是不,建議起步時選擇本身須要的產品。最直接的好處是,你本身就知道產品應該作成什麼樣子,跳過了用戶調研的環節,也不至於跑偏。安全
不過,這個方式有個很大的侷限:一般,本身的需求有限,而且會是個小點子,不利於產品作大。並且,產品作大後,就再也不是當初本身想要的東西了,又變成了作大衆需求的產品。因此,根本上是 在作本身需求的產品的時候,摸過出作產品的路子,進而推演到大衆需求。微信
這裏引用在 IndieHacker 上看到的一段話。數據結構
If you build a product for yourself…, there's probably a million others like you out there. Maybe not a billion, but unless you're a freak, there's a million.app
精準的翻譯是:一般你須要的,別人也須要的;這些「別人」,沒有千萬、也有百萬,除非你是朵奇葩。
就是這麼一個不算產品的產品,卻 讓我經歷了無數的從 0 到 1:
這部分在 Mac 開發的神祕面紗:後孃養的嫡長子 裏有介紹,這裏僅簡單的說起。
對於 iPaste 而言,核心的部分是系統剪貼板。也即,可以記錄用戶曾經複製的內容,而且能 100% 準確地還原。難就難在這 100%,由於用戶可能會在任意程序中、複製任意格式的數據,如純文本、格式化文本、圖片、文件等等。
其實,我試了當時的一些競品,包含很是知名的,並無作到這一點。好比,在複製並粘貼到 Numbers 時,會有一個單元格的錯位。產品深處這樣的問題,你在他們高大上的宣傳中天然是看不到的。而 貼貼板 就作到了這一點,因此當時我還打出了「支持任意格式,不服來戰」的口號。核心的,就是將 NSPasteboardItem
中的數據,存儲爲 Data
;在粘貼時,再將其寫回系統剪貼板。
不過,後來發現,某些格式仍是有問題的。好比,在 Sketch 中複製 svg 格式的圖片時,系統剪貼板中會產生 com.facebook.semaphore
這種類型。而對於這種類型 NSPasteboardItem.data(forType type: String)
這個函數會卡死 10 幾秒。我試了幾款知名的競品,也有兩樣的問題,看來確實是 macOS 系統有 Bug。不過,這種狀況仍是至關少見,在我本身用 iPaste 的一年多時間裏,僅遇到過這種狀況(別試 iPaste 了,由於已經改掉了;可是能夠試試你手上的工具😂)
再有,就是 macOS 沙盒的限制。具體到貼貼板,就是 如何將系統剪貼板中的內容粘貼到當前應用。要作到這一點,有多種方式,速度最快的,是發送 Command + V
鍵盤指令,模擬用戶按下粘貼快捷鍵。不過,在沙盒模式下,這一方式直接不幹活。
能在沙盒模式下幹活的,就使用 Apple Script 來發送 Command + V
。但是,在上架 Mac App Store 時被拒。反觀全部已經上架 Mac App Store 的同類應用,都是讓用戶再從其官方下載一個所謂的插件、助手,基本都是安裝 Apple Script 來實現自動粘貼。最後,我也從了,用了相似的方式。
這裏再 吐槽一下 macOS 沙盒模式,已經裹足不前好幾年了。對於自動粘貼這樣的需求,不支持的理由無外乎是安全。但是,這樣的不做爲,直接致使用戶下載安裝一個本身不可能驗證安全的助手。在我看來,只是將安全的皮球踢給了用戶,撇清了本身的責任而已。
一個產品完整的生命週期,所涉及的點是很是多的:產品定義、市場研究、競品分析、設計、開發、測試、上架、運營、推廣、客服等等。要獨自作好這些事,確實是很大的挑戰。
固然,因爲精力和能力有限,我也不可能作好全部的方面,目前主要的精力是開發和推廣。對於作很差的地方,能夠:
不一樣的事,處理的方式不一樣。
其實,我仍是挺願意花時間折騰本身目前不擅長的事。不過,畢竟時間有限,仍是要 把時間用在本身的長處,把短處外包給更專業的人完成。
另外,本身一我的作也是有好處的。好比,不須要與人商量,就減小了不少溝通成本。尤爲是各方意見不一致時,要達到最終結論,一般須要消耗大量的時間,甚至是返工並帶來額外開發成本。而一我的,則沒有這樣的問題。
在實際作事的過程當中,也養成了本身的習慣,好比:
創建這些習慣的過程是痛苦的,由於要摸索全部的可能性,摒棄不適合的,最終造成適合本身的方式。而一旦創建,會有很大的收益。在下次作相似的事情時,好的習慣會大大提升效率,避免走大的彎路。
本身辛苦作出來的產品,天然是但願更多人用;能賺更多錢,固然更好。但是,酒香也怕巷子深,尤爲如今你們的注意力被各類事情分散着,要在這樣的前提下,讓更多須要的朋友知道本身的產品,是個很大的挑戰。
要增長產品的爆光,最直接的就是在媒體上報道。回過頭來看,從時間和效果上看,當時這幾個媒體仍是不錯的:
而這些,所有是國內的媒體。如何在海外推廣?非常頭大。其中,我嘗試了 生平第 1 次付費推廣,是在 Two Dollar Tuesday,當時,其官方的規則是:
You discount your app to $1.99 in the App Store for 48 hour promo (Tuesday & Wednesday).
We will promote your deal via e-mail, our website, Facebook & Twitter.
We then do a revenue split after Apple's cut. On a $1.99 app, you get $1.40. So we get $0.70 to us per sale on Tuesday only. Wednesday you keep 100% of proceeds.
We have you pay us for the first 100 sales ahead of time ($70).
Finally, we have a $1,000 MAX on the amount due to us. Meaning, no matter how many copies we sell on Tuesday, you can never owe us more than $1,000.
精準翻譯過來,就是:
實際的效果,在這兩天僅售出 92 份、$126,除去先前支付的 $70,還剩 $56,至關於每份 $56 / 92 = $0.6,白菜價。
因而,我以後再沒試過付費推廣…
須要注意的是,媒體的效果主要有 2 方面:
不過,媒體資源畢竟是有限的,你總不可能每天被報道吧?在更長的時間範圍內,都要靠用戶的自發傳播,和本身的影響力。
對於口碑傳播,固然首先要靠產品的硬實力,畢竟首先產品要好,用戶才願意消耗本身品牌價值,去推薦你的產品。固然,這其中也存在必定程度的可操做性,好比在程序角度誘導用戶分享,以及分享送 Pro 之類的活動。
而 對於本身的影響力,就須要長期建設了。好比,我最近強迫本身每週二早 8 點在本身的「自在開發」公衆號中寫篇技術長文(包括本篇),也在本身的博客、少數派、掘金、簡書等全媒體發佈。這些文章的受衆,有可能就是我本身產品的用戶。而且,有了文章的背書,當用戶對我有更多瞭解和信任後,也就更願意嘗試個人產品。
對於名字,當初也是糾結了好久才定的「貼貼板」(英文 Daily Clipboard)如今來看,中文名還好,英文名就太差了些,且和中文名沒有關聯。當時,我已經開發了 iPic,想維持一個「i」系列,就直接改成「iPaste」了。
再來看看當年貼貼板的 Logo(左側):
真有種不忍直視的感受 😅
目前的 Logo(右側),是本身設計的。基本是參考系統圓形 Logo,如 iBooks、App Store;其中的 P,和 iPic Logo 中的 P 同樣;背景的深綠色,是參考系統 Time Machine,想借其穩定的意味。
其實,更名、改 Logo 的影響仍是很是大的。好比,以前全部在媒體沉澱的報道,全都無效了,須要從 0 開始積累影響力。因此,你們在給產品起名、設計 Logo 時,必定要慎重。定好了,就要堅持。
對於獨立開發者朋友,我有個小建議:保留本身程序的歷史版本。固然,我知道你確定已經用了 Git;我是說,保留能夠直接運行的版本(你肯定,20 年後,你還有能力將代碼編譯爲程序 😂)就像老照片同樣,多年之後,從新運行一下本身當年還懵懂時寫下程序,看那交互、那顏色、那不經意的跳轉,就像看老照片同樣,會有別樣的情愫。
最開始,iPaste 的模式是付費之後才能下載使用。
採用這一方式的惟一緣由:實現簡單。或者說,代碼上什麼都不用作,無需區分免費版和付費後的功能限制,無需處理複雜的 In-App Purchase 集成。
不過,這一方式的缺點也很明確:限制潛在用戶嘗試 iPaste. 這部分能夠在 Mac 開發的神祕面紗:後孃養的嫡長子 裏有介紹詳細的介紹。
後來,iPaste 將付費模式調整爲免費 + 內購。從效果上看,確實明顯增長了用戶數量,用戶付費也有所增長。因此,若是你打算開發個產品,我的建議採用免費 + 內購的方式。其中,能夠試試我開源的 IAPHelper,能夠很方便地集成 In-App Purchase. 另外,內購也能夠試試訂閱。雖然說不少朋友對於訂閱還很抗拒,不過,仍是有用戶能接受,不妨考慮一下。
換付費模式,實際上是挺麻煩的事。好比,最開始已經付費購買的用戶,總不能讓其再購買一次、或者不能更新吧?要作到這一點,就要識別出以前上架 MAS 的版本,以及用戶是否從 MAS 下載的 iPaste,對於條件都知足,則自動開通高級功能。如何識別?主要是從 MAS 更新 Receipt 並解析其中的內容。
我查了下,上個版本的是 iPaste,是在去掉 9 月 26 日發佈的,幾乎都快一年了。
爲何這麼久都不出新版?
一方面,是我在忙 iPic、Klib 等其餘產品。另外一方面,更重要的,是我 沒想好該怎麼改進。
工具型產品很容易陷入這樣的困境:一方面,會遇到用戶增加遲緩的狀況;另外一方面,會有用戶表達「加了這個功能,我就買」這樣的意願。因而,很容易抗不住壓力,加了某個功能。且不說當初的用戶是否真的購買,久而久之,產品的功能愈來愈多,很容易變得愈來愈複雜、愈來愈很差用。用戶增加變得更緩慢,甚至流失,陷入 死循環。
Word 就是個典型的例子,就像咱們熟悉的那句話:99% 的人用了 Word 不到 1% 的功能。固然,Word 依然是如今的工業標準。但與此同時,以 Markdown 爲表明的文本輕量型編輯工具,蠶食了大量本來屬於 Word 的份額。
其實,不少工具型產品變壞、變難用,很大程度是由於營收的壓力。由於工具型產品自己是極難贏利的,而不贏利又沒法養活團隊,不現實。因而,爲了贏利,產品團隊不得不加些社交、內容等元素,想辦法增長用戶粘性和互動,進而但願帶來更多轉化和商業可能性;但一般,事與願違。
怎麼破呢?簡單:別期望用工具賺大錢。不要讓團隊過於膨脹,以減小成本。出於這一點,獨立開發者、小團隊,很適合作工具型產品,由於營收壓力小,一人吃飽、全公司不餓,不至於所以讓產品畸變。
說回 iPaste,它的 核心功能就是一句話:記住用戶曾經複製的內容,而後粘貼。對於核心功能,iPaste 已經實現的很好了,甚至能夠釘住剪貼板歷史,進而使用固定的快捷鍵粘貼,大大提升效率。
那在此基礎上,還能如何改進呢?通過一年的潛意識思考和本身的實際需求,我加了 2 個功能:
看個操做視頻就明白了:
主要對應於我本身的幾個使用場景:
快速插入 Emoji 表情
Ctrl + Command + Space
呼出 Emoji 和符號鍵盤,問題在於:效率不高:系統列出了無數的表情,而我本身經常使用的就那麼幾個。雖然說有歷史、收藏夾分組,但每次都要手動切換,還要移動鼠標,麻煩。Shift + Command + V
、Command + A
、A/B/C
,快速輸入指定的 Emoji 表情。全程使用固定的快捷鍵、無需鼠標,高效、舒服。快速插入一些特殊字符
⌘
、⌥
、⇧
、⌃
等特殊字符,在回覆用戶郵件時,時不時會用到,幾乎每次都要到 Google 搜索,而後再粘貼過去。添加客服經常使用語
添加經常使用命令
gc master; git merge dev; gc dev;
用於切至 Git 主分支、合併、切回 dev 分支。能夠看出,作出這個更新,主要仍是知足我本身的實際需求。若是剛好你也有這種癢點,歡迎試試新版 iPaste. 順便作個硬廣:含此功能的 新版 iPaste 今天剛剛上架,高級版內購限時半價,須要的朋友不要錯過。
在 App Store 搜索「剪貼板」,會獲得一堆應用,這是個充分競爭的領域。那麼,iPaste 該如何定位、又能玩出什麼花樣?
首先,iPaste 的定位一直沒變:簡潔高效的剪貼板應用。
我知道,你確定以爲「簡潔高效」這話實在是被用濫了,說了跟沒說同樣。但我真的是這麼作的。
在堅守 「簡潔高效」 這個定位和底線後,iPaste 會在繼續在易用性和效率上改進。好比,不少朋友但願能記錄更多的剪貼板歷史(雖然我目前依然以爲意義不大),而要在衆多歷史中找到須要的,搜索便成爲必然。因而,入口就是個問題,我打算 在 Spotlight 搜索中集成 iPaste 的搜索。據我所知,目前同類應用中還沒有出現此功能,iPaste 算是獨創吧。恩,有了點子公佈出來,免得後來者反而說我模仿抄襲。
另外,打算支持 CloudKit,並開發 iPaste for iOS. 恩,我知道,在 iOS 領域,剪貼板應用一樣競爭很是充分,且有 Pin 這樣的明星產品。不過,仍是有事情可作的。好比,目前我在 macOS 上設計圖片後,要發到朋友圈,須要先經過微信等方式先將圖片及文字中轉到手機,而後再發,非常麻煩。要是 iPaste for iOS 能作到 macOS 端複製、iOS 端一鍵發送,多好。
再有,基於 iPaste 還有個衍生產品:iTips,主要是 我的碎片化信息的管理,如公司發票擡頭,追了哪些美劇、分別看到第幾集,等等。目前還沒想到具體的形態,暫不展開介紹。
連續寫了幾篇長文,感受要被掏空了。下週都不知道要寫什麼了,總不能繼續寫回憶錄吧?😂
沒辦法,只能繼續逼本身多輸入,保證每週都有乾貨,晾曬在「自在開發」公衆號。