Çeviri İşlemlerinde Doğruluk Oranı ve Hata Payı

Çeviri paylaşımları, sanal ortamda son dönemde en çok dikkat çeken konulardan biri haline gelmiştir. İnsanlar, çeviri paylaşımı yapabilecekleri siteleri kullanarak yabancı dilde yazılmış metinleri Türkçeye ya da Türkçe olarak yazılmış metinleri yabancı dillere çevirme isteği taşımaktadırlar. Bu durum çeviri sitelerinin daha çok ön plana çıkmasına uygun bir ortam hazırlamıştır. Çeviri siteleri, stratejik olarak farklı mantıklar üzerine kurulmuşlardır. Kimi çeviri siteleri, tamamen kullanıcılar arasında bir bağlantıya olanak sağlamaktadır. Bu tür sitelerde çevirmek istediğiniz yazı ya da metinleri sitedeki diğer kullanıcılarla paylaşmakta ve gönüllü çevirmenlerin yazınızı çevirmesini beklemektesiniz. Benzer şekilde site yöneticileri ya da yazarları da bu çevirileri işleme alabilmektedirler. Bu tür sitelerde yazarların ya da gönüllü kullanıcıların yazılarınızı çevirme ihtimali oldukça düşüktür. Kaldı ki böyle bir ihtimal söz konusu olsa bile çevirilerinizin ne zaman tamamlanacağından asla emin olamazsınız. Özellikle kısıtlı zaman dilimlerinde bu tür sitelerden pek fazla verim alamayacağınızı söylememiz gerekir.

Cümle çeviri sitesi denince akla gelen bir diğer stratejik planlama da doğrudan çeviridir. Bu stratejiyi benimseyen siteler, özel yazılım ve uygulamaları sitelerine doğrudan ya da dolaylı olarak empoze ederler. Bu tür siteleri ziyaret ettiğinizde çeviri yapabileceğiniz özel bir alanla karşılaşırsınız. Bu alana çevirmek istediğiniz yazı ya da metinleri aktarabilir, çevirinizin otomatik olarak yapılmasını sağlayabilirsiniz. Hem teoride; hem de pratikte bu tür sitelerin daha büyük avantajlarından söz edebiliriz. Kısıtlı zaman dilimlerinde bu tarzdaki sitelerden daha büyük yarar sağlayabilirsiniz. Yine de bu hususta birkaç önemli uyarıda bulunmamız şarttır. Kullandığınız çeviri sitesinin sizin için en doğru sonucu verdiğinden muhakkak emin olmalısınız. Kullanılan yazılım ve uygulamalar, her çeviri sitesinden farklı bir sonuç almanıza neden olabilir. Durum böyle olunca önünüze çıkan her çeviri sitesini kullanmanızın pek bir mantığı olmayacaktır. Bunun yerine kaliteli çözümler aramalı ve doğru sonuca bu şekilde ulaşmalısınız. Bugüne değin yaptığınız araştırmalardan yeterli sonucu alamadıysanız sizlere http://www.ingilizceturkce.gen.tr/ sitesini tavsiye edebiliriz. Bu site kapsamında yapacağınız çevirilerin kalitesinden emin olabilir, kendinize ait test yöntemleriyle çevirilerin doğruluğunu açığa kavuşturabilirsiniz.

