Apple'dan GPU Architect Semih Demirer ile Sohbet - Bölüm 2

  Рет қаралды 9,752

Yalin Kod

Yalin Kod

Күн бұрын

Пікірлер: 28
@emreyz23
@emreyz23 7 жыл бұрын
Sektörde geçmiş bunca senenin ardından ve isminin önündeki muazzam titrlere rağmen sık sık "bilmiyorum" diyen insanlara bayılıyorum. Çok büyük saygı duyuyorum. Muhabbetiniz çok tatlı, birikiminiz muazzam zaten ama şu olgunluk düzeyi beni en çok imrendiren. Sizin yaşlarınıza geldiğimde ben de neyi bilip neyi bilmediğinin farkında olan, kompleks göstermeyecek kadar kendine güvenen insanlardan olabilmek istiyorum. Uzun süredir akademide vakit geçirmiş biri olarak "bilmiyorum" diyebilmenin "biliyorum" demekten çok daha zor olduğunu oldukça iyi "biliyorum" :) Görece genç arkadaşların belki dikkatinden kaçıyordur diye düşünerek önce bunun altını çizmek istedim. Öte yandan, naçizane programlama öğretiminin pedagojisi üzerine çalışan birisi olarak söyleyebilirim ki kesinlikle haklısınız. Matematiksel, mantıksal temellere yoğunlaşarak ve algoritmik düşünme disiplini ile değil de daha ürün odaklı, daha pratik araçlar üzerinden bilgisayar bilimlerine giriş yapanların büyük çoğunluğu alanda derinleşemeden pes ediyorlar. Zaten artık piyasada öyle "authoring tool" örnekleri var ki tek satır kod yazmadan, bir harf bile kod bilgisi sahibi olmadan oldukça gösterişli ürünler elde etmek mümkün. Amacı "ürün" çıkarmak olan birisinin programlamayla çok fazla uğraşmasına gerek yok. Ama kariyer hedefi bilgisayar bilimlerinin herhangi bir alt dalında uzmanlaşmak olan birisinin en temelden başlamak konusunda tereddüt etmesi de yersiz. O siyah konsol ekranı önünde aylarca yalnızca bir takım alfanümerik karakterlerle haşır neşir olunacak. Kaçarı yok :) Semih Abi, Bilgem Abi, saygılar. Devamını sabırsızlıkla bekliyoruz :)
@ragpulay7944
@ragpulay7944 7 жыл бұрын
"bilmiyorum" denmesinin yanında "katılmıyorum" cevabını normal karşılayıp nedenini dinleme/anlama olgunluğunu gösterdiklerinden de ayrıca saygı duyulması lazım. Sonuçta gerçeğe veya daha doğruya ulaşmada kişiler birbirine katılmayabilir ve bunu normal görmek de bir olgunluktur. Bir projede müdürüme test için önerdiği yönteme "katılmıyorum bence şöyle olmalı" demiştim, adam kendisine bunu hakaret gibi algladı, kendisinin dediği yanlış da olsa hep yapılmıştı çünkü. Bu konularda ülkemizde çok eksik var, "bilmiyorum" demek ve "katılmyorum" cevabını normal karşılayıp sebebini anlamaya çalışmak bir olgunluk ve kalite meselesi bence.
@emreyz23
@emreyz23 7 жыл бұрын
Kesinlikle. Maalesef çok tanıdık gelen bir sahne müdürünüzle ilgili paylaştığınız hadise :/ Belirli bir yaş ve tecrübeden sonra - en azından kendi adıma - insanları değerlendirirken öncelikli kriterim ne ünvanları ne birikimleri ne de zekaları. İnsan kalitesinin en iyi göstergesi olgunluk ve kendini tanıyabilme. Tek bir çözümü olmayan türden sayısız problemle uğraştırmayı gerektiren, bilişim gibi teknik bir alanda bile insanların bu kadar sık kompleks göstermeleri çok can sıkıcı oluyor.
@YalinKod
@YalinKod 7 жыл бұрын
Nazik yorumlarınız için her ikinize de teşekkürler ve "Estafurullah" :)
@MrStarchild3001
@MrStarchild3001 2 жыл бұрын
Açıkçası yeni başlayana, özellikle okulda olan birine verilebilecek en iyi tavsiye 1) temel dillerden birini sular seller gibi öğrenin (en son C++, veya en son Java, veya Python --- Python en kolayı); 2) temel data structures + algorithms'i sular seller gibi öğrenin (hashmap, set, dynamically-sized array, tree, graphs vs) 3) Idiomatic kod yazma kapasitesine gelin. Yani yazdığınız code bu işi profesyonelce yapan birinin kodundan ayırt edilemez hale gelsin. Tabi bunun için bir sürü soru çözebilirsiniz (cracking the coding ınterview, elements of programming interviews, vs). Yuzlerce soru cozdugunuzde acayip pişmiş olacaksınız. Hele ki bir de idiomatik kodlamayi öğrenirseniz, artık bu işi profesyonel seviyede yapabilirsiniz. Genel tavsiyem okumanız. Yani açıp bir kitabı okuyun, dilin prensiplerini çalışın, adam akıllı öğrenin, sadece google'layarak ogrenmeyin. idiomatik programlama yapmak istiyorsanız bu zaten şart. Diller konusunda yazılmış kitaplar var, onları okuyun. Çok programlayan mi bilir, çok okuyan mi? Bazen çok okuyan daha çok biliyor! Çok programlayan sürekli google'ladigindan (bkz stack overflow) dilin mantığını ogrenemeyebiliyor. Bir tane temel dili idiomatic olarak öğrendikten sonra (+ data structures + algorithms'i yuttuktan sonra), ikinci bir dile açılabilirsiniz. Bu her şey olabilir. Ne olduğu çok önemli değil. Sadece hayatınızın bir noktasında "functional programming" öğrenin ve çalışın. Bu programlama konusunda master + doktora yapmak gibi. Functional programming çok temel bir paradigma değişimi, bunu öğrenmek ufkunuzu genişletecektir (örneğin scala ile bir proje yapın vs). Bu biraz opsiyonel, ama öğrenmesi hoş bir şey. Başka verilen bir tavsiye de şudur: En az bir scripting language'e hakim olun (örnek: Python), bir de compiled language'e (örnek: C++ veya Java). Bu iki kategoriyi öğrenmek ufkunuzu genişletecektir. Başka ufuk genişletecek şeyler: bash öğrenmek (linux scripting), SQL öğrenmek (databases). Temel gereksinimleri sağlayıp (1, 2, 3 dediğim şeyler) ve bu dediklerimden de biraz biraz öğrendiğinizde (bash/linux, SQL, functional, scripting/compiled languages vs) zaten uzman bir programcı olmussunuz demektir. (Bunlar Google'da çalışan bir yazılım müdürünün deneyimleri. Ama herkesin geçtiği yol farklı olacaktır.)
@tunahancapar6938
@tunahancapar6938 2 жыл бұрын
Çok faydalı bir yorum. Teşekkürler
@Huseyinsoykok
@Huseyinsoykok 6 жыл бұрын
Basit bir sohbetten çok öte yönlendirici rehberlik içeren bu video için teşekkürler.
@hulusikuluk2366
@hulusikuluk2366 6 жыл бұрын
19:06 Kesinlikle Bilgem 'e katılıyorum. Çalışmaya başladığımda tüm o kurulum aşamaları sırasında Allah'ım ne zaman kod yazmaya başlayacağım diye isyanlara tutuluyorum.
@yavuz7521
@yavuz7521 7 жыл бұрын
Bilgem abinin 19.dk'da dediği kısma kesinlikle katılıyorum, bu ezber durumlar üst üste binince bi raddeden sonra ne yapıyorum ben durumuna düşüyor insan. Ki ilerleyen zamanlarda problem tespit ve çözüm noktalarında karşımıza çıkıyor bu anlamadan geçtiğimiz kısımlar.
@pcmaniakkk
@pcmaniakkk 4 жыл бұрын
Android development işine yeni başlayanlar için Bilgem abiye katılıyorum. O başlangıçtaki süreçler insanı yoruyor ve yeni öğrenen birinin erkenden bıkmasına sebep olabiliyorlar. Semih abinin yaklaşımı ise çok ilginç. Açıkçası daha önceden hiç bu açıdan bakmamıştım. Güzel bir yaklaşım. Bunu deneyeceğim. Özellikle yeni bir dile başlarken son derece yararlı bir yaklaşım olabilir.
7 жыл бұрын
Linç varmış geldim :) Web + Android + ERP Developer ı olarak bana soran bir kişiye ilk verdiğim tavsiye git pascal ile başla oluyor. Bahsettiğiniz gibi pascal da konsol ekranında herhangi bir input girilip ekrana bişey yazdırmanın tatminini hiç bir şey tutmadığına inanıyorum. Semih Bey'in "ben tek dilciyim demek mantıksız geliyor cümlesine" tüm benliğimle katılıyorum kesinlikle algoritma mantığı ve I/O düzenini bilen bir kişinin herhangi bir dil e bağımsız olarak tüm dilleri ihtiyaç duyduğunda öğrenebileceğine inanıyorum. Eyyorlamam bu kadar.
@q44n
@q44n 4 жыл бұрын
ben bu videodaki tartışmayı çok düşündüm ve bu durumun farkında olarak çok gözlem yaptım. yaygın görülen 2 farklı öğrenme yaklaşımı var. semih demirer " hedef odaklı " ve bilgem çakır " merak tutkusunun peşinden gitme" . tartışmada ben bilgem çakıra katılıyorum 19:15 de belirttiği nokta çok kritik bir nokta bu aynı zamanda klişe bir soru olan "günlük hayatta ne işimize yarayacak" durumunda da gözleniyor. kişiye bu durum açıklanmadığında, sonraki konularla ilişkili o merak giderilmediğinde beyin orada kopuyor. orada takılıp kalıyorsun ve bir şekilde motive olunulup anlaşılmaya çalışılsa dahi bence çok verimsiz bir öğrenme oluyor. tabi burada kişilerin öğrenme biçimleri de farklı olabilir ama benim için geçerli olan öğrenme metodu bilgem çakırın savunduğu metot ve bu metotu şöyle savunabilirim. insan vucudu her zaman survival moddadır. yani sürekli kendi çıkarlarını, kendisi için en iyi olanı düşünür. eğer bir şey acı veriyorsa o senin için iyi bir şey değildir uzaklaşman gerekir. eğer bir şeyi merak ediyorsan ( merak çok güçlü bir duygudur en azından bazılarımız için) belli ki orada senin için faydalı olan bir şey var. bu insanın doğal öğrenme becerisine en uygun olan yöntemdir bence. bir amaca ulaşmak için kullanılamayabilir en büyük dezavantajı budur fakat çok yüksek verimde, hatta mükemmel bir verimlilikle çalışır. bu verimliliği açıklamak için kendimden örnek vereceğim. ipe sapa gelmez bir öğrenme tutkum olmasına rağmen eğitimde başarılı olamadım. çünkü okulda öğretilmeyen şeyleri öğrenmek istediğim için okulu bıraktım. bu bir kariyer yapmak için doğru karar olmayabilir ama öğrenme tutkusunu tatmin etmek için doğru bir karardı. birbirinden bağımsız tamamen ne merak ettiysem onu okudum varoluş edebiyatçılarını okudum sonra döndüm sosyoloji ve siyaset kitapları okudum. popüler bilim kitapları okudum. temel bilimlere merak saldım sadece merak ettiğim konuların derslerine çalıştım. belli bir alanda bir uzman olamadım ama öğrendiğim şeyleri yüksek verimlilikle öğrendim nedir yüksek verimlilik. merakımın yönlendiği bir içerik var; 1.si benim bu içeriği öğrenmem için bir defa okumam yeterli. 2.si bir defa okuduktan sonra istenilen soru sorulabilir o içerikten ve bunu çok çok uzun süre hiç tekrar etmeden hatırlayabilirim. 3.sü o içerigi okuyup bitirdikten sonra yatağıma uzandığımda kafamda düşünerek kendi çıkarımlarımı yapabilirim. yani buradaki verimliliğin boyutlarını anlayabiliyor musunuz ? bi defa içeriğe tamamen hakimsin %100 yaptıgın çıkarımlarla %100 ü geçiyor. %100ü geçmek ne demek ben bu konu ile ilgili her türlü tartışırım, her soruya açığım, sunum yaparım, bilmeyen birine çok iyi öğrretebilirim ( einstein rule: basitçe anlatamıyorsan, yeterince iyi anlamamışsın demektir ) faydalar uzar gider... hedef odaklı öğrenme metodunda ise bir defa içerigi tekrar tekrar okuman gerekiyor zaman kaybı...çok yönlü değilsin...unutursun unutunca döner tekrar edersin...yani üniversite öğrencilerinin şikayet ettiği öğrenim probleminin çoğunun sebebi bu. merak etmiyorsun ama " gerekli" oldugu için öğrenmeye çalışıyorsun. bu da sağlıklı bir öğrenme metodu değil. bu şekilde öğrenen insanlar mezun olduklarında işe giriyorlar ve önlerine bir problem konuyor sen onu bu öğrenme yöntemi ile öğrendiklerinle çözmeye çalıştıgında ordan burdan bir şey hatırlıyorsun, bazı şeylere kulak aşinalıgın var...sıfır özgüven... bir fikir üretemiyorsun dolayısıyla kimseyi bir şeye ikna edemiyorsun... o topluluğun problemlerini kendi problemlerin gibi düşünemezsin dolayısıyla uyum sağlayamazsın sonunda düşünebildiğin tek problem ortama nasıl uyum sağlayacagın olur ve sana ne söyleniyorlarsa onu yapmak zorunda kalırsın. belki bir kaç trick ve cevvallikle bir ilüzyon yaratıp vasat olmayı başarabilirsin. ama ben bu yöntemle sürekli girdiğim ortamda fikirler üretip, problemlere çözüm sunup o fikirleri de alanında gerçekten uzman-tecrübeli kişilere karşı savunabildim, fikirlerimi kabul ettirebildim. alanında uzman kişilere karşı fikirler öne sürebiliyorum çünkü şunu biliyorum ki ne kadar uzman-tecrübeli olursa olsun" benim bildiğim her şeyi o bilmiyor". bu özgüven benim için pahabiçilemez ve bu öğrenme metodunun en muhteşem meyvesi... bu kadar yazdıktan sonra bu merakı nasıl yönlendirip işe yarar hale getirdiğimi de anlatayım. diyelim ki yazılım mühendisi olmak istiyorum. bunun için tüketmem gereken bir yığın içerik var. şimdi merak duygumu tam olarak istediğim şeye, istediğim zamanda nokta atışı yönlendiremiyor olabilirim. tek bir şeyi de merak etmiyorum tabi. hedefe ulaşmak için şöyle yapıyorum. alanları büyük çaplı kategorilere bölüyorum. SAYISAL - SÖZEL yazılım mühendisliği için daha fazla sayısal içerik tüketmem gerekli o yüzden sayısala yöneliyorum sayısal içinden merak ettiklerime yöneliyorum. merak ettiğim içerik gördüğümde bu diyorum yazılım mühendisliği ile ne kadar alakalı...çember git gide daralıyor dolayısıyla merak duygusu da azalıyor ama hiç merak olmadan sırf bu gerekli diye öğrenmekten emin olun çok daha iyi...bu şekilde geniş tabandan azda olsa bir çok merak ettiğin şeyi öğreniyorsun. sonra tabi bir hedefin olduğu için bazı şeyler karşına çok çıkıyor. artık o karşına çok çıkan şey o kadar kritik ki hiç merak etmesende otuır onu verimsiz de olsa ögren aradan çıkar. böyle kritik bir içeriği aradan çıkarınca bir eşiği atlamış oluyorsun zaten...üstüne ekleyerek devam ediyorsun....yani söylemem o ki meraksız bir öğrenme hatadır arkadaşlar
@ilkermansur4129
@ilkermansur4129 Жыл бұрын
Bilgem Çakır yeni başlayan birisine yoğurulacak bir hamur gibi bakıyor, Semih Demirer ise üretmeye başlasın zamanla öğrenir gibi yaklaşıyor. Yeni başlıyor olsam Bilgem Çakır ile başlamak isterdim ama şirket açısından bakınca ROI mantığıyla Semih Demirer daha gerçekçi ve optimum fayda sağlar gibi geliyor.
@hs34-t9s
@hs34-t9s 4 жыл бұрын
Harika insanlar
@halilibrahimseker2093
@halilibrahimseker2093 7 жыл бұрын
Hocam çok merak ediyorum sizlere göre bilgisayar mühendisliği öğrencisi, bilgisayar bilimlerinden seçtiği alt dallardan birinde "en iyi ..." nasıl olabilir ve bu yolda yetişme sürecini nasıl hızlandırabilir? Ikincisi de verimliliğimizi nasıl artırabiliriz, sınırlarımızın zirvesine nasıl ulaşabiliriz? Teşekkür ederim
@MrColdzero
@MrColdzero 6 жыл бұрын
GLSL' de shader programlama ödevim vardı. Cmake'le GLFW'i hazırlayıp kullanacaktım. Nedir bu cmake derken bahsinin geçtiği videoyu gördüm hala kanaldaki videoları izleyip duruyorum. Eğer bu sene bi interview koparıp gelebilirsem sizlerle yüzyüze tanışmayı çok isterim hocamlar. 1.5 saattir çok güzel şeyler öğrendim sizden. Değerli paylaşımlarınız için teşekkür ederim.
@ptsckts6123
@ptsckts6123 7 жыл бұрын
Çok iyi ya. Sonda vardığınız sonuç insanı yıllarca ileriye götürebilir.
@wykonos
@wykonos 7 жыл бұрын
Orta seviyede programlama dili bilgim olduğunu düşünüyorum. Buna göre yorum yapıyorum. Android güzel iyi hoş ama sdklar ve android studio o kadar çok size bağlı olmayan yani kodunuza bağlı olmadan hata veriyor ki kodunuzdaki hatalarla uğraşmaktan çok dandik programın hatasıyla uğraşır pozisyona düşüyorsunuz. Gaza gelip onu yapayım şunu yapayım derken bir ton tool indirip her birinin ayrı ayrı hata vermesi falan yeni başlayan biri için çok yorucu ve demoralize edici. Videolar çok güzel olmuş yeni izleme fırsatım oldu farklı bakış açıları kattı bana. Teşekkür ederim.
@bilgilibilgisiz3879
@bilgilibilgisiz3879 4 жыл бұрын
ama o hatalarıda tek tek çözüp akıla yatırmanın verdiği zevk başka hiçbirşeyde yok be hocam :D
@emirakaydn1676
@emirakaydn1676 7 жыл бұрын
"Ruby 2000'lerin başlarında yok muydu ya?" diye araştırıp çıkalı 22 sene olduğunu öğrenip dumur oldum. :) Ben de taş çatlasın 2000-2005 aralığı derdim ama 95'de çıkmış. Ya da diğer bir deyişle 95'de çıkamamış. :D Java'dan eskiymiş, çok acayip.
@ArdaZeytin
@ArdaZeytin 7 жыл бұрын
Oyun geliştirmeye yeni başlayacak birinin C ve C++ ile programlamanın temellerini kaptıktan sonra diğer yollara devam etmesi gerektiğini düşünüyorum. Genelde erişmesi çok kolay olduğu için yeni başlayan arkadaşlar ücretsiz olarak Unity indirip hiç programlama bilmeden C# ile idare edecek kadar oyun geliştirmeye çalışıyor. Bu arkadaşlar hazır araç ve paketlerin kendi isteklerini karşılamadığı yerde tıkanıp kalıyor. Programlama bilgisi zayıf hatta olmadığı için "ya bu iş zormuş" deyip bırakıyor. Halbuki C ile başlayıp konsolda 2 kişilik sıra ile oynanan bir zar atma oyunu ile başlasalar adım adım başardıkça öğrenmeye devam edecekler. Oyun yapmaya nasıl FPS shooter'dan başlanılmaması gerekiyorsa programlamaya da high level dillerden başlanmaması gerektiğini düşünüyorum.
@ArdaKaraduman
@ArdaKaraduman 7 жыл бұрын
Dikkatimi çeken bir nokta, Semih'in pozisyonu hakkında hemen hiç konuşmamışsınız :) GPU Architect derken, gerçekten çip mimarisi mi tasarlıyorlar ? Bunun için kullandıkları HDL'ler filan var mı ? Software - Hardware crossover'ı nasıl bir tecrübe ? Çok ilginç bir background'u var Semih'in, tecrübelerini duymak isteriz :)
@YalinKod
@YalinKod 7 жыл бұрын
Evet biz gizlilik kaygılarından ötürü bu videoda "özel ve dikkatli konuşma" modumuzu açmadık :) Bu konulara daha detaylı eğilen bir video için DevPod'un Semih'in konuk olduğu bölümüne bakmanızı tavsiye ederim: kzbin.info/www/bejne/iGrKe6mHZtCBrcU
@timurid07
@timurid07 7 жыл бұрын
KZbin'un dibi hareketinden geldim.
@ArdaKaraduman
@ArdaKaraduman 7 жыл бұрын
Bir Ruby'ci olarak (!), Ruby'nin çok web tarafına sıkışıp kalmış bir dil olduğunu belirtmeliyim. Herhangi bir yerde 'Principal Ruby Engineer' olduğunu düşünmüyorum, muhtemelen o kişinin title'ı 'Web Platform Manager' filan olur. Ruby, evet syntax'ı kolay, developer friendly, her şekle sokabileceğiniz macun gibi bir dil :) Yanlız bu sizi aldatmasın, syntax'ın kolay olması dilin kolay olduğu anlamına gelmiyor. Ruby ile son derece berbat programlar yazmak çok kolay (hatta yeni başladığınızda genelde yazdığınız şeyler berbat oluyor). Ama dilin sadeliği ve boiler plate'in azlığı, sizi re-faktör'e ve kodunuzu daha anlaşılabilir hale sokmaya çalışmaya itiyor. Bunun yanında performans bildiğiniz gibi bir önemli bir etken. Ruby'nin beklenen performansı kaldıramadığı durumlarda bottleneckleri tanımlayıp micro service olarak export edip başka bir dilde yeniden yazmak genel bir uygulama. Bu yüzden 'Ruby'ci lerin cv'sinde mutlaka daha performant başka bir dil daha bulabilirsiniz.
@mstkkktr
@mstkkktr 6 жыл бұрын
Bence android den başlasa başlayamadan bırakabilir.
@GarfieLD-Mami
@GarfieLD-Mami 2 жыл бұрын
Bahsedilen yeni başlayan benim sanırım :)
@oguz.han.x
@oguz.han.x 7 жыл бұрын
Bilgem abi bırak da adam lafa girsin yav
Apple'dan GPU Architect Semih Demirer ile Sohbet - Bölüm 3
27:36
Chat with Semih Demirer, GPU Architect from Apple - Part 1
19:24
Sigma Kid Mistake #funny #sigma
00:17
CRAZY GREAPA
Рет қаралды 30 МЛН
“Don’t stop the chances.”
00:44
ISSEI / いっせい
Рет қаралды 62 МЛН
The evil clown plays a prank on the angel
00:39
超人夫妇
Рет қаралды 53 МЛН
Mom Hack for Cooking Solo with a Little One! 🍳👶
00:15
5-Minute Crafts HOUSE
Рет қаралды 23 МЛН
SİZE SÖYLEDİĞİ YALANLAR? SORU-CEVAP
11:13
LaFoudre
Рет қаралды 63 М.
Yazılım Tasarlarken Öngörülebilirlik
16:32
Yalin Kod
Рет қаралды 9 М.
Are you using a Hacked AI system?
27:06
David Bombal
Рет қаралды 236 М.
Vlog: GDC Son Gün :(
8:11
Yalin Kod
Рет қаралды 4,7 М.
This AI Robot Is Doing the Impossible - Unitree x ElizaWakesUp
9:30
BUGÜN GÜNLERDEN MIZRAKÇI ! CLASH OF CLANS
12:02
Burak Güvenç
Рет қаралды 331
Deep Learning: Train/Dev/Test Sets, Bias-Variance, Overfitting & More
22:22
Girişimcilikte Stres, Zamanlama ve Bağlantılar
13:42
Yalin Kod
Рет қаралды 6 М.
Sigma Kid Mistake #funny #sigma
00:17
CRAZY GREAPA
Рет қаралды 30 МЛН