Klien tidak ingin membayar proyek karena saya menggunakan pembuat kode

Aug 16 2020

Seluruh situasi tampak omong kosong bagi saya, tetapi saya ingin opini kedua karena itu terlalu jauh.

Sedikit konteks ... Saya seorang freelancer, saya menulis di VBA atau c #. 75% proyek adalah proyek mikro di Excel.

Bertahun-tahun saya membangun perpustakaan saya sendiri dan generator kode. Generator kode menulis beberapa kelas dan metode semi-standar. Hal-hal yang memiliki struktur tetapi sering kali membutuhkan penyesuaian manual untuk versi finalnya. Untuk mendapatkan kode modular di mana saya dapat memodifikasi beberapa bagian secara manual dan masih meregenerasi bagian lain tanpa kehilangan perubahan, generator menggunakan tag untuk membungkus setiap "bagian" dan ketika saya mengirimkan pekerjaan, saya tidak menghapusnya.

Klien benar-benar senang setelah saya mengirimkan proyek (semua frasa yang ditetapkan, "sekarang kita akan melakukan ini yang lain ..." dll.). Beberapa hari kemudian saya menerima email di mana dia menanyakan <Sometag>baris apa ini . Saya menjawab dengan jujur. Tag yang digunakan oleh pembuat kode untuk menemukan bagian tertentu dari kode. Dia tertarik dengan VBA, jadi saya pikir penjelasan yang berwawasan sangat dihargai.

Seminggu kemudian saya mengiriminya faktur dan keesokan harinya dia menjawab bahwa karena saya belum benar-benar menulis pekerjaan itu, harga yang disepakati tidak lagi berlaku . Sekarang dia ingin membayar kurang dari setengah harga yang disepakati. (???)

Tetapi lembar kerja masih melakukan apa yang seharusnya dilakukan. Generator kode adalah milik saya. Saya menulis setiap baris dan ada ratusan jam kerja di dalamnya.

Apa yang harus saya lakukan? Apakah tidak adil menggunakan alat seperti itu? Apakah klien ada gunanya? Pada proyek ini, ada sekitar 9,5k baris kode. 3k dari perpustakaan saya, kira-kira. 4k dari generator dan sisa tulisan tangan. Saya setuju bahwa ini bukan kode yang sangat deskriptif, tapi itu bukan kode IMO yang buruk. Dalam kontrak, (tetapi juga melalui email dan panggilan suara) kami tidak pernah sepakat atau bahkan berbicara tentang apa pun tentang bentuk kode. Dia mengatakan kepada saya bahwa dia dan karyawannya mencoba melakukan hal seperti ini dan hasilnya tidak berhasil.

Kekhawatiran terbesar saya dalam mendorong terlalu keras adalah bahwa dia dapat menulis ulasan negatif di Google Bisnisku. Saya belum pernah berada dalam situasi seperti ini dan saya tidak ingin reputasi saya dikompromikan untuk proyek yang relatif kecil. Kompensasi yang terlibat juga tidak cukup tinggi untuk menjamin tindakan hukum.

Jawaban

141 TomTom Aug 16 2020 at 00:50

Agensi koleksi. Dia bukan klien tapi masalah, dan "klien" itu pada dasarnya tidak sebanding dengan usaha Anda. Faktur, lanjutkan ini ke agen penagihan secepatnya untuk menyingkirkannya secara mental. Dia tidak ada gunanya. Bagaimana Anda melakukan sesuatu adalah keputusan ANDA, bukan keputusannya.

58 JoeStrazzere Aug 16 2020 at 01:14

Apa yang harus saya lakukan? Apakah menurut Anda tidak adil menggunakan alat seperti itu?

Jika saya jadi Anda, saya akan menjelaskan kepada klien bagaimana menggunakan generator kode yang Anda buat memungkinkan Anda memberikan solusi hebat, tetapi murah, yang memenuhi kebutuhan pelanggan. Dan saya akan menunjukkan bahwa solusi yang diberikan secara jelas memenuhi kebutuhan klien ini, mengingat betapa bahagianya mereka pada awalnya.

Saya mungkin menawarkan untuk merobek faktur jika klien tidak menginginkan solusi pada harga saat ini, dan berjanji secara tertulis untuk membuangnya dan kehilangan lisensi mereka untuk menggunakannya. Itu adalah solusi yang sangat efektif jika Anda mengharapkan bahwa klien akan membutuhkan pemeliharaan dari Anda pada suatu saat nanti. Anda tidak ingin terus-menerus melayani klien yang tidak bahagia.

