Dr. Volkan Tunalı'nın Kişisel Blogu

Bilgisayar, Teknoloji, Bilim, Sanat

Archive for the ‘bilgisayar’ tag

Bilgisayar Bilimine Giriş (Computer Science: An Overview)

leave a comment

Bilgisayar Bilimine GirişÇeviri kurulunda yer aldığım bir kitabı tanıtmak istiyorum.

J. Glenn Brookshear ve Dennis Brylow tarafından yazılmış olan Computer Science: An Overview kitabın 12. baskısının çeviri kurulunda yer aldım. Bölüm 11. Yapay Zeka bölümünün çevirisi bana ait. Bilgisayar bilimi alanında iyi bir kitabın güzel bir çevirisi oldu. Okuyuculara yararlı olacağını umuyorum.

Kitapla ilgili ayrıntılar şu şekilde:

Kitabın Adı: Bilgisayar Bilimine Giriş
Çeviri Editörü: Yrd. Doç. Dr. Birim Balcı Demirci
Çeviri Kurulu: Birim Balcı Demirci, Coşkun Çelik, Emine Sezer, Hacer Karacan, Hakan Kutucu, Hasan Dağ, Okan Bursa, Özgü Can, Resul Kara, Selim Bayraklı, Şenol Zafer Erdoğan, Volkan Tunalı
ISBN: 978-605-320-361-2
Sayfa Sayısı: 628

Ayrıntılı bilgi almak için ilgili Nobel Akademik Yayıncılık sayfasını ziyaret edebilirsiniz.

Kitabın tanıtım yazısı şu şekilde:

Bilgisayar Bilimine Giriş kitabı, gerek Bilgisayar Mühendisliği gerekse diğer mühendislik alanlarındaki öğrenciler ve alana ilgi duyan diğer okuyucular için Bilgisayar Bilimleri hakkında kapsamlı bir bakış kazandırmak için yazılmıştır.

Okuyuculara bilgisayar bilimlerine dair işlevsel bir anlayış kazandırmak amacıyla yazılan bu kitap, her bölüm ile ilgili olarak okuyucuların kendilerini deneyebilecekleri Sorular ve Alıştırmalar, Bölüm Tekrar Problemleri ve Sosyal Konular olmak üzere üç farklı kapsamda sorular içermektedir.

Orijinali J. Glenn Brookshear ve Dennis Brylow tarafından kaleme alınan ve on ikinci baskısı yapılan bu kitap, Bilgisayar Mühendisliğine Giriş, Bilgisayar Bilimlerine Giriş gibi mühendislik alanlarında okutulan temel bilgisayar derslerinde yararlanılabilecek önemli bir kaynaktır.

Yıllara Göre Veri Depolama Maliyeti

leave a comment

Masaüstü ya da dizüstü farketmeksizin ne zaman yeni bir bilgisayar alsam, bilgisayarın fiyatı aşağı yukarı aynı iken sabit disk kapasitesi bir öncekinden çok daha fazla oluyor. Bu durum ana bellek ve işlemci gücü için de geçerli ama sabit disk kapasitesinin durumu çok farklı.

Matthew Komorowski sabit disk kapasitesi/fiyat verisi toplayıp aşağıdaki grafiği elde etmiş:

Yıllara Göre Veri Depolama Maliyeti
Kaynak: http://www.mkomo.com/cost-per-gigabyte

Komorowski ayrıca kapasite/maliyet trendi için de şu sonuca varmış:

Over the last 30 years, space per unit cost has doubled roughly every 14 months (increasing by an order of magnitude every 48 months)

Son 30 yıl boyunca, birim maliyet başına disk kapasitesi kabaca 14 ayda bir iki katına çıkıyor (48 ayda bir ise ciddi bir artış gösteriyor)

Ayrıca maliyet için bir formül de çıkartmış:

maliyet = 10-0.2502(yıl-1980)+6.304

Aşağıdaki iki resim 80′lerin bilgisayar dergilerinden alınma. İnanılmaz!

Written by vtunali

Eylül 18th, 2010 at 1:41 pm

Çocuklar, Bilgisayar ve Internet

leave a comment

Çocuklar ve Bilgisayar
Profesyonel iş yaşamımın dışında “ailemizin bilgisayarcısı” olarak aile içinde PC toplama, Windows kurulumu, virüs temizliği, internete bağlantı ayarları yapma gibi görevlerimin yanı sıra zaman zaman çeşitli konularda da danışmanlık yapıyorum.