Bizler, çeviri için bugüne dek birçok yöntem kullandık ve kullanılan yöntemlerden asla en iyi sonucu alamadık. Teknolojik gelişmelerle beraber çeviri çalışmaları da sanal ortama empoze edilmeye başlandı. Bu da hata payının giderek azalmasına olanak sağladı. Bir zamanlar %70 civarında olan çeviri hata payı, çeviri siteleri sayesinde %50’lerin altına inmeye başladı. Hatta kaliteli hemen çevir sitelerinin tasarlanmasıyla beraber hata payının %10’unun altına dahi indiğini görebiliyoruz. Size sunmuş olduğumuz web adresi, hata payı olasılığının en düşük seviyede seyrettiği noktalarda bulunuyor. Bu da yaptığınız çevirilerin ne kadar doğru olduğuna işarettir. Hata payının %0 olması mümkün olmamakla beraber aksan ve dilbilgisi farklılıkları, bu bağlamda en büyük etken olarak göze çarpıyor. Mesela İngiliz İngilizcesi ile Amerikan İngilizcesi arasında bir takım farklar bulunabilir. İngilizce çeviri yaparken bu farkları göz önüne almamış olmanız, belli bir hata payına maruz kalacağınız anlamına geliyor. Bu, bir tür hatadan ziyade kültürel bir farklılık olarak da lanse edilebilir. Dil bilimcilerinin dahi çözüm bulamadığı bu özel durumu hata payı olarak kabullenmek pek de doğru olmayacaktır. Bu hususta kullandığınız çeviri sitesinin kalitesini buna göre sınamalısınız. Bazı özel durumları göz ardı etmeli ve kıyaslamanızı buna göre yapmalısınız. 

Ubuntu – Eclipse , JDK ve Android SDK Kurulumu

Sık sık karşılaşacağınız android temelli yazılarımı daha iyi anlayabilmeniz için android kurulu olması gerekiyor. Bu konuda çeşitli makaleler, yazılar var ancak çok sade bir şekilde anlatmak istedim.

Her şeyi konsolda halletme taraftarı olduğum için oradan anlatacağım.

1.Adım: 

Öncelikle Eclipse ve Java için SDK mızı kurmamız gerekir. Ben kurarken en son versiyonu buydu.

sudo apt-get install openjdk-7-jdk

2.Adım:

Eclipse IDE ‘sini kuralım. Şuanda Eclipse Indigo var.

sudo apt-get install eclipse

3.Adım: 

Android versiyonları için ADT eklentisi kurulumunu yapmamız gerekir.

Eclipse ‘yi açın :  Help–> Install New Software sekmesini bulun ve Work With yerine


https://dl-ssl.google.com/android/eclipse/

4.Adım:
Android SDK kurulumu. Esas kısım burasıdır.

Window –> Android SDK and AVD Manager –> Available packages

İstediğiniz paketleri seçin olay bu kadardır. Geçmiş olsun.

Not: Eğer “R” dosyasının altı çizili çıkar ve ” Starting emulator for AVD Failed to start emulator: Cannot run program … ” gibi bir hata alırsanız sorun 64bit bir SDK nin 32Bit sistem üzerinde veya tam tersi olarak deneniyor olmasıdır. Çözüm olarak şunu kurunuz.

sudo apt-get install ia32-libs

Çok sade bir anlatım olduysa ayrıntıları sorun anlatayım :)

C# – XML Dosya Okuma ve XML Dosya Oluşturma – Proje Adım 1

Veritabanı kullanan bir projeniz varsa -ki bana en çok o iş için lazım olur- .xml dosyasına veritabanı bilgilerini kaydeder ve sonra oradan okuturum. Bir çok kişi projenin içinde bir sınıf belirler ve kullanıcı şifresi, server ismi vs. bilgileri buraya yazar. Bu yanlış bir kullanımdır. Çünkü bu bilgilerin değiştirilmesi gerekir. Bu esnada projeyi tekrar açmak bağlantı sınıfına erişmek ve oradan değiştirmek gerekir. Benim yazdığım sınıf bu yükten bizi kurtarıyor.

Bu konuyla ilgili geniş bir proje yapıyorum. Bunun ilk adımından başlayarak parça parça paylaşacağım. İlk konumuz .xml okumak  ve yazmak olsun istedim.

Senaryo : Veritabani bilgileri “ayar.xml” dosyasında tutulsun istiyoruz. Eğer “ayar.xml” dosyası yoksa önce oluştursun sonra bilgileri istesin sonra kayıt etsin istiyoruz.