Apakah klien ada gunanya?

Tidak, klien tidak memiliki poin yang valid. Karena klien mendapatkan apa yang mereka kontrak, mereka harus membayar harga yang disepakati. Tidak peduli bagaimana kode itu dibuat.

Meskipun demikian, Anda mungkin menghindari masalah di masa mendatang jika Anda mendiskusikan proses Anda dengan klien di masa mendatang sebelum menandatangani kontrak.

generator menggunakan tag untuk membungkus setiap "bagian" dan ketika saya mengirimkan pekerjaan saya tidak menghapusnya.

Anda mungkin ingin mempertimbangkan kembali bagian "jangan hapus".

Perhatian terbesar saya untuk solusi "keras" adalah dia menulis ulasan negatif. Saya belum pernah berada dalam situasi seperti ini dan saya tidak ingin reputasi saya dikompromikan untuk proyek yang relatif kecil.

Anda harus memutuskan seberapa besar nilai ulasan negatif potensial bagi Anda.

32 PeteCon Aug 16 2020 at 05:27

Beri tahu klien bahwa jika proyek ditulis dari awal, akan memakan waktu lebih lama, memiliki lebih banyak bug, dan tidak pernah dikirimkan tepat waktu. Sekarang, bagaimana dia ingin membayar? Kartu kredit atau Cek?

Dan, itulah komunikasi terakhir Anda dengannya. Kontrak tersebut menghasilkan solusi untuk masalah yang dia hadapi, dalam anggaran dan skala waktu. Anda melakukannya - kesalahan Anda adalah cukup sopan untuk menjelaskan proses Anda.

Anda tidak membutuhkan klien seperti ini. Jika Anda memiliki kontrak, pergilah ke pengadilan klaim kecil, dan dapatkan bayaran. Jika tidak, Anda mungkin harus menghapusnya - lain kali mendapatkan kontrak (catatan: jika Anda menghapusnya, pastikan pengacara Anda memberi tahu klien bahwa mereka tidak memiliki lisensi untuk menggunakan perangkat lunak yang Anda tulis untuk mereka)

25 MatthewGaiser Aug 16 2020 at 01:18

Untuk beberapa alasan orang berpendapat bahwa hanya biaya marjinal yang nyata, bukan biaya modal. Anda melihat sikap ini di mana-mana, mulai dari obat-obatan hingga retensi dan perekrutan. Itu sikap yang aneh, tapi umum.

Dan itu selalu salah.

Punya teman pengacara? Tindakan hukum bisa saja berupa surat permintaan.

22 Kilisi Aug 16 2020 at 06:40

Sebagai Freelancer, Anda tidak memberikan ruang gerak untuk hal-hal semacam ini. Jaga agar tetap singkat dan profesional dan menuntut pembayaran. Jangan membahasnya. Kirimkan kembali faktur dengan catatan singkat bahwa itu sudah dinegosiasikan, Anda telah memenuhi pihak Anda dan mengharapkan pembayaran, dan jika mereka tetap menolak untuk membayar Anda atas pekerjaan yang telah diselesaikan, harap beri tahu Anda.

Lalu beri waktu, jika tidak ada pembayaran dalam jangka waktu yang wajar, maka Anda bisa melihat langkah apa yang harus diambil.

Jangan frustrasi dan jangan langsung ngamuk, lakukan ini dulu sebelum hal lain. Banyak orang mencoba menghindari pembayaran, Anda terbiasa sebagai freelancer.

18 Steve Aug 16 2020 at 02:42

Jika dia mengira Anda "curang", mungkin bukan "pembuat kode", deskripsi yang lebih baik adalah bahwa Anda "dikompilasi dari bahasa deskripsi khusus" atau "dikompilasi dari alat grafis". Saat Anda menggunakan pesawat listrik atau mesin CNC, Anda jarang menyebutnya "generator kayu".

Apakah keluhannya yang sebenarnya mungkin karena Anda belum menyerahkan kode sumber yang sebenarnya untuk pemeliharaan di masa mendatang? Ada kemungkinan klien hanya bersikap tidak masuk akal, tetapi masalah komersial yang jauh lebih kredibel (dan masuk akal) mungkin adalah Anda telah mengikat pekerjaan ke alat milik Anda, tanpa membiarkan klien memiliki alat untuk pemeliharaan.

