20 Kasım 2013 Çarşamba

Hatalı Sayaç Probleminin C# ile Çözümü

Merhabalar bu yazımın konusu bazen matematik problemlerinde denk geldiğimiz hatalı bir sayacın bir hanesini hatalı gösterdiğinde sayaç kaçı gösterirdi gibi bir problemi çözmeye yönelik (tam ifade edemedim ama soru aşağıda var). Üniversiteye hazırlanan kuzenimin gittiği hazırlık kursunda sorulan ödüllü soruyu çözmek amacıyla geliştirmiş olduğum uygulama benzeri problemlere de uyarlanabilir. Soru kısaca şu şekilde:

10 Kasım 2013 Pazar

Adobe Connect Videoları Nasıl İndirilir?

Adobe Connect
İnternet üzerinden online eğitim sürecine katılanlar Adobe Connect'i iyi bilirler. Bu sistemde yapılan her sunum, konferans ya da ders sunucuda kaydedilir ancak kullanıcıya verilmez. Sonradan izleme şansınız ancak internet bağlantısı ile ve kayıtlar sunucudan silinmediği sürece vardır.

Peki ya bu kayıtları sonradan off izlemek istersek ne olacak? Adobe Connect bu konuda kullanıcının URL yoluyla imdadına yetişiyor. Mesela ders oturum URL'si

https://www.example.com/p10101010/ olsun. Bu URL'nin sonuna
https://www.example.com/p10101010/output/filename.zip?download=zip
gibi ekleme yaptığınızda videoyu zip formatında indirebilirsiniz.

6 Kasım 2013 Çarşamba

Camtasia Studio Dosyalarını (.camrec) Avi'ye Dönüştürmek

Bilindiği üzere Camtasia Studio yeni sürümlerinde çekilen görüntüyü .camrec uzantısıyla kaydediyor ve bilinen formatlara çevrim işlemi de nispeten zahmetli. Benim gibi üşengeçler için ise bu bir külfet olabilir. Göstereceğim yöntemle .camrec dosyalarından ilgili video dosyasını doğrudan alabileceksiniz. Bunun için öncelikle 7zip isimli uygulamayı indirip kurmanız gerekiyor. Buradan en son sürümünü indirebilirsiniz.

25 Ekim 2013 Cuma

Dünya'yı Değiştiren 18 Matematiksel Denklem

2012 senesinin başlarında, matematikçi Ian Stewart "Bilinmeyenin İzinde: Dünya'yı Değiştiren 17 Denklem" başlıklı kitabını yayımladı ve insanlığın tarihinde keşfedilen 17 matematiksel denklemi, bilimsel yoğunluğundan kurtararak, herkes tarafından anlaşılabilir bir hale soktu. Prof. Dr. Ian Stewart'a bu kitabını neden yazmaya karar verdiği sorulduğunda şöyle yanıt veriyor:

23 Ekim 2013 Çarşamba

SpiderMonkey Javascript Motoru - Basit Bir Uygulama

Önceki yazıda bahsettiğimiz üç temel bileşenin her birinin gerektirdiği ilgili JSAPI fonksiyonlarını açıklayacak olursak:

  • Runtime: Runtime'ı oluşturmak için JS_NewRuntime, işimiz bittiğinde yok etmek için JS_DestroyRuntime kullanılır. Uygulamanın SpiderMonkey'le işi bittiğinde ayrılmış kaynakları tamamen bırakmak için  JS_ShutDown kullanılır.
  • Context: Context'i oluşturmak için JS_NewContext ve JS_DestroyContext kullanılır. ECMAScript standartlarına azami uyum için uygulamaların JSOPTION_VAROBJFIX'i JS_SetOptions'u kullanarak aktifleştirmeleri gerekir. En son Javascript dil özelliklerini almak için ise JS_SetVersion kullanılabilir. Ayrıca her context için hata raporlama JS_SetErrorReporter kullanılarak sağlanabilir.
  • Global Nesne: Bu nesneyi oluşturmadan önce JSCLASS_GLOBAL_FLAGS opsiyonuna sahip bir JSClass'a ihtiyacımız var. Aşağıda verilen örnekte metotları ve özellikleri olmayan çok basit bir JSClass (global_class isminde) tanımlanmıştır. Ardından global nesneyi oluşturmak için JS_NewGlobalObject'i kullanmamız gerekiyor. Daha sonra bu global nesnemizi standart javascript global nesneleriyle doldurmak için JS_InitStandardClasses kullanılır.

3 Ekim 2013 Perşembe

SpiderMonkey Javascript Motoru

SpiderMonkey Mozilla isimli kuruluşun geliştirmekte olduğu bir Javascript motorudur. Buradan anlaşılacağı üzere bir API (Application Programming Interface) kütüphanesidir ve geliştirici, uygulamalarında javascriptin sunduğu kolaylıklardan bu Api aracılığı ile faydalanabilir. Bu, Browserlara özgü Dom nesnelerinin uygulama içerisinde kullanılabileceği anlamına gelmemeli zira Dom, browser spesifik bir yapıdır. SpiderMonkey ise bazı temel javascript veri tiplerini, sayılar, nesneler ve dizileri vs. ve bazı temel javascript metotlarını geliştiriciye sunmaktadır. Uygulama geliştirici kendi bileşenlerini (nesneler, sınıflar, metotlar, diziler vs.) kendisi oluşturur ve SpiderMonkey'e bunları kullanacağını bildirir.

Anlaşılır olması açısından bu hususla ilgili bir iki örnek vermek gerekirse Excelde (vbscript ile) yapılan uygulamalar ya da günümüz oyunlarında (lua vs. ile) farklı modların geliştirilebilir olması sundukları script desteği sayesinde olmaktadır. Bu sayede kullanıcı uygulamayı ileri düzeyde özelleştirebilmekte ve uygulamanın çekirdeği üzerinde yeni uygulamalar geliştirebilmektedir. Heyecan verici değil mi :) O zaman sözü uzatmadan hemen yazımıza geçelim.

13 Temmuz 2013 Cumartesi

Harf Notu Hesaplama Programı

Lisans yıllarında not hesaplamak için kağıt kalemle uğraştığım zamanlar aklıma gelince neden ufak bir program geliştirmediğimi düşündüm geçenlerde. Un var yağ var şeker var e neden helva yapmayalım dedim kendi kendime ve biraz da can sıkıntısını atmak için Visual Studio'da ufak bir program geliştirdim. Yarım saatlik çalışmanın ürünü program Gazi Üniversitesi'nin harf notu sistemine göre hesaplama yapmakta. Program çok basit sadece sağ tarafındaki "+" tuşuna basarak eklemek istediğiniz kadar ders ekliyorsunuz. Ardından dersin kredisini yazı giriş alanına giriyorsunuz, harf notunu seçiyorsunuz ve "=" tuşuna bastığınızda sonucu hesaplıyor. Evet sözü uzatmadan programı da vereyim. Kaynak kodu içinde. Programı Buradan indirebilirsiniz.

25 Mayıs 2013 Cumartesi

İleri Biyolojik Bilgisayar Geliştirildi

ScienceDaily.com adlı internet sitesinin haberine göre İsrail Teknoloji Enstitüsü Technion'daki bilim adamları yalnızca biyomoleküller kullanarak ileri bir transdüser geliştirdiler. Bu makine sayesinde genetik kodlar manipüle edilebiliyor ve akabindeki hesaplamalara girdi olarak kullanılabiliyor. Sitede buluşun ilerde birey gen tedavisi ve klonlama gibi konularda biyoteknoloji alanında yeni olanaklar oluşturabileceğinin altı çiziliyor.