C# Xml Oluşturma

 class xmlOlusturma
    {
        public string server = null;
        public string user = null;
        public string sifre = null;
        public string dbname =" ";

        public int xmlYap(){
             XmlTextWriter xmlDocument = new XmlTextWriter("ayar.xml",System.Text.UTF8Encoding.UTF8);
            try
            {
                xmlDocument.WriteStartDocument();//xmle yazma işlemini başlattık
                //channel ve item elementlerini oluşturup verileri kaydını gerçekleştirdik.
                xmlDocument.WriteStartElement("CHANNEL");
                xmlDocument.WriteStartElement("ITEM");
                xmlDocument.WriteElementString("server", server);
                xmlDocument.WriteElementString("user", user);
                xmlDocument.WriteElementString("sifre", sifre);
                xmlDocument.WriteElementString("dbname", dbname);
                xmlDocument.WriteEndElement();//channelve item taglarını kapattık
                xmlDocument.WriteEndElement();
                xmlDocument.WriteEndDocument();//dosyayı sonlandırdık
                xmlDocument.Close();
            }

            catch (Exception ex)
            {
                return 0; //Eğer dosya oluşturmada hata olursa bu değeri göreceğiz.
            }

            return 1; //Dosyanın oluşturulduğunu buradan anlıyoruz.
        }
}

 

ayar.xml dosya görüntümüz.


 

 

 

 

 

 

CSharp Xml Dosya Okuma

 public int xmlOku() {
            XmlTextReader OKU = new XmlTextReader(@"ayar.xml");
            baglantiVt baglantiVT = new baglantiVt();
            try
            {
                while (OKU.Read())
                {
                    if (OKU.NodeType == XmlNodeType.Element)
                    {
                        switch (OKU.Name)
                        {
                            case "server":
                               string server = OKU.ReadString();
                                break;
                            case "user":
                               string user = OKU.ReadString();
                                break;
                            case "sifre":
                               string sifre = OKU.ReadString();
                                break;
                            case "dbname":
                               string dbname = OKU.ReadString();
                                break;
                        }
                    }
                }
                OKU.Close();
            }
            catch (Exception ex) {
                return 0;
            }
            return 1;
        }

Tüm projeyi tek sınıf altında da oluşturabilirsiniz farklı sınıflar içinde de kullanabilirsiniz. Şunu da belirtmeliyim ki bu proje birden fazla item içeren yerlerde çalışmaz. Mantık aynıdır ama.
Kolay gelsin.

C# ile MySQL Bağlantısı

Localhost ‘ta kurulu olduğunu varsaydığımız MySQL yada benzeri bir veritabanı için C# dan nasıl bağlanırız onu anlatmaya çalışacağım.

1 – Öncelikle Connector ‘umuzu indirip kurmalıyız. .msi uzantılı olanı indirmeniz yeterlidir.

http://www.mysql.com/downloads/connector/net/

2- Kurulumu gerçekleştirdikten sonra C# projemizi açıp :

 ”References>Add Reference” diyerek “MySql.Data” yı programımıza ekliyoruz.

3- Projenize using olarak MySQL ‘i eklemelisiniz

using MySql.Data;
using MySql.Data.MySqlClient;

4- Sırada Bağlantı için gerekli kodlarımız var

public bool baglantikur() //bağlantı için kullandığımız fonksiyon
{
MySqlConnection baglanti = null; //asıl bağlantı değişkenimiz
MySqlConnectionStringBuilder bag = null; // Ayarları girdiğimiz kısım
bool bagli = false; // bağlantı kontrol değişkenimiz
if (bagli == false)
{
try
{
bag = new MySqlConnectionStringBuilder();
bag.Server = "uzakServer";//örn: localhost
bag.UserID = "veritabanıKullanıcıAdı";
bag.Password = "veritabaniSifre";
bag.Database = "veritabaniAdi";

baglanti = new MySqlConnection(bag.ToString());
baglanti.Open();
bagli = true;
}
catch (Exception)
{
bagli = false;
}
}
return bagli;
}

Artık C# database bağlantımız hazır.  Kolay gelsin.

Java – Tip Dönüşümleri (Casting)