Sebuah analogi yang baik adalah jika klien meminta Anda untuk merancang mesin pembakaran, tetapi alih-alih menggunakan baut dan ulir standar metrik, Anda menggunakan beberapa sistem yang tidak jelas sepenuhnya dari rancangan Anda sendiri yang membuatnya sangat mahal untuk merawat mesin di masa depan tanpa klien. mengacu kembali kepada Anda.

Anda mungkin tidak bermaksud curang dalam menggunakan alat kustom Anda dan itu hanyalah perangkat untuk meningkatkan produktivitas Anda, tetapi bukan hal yang aneh bahwa kode yang dibuat oleh alat lebih kompleks atau kurang idiomatis daripada kode yang dibuat dengan tangan.

Klien mungkin mengambil pandangan bahwa kecuali Anda membuat alat pembangkit tersedia untuknya, maka kapan pun Anda menghemat waktu membuat kode dengan alat ini, akan membebani dia di masa depan dalam biaya penguncian untuk pemeliharaan, atau biaya penulisan ulang aplikasi dari awal ketika dia ingin orang lain memodifikasinya. Mungkinkah ini sifat keluhan yang sebenarnya?

11 DaveG Aug 16 2020 at 03:03

Tidak, pelanggan tidak benar, dan tidak, Anda tidak melakukan kesalahan apa pun. Anda mengirimkan produk yang diminta pelanggan dengan harga yang menurut pelanggan masuk akal. Bagaimana Anda menyelesaikan pembuatan produk sama sekali tidak relevan.

Apa yang dapat Anda lakukan untuk memuluskan pelanggan adalah menjelaskan bahwa semua perangkat lunak dikembangkan menggunakan alat ... kompiler, perpustakaan, generator kode, dll. Semua alat untuk membuat perangkat lunak lebih efisien, seperti tukang kayu yang melakukan renovasi rumah memiliki alat yang membuat pekerjaannya lebih efisien. Fakta bahwa Anda menggunakan alat telah diperhitungkan dalam harga yang Anda kutip kepada pelanggan. Jika Anda tidak menggunakan generator kode, Anda harus mengenakan biaya lebih untuk menutupi biaya yang meningkat.

8 BeKindToNewUsers Aug 16 2020 at 13:41

Jaga agar tetap singkat dan jujur ​​....

Harga yang saya kutip sudah termasuk menggunakan generator kode. Seandainya saya tidak menggunakan generator kode, saya harus mengenakan biaya lebih untuk proyek tersebut. Jika ada yang tidak memuaskan dengan hasilnya, beri tahu saya dan kita bisa membahas penyelesaiannya.

Juga pertimbangkan kemungkinan bahwa dia memiliki daging sapi yang sah dengan kode yang dihasilkan. Misalnya, mungkin kodenya tidak mudah diubah.

5 gnasher729 Aug 16 2020 at 06:08

Sebagai klien (dan mengetahui cara kerja pengembangan perangkat lunak), saya ingin menyerahkan pengiriman Anda ke perusahaan lain tahun depan, dan membiarkan perusahaan tersebut melakukan perubahan atau penambahan, dengan harga normal.

Jadi jika apa yang Anda berikan membuat hal itu sangat sulit, maka pelanggan ada benarnya. Jika tidak lebih sulit karena alat Anda maka tidak. Dan bahwa Anda menggunakan alat untuk berkembang lebih efisien bukanlah alasan untuk tidak membayar.

Tapi yang paling penting adalah apa yang tertulis dalam kontrak. Jika Anda menyampaikan apa yang tercantum dalam kontrak, klien harus membayar.

5 aliential Aug 16 2020 at 11:46

Tampaknya ada kurangnya komunikasi di awal. Jika pelanggan menginginkan kode dasar yang dapat diedit dengan mudah untuk diubah sesuai pilihannya, dan untuk mempelajari sedikit VB untuk dirinya sendiri, maka dia dan Anda sama-sama tidak mengetahui niat satu sama lain.

