Kodlama neden Spelunking gibidir ve size nasıl yardımcı olabilir?
Bu makale, kodlamanın ne olduğunu, kimin olmadığını, kimin için ve nasıl başarılı olacağını açıklamak için “kodlama mağara gibi” benzetmesini kullanıyor. Aklım benzetmede çalışıyor ve bu son birkaç aydır içimde büyümüş, yazmam gereken noktaya kadar. Tamam, işte: Kodlama bir mağara gibidir. Bu makale, kodlamanın ne olduğunu, kimin olmadığını, kimin için ve nasıl başarılı bir şekilde yapılacağını açıklamak için benzetme üzerine inşa edilmiştir. Tabii ki, bilgisayarları programlayan tüm insan nüfusunu temsil ederek konuşamıyorum, ancak WordPress dünyasında aşağıdaki noktaları gerçekten hissediyorum. WordPress’teki rolünüze dayanarak bu makalenin sizin için yararlı olabileceği budur:
WordPress Geliştiricileri: Bir sonraki toplantınızda konuşmak için hoş bir şey verin. Doğru iş yolunda olduğunuzdan emin olun.
WordPress Assembly/Uygulama WordPress Geliştiricileri: Kodlamanın öğrenme kodlamasının sizin için daha uygun olup olmadığını ve eğildiğinizde ne beklendiğini anlamanıza yardımcı olur.
WordPress Kullanıcıları, Müşteriler ve Diğerleri: Kod üreticisinde veya geliştiricide ne bulacağınızı bilin.
Bu arada, mağaraya “Spelunking” de denir. Ne kadar harika olursa olsun, sanırım onu yazmaktan yorulacağım, bu yüzden bundan sonra “mağara” kullanma.
Kodlama gibi değil: TV ve filmlerde kodlamayı gördüğünüzde sörf yapmak genellikle çok havalı görünüyor. Kod üreticileri neredeyse her zaman “hacklendi” (en başından beri “saldırıya uğramış” yazılım yazan insanlar değil) ve garip kullanıcı arayüzüne bakmak, arka kapıyı ve sömürüyü bulmak, lazer savunma sistemini kapatmak için zaman harcadılar, vb. Https://www.youtube.com/watch?v=ztwctqieswm
(Gerçek parodiden daha kasıtsız bir kendi parodisini mi tercih edersiniz? Bu gerçek bir filmin klibi.) Hepimiz filmin gerçek olmadığını biliyoruz, ama bir kod üreticisi tarafından gerçekte yapılanların yanlış anlaşılmasının gerçekten Kodlama hakkındaki algımı uzun süre değiştiriyor.
Kodlayıcılar tarafından yapıldığını düşünüyorum, kod üreticisinin birlikte çalıştığını düşünüyorum:
Kısa bir parlaklık ve ilham patlamasında düşünmek.
Gizli bir kısayolu bilin. Dahimin arka kapısını hacklemek, diğer kod üreticilerinin on bin içinde yaptıklarının on sırasında yapacak.
Olağanüstü bilgi ve yetenekle gizli olma olasılığını açın. Uzaklaşın ve işini yürütme konusunda gerçekten uzman olan bir uzman, ana bilgisayara göz atmak için Haskell’i kullanacaktır.
Buna “Surfers Codean Modeli” diyeceğim: Kodlama kuvvet, hız, zarafet, yetenek, kendiliğindenlik ve doğaçlama ile ilgilidir.
İyi bir kod üreticisi ne olacak (eğer sörfçü modeli gerçekse) iyi bir kod üreticisi olmak istiyor? Sörfçü modelinde, birçok kişi ile donatılmış:
Ham yetenek. Her odadaki en akıllı kişisiniz ve sizi en sıcak kod üreticisi yapan şey budur.
Görünüşe göre, en azından bildiğim kadarıyla sörfçü kodlayıcılar aslında mevcut değil. Bu kesinlikle WordPress’in gelişiminde değil.
Belki teknolojiyi kullanmak şık, kolay ve havalı olduğu için, teknolojinin yazmanın şık, kolay ve havalı olduğunu varsaymak kolaydır. Değil. Sörfçü kodlamasından ne kadar ilginç kurgu ortaya çıkıyor? Benim teorim, belki de teknolojiyi kullanmak çarpıcı, kolay ve havalı, yazmanın teknolojinin çarpıcı, kolay ve havalı olduğunu varsayması kolaydır. Değil. Kodlama tam olarak nedir. Kodlama gibi: Ben böyle, kodlayıcı aslında:
Ve çünkü internette bir şey bulabilirsiniz:
Çok yetenekli olan insanlar tarafından çok havalı olan gerçek dünya-hatalarda gördüğüm tüm kodlamaya vereceğim isim-koruyucular kodlayanlar. Kodlayıcıların kodlama projesini başlattığı şey, mağaraya girmenin hazırlanmasına çok benziyordu. Bu, Mağarası tarzı kod üreticilerinin gerçek çalışmalarında yaptıkları (veya isterseniz “gerçek”) budur. Haritayı okuyun. Mümkün olduğunca ayrıntılı olarak, projeyi oluşturan tüm ayrıntılı manzaraları ve farklı parçaların birbirine nasıl bağlandığını anlayın.
Bir plan yapmak. Birkaç olası rota arasında zor bir kararı bir hedefe tartın, ardından tüm projeye rehberlik edecek genel bir yol haritası geliştirin. Beklenmedik bir şey olursa onu yakalayacak birkaç güvenlik sistemi (kontrol sürümü, otomatik test …) hazırlayın.
Organize edin ve kal. Hiçbir şey rastgele değil, her şey tutarlı ve bir nedenden ötürü.
Güvenlik sistemlerinin beklenen yanıtı verdiği her adımda doğrulama, her seferinde bir adım atın.
Açık bir iz bırakın, böylece her zaman nereye gittiklerini, nereye gittiklerini ve nedenini bilirler.
Beklenmedik bir şey olduğunda (bekleyin, bu yol azalmalı, yükselmeli …), bunun neden olduğunu derinlemesine anlayın. O zaman sadece doğrudan bir problem değil, sorunun kökünün üstesinden gelin.
Rotanın engellendiği ortaya çıkarsa, gerektiği kadar geriye doğru ve başka bir yol planlayın.
Bu, aslında gerçek dünyada iyi kod yazmayı içeren bir davranış – tutarlı, metodik, planlanmış -. Ve iyi bir kod yazan kişilerin birçok benzerliği vardır:
Gerçek dünyada iyi bir kodlayıcı yapan şey, iyi bir gerçek dünya kodu üreticisinin özellikleridir. Bir insan olmak değil, David bu özellikleri sembolize ediyor ve şimdiye kadar tanıştığım en güçlü kod üreticilerinden biri.
Net ve sistematik düşünmek. Rastgele ilham flaşı temelde alakasızdır. Aslında önemli olan, karmaşık bir sistemin her kısmının net bir şekilde anlaşılmasını geliştirmektir: ne yapar, nasıl çalışır ve diğer parçalarla nasıl konuştuğu.
Tutarlılık. Sözleşmeyi yönetme ve daha sonra her zaman aynı şekilde takip etme yeteneği: kodlama, sözdizimi, yorumlar, iş akışları ve daha fazlası. Ölçülebilir ve tutarlı bir yol yürüyüşü ve hatta bazen sürünmekten, etrafta atlamak, atlamak, uçmak veya sörfleri belirli bir hedefler için hareket etmekten mutluluk duyar.
Yani, bu kodlama. Daha iyi bir kod üreticisi olmanın çoğu iki ana bileşene boşalır:
Kullandığınız teknik sistemler hakkında daha derin pratik bilgiler geliştirin (PHP, JavaScript, WordPress, Laravel, Git, vb.): Belirli sistemler için belirli sistemlerin nasıl kullanılacağı, hangi sistemlerin ne tür ihtiyaçlar ve neden için uygun olduğu ve sistemin nasıl kullanılması farklı etkileşimdir.
Daha iyi bir kişisel sistem geliştirin: İşinizde net, tutarlı ve metodik olmanızı sağlayan sorunları kavramsallaştırmanın ve üstesinden gelmenin daha iyi bir yolu.
Bu çok göz alıcı değil, belli bir anlamda. Başka bir deyişle, bunun göz alıcı olduğunu düşünüyorsanız, iyi bir kod üreticisi yapabilirsiniz.
Ödül, böylece bir buçuk saat boyunca midenizle ilerlediniz. Ödül nedir?
Açık planlamanız, tutarlılığınız ve aziminiz nedeniyle, başkaları tarafından erişilemeyen bir yere ulaşmayı başardınız – plan yapmayan ve bunları uygulayan insanlar, inç uğruna adım adım ve inç. Ödül tam olarak projenin başında planladığınız gibidir, ancak öte yandan, gerçekten oradayken ödül olağanüstü olabilir. Tabii ki, şimdi geri çekilme zamanı (kod sahnelemede çalışıyor, şimdi istemci bodrumunda Windows sunucusuna dağıtılmasını istiyor). Neyse ki, bunun için bir planınız var. Bir mağara gibi açgözlülük, kodlamanın hoş olmayan tarafına çok özel bir deneyim hakimdir: tuzağa düşmüş. Mağara gibi, kodlamanın hoş olmayan tarafına çok özel bir deneyim hakimdir: tuzağa düşmüş. YouTube’da mağarada sıkışmış insanlar hakkında birçok video var. Onları zaman zaman izledim ve hala aklı başında olduğumdan ve çılgın mağaralardaki insanlar olduğumdan emin olmak için yorumları (temelde “hayır” ve “neden?”) Okudum.
https://www.youtube.com/watch?v=izptj6fftvq
Sorun şu ki, bir kodlama projesinde sıkışıp kalmış aşağı yukarı böyle: uzun bir yolculuğun ortasındasınız ve bir yeriniz var, ancak bir şekilde ilerleyemeyeceğiniz ve geri çekilemeyeceğiniz bir durumda sona eriyorsunuz. Yukarıdaki videodaki kişilerin en azından arkadaşları, ışıkları ve halatları vardır: Kod üreticileri için hangi öğelerin olduğu için aşağıya bakın. Bunlardan hiçbirine sahip olmamak, zorlu bir kodlama projesinde (umarım hayatınız için doğrudan korku olmasa da) tek başına, plansız, plansız olarak sıkışıp kalmak gibi. Yakalanmamak için en iyi yoldan nasıl tuzağa düşme, yukarıdaki “kodlayıcıların gerçekte ne yaptığında” açıklanan uygulamadır. Bu gibi şeyler: Bir plan yapın. Mümkün olduğunca, problemlerle ve içinde nerede olduğunuzu her zaman bilmelisiniz.
Otomatik test ve sürüm kontrolü gibi bir güvenlik sistemi kullanın. Sizi her zaman bu noktaya getiren ve önceki yerinize dönebilirsiniz. Gerçek tıkanıklık, düzensizliğiniz bu şeylerin gerçekleşmediği anlamına geldiğinde başlar.
Ancak gerçek şu ki, her kodlama projesinde bir sürpriz var. Meydana geldiğinde nasıl başa çıkılır, yeraltındaki 150 feet yeraltında sıkışıp kalmakla aynıdır, kodlama projesinin ortasında sıkışıp kalmış en iyi, en yararlı olmak için en iyi bir dizi çok özel yanıtla ele alınır, siz Başından beri olmalı. Bu arkadaşın en büyüğü getir. Yalnız kalmayın. Bir ajansta çalışıyorsanız veya diğer geliştiricilere erişiminiz varsa, bu, örneğin eşleştirilmiş programlama için iyi fırsatlar anlamına gelebilir. Kilitle vurulursanız ve arkadaş getirmezseniz, yardım için bağırabilirsiniz (Upwork’te, toplantı grubunuzda …). Mağaranın kendisini olabildiğince ayrıntılı tanıttığınızdan emin olun, böylece arkadaşınızın tavsiyesi yardımcı olabilir. Mağara şimdi garip görünüyorsa, adımlarınızı tekrar keşfedin, yanlış dönüşü biraz geri almadığınızdan emin misiniz? Adımlarınızı inandığınız yere geri keşfedin ve oradan her adımda çok yavaş hareket edin, yürürken test edin. “Bu yoldan nasıl yükselirsiniz ve aşağı inersiniz?” Neredeyse her zaman yanlış, ancak trafik kodlayan üreticiler ve bunları istihdam eden müşteriler arasında çok yaygındır. Hızlı iyileştirmeye ihtiyacınız yok: genel durumu daha iyi anlamanız gerekir. Kodlamada, mevcut dil, dil ve kodlama paradigması ve gördüğünüz kodun davranışını etkileyebilecek diğer sistemleri yazılım ortamını ve hatta donanımı daha iyi anlamak anlamına gelir. Bir sürü belge ve çok sayıda googling okumaya alışın. Haritayı okuyamıyor musunuz?
(Başka bir deyişle: ne yapacağınızı bilmediğiniz bilgilere gerçekten gömülü hissetmek?) Arkadaşların içeri girdiği, özgür veya ücretli olduğu yer.Sizi istediğiniz yere götürmeyeceğinizi bildiğiniz rastgele şeyler yapma mı?rastgele şeyler.”Bu yan yol yükseliyor ve mağaranın girişi de yükseliyor!”yapmamanız gereken bir düşünce.”Hack” in gerçek anlamı budur.