Lihat judul, tetapi saya meminta dari perspektif teknis, tidak
Ajak keponakan perempuan saya yang berusia 40 tahun berkencan atau Anda dipecat.
Lihat judul, tetapi saya meminta dari perspektif teknis, tidak
Ajak keponakan perempuan saya yang berusia 40 tahun berkencan atau Anda dipecat.
Jawaban:
Untuk memasarkan film thriller sci-fi Neal Stephenson, Snow Crash, saya diminta untuk menulis virus komputer "jinak". Itu akan "ramah" berpura-pura mengambil alih komputer pengguna dan mengganti layar dengan salju, alias, "salju kecelakaan." Setelah sekitar satu menit bersalju, salju akan menghilang dan digantikan oleh iklan untuk buku itu. Ini akan menjadi "jinak," Anda tahu. Virus akan menyebar melalui cara normal, tetapi tidak ada yang keberatan karena setelah mengambil alih komputer mereka "Anda hanya akan mendapatkan iklan yang menyenangkan dan kemudian merasa lega bahwa tidak ada hal buruk yang terjadi pada komputer Anda."
Saya sebenarnya disuruh melakukan ini di perusahaan besar dunia. Saya harus menulis memo yang menjelaskan semua undang-undang ini akan melanggar dan semua 17 hal buruk yang bisa terjadi jika mereka benar-benar membuat saya menerapkan ini.
"DLL yang kamu tulis ini hanya 17kb. Bisakah kamu menambahkan beberapa kode untuk membuatnya lebih besar? Klien membayar kita banyak uang, dan kami ingin mereka mendapatkan nilai uang mereka."
Gunakan Visual SourceSafe.
"Kamu tahu, program Cobol berumur 20 tahun yang luar biasa ini yang berisi tumpukan dan tumpukan aturan bisnis yang dikode keras yang kurang lebih mendefinisikan perusahaan kita? Maukah Anda mengubahnya menjadi .NET?"
Astaga.
Kami ditayangkan dalam beberapa minggu.
Semoga saya beruntung ..
Adikku dan aku sedang mengerjakan situs web multimedia untuk bintang rock yang sangat terkenal bertahun-tahun yang lalu.
Ketika klien melihat situs tersebut, ia memperhatikan beberapa artefak kompresi pada beberapa JPEG dan bertanya apa yang salah dengan mereka. Kami menjelaskan bahwa gambar memerlukan kompresi untuk keperluan bandwidth dan bahwa gambar saat ini dikompresi pada kualitas sekitar 80%. Dia tersinggung dan mengatakan sesuatu
Saya belum sampai di tempat saya hari ini dengan melakukan hal-hal di 80%, set ke 100%.
Kami mencoba menjelaskan bagaimana pengaruhnya terhadap pengguna, tetapi ia tidak memilikinya. Ini menghasilkan situs web "dunia maya" paling lambat yang pernah ada. Ini sebenarnya terjadi .
Kami perlu menunda peluncuran situs oleh dua minggu karena Merkurius sedang retrograde dan ini waktu yang buruk untuk memulai hal-hal baru.
Jelas setelah membaca beberapa majalah bisnis di pesawat tentang bagaimana XML adalah teknologi baru yang panas (sekitar tahun 2002), salah satu eksekutif kami bertanya kepada saya apakah aplikasi kami menggunakan XML, ketika saya bilang tidak, dia bertanya apakah kita bisa menambahkannya.
Sekarang, saya tidak berbicara tentang fitur untuk mengimpor / mengekspor file dalam format XML, ia hanya ingin itu menjadi bagian dari arsitektur tanpa alasan selain populer saat ini dan akan memberikan kredibilitas ke aplikasi kami.
"Saat ini, nama pengguna harus unik, dan kata sandinya tidak. Bisakah kita membuatnya sebaliknya?"
Sekitar 7 tahun yang lalu saya bekerja di toko perangkat lunak dipesan lebih dahulu yang memutuskan untuk menjual salah satu produknya. Itu adalah rangkaian operasi end-to-end untuk beberapa industri. Ya, industri ini tidak dikenal sebagai super teknologi, jadi entah bagaimana kami akhirnya memberikan dukungan teknis pihak ketiga untuk server dan infrastruktur TI mereka alih-alih memberikannya kepada konsultan TI bisnis kecil yang independen.
Suatu hari, server pelanggan mengalami kerusakan disk. Server yang kami jual itu dikonfigurasikan dengan pengontrol Adaptec RAID, yang diatur untuk mirror RAID 1. Basis data aplikasi mereka adalah roti bakar. Mereka tidak melakukan backup dalam beberapa bulan. Cadangan yang mereka lakukan tidak dapat digunakan. Mereka akhirnya kehilangan 8 bulan data. Mereka menyewa konsultan TI untuk menangani pekerjaan investigasi ini.
Panggilan telepon pun terjadi, dan manajer penjualan (dikenal karena fitur-fitur yang tidak mungkin menjanjikan) tampaknya mengatakan kepada mereka bahwa itu akan diurus, dan menuliskannya dalam kontrak.
Manajer penjualan berjanji kepada pelanggan bahwa kami akan memastikan bahwa basis data aplikasi dan file terkait aplikasi lainnya tidak akan pernah direplikasi oleh pengontrol RAID jika file tersebut dianggap rusak. Konfigurasi juga tidak diperlukan. Ya. Kami diberitahu untuk memberikan fungsi ini dalam 2 minggu, atau pelanggan akan memecat kami.
Jadi manajer program - yang memiliki beberapa produk CRM perusahaan besar, dan keberhasilan pengembangan serius lainnya, di bawah ikat pinggangnya - dan saya mengadakan pertemuan dengan COO, dan manajer penjualan. Manajer program merinci betapa gilanya, tidak mungkin, dan tidak mungkin ini. Manajer penjualan (latar belakang militer) hanya akan berteriak di wajahnya (secara harfiah!), "Saya tidak peduli! Betapa sulitnya untuk membuat hal RAID bukan RAID ?! Data mereka akan baik-baik saja di drive lain jika Hal RAID belum mengacaukannya! "
Di akhir pertemuan itu, manajer program berhenti dengan pemberitahuan nol hari. Jadi saya sekarang ditugaskan dengan ini. Selama minggu berikutnya, saya mengajukan petisi kepada Adaptec dan LSI Logic untuk menyediakan seorang insinyur untuk panggilan konferensi, hanya untuk tertawa di hadapan manajer penjualan.
Pada akhirnya, mereka menurut, dan menahan tawaran mereka. Dan mereka menjelaskan secara terperinci betapa tidak masuk akalnya itu. Pria dari LSI itu sangat kasar - dia tidak mengenakan mantel apa pun.
Saya tidak harus mengimplementasikan fitur ini. Salah satu yang saya harus terapkan adalah skema keamanan khusus yang diminta oleh pelanggan, yang akan memungkinkan mereka untuk mengaktifkan kontrol aplikasi apa pun - berdasarkan kontrol dengan kontrol - sebagai terlihat, dinonaktifkan, diaktifkan, hanya-baca, atau baca-tulis . Secara teori, ada 146.000 kombinasi. Dan jika Anda secara tidak sengaja mengacaukan dengan mengatakan ... menonaktifkan grup kontrol, Anda akan memiliki efek samping yang tidak disengaja. Tak perlu dikatakan, ketika saya diberi ultimatum bahwa itu harus diterapkan, saya juga berhenti dengan pemberitahuan nol hari.
+1
untuk "berhenti dengan pemberitahuan nol hari", karena kadang-kadang Anda hanya perlu pergi, dan beberapa orang tidak pernah mendapatkannya dan terus mengacau.
Mereka meminta saya untuk mencari Produk Komersial yang dapat menemukan dan memperbaiki bug kode sumber secara otomatis.
Masih mencari..sejak tahun 2001 :).
Saya pernah memiliki spesifikasi klien yang secara harfiah meminta kode yang mampu melakukan perjalanan mundur dalam waktu.
Majikan saya memanen data untuk klien, dan kami harus mengirimkannya dalam format file X pada interval sepuluh menit antara pukul 09.00 dan 17.00, simpan untuk pengiriman akhir, yang dalam format Y (hanya X dengan catatan kaki yang berbeda). Saya melakukan hal itu ... dan mereka ketakutan. Kami mengumpulkan data volume rendah, dan benar-benar hanya memiliki satu atau dua poin data untuk dikirimkan pada hari tertentu.
"Hentikan SPAMMING KAMI DENGAN KOSONG KOSONG !!!" mereka menangis. "LIMA K SETIAP SEPULUH MENIT MENYEDIAKAN BANDTUBE KAMI!"
Baik. Jadi, kode saya diperiksa setiap sepuluh menit, dan hanya dikirimkan jika ada sesuatu untuk dikirim. Cukup adil.
"TAPI FILE TERAKHIR HARUS DI FORMAT Y !!!" teriak mereka. "TEKNOLOGI MODERN MENINGGALKAN DAN ANGER KAMI! TETAPI ATAU KITA AKAN MENGALAHKAN ANDA DENGAN MASTODON FEMUR! *"
(* - Mungkin saya salah mengingat bagian dari percakapan.)
"Jadi, aku hanya mengirim file jika ada data baru untuk dikirimkan."
"IYA."
"Dan pengiriman terakhir untuk hari itu seharusnya format file yang berbeda."
"IYA."
"Kecuali aku tidak punya cara untuk mengetahui file mana yang akan menjadi hari terakhir sampai akhir hari."
"IYA."
"Jadi satu-satunya cara bagi saya untuk mengimplementasikan ini adalah dengan menulis kode yang mundur pada waktunya di akhir hari untuk mengulang format pada apa yang ternyata merupakan pengiriman terakhir."
"BISAKAH KAU MEMILIKINYA MELAPORKAN SKOR OLAHRAGA? KITA AKAN KEMBALI KE MASA DEPAN II. BIFF TANNEN MEMBUAT KITA SENANG."
Saya menolak, sebagian karena melanggar kausalitas adalah praktik pemrograman yang tidak etis, sebagian karena CPAN.org tidak memiliki modul yang akan membiarkan saya melakukannya. (Saya memeriksa.) Pada akhirnya, mereka mengizinkan saya untuk mengirim file dalam format Y pada akhir hari, terlepas dari apakah itu memiliki data aktual atau tidak. Saya cukup yakin bandwidth mereka selamat dari hit.
+1
untuk "melanggar kausalitas adalah praktik pemrograman yang tidak etis". Sekarang ada aturan yang perlu lebih diperhatikan.
Tanpa alasan yang jelas, saya dibawa ke pertemuan pribadi, dan diberitahu untuk tidak memeriksa apakah komputer saya sedang dipantau - termasuk, tidak pernah memeriksa manajer tugas saya karena alasan apa pun. Saya bertanya apakah mereka sedang memantau komputer saya, dan diberi tahu (secara kasar) "ini hanya tindakan pencegahan - Anda tahu, pengacara kami mengatakan kepada kami untuk memberi tahu karyawan tentang hal ini - tetapi Anda tahu, kami tidak bisa mengatakannya - - tapi saya tidak memonitornya sekarang. "
(dorongan, saya pikir mereka sedang memantau komputer saya, hanya saja tidak ketika mereka mengatakan kepada saya untuk tidak mencari program pemantauan. Bahkan, beberapa minggu kemudian, saya datang lebih awal dan benar-benar menyaksikan mouse bergerak di sekitar layar saya seolah-olah oleh jarak jauh - jadi saya melihat melalui jendela CEO dan melihatnya dari jarak jauh mengklik komputer saya dari laptop-nya.)
Saya pernah melakukan "diskusi" panjang dengan bos berambut runcing yang bersikeras bahwa kami dapat menyimpan 2 dalam tipe data sedikit karena itu "hanya satu digit."
Hal paling bodoh yang pernah saya lakukan adalah menulis ulang proyek yang sangat besar. Itu sekitar 350k baris, semua C (dengan perl kecil dicampur untuk skrip 'helper') dan bekerja dengan baik tidak peduli apa yang klien lakukan.
Hampir setahun kemudian, kami memiliki:
Pada dasarnya, kami tidak mencapai apa pun yang tidak dapat dicapai oleh refactoring yang masuk akal. Tapi bos saya senang, kami menyingkirkan skrip pembantu.
Saya menganggapnya sebagai pemborosan waktu dan kode yang ada yang paling mengerikan yang pernah saya lihat.
Klien: Kami telah menggunakan perangkat lunak basis data Anda selama beberapa tahun, mengembangkan aplikasi kami sendiri dengannya, dan menelepon Anda dari waktu ke waktu untuk bantuan.
Saya: Ya, kami menghargai melakukan bisnis dengan Anda.
Klien: Ya. Setiap kali kami menelepon, Anda memberi tahu kami cara menggunakan fitur baru, atau Anda membantu kami men-debug penggunaan kami, atau memberikan solusi untuk beberapa masalah.
Saya: Tentu, kami selalu senang bisa membantu.
Klien: Kadang-kadang, produk Anda memiliki bug aktual di dalamnya, dan perusahaan Anda memperbaikinya dan memberi kami pembaruan perangkat lunak.
Saya: Kami melakukan yang terbaik.
Klien: Ya, yang kami butuhkan dari Anda sekarang adalah kepastian bahwa kami tidak akan memiliki masalah lagi.
Me: . . .
Saya telah diminta untuk menulis presentasi perangkat lunak kami kepada pelanggan potensial multinasional utama yang kami gunakan teknik pengkodean "kode spaghetti".
Tentu saja, kita di Italia ... kedengarannya bagus.
Mengubah sintaks saya menyoroti warna agar sesuai dengan yang digunakan dalam sistem kontrol versi.
Ayo lihat:
Tulis program dalam C ++
Dapatkah Anda mengambil laporan 10 halaman yang saya minta Anda siapkan sebagai dokumen kata dan menjadikannya presentasi yang menarik karena saya benar-benar pemikir visual dan tidak akan benar-benar membaca laporan tertulis yang saya minta Anda buat?
Ok, saya ingin Anda memindai gambar rumah ini, ketika saya kembali, Anda harus dapat menunjukkan kepada saya bagian belakangnya.
"Aku tidak suka cara kerja database Oracle ini. Kenapa kita tidak menulis database kita sendiri?"
(Harus diakui, ini sudah lebih dari 15 tahun yang lalu, tapi tetap saja!)
Saya diminta untuk memuat artikel dari situs web pesaing di dalam iframe yang akan berada di dalam kulit situs web kami, membuatnya seolah-olah itu berasal dari kami.
Bagi saya, yang paling gila (dan sangat mungkin, paling lucu) adalah
Lihat ini 10 juta baris kode dalam (teknologi web out-date)? Tulis kompiler untuk mengubahnya menjadi situs Asp.net yang berfungsi.
Itu tidak pernah memuntahkan versi yang berfungsi (tentu saja, saya mencoba mengatakan kepada mereka itu tidak praktis), tapi itu menyenangkan.
Salah satu fitur utama dari aplikasi yang dikembangkan oleh perusahaan kami adalah kemampuan untuk mencari dokumen dalam jumlah besar dengan teks lengkap dari dokumen tersebut. Pesaing membuat klaim berikut dalam presentasi pemasaran kepada salah satu klien kami,
Teknologi pencarian kami lebih unggul karena tidak hanya mencari teks dokumen, tetapi juga mencari 'bit dan byte' dari file aktual dalam bentuk biner.
Mereka memberikan contoh konyol tentang bagaimana repersentasi ascii desimal dari kata "boot" dan "boat" jauh lebih mirip daripada kata-kata yang sama dalam bentuk biner, ketika Anda membandingkan angka numerik aktual dalam representasi. Jadi pencarian berdasarkan 1 dan 0 lebih akurat mencerminkan betapa miripnya kedua kata itu secara visual, dan dengan demikian meningkatkan daya ingat.
Tentu saja saya ditugasi untuk meneliti teknik ini, yang saya asumsikan adalah hasil dari seorang tenaga pemasaran yang benar-benar salah paham tentang seorang programmer di suatu tempat, dan menyusun tanggapan yang dapat kami sertakan dalam proposal kami.
Tim kecil programmer, bos ingin kita melakukan sistem reservasi tiket untuk maskapai kecil (tentu saja dalam jangka waktu yang sangat singkat). Tim berkata:
- seperti yang dapat Anda bayangkan, kami akan membutuhkan beberapa penguji untuk proyek ini
Bos berkata:
- jangan khawatir, belajarlah dari industri mobil. Mereka mengingat mobil dari waktu ke waktu: pengguna akan melakukan pengujian.
Saya adalah bagian dari tim pendukung mainframe yang melakukan pergeseran dengan tim pendukung lainnya di pusat data. Setelah giliran kerja, kami biasanya mengadakan pengarahan dengan manajer dan tim giliran kerja berikutnya. Suatu hari direktur baru kami muncul dan mengajukan pertanyaan: "Mengapa beban CPU rata-rata selama shift Anda hanya 72%, sementara shift sebelumnya menunjukkan hampir 95%? Saya pikir jika kami berusaha sangat keras, kami akhirnya bisa mencapai 100% CPU load! "
Sekitar 12 tahun yang lalu ketika saya masih kuliah saya mengerjakan aplikasi pemodelan data untuk Windows. Proyek ini hampir selesai setelah sekitar 60.000 baris kode Win32, Anda tahu, penargetan kode platform Windows. Kemudian klien mengatakan aplikasi juga perlu dijalankan "di web". Dia kesulitan memahami bagaimana perubahan persyaratan "kecil kecil" ini dapat berdampak besar pada proyek. Saya memulai dari awal di Jawa tetapi akhirnya berhenti dari proyek sebelum selesai.
Saya sedang mengerjakan proyek besar pada tahun 1996 di mana kami mencetak acara olahraga langsung. Percakapan ini terjadi:
Bos: Pergilah ke venue untuk acara berikutnya.
Saya: Apa yang perlu saya lakukan?
Bos: Berada di sana untuk jaga-jaga.
Saya: Untuk jaga-jaga apa?
Bos: Kalau-kalau pemimpin teknologi kehilangannya. Dia terlalu stres dan aku tidak tahu apa yang akan dia lakukan.
Saya: Dan jika dia kehilangan itu, apa yang Anda ingin saya lakukan?
Bos: Bawa dia keluar dari sana supaya semua orang bisa terus bekerja. Saya tidak peduli bagaimana Anda melakukannya.