Bazı şeyler vardır ezberlemek istemezsiniz. Arada-sırada lazım olur ve o yüzden aramak zorunda kalırsınız. Benim için tip dönüşümleri de böyle. Ne zaman ihtiyacım olsa 2-3 dakika mı alır. Her daim elimin altında olsun diye not alıyorum. Bu yazımda Java için tip dönüşümleri olacak. Bir sonraki yazımda C# için tip dönüşümlerini yazmaya çalışacağım.

Varsayılan değerlerimiz:

integer numaric=1453;
double rasyonel=5.525;
String alfa=”erkan”;

String To Integer (String ‘den Integer tip dönüşümü)

//String To Integer
Integer.parseInt(alfa);

Integer To String  (Integer ’den String  tip dönüşümü)

//Integer To String
Integer.toString(numaric);

Double To Integer (Double ‘dan Integer  tip dönüşümü)

//Double To Integer
Integer newInt;
newInt=rasyonel.intValue();

Integer To Double (Integer ‘dan Double tip dönüşümü)

//Integer To Double
//En sade ve anlaşışırı
numaric.doubleValue();
//Alternatif çözüm 1
double  c = (double) numaric;
//Alternatif Çözüm 2
double d = Double.parseDouble(Integer.toString(numaric));

Double To String (Double ‘dan String  tip dönüşümü)

//Double To String
Double.toString(rasyonel);
//veya şu daha iyi çözüm sunabilir.
String newString= rasyonel +"";

Her zaman daha iyisi ve daha kısası olabilir. Gereksiz eleştirilerden kaçınalım.

Android – Intent Kavramı ve Activity ‘ler Arası Geçiş, Bilgi Gönderimi

Bu kadar uzun bir başlık yazdığım için kusura bakmayın: içeriği özetleyecek bir isim bulamadım…

Konya hemen kabaca giriş yapayım. Profesyonel Android kodlamasında tek arayüz ile çalışılmaz. Genelde birden fazla .xml yapısı ile çalışılır. Ve bu .xml yapısı yanı Activity’ler arası bilgi gönderimi ve alımı gerekebilir. Tam bu noktada yardımımıza Intent ‘ler yetişiyor.

Bu methodun en yararlı işi iki Activity arası iletişimi sağlamaktır. Şimdi kod yapımıza ve püf noktalra geçelim.

Senaryo: EkranBir.java dosyamıza bağlı olan ekran_bir.xml dosyamın içerisinde ki TextView içersine girilen kelimeyi EkranIkı.java ile ilişkilendirdiğimiz ekran_iki.xml araçılığı ile EditText ‘e yazdırmak (ne uzun cümle oldu bu ya …)

Dosyalarımız:

Eclipse de Workspace Dışında Kalan Projeleri Açmak

Şu aralar Android ile uğraştığımdan Eclipse IDE ‘si ile baya haşır neşir olduk. Bu esnada bazı şeylere müdahale etmek gerekti.

İlk bakışta bulamadığım bir özellikte kayıt ettiğim Workspace dışında kalan projeleri açabilmekti. Bu yazıda Workspace dışında kalan, indirdiğiniz projeleri nasıl açacağınız ile ilgili olacaktır.

1- Adım:

File -> Import -> General -> Existing Projects into Workspace

2. Adım:

“Select root directory” satırından dosya yolunu belirtiyoruz.

3. Adım:

Alt satırda dosyanın com.xxx şeklinde görünüyorsa dosyanızı açabilirsiniz.

 

 

Ubuntu .deb, .run , .sh ve .bin uzantılı dosya kurulumu

Linux ortamındaysanız Windows gibi tek uzantı ile muhattap olmazsınız. Birbirinden farklı amaçlar için yazılmış dosya uzantıları ile karşılaşırsınız. Bunlardan bazılarını nasıl kullanacağınızı anlatmaya çalışacağım.

.bin kurulumu

$sudo cd Downloads

Dosyayı indirdiğimiz dizine giriyoruz.

