Ang gumagawa ng business app na anken.ai ay isang taong nasa site mismo ng restoration works. Buong araw siyang nagtatrabaho bilang manggagawa, at saka pa lang niya hinahawakan ang app. Hindi siya full-time na engineer.
Kung bakit isang kompanya ng konstruksyon ang gumagawa ng sariling app, nakasulat iyon sa pahina ng serbisyo. Ang artikulong ito ay talaan ng kung paano ito talaga naibuo. Binalikan namin ang commit history na nasa kamay namin (ang talaan ng mga pagbabago), at isusulat namin ito nang tapat.
Ang unang commit ay “buong sistema”
Sa pinakaluma ng talaan, ganito ang nakasulat.
Initial commit: kumpletong business management SaaS
Ibig sabihin, mas huli itong napasok sa version control kaysa sa pagsisimula ng paggawa. Sa umpisa, basta na lang kami nagsusulat sa sarili naming makina, at nang may hugis na ito saka lang nagsimula ang talaan.
Ito ang bahaging hindi ninyo dapat tularan. Kung may talaan na mula pa sa unang araw, mas marami sanang natira sa “bakit ganito ito ginawa”. Ang 38 talaan na natitira ngayon ay mula lang sa gitna ng kuwento.
Mas kapansin-pansin ang commit na nagpalit ng pangalan kaysa sa nagdagdag ng feature
Habang tinitingnan ang history, ito ang ikinagulat namin mismo.
Ang pangalan ng iisang pahina, tatlong beses naming pinalitan.
商品マスタ → 倉庫・商品 → 在庫・商品
Sa Tagalog, mula sa “product master” tungo sa “bodega at produkto”, tapos tungo sa “stock at produkto”.
Pinalitan din namin ang estado ng trabaho.
引き合い → 見積中
Mula sa “inquiry” tungo sa “ginagawa ang estimate”.
At pinalitan din namin ang pangalan ng papel na pini-print at ibinibigay sa mga kasosyong kontratista.
施工指示書 → 案件シート
Mula sa “construction instruction sheet” tungo sa “job sheet”.
Wala ni katiting na naidagdag na feature sa alinman dito. Ang pinalitan lang ay ang mga salitang lumalabas sa screen.
Ginawa pa rin namin ito dahil may nahalong mga salitang hindi umuubra sa site. Ang “商品マスタ” ay salita ng mundo ng software. Hindi iyon ang binibigkas namin sa site. Ang “引き合い” naman ay iba-iba ang pagkakaintindi ng bawat tao — kung aling yugto ba bago o pagkatapos ng estimate ang tinutukoy nito.
Ang pagpapalit ng pangalan ng papel ang lalong tumalab. Kapag “施工指示書” (construction instruction sheet) ang nakasulat, ang nakakatanggap nito ay pakiramdam ay inuutusan. Ang totoong gusto namin ay sabay naming tingnan ang papel na iyon at kumpirmahin ang pagkakasunod-sunod ng gawain. Kaya ginawa naming “案件シート” (job sheet).
Kung hindi tama ang salita, kahit gaano karaming feature, hindi ito gagamitin. Sa palagay namin, ganito rin sa mga estimate ng konstruksyon.
Mas mahirap ang magbawas kaysa magdagdag
Sa loob ng history, ganito ang magkakasunod.
- Pinasimple ang pahina ng trabaho ayon sa status
- Pagpapasimple ng screen, ikalawang yugto
- Pinagsama ang preparation list at ang construction checklist sa iisang “site list”
- Estado ng trabaho: 4 na button → 1 badge at menu na may kumpirmasyon
- Tinanggal ang field para sa lokasyon ng susi (pinag-isa sa free-text field)
Mga commit na nagbubura ng ginawa na namin.
Ang field para sa “lokasyon ng susi” ay kami mismo ang gumawa, at kami rin ang nagbura. Akala namin mas maginhawa kung nandoon ito, pero mas mabilis palang isulat sa free-text field ang “kukunin sa XX Realty”. Habang dumarami ang field, pakiramdam ninyo kailangan ninyong punan ang lahat, at doon hihinto ang kamay ninyo.
Ganoon din sa apat na button na magkakatabi. Dahil sa takot na mapindot ang mali, wala tuloy napipindot kahit isa. Nang pagsamahin namin ito sa isa at lumabas ang kumpirmasyon kapag pinindot, hindi na nag-aalangan ang tao.
Ang natutunan sa site — simple pero malubha
Tatlong talaan ang buong-buong napunta rito.
- Pag-iwas sa biglaang paglundag ng screen sa buong app (pinirmi ang taas ng nilalaman)
- Naaalala at naibabalik ang scroll position kada tab
- Pinirmi ang taas ng nilalaman, at ang loob lang ang nagsi-scroll
Ang problema ay kusang gumagalaw ang screen.
Kapag nakaupo kayo sa harap ng computer, hindi ito masyadong nakakaabala. Iba sa site. May mga pagkakataong hawak ninyo ito sa isang kamay, nakatayo sa hagdan, at naka-guwantes pa. Kapag ang linyang babasahin ninyo ay bumaba dahil sa timing ng pag-load, kailangan ninyo pang hanapin ito muli.
Isa pa, may idinagdag kaming “ibalik sa dati” (undo) sa bandang huli. Sa mga operasyong tulad ng sabay-sabay na pag-order, o ng paggawa ng marami nang minsanan mula sa template, nilagyan namin ng kumpirmasyon at ng pagkansela. Kapag isang kamay lang ang gamit ninyo mula sa site, napipindot ninyo ang mga bagay na hindi ninyo balak pindutin. Mas makatotohanan ang sistemang kayang ibalik ang mali kaysa sa sistemang hindi nagkakamali.
Huwag ilagay nang dalawang beses ang iisang bagay
Dati, pagkatapos gawin ang detalye ng estimate, gumagawa pa kami ulit ng listahan ng gagawin sa site. Dalawang beses naming isinusulat ang parehong bagay.
Kaya ginawa namin na awtomatikong bumuo ng draft ng site list mula sa detalye ng estimate. Kapag isinulat ninyo sa estimate ang “pagpapalit ng wallpaper 40㎡”, lalabas ito na may tantiyang checklist at materyales sa panig ng site. Kung hindi tama, itinatama namin.
Ito ang bahaging ipinapasa namin sa AI. Hindi namin ito pinapagawa mula sa wala — pinapalabas namin ang draft at ang tao ang nagtatama. Hindi pa ito sapat na matalino para lubusang pagkatiwalaan, pero sayang naman kung hindi ito gagamitin — iyon ang distansyang inayos namin.
Ang mga hindi pa namin nagagawa
Isusulat namin ito nang tapat.
- Hindi pa hiwalay ang database para sa development at ang para sa production. Tiyak na hihiwalayin namin ito bago pumasok ang unang kliyente
- Kulang pa ang pagkakagawa para sa iPhone (naayos na ang screen, pero hindi pa napipino ang paggana sa mga site na mahina ang signal)
- Ang memo ng mga feature na gusto naming gawin ay mas mabilis pang humahaba kaysa sa pagkabura nito
Dahil kakaunti kami, may hangganan ang bilis ng pagbuo. Lagi pang mas marami ang gusto naming gawin kaysa sa kaya naming gawin.
Kung bakit kami pa rin ang gumagawa nito
Kung ipapagawa namin sa labas, malamang na mas mabilis at mas maganda ang lalabas.
Kami pa rin ang gumagawa nito dahil kayang ayusin sa mismong araw na iyon ang napansing “hindi mapipindot ito kapag naka-guwantes”. Kapag kailangan pang sumulat ng specification, kumuha ng estimate, at maghintay ng susunod na meeting, kadalasan ay nawawala na ang napansing iyon.
Ganoon din sa konstruksyon: ang kaya bang ayusin agad sa mismong lugar ang napansin doon ang nagtatakda ng kalalabasan ng trabaho. App man o site, pareho lang ito sa palagay namin.
Inihahanda namin ang anken.ai para magamit din ng ibang kompanya sa konstruksyon at interior at ng mga manggagawa. Wala pa kaming masasabing petsa ng paglabas at presyo. Kapag napagpasyahan na, ipapaalam namin dito sa OS Notes.
Tungkol sa mga teknikal na napili namin, isinulat din namin ito sa Kung bakit namin pinili ang Supabase.
