Kolorado, Denver'da yaşayan Miriam Suzanne, şu anda Kapsayıcı Sorguları ve Katmanlı Katmanlar gibi heyecan verici CSS özellikleri üzerinde çalışıyor.
Bu yayın Designcember'ın bir parçasıdır. web.dev tarafından sunulan web tasarımı kutlaması.
Miriam Suzanne, Colorado'nun Denver şehrinde yaşayan bir yazar, sanatçı ve web geliştiricisidir. OddBird'ün (web ajansı) kurucu ortağı, CSS Tricks'te personel yazarı, Sass çekirdek ekibinin üyesi ve CSS Çalışma Grubu'nda W3C Davet Edilen Uzmandır. Son zamanlarda Katmanları Basamak, Kapsayıcı Sorguları ve Kapsam gibi yeni CSS özellikleri geliştirmeye odaklandı. Miriam, internet dışında yayınlanmış bir roman yazarı, oyun yazarı ve müzisyendir. Sass ve CSS ile çalışmalarından bahsettik.
Rachel: Çalışmanı ilk olarak Susy adlı şema çerçeveniz sayesinde öğrendim. Sizi bu çerçevede ortaya çıkarmanıza ne sebep oldu?
Miriam: 2008'de web'de sayfa düzeni çok farklı bir deneyimdi. Geliştiriciler, tablo düzeninden uzaklaşarak daha anlamsal (ama yine de hassas) kayan ızgaralara geçmişler. Tek boyutlu, 12 sütunlu "ızgara çerçevelerinde" bir artış yaşandı. Önceden tanımlanmış bir dizi CSS sınıfı içeren önceden tanımlanmış (genellikle statik) bir ızgara ortaya çıktı. Daha fazla özelleştirilebilir bir şeye ihtiyacınız varsa bunu tek başınıza yapıyordunuz. Web sitelerinin daha duyarlı hale gelmesi gerektiği açıktı, ancak medya sorguları henüz mevcut değildi ve akışkan geçişlerle ilgili çok sayıda tarayıcı uyumluluk sorunu vardı.
Natalie Downe'nin CSS Systems yaklaşımını kullanıyordum. Bu yaklaşım, hem yazı tipi hem de görüntü alanı boyutlarına yanıt verme konusunda zekice tasarlanmıştı. Ancak matematik ve tarayıcı korsanlığının tekrarlanması beni hayal kırıklığına uğratmıştı. Aynı zamanda Sass biraz dikkat çekmeye başlamıştı ve benim aradığımı mükemmel bir şekilde karşıladı. Susy'nin ilk taslağı çok basitti: Matematiği yapmak ve ihtiyacım olan ipuçlarını eklemek için birkaç karışık şey yaptım. Amaç minimum düzeyde olmak ve yalnızca gerekli kodun çıkışını sağlamaktı. Önceden tanımlanmış sınıflara sahip olmayan, tamamen özelleştirilebilir ızgaralar.
Rachel: Bir CSS ön işlemcisi üzerinde çalışmaktan CSS spesifikasyonları üzerinde çalışmaya geçişi nasıl yaptınız? Sizce ön işlemci üzerinde çalışmak, spesifikasyon yazmak için iyi bir arka plan oldu mu?
Miriam: Deneyimlerime göre birçok örtüşme var ve bu ayrımın her iki tarafında da hâlâ çok aktifim. Ancak bunu büyük ölçüde, uzun vadeli bir bakış açısına sahip ve gelişen web standartlarına sorunsuz bir şekilde entegre olan araçlar geliştirmeye çalışan Natalie Weizenbaum'un liderliğindeki Sass ekibi sayesinde düşünüyorum. Herkese uygun tek bir fikrin ötesine geçme: "fikir sahibi" uzun vadeli esneklik için çözümler üretmek ve geliştirmek, temel web standartlarının geleceği üzerine düşünürken son derece önemlidir.
Geliştiricilerin ihtiyaçları ve yaklaşımlarının çeşitliliğine saygı gösterirken bir yandan da erişilebilirliği ve diğer önemli hususları teşvik edip kolaylaştıran araçları nasıl geliştirebiliriz?
Rachel: CSS'ye, temelde Sass'in bir parçası olan işlevlerin yerini alan birçok öğe var. Sass gibi bir çözümü kullanmaya devam etmek için güçlü nedenler var mı?
Miriam: Bazı kişiler için evet, ama burada evrensel bir cevap yok. Örneğin, değişkenleri ele alalım. Sass değişkenlerinin kapsamı sözlüke göre belirlenir ve sunucularda, listeler ve nesneler gibi düzenlenmiş veri yapıları, renk manipülasyonu vb. ile derlenir. Bu, tarayıcıda çalıştırılması gerekmeyen tasarım sistemi mantığı için mükemmel bir seçenektir.
CSS değişkenlerinin bazı bölümleri çakışır. Bunlar değerleri de depolayabilirler, ancak basamaklara dayalı olarak tamamen farklı bir dizi güçlü ve zayıf özellik sunarlar. Sass, özel özellikleri, CSS ise yapılandırılmış verileri gerçekten işleyemez. Her ikisi de faydalıdır ve her ikisi de güçlüdür, ancak özel ihtiyaçlarınız değişiklik gösterebilir.
Bence insanların artık ihtiyaç duymadıkları araçları ortadan kaldırabilmesi ve bazı projelerde hem sunucu hem de istemci taraflı değişkenler gerekmeyebilir. Harika! Ancak bu iki durumun aynı olduğunu ve bunlardan birinin diğerinin yerini aldığını varsaymak çok basittir. Her zaman bazı tasarım mantığının sunucu tarafında, bazıları da istemci tarafında gerçekleştiğinde kullanım alanları olacaktır (dillerin temelde aynı özellikleri sağladığı noktaya gelsek bile). Ön işleyiciler uzun süre boyunca bizimledir.
Rachel: Standartlar oluşturma işiyle daha çok ilgilenildiğinden seni şaşırtan veya genel olarak insanların süreçle ilgili farkında olmayabileceğini düşündüğünüz herhangi bir şey var mı?
Miriam: Katılmadan önce standartlar süreci gizemli ve sihirli bir kara kutu gibiydi ve ne beklemem gerektiğinden emin değildim. Katkıda bulunacak kadar tarayıcı içi bilgilere sahip olmamaktan korkuyordum, ancak gerçekte daha fazla tarayıcı mühendisine ihtiyaçları yok. Vahşi yaşamda web sitesi ve uygulama oluşturan daha fazla geliştiriciye ve tasarımcıya ihtiyaçları var.
Projeye dahil olan kişilerin çok azının esasen standartlara odaklanmış olmasına şaşırdım, ancak çok az bir kısmı da esasen web sitesi geliştiriyor veya tasarlayıyor. W3C "gönüllülerden" oluşur üye kuruluşlardan (genellikle bu kuruluşlar tarafından ödeme alınır, ancak birincil işleri değildir) üyelik ücretine uygun değildir. Bu durum katılımcıları gündelik tasarımcılardan ve geliştiricilerden, özellikle de küçük ajanslarda müşteriyle çalışan ya da serbest çalışan işlerden uzaklaştırıyor. Davet edilen Uzman olarak görevim, bu iş için dışarıdan fon bulamamış olsaydım tamamen gönüllü olmak ve pahalı bir hobi olmak olurdu.
Aslında süreç oldukça açık, halka açık ve geliştiricilerin de sürece dahil olmasını gerektiren bir süreçtir. Ancak aynı anda birçok sohbet gerçekleştiği için yerinizi bulmak zor olabilmektedir. Özellikle de günlük işleriniz değilse.
Rachel: Kapsayıcı sorguları, yıllardır birçok web geliştiricisinin en önemli hedefi olmuştur. Bu yeni becerileri edinmemiz beni çok heyecanlandırıyor. Sanırım pek çok kişi kapsayıcı sorgularının faydasını düşünüyor. Sizce onların da daha fazla yaratıcılığa ulaşma potansiyeli olduğunu düşünüyor musunuz?
Miriam: Elbette ama bunları tamamen ayrı olarak görmüyorum. Hepimizin zamanı kısıtlıdır ve bu nedenle sürdürülebilir ve yüksek performanslı bir kod yazmaya çalışırız. Bir şeyi yapmak pratikte zor olduğunda, mümkün olan şeyler konusunda yaratıcı olma olasılığımız azalır.
Yine de, web sektörü büyük kurumsal çıkarların hakim olduğu bir ortamda çalışıyor. Dolayısıyla, bu işle ilgili endişeler her zaman web sanatçılarından daha fazla yayında kalıyor. Özellikler için birincil kullanım alanı olarak web'in yaratıcılığını görmezden gelirsek çok şey kaybedeceğimizi düşünüyorum. Bazı CSS sanatçılarının container sorgu prototipiyle oynadıklarını görmek beni çok heyecanlandırıyor. Jhey Tompkins, eski CSS karşıtı meme'leri hakkında yorum yapmak için özellikle CSS jaluzilerin akıllı ve etkileşimli bir demosunu oluşturdu. Bu alanda keşfedilecek daha pek çok şey olduğunu düşünüyorum ve insanların başka neler düşündüklerini görmek için sabırsızlanıyorum.
Bu konuşma aynı zamanda orijinal kullanım alanı olarak boyuta dayalı sorgulara da odaklandı ancak kullanıcıların stil sorgularıyla ne yaptığını (bir CSS özelliğinin veya değişkeninin değerine dayalı koşullu stiller yazma yeteneği) görmek beni heyecanlandırıyor. Son derece güçlü bir özellik ve şu ana kadar keşfedilmemiş. Bence bu içerik daha da yaratıcı fırsatlar sunuyor.
Rachel: CSS'de yapamayacağımız (veya yakında yapılacak bir yöntemimiz) faydalı olacağını düşündüğünüz bir şey var mı?
Miriam: Üzerinde çalıştığım diğer özellikler beni çok heyecanlandırıyor. Katmanlı katmanlar, yazarların belirlilik sorunları üzerinde daha fazla kontrol sahibi olmasını sağlar. Kapsam ise seçicinin daha hassas bir şekilde hedeflenmesine yardımcı olur. Ancak bunların her ikisi de üst düzey mimari kaygılardır. Benim içimdeki sanatçı; CSS geçişleri, etkileşimli stiller oluşturmanın bildirimsel bir yolu veya değerlerin medya ya da kapsayıcı ayrılma noktaları arasında sorunsuz şekilde geçişini sağlamamıza olanak tanıyan kapsayıcı "zaman çizelgeleri" gibi konularda daha fazla heyecan duyuyor. Bu durum, duyarlı tipografiyle ilgili çok pratiktir. Ancak duyarlı görseller ve animasyon için pek çok yaratıcı fırsatı da beraberinde getirir.
Rachel: Şu anda web'de gerçekten ilginç, eğlenceli veya yaratıcı çalışmalar yapan başka kim var?
Miriam: Bu farklı alanlarda yaratıcı çalışmalar yapan çok fazla insan var. Buna nasıl yanıt vereceğimi bile bilmiyorum. CSSWG ve Open-UI'de hâlâ devam eden heyecan verici standart çalışmaları var. Bunların arasında parçalama konusundaki bazı çalışmalarınız da yer alıyor. Ancak en çok ilhamı genellikle web sanatçılarından buluyorum ve insanların bu araçları ticaretle doğrudan bağlantılı olmayan bir şekilde üretime nasıl dahil ettiğini öğreniyorum. Jhey, Lynn Fisher veya Yuan Chuan gibi pek çok kullanıcı ya da web teknolojilerinin görsel ve etkileşimli olarak yapabileceklerinin sınırlarını zorlayan pek çok kullanıcı. İş odaklı işler yapan insanlar bile bu kişilerin sanatsal tekniklerinden çok şey öğrenebilirler.
Web'den ve özellikle sosyal medyadan istediklerimizi tekrar gözden geçirmemiz için bizi ısrar eden Ben Grosser gibi daha kavramsal web sanatına da teşekkür ederim. Örneğin, yeni minus.social kanalına göz atın.
Rachel: css.oddbird.net adresinden Miriam'ın CSS ile ilgili çalışmalarını takip edin ve miriam.codes ve Twitter @TerribleMia adresindeki web sitesi aracılığıyla Meriam'ın başka neler yaptığını öğrenin.