$sudo chmod +x dosya.bin

Dosya ismi sizinki ile farklılık gösterebilir. +x (Çalışma izni) , +r(Okuma izni) , +w(Yazma izni)

$sudo ./dosya.bin

Sonrasında bir şey yapmanıza gerek yok. Kurulum kendiliğinden halledilecektir.

.sh kurulumu

 $sudo cd Downloads

Dosyayı indirdiğimiz dizine giriyoruz.

sudo chmod +x dosya.sh

İzinleri veriyoruz. Son adımda dosyamızı çağırıyoruz.

$sudo sh dosya.sh

 

.run kurulumu

  $sudo cd Downloads

Dosyayı indirdiğimiz dizine giriyoruz.

$sudo chmod +x ./dosya.run

Çalışabilir hale getirdik. Şimdi altın vuruş.

 $sudo ./dosya.run

.deb kurulum

Normalde .deb uzantısını birkere tıkladığınızda Yazılım Merkezi açılacak ve kurabileceksinizdir. Eğer kuramıyorsanız, terminalden kurmak isterseniz. Dosyayı indirdiğiniz kök dizine girip terminalden;

sudo dpkg -i dosya.deb

 

Aklıma başka dosya uzantısı gelmiyor. Varsa öğrenmek istediğiniz yorum olarak ileti bırakabilirsiniz.

Ubuntu – NetBeans JDK ve JRE Kurulumu

Open Source severlerin olmazsa olmazları arasındadır NetBeans neredeyse tüm programları derleme yeteneğine sahiptir kendileri. Windows ortamına göre daha hızlı çalıştığı için özellikle Java uygulamalarımı ve PHP uygulamalarımı Ubuntu üzerinde yazmaya çalışırım.

Kurulumu oldukça basittir. Öncelikle herhangi bir şekilde (Eclipse gibi) uygulama kurdu iseniz JDK ve JRE versiyon bilgisine bakmanız gerekir. Versiyon bilgisini kontrol ettikten sonra aynı versiyona ait JDK veya JRE kurmanız gerekir.

java -version
javac -version

Bu versiyon bilgileri çıkmaması gerekir. Çıkıyor ise aynı mı diye kontrol edin. Aynı değil ise aşağıda ki adımlara geçin. Aynı ise son aşama olan NetBeans kurulumuna geçiniz.

JDK Kurulumu

sudo apt-get install openjdk-7-jdk

Java kullananlar için gereklidir. Diğer platformlar için bknz: google.com :)

 

JRE Kurulumu

sudo apt-get install openjdk-7-jre

 

NetBeans Kurulumu

NetBeans dosyasını kendi sitesinden indirmeniz gerekir. Şu adresi kullanınız: http://netbeans.org/downloads/index.html

.sh uzantılı dosyaları kurmak için şu adımları tekrar ediniz. Öncelikle NetBeans’ı indirdiğiniz kök dizine gidiniz. Genellikle Downloads klasöründe olur.

sudo cd /Downloads

NetBeans indirdiğimiz klasöre ulaşıyoruz.

sudo chmod +x netbeans-7.1.2-ml-linux.sh

Burada dosya adı değişkenlik gösterebilir. Kendi dosya adınızı baz alınız.

sudo ./netbeans-7.1.2-ml-linux.sh

Artık NetBeans programınız ve derleyicileriniz kurulmuştur.

Ubuntu – ClassicMenu Indicator

Ubuntu 11.10 sürümü ile benim sık kullandığım üst kısıma dosya kısayolu koyma olayı iptal oldu. Bunun üzerine alternatif bir şeyler yapmak gerektiğini hissettim. Ve Classic Menu Indicator / Klasik Menu Göstergesi ‘ni kurdum.

Sırasıyla;

sudo add-apt-repository ppa:diesch/testing

sudo apt-get update

sudo apt-get install classicmenu-indicator

Çalıştırmak için uçbirime şu kodu yazın;

classicmenu-indicator

Arama
RSS
Beni yukari isinla