Beberapa generator kode memberikan kode yang sangat bertele-tele dan tidak terbaca, jadi saya tidak tahu mengapa orang berkomentar tanpa melihat kode, atau permintaan pekerjaan ... jika dia berkata "karena saya merancang kode / proyek saya sendiri yang terintegrasi dengan pekerjaan Anda" misalnya ... Kami tidak tahu jumlah yang disepakati dan volume pekerjaan. Dia mungkin telah menandatangani perjanjian dan harga berdasarkan pengkodean pekerjaannya sendiri secara manual, yaitu dia mengharapkan lebih banyak pekerjaan selesai dan hasil manual. Secara pribadi saya akan memperingatkan klien detail generator kode jika dia adalah programmer junior tanpa banyak uang yang membutuhkan kode yang dapat diedit.

Ada terlalu banyak variabel dan variabel yang tidak diketahui dalam pertanyaan ini untuk dianggap klien sebagai entitas nakal berwajah, kami bahkan tidak memiliki transkrip dari alasan keluhan, atau permintaan kode. Berapa jumlah garis dan harganya? 100 atau 10000? Saya terkejut bahwa tidak ada yang menganggap jika klien memiliki sisi kemanusiaan untuk diceritakan atau jika dia memiliki emosi atau merupakan individu atau kelompok junior, jika tidak ini adalah penilaian sepihak.

TheonethatlovesFP Aug 18 2020 at 14:10

Saya tidak akan mencoba menjawab langsung pertanyaan tersebut karena Anda sudah memiliki banyak nasihat yang bagus di sini (secara pribadi saya melihat seorang klien mengambil alasan apa pun yang dapat mereka pikirkan untuk tidak membayar. Seandainya bukan pembuat kode, dia akan menemukan beberapa alasan lain ).

Saran saya untuk masa depan, bagaimanapun, adalah, untuk menggunakan "Uji coba gratis selama 30 hari, maka Anda harus memasukkan kunci lisensi untuk terus menggunakan" skema dalam produk kode Anda.
Yang saya maksud dengan 30 hari, tentu saja, berarti "Waktu yang dibutuhkan untuk mendapatkan bayaran", bukan tepat 30 hari.

Sekarang, jika klien mengeluh ... mereka tidak ada gunanya!
Anda mendapatkan uji coba yang berfungsi penuh untuk melakukan pengujian penerimaan pengguna dan memverifikasi kesesuaian untuk bertugas.
Jika, jika , Anda membayar, kontrak mewajibkan saya memberi Anda kunci lisensi ... yang akan saya lakukan, tentu saja.
Anda tidak membayar dan mencoba untuk meniduri saya ?! Semoga Anda menikmati melihat betapa bermanfaatnya aplikasi saya bagi Anda, seberapa banyak Anda bisa mendapatkan keuntungan darinya ... seandainya Anda hanya membayar.

Jika Anda bisa, secara teknis, saya akan mengatakan melangkah lebih jauh dan, ketika uji coba selesai dan tidak ada lisensi yang diberikan, tunggu, katakanlah 3 hari, dan kemudian memicu pencopotan / penghapusan lengkap kode produk Anda dari mesin target.
Anda tidak ingin klien merekayasa balik jalan mereka ke lisensi yang valid dan tidak membayar Anda apa yang Anda hutangkan.

Pastikan saja pengacara Anda membuat semua ini legal dalam kontrak.
Anda tahu, "melegalkan" menjadi "Produk berkode adalah satu-satunya milik ToninCorp, hingga titik di mana kompensasi yang disepakati telah dikirimkan oleh klien ke ToninCorp, di mana kepemilikan produk akan ditransfer secara otomatis ke klien.
Hal ini berlaku tidak memberikan hak kepada klien untuk layanan pemeliharaan oleh ToninCorp tanpa kompensasi lebih lanjut ".

Saya minta maaf Anda ditipu. Sial dan itu terjadi pada kita masing-masing, bahkan yang paling dijaga.
Dapatkan apa yang Anda miliki dengan segala cara.
Satu ulasan buruk itu buruk, benar. Mendapatkan nama untuk menjadi penurut adalah penghujung karier!
Ada alasan mengapa massa tidak membiarkan siapa pun lolos, bahkan jika mereka mencuri permen karet! Jika Anda mendapatkan nama seseorang yang dapat diintimidasi dan dimanfaatkan ... mereka akan menjadi satu-satunya klien yang mendatangi Anda.
Ini adalah spiral kematian karier.
Jangan!