Birkaç yıldır özellikle internetin de yaygınlaşmasıyla birlikte en çok sorulan sorular aşağı yukarı şunlar oluyor:

  • Eve bilgisayar alalım mı? Oğlanın/kızın derslerine faydası olur mu? Yoksa oyundan başını kaldırmaz, derslerini aksatır mı?
  • Eve internet bağlatalım mı? Yoksa biraz daha bekleyelim mi?
  • Bilgisayar kullanımını kısıtlayalım mı? Günde kaç saatten fazla olmamalı?

Bu konularla ilgili olarak çocuk gelişimi ve psikolojisi açısından herhangi bir görüşümün olması mümkün değil; işin o tarafını alanının uzmanlarına bırakmalı. Ancak ben konuya daha çok çağın getirdiği teknolojik olanaklar ve bunların yararları ve/ya zararları açısından bakıyorum ve gelen soruları bu doğrultuda yanıtlıyorum.

Kişisel görüşüm çok net: bilgisayar ve internet bağlantısı artık olmazsa olmaz durumunda ve ailenin imkanları ölçüsünde iyi bir bilgisayar alınması ve internet bağlantısı kurulması taraftarıyım.

Aileler elbette ki çocuklarının okul dışındaki bütün zamanını bilgisayar başında geçirmesinden ve bu nedenle de en temel görevleri olan derslerini ihmal etmesinden endişe ediyorlar. Bu endişeye özünde katılıyorum. Ancak şunu düşünmek lazım, bilgisayar yokken aynı endişeyi evdeki TV için duyuyor muyuz? Evde TV seyretmeye kısıtlama getiriyor muyuz?

Ayrıca, çocuğun vaktini evde bilgisayar başında oyun ile ya da internet’te geçirmesi, dışarıda ne olduğunu bilmediğiniz internet kafelerde geçirmesinden iyidir (internet kafe sahipleri hemen kızmasınlar, yasaların koyduğu yaş sınırlamasına kaç tanesi uyuyor, kaç tanesi temiz ve düzgün bir ortam sağlıyor, kaç tanesi çocukların zararlı sitelere girmemesi için teknik donanıma sahip???).

Bence bilgisayar ve internet kullanımı için doğrudan kısıtlama getirmek yerine bu olanakların derslerini aksatmaması koşuluyla sağlanacağı konusunda bilinçlendirme yoluna gidilmeli ve tabii bu durum izlenmeli. Günlük kullanım süresini limitleme taraftarı değilim. Derslerini aksatmayan bir öğrenci zaten oyun oynasa da, MSN’de ve Facebook’ta zaman geçirse de bunun dengesini kurabiliyor demektir. İlk zamanlar büyük eğlence konumunda olan ve bilgisayarı kullanma “amac“ı olan oyunlar ve sosyal ağ siteleri bir süre sonra “araç” haline gelecektir. Bilgisayar ve internet zamanla TV gibi olağan bir hale gelecek, çocuk bunları okulu için ya da kişisel gelişimi doğrultusunda bireysel ve sosyal gereksinimlerine göre kullanmaya başlayacaktır. Dolayısıyla zararından çok yararı olacaktır.

Bilgisayar ve internetin insanları yıllardır korkulduğu gibi asosyal hale getirdiğini hiç düşünmüyorum. Olayları çağın teknolojisi ve olanakları içerisinde değerlendirmek gerekir, gelenekler açısından değil. “Bizim zamanımızda bilgisayar/internet/cep telefonu/vs. yoktu” şeklindeki cümleler artık çok anlamsız. Dünya değişirken beşeri ilişkilerin şeklinin değişmesi, başka bir hal almasından doğal ne olabilir. Bilgiye erişim ve haber alma şekillerinin farklılaşmasından doğal ne olabilir? Çocuklarımızın kendilerinden bir önceki nesile göre bile bambaşka bir dünyada yaşadağını kabul etmeliyiz. Onların bilgisayar, bilişim, iletişim ve küresel ağ kültüründen yoksun bırakılmasının mantıklı bir yanını göremiyorum.

Internet bağlayalım ama çocuğumuzun zararlı sitelere girmesini istemiyoruz” diyen aileler; bu konuda pek çok ücretli ve ücretsiz yazılım mevcut. Bunlardan birini kullanarak gerekli ve yeterli önlemleri almak mümkün. Ayrıca çok çeşitli ücretli ve ücretsiz antivirüs yazılımları ile zararlı yazılımların bilgisayarı kullanılamaz duruma getirmesini büyük ölçüde engellemek mümkün. Zararlarından korkarak son derece yararlı teknolojik olanaklardan çocuklarımızı mahrum etmemeliyiz.

Bu konuyla ilgili görüşlerinizi ve varsa deneyimlerinizi lütfen yorumlarınızla paylaşın. Gözden kaçırdığım, atladığım şeyler olabilir, yorumlarınız sayesinde ben de öğrenmiş olurum.

Written by vtunali

Mayıs 28th, 2010 at 11:48 pm

Bilgisayar Bölümlerinde Hangi Programlama Dili?

one comment

Bilgisayar ve Yazılım Mühendisliği bölümlerinde öğretim programı hazırlayan bazı hocalarım ve akademisyen arkadaşlarımla birinci sınıftan itibaren öğrencilere hangi programlama dilinin öğretilmesinin uygun olacağı konusunda çeşitli zamanlarda görüş alışverişlerimiz oldu. Programı hazırlarken ve dil seçimini yaparken genellikle aşağıdakiler gibi bir takım kriterler üzerinde durduklarını gördüm:

  • Bu bölümden mezun olan kişi piyasada yaygın olarak kullanılan bir programlama dilini doğrudan uygulamaya yönelik olarak iyi derecede biliyor olsun, piyasaya çıktığında bu dili kullanarak gerçek hayat uygulamaları geliştirebilecek düzeyde olsun
  • Bu dil mutlaka tam anlamıyla Object Oriented bir dil olsun, öğrenciler OOD (Object Oriented Design) ve OOP (Object Oriented Programlama) kavramlarına tam anlamıyla hakim olsunlar
  • Web uygulamaları geliştirilmesi konusunda da dilin desteği ve kolaylıkları olsun

Bu kriterler göz önüne alındığında ve bölümlerin Bilgisayar Bilimleri’nden ziyade Yazılım Mühendisliği ağırlıklı olmasının istenmesi de hesaba katıldığında genellikle en iyi tercihin MS.Net tabanlı C türevi bir dil olan C# (C Sharp) olduğunu düşünüyoruz. Her ne kadar Microsoft çatısı altında geliştirilen ticari bir ürün olsa da C#, C’ye ve Java’ya benzerliklerinin yanı sıra son derece olgunlaşmış, gelişmiş ve güçlü bir genel amaçlı programlama dili durumunda. Aslında Java da bu kriterlere uygun bir dil gibi görünüyor ancak C#’ın Türkiye’deki artan popülerliğini ve yaygınlığını da dikkate aldığımızda Java ikinci planda kalıyor.

Açıkçası ben kendi adıma, bitirdiğim Bilgisayar Mühendisliği bölümünün öğretim programını düşündüğümde Bilgisayar Bilimleri alanındaki konulara verilen ağırlığın çok yerinde ve dengeli olduğunu düşünüyorum ve Pascal ile başlayıp C ile devam eden programlama derslerinin iyi ve sağlam bir temel oluşturduğuna inanıyorum. Bence Bilgisayar Bilimleri’nin ağırlığının yüksek olduğu bölümlerde Pascal ve C gibi bir dilin mutlaka ders programında yer alması gerekir. İlk öğretilen programlama dili olarak Java veya C# gibi nispeten daha yüksek seviyeli bir dil olsa bile devamında Veri Yapıları ve Algoritmalar derslerinin uygulamaları için Pascal ya da C gibi prosedürel bir dilin kullanılması yararlı olur. Sonrasında zaten ihtiyaca ve bireysel tercihlere göre yeni dillerin öğrenilmesi ve bu dillerde uzmanlaşılması çok büyük bir sorun olmayacaktır. Elbette ki öğretim programı içerisinde hangi dil kullanılırsa kullanılsın OOD ve OOP ağırlıklı en az bir dersin bulunması gerekir. Bunun yanı sıra bir süre öncesine kadar sadece akademik olduğu düşünülen ancak artık yazılım sektöründe oldukça ciddi bir yer edinmeye başlayan fonksiyonel dillerden birine de (mesela bir Lisp türevi olan Scheme) öğretim programında yer verilmesi çok yerinde olacaktır.

Yurtdışında da akademik dünyada uzun süredir bu konuda çok çeşitli, benzer görüşler ve tartışmalar var. Hatta ilk yıl programlama ile ilgili bir ders konulmasının Bilgisayar Bilimleri bölümünü zorlaştırdığını, programlama dersinin ileriki yıllarda görülmesi gerektiğini savunan görüşlere bile rastlamak mümkün.

Konuyu daha fazla dağıtmadan bitireyim. Uzun lafın kısası, Bilgisayar bölümlerinde hangi programlama diliyle başlanmalı, nasıl devam edilmeli, bir dil ile temelleri öğretip sonra başka bir dile mi geçilmeli, yoksa başından sonuna kadar bir dil üzerinde uzmanlaşılacak bir program mı hazırlanmalı? Emirsel/komutsal (Imperative) bir dil yerine günümüzde epeyce popüler hale gelen fonksiyonel dillerden biriyle mi başlanmalı? Bu konudaki düşünceleri duymak isterim, lütfen yorumlarınızla katılın.

Written by vtunali

Nisan 12th, 2010 at 9:17 pm

Carpal Tunnel Sendromu’nu Önleme Egzersizleri

leave a comment

Mesleğim gereği ve de kişisel kullanım nedeniyle günün büyük bir bölümünü klavye ve fare kullanarak geçiriyorum. Yoğun bilgisayar kullanımından kaynaklı olarak zaman zaman bileklerimde ve parmaklarımda rahatsızlık veren ağrılar oluşuyordu. Böyle dönemlerde bu ağrıları azaltmak için öğrendiğim ve uygulamaya devam ettiğim bazı yöntemler var. Bu yöntemler sayesinde uzunca bir süredir bu ağrı ve rahatsızlık hissinden kurtulmuş durumdayım. Benzer durumda olanlara kesinlikle öneririm.

1. Fare çift tıklamalarını azaltmak için Windows ayarlarımda öğeleri tek tık ile açma seçeneğini etkinleştiriyorum. Bu şekilde kullanım zaman zaman sıkıcı olsa da parmak ağrılarımın azalmasında son derece etkili olduğunu gördüm.

2. Sağ elimde rahatsızlık hissettiğim zaman fareyi sol elimle kullanıyorum. El değiştirmek garip ya da zor görünebilir ama benim için büyük rahatlık sağlayan bir yöntem. (Hatta bilgisayarla birlikte kalem-kağıt kullanmak zorunda olduğum zamanlarda sağladığı kullanım rahatlığını da belirtmeden geçemeyeceğim).

3. Sık sık bilgisayar başından kalkıp hareket ediyorum ve tabi ki parmaklarımı ve bileklerimi de rahatlatıcı hareketler yapıyorum. Bu amaçla bilgisayarımda 30 dakikada bir ara vermem gerektiğini hatırlatan bir program da kullanıyorum.

4. Aşağıda resimlerle anlatılan egzersizleri yapmaya çalışıyorum.

Özellikle yoğun ve aralıksız bilgisayar kullanımı gerektiren mesleklerde (ve tabi ki yoğun parmak ve bilek kullanımı gerektiren diğer mesleklerde de, örneğin, enstrüman çalanlarda, tenis oyuncularında vs.) görülen Carpal Tunnel Sendromu‘nu önlemeye yarayan bazı egzersizlerden bahsetmek istiyorum. Bu egzersizlerin CTS’yi engellemede, hafif düzeyde CTS olanlarda iyileştirmede diğer bilinen egzersizlere göre çok daha etkili olduğu görülmüş. Ancak bu egzersizler CTS’nin ilerlemiş safhalarında önerilmiyor. Egzersizleri birkaç sene önce http://ortho-ok.com/orrf/ORRF_CARPAL_TUNNEL_PREVENTION.htm adresinden almıştım.

A. Bileklerinizi ve parmaklarınızı uzatıp gergin duruma getirin, avuçiçleriniz karşıya bakacak şekilde 5′e kadar sayın.
B. Bileklerinizi düzleştirin ve parmaklarınızı rahat bırakın.
C. Yumruklarınızı sıkın.
D. Yumruklarınız sıkılıyken bileğinizi aşağı doğru bükün ve 5′e kadar sayın.
E. Bileklerinizi düzleştirin ve parmaklarınızı rahat bırakın. 5′e kadar sayın.
F. Buraya kadarki egzersizler toplam 10 kere yapılmalı. Ardından, kollarınızı yanlara serbestçe bırakın ve birkaç saniye rahat biçimde sallayın.



Tabi ki klişe bir uyarıyı yapmadan geçmek olmaz: Bu yazıda anlatılan ve önerilen yöntem ve tekniklerin hiç biri tıbbi bir müdahalenin ve tedavinin yerine geçmez. Uygulamaların tüm sorumluluğu size aittir.

Written by vtunali

Kasım 4th, 2008 at 12:43 pm