28 Aralık 2009 Pazartesi
12 Ekim 2009 Pazartesi
Gülserence
![]() |
From Gülseren |
Kelimeler
Tekeşşüyeeyim -> Teşekkür Ederim
Süküype -> Süpürge
Nuffak -> Mutfak (fixed :))
Külp -> Kulp (orn: Ya baba, bibeyonumun külpünü niye takmadın.)
Külpaa -> Külah (orn: Anne bana külpaayla donduyma veysene.)
Ovdan sovna -> Ondan sonra
Çivzi Kilim -> Çizgi Film
Diyaloglar
- Baba beni tucaana al
- Araba kullanıyorum kızım.
- Babaaa! İki tane elin vay.
- Gülseren? Ne karıştırıyorsun?
- Sakın konuşma. Git, yat, uyu; seni aalatmayim.
- Baba, hadi seni bunla vuyiim sen de öl.
- Tamam.
- Booo. Vuydum, hadi öl.
- Ah.
- ?
- Eeeeeee! Baabbaaaaaaaaaaaaaa!
- Tamam kızım ağlama. Oyun oynuyorduk hani?
- Anneeeeeeeeeeeeeeeee.
- Süliyman amcaa.
- Efendiim.
- Höööhhhhh. Koykuttum, hadi aala.
- Anne bunu kim söylüyo?.
- Bergen.
- Hıı!
- Baba bunu kim söylüyo?.
- Bergen.
- Hıı!
- Melek teyze bunu kim söylüyo?.
- Bergenmiş güzelim.
- Hıı!
- Anne bunu kim söylüyo?.
- Gülseeereeen.
- AAAAAAAAAAAAAA :)
- Hadi kızım otur bakalım koltuğuna
- Baba, sende ayabayı mı kullanacan?
- Evet hayatım.
- Ya kaza oluysa?
- Sen burada düzgün oturursan, bende arabayı düzgün kullanırsam kaza olmaz. Ama sen öne gelmeye çalışırsan kaza olur, tamam mı hayatım?
- Hemen de ben mi suçlu oluyum baba?
- Baba yemeğe mi gidiyoruz?
- Hayır kızım akşam oldu eve gidiyoruz. Anneanne yemek yapmış, bizi bekliyormuş. Hem Yağmur'da ablam gelsinde oynayalım, benim canım sıkıldı, çok özledim ablamı diyormuş.
- Yaamuy öyle diyemez ki; bana bile abbah, abbah diyor daha.
- Baba hadi biy masal daha annat.
- Artık uyu ama güzelim.
- Bitanecik daha ama.
- Bir marangoz varmış...
- HAYIY. PİNOKYOYU ANNATMA, GEPETTO BABA'YI DUYMAK İSTEMİYOYUM.
- Hı?
(18.02.2010 21:00 - Seyhan Uygulama Hastanesi)
112 Acil ambulansı gelir, hasta indirilirken
- Baba hastayı göyemiyoyum.
- Bak sedyede yatiyor.
- Ölmüş mü bu?
Herkes bize bakar. Hasta ve doktorlar dahil.
- Şşşt Gülseren çok ayıp.
- Hıııı. ölmemiş
- Gülsereeeen.
- Tamam ölmemiş işte.
(18.02.2010 21:15 - Seyhan Uygulama Hastanesi)
- Gülseren bak kurbağaların sesini duyuyor musun?
- Evet. Ama göyemiyoyum kaplumbaalayı.
- Kaplumbağa değil kızım, kurbağa.
- Ama sahte kaplumbaalayı göyemiyoyum.
- Kızım kaplumbağa değil, hani zıplayan, vrak vrak diyen kurbağalar var ya.
- Baba, zıpliyan sahte kaplumbaalayı göyemiyoyum.
- Görünmüyorlar zaten kızım, hava karanlık. Sadece sesleri geliyor.
...
- Gülseren bu ötenler sahte kaplumbağa mı?
- Evet çümkü onlay aslında kuybaa.
- !!!
(18.02.2010 21:20 - Seyhan Uygulama Hastanesi)
Yeni bir 112 Acil ambulansı gelir.
- Baba, sahte kaplumbaalay hastalanıysa öleyley.
- Neden kızım?
- Çümkü biz hastalanıysak bizi buna (ambülansı göstererek) koyaylay, ama kaplumbaalay hastalanıysa koymaslay.
- !!!
(26.06.2010 21:30 - Yatak Odasının Kapısı)
- Baabaaa, ben hayalet olduuum. Hööööö!
- !!!
- Eeeeeeeeeee!
- Kızım nooldu?
- Korktuuuum.
- ???
21 Temmuz 2009 Salı
Drop All User Tables in Oracle
CREATE OR REPLACE PROCEDURE DROPTABLES AS CURSOR tbls IS SELECT table_name FROM user_tables; tbl_name VARCHAR2(200); query1 VARCHAR2(2000):=''; BEGIN OPEN tbls; LOOP FETCH tbls INTO tbl_name; EXIT WHEN tbls%notfound; query1:=' DROP TABLE '||tbl_name||' CASCADE CONSTRAINTS'; EXECUTE IMMEDIATE query1; DBMS_OUTPUT.PUT_LINE(query1); END LOOP; CLOSE tbls; END droptables;
Kullanımı :
22 Haziran 2009 Pazartesi
Pardus 2008.2 Üzerine Oracle 10g Kurulumu
1 - 8. sayfadaki soft link komutlarını aşağıdaki şekilde değiştirmeniz yeterli olacaktır.
ln -s /bin/awk /usr/bin/awk
ln -s /usr/bin/basename /bin/basename
ln -s /usr/lib/libgcc_s.so.1 /lib/libgcc_s.so.1
ln -s /usr/lib/libstdc++-v3/libstdc++.so.5 /usr/lib/libstdc++.so.5
2 - dbstart dosyasının 78. satırındaki
ORACLE_HOME_LISTNER=:/ade/vikrkuma_new/oracle
satırını
ORACLE_HOME_LISTNER=$1
veya doğrudan ORACLE_HOME'un gösterdiği dizin olarak değiştirin.
18 Haziran 2009 Perşembe
Dumlupınar
Dumlupınar yol ayrımından geçerken, babam hadi bir uğrayalım dedi ve ikiletmeden yol ayrımından Dumlupınar'a döndüm. İlçeye girer girmez bir kahve gördük ve yolun verdiği yorgunlukla da hadi önce bir çay içelim dedik. Kahvede oturan ihtiyarlarla biraz sohbet ettik ve şehitliğe nereden gidebileceğimizi sorup yola koyulduk. Bu arada çay paralarımızı da ne ara ödediler bilmiyorum. Elimi cebime atacak oldum, ödendi dediler. Sağolsunlar.
İlçeden şehitliğe giderken yol biraz kötüydü. Gelir gelmez ilçe belediyesinin web sitesine baktım, bulvar çalışması varmış, bitmiş. Bu arada gezilecek daha bir sürü yer varmış. Yolum düşerse tekrar görmek isterim.
Şehitlikte mezar taşlarını okurken gözlerim doldu. Özellikle yan yana mezarlardaki memleket isimleri ve yaşların birbirine uzaklığı. O kahramanların fedakarlıklarına karşılık bugün bizim bu ülkeye yaptıklarımıza bak.
İşte gözlerimin yaşarmasına sebep olan resimlerden bazıları.



Yuva
Çocukluğumdan beri bildiğim bu sözleri ne kadar anladığımı (yada anlamadığımı) bu günlerde yeni yeni farkediyorum. Prof.Dr. Mikdat KADIOĞLU'nun www.agaclar.net'deki makalesini okuduğumda, yukarıdaki paragraf benim için çok daha anlamlıydı. Çünkü daha bir kaç gün önce NTV Yeşil Ekran'da Home (Yuva) adlı belgeseli izlemiştim.
Eskiden beridir balık ve kara avı konusuna meraklıyımdır. Sevgili dostum İ. Halil Karslıoğlu ile ki kendisi aynı zamanda babam olur, birlikte ava çıkmayı, sakin bir su kenarında oturup balık tutarken sohbet etmeyi çok severim. Bu sohbetlerde tüm dünyada değilse bile en azından kendi bölgemizde doğal hayatın nasıl bozulduğunu, bu sorunlara nasıl çözüm üretileceği, en azından bizim neler yapabileceğimiz konusunda beyin fırtınası yaparız. Bizim yapabileceklerimiz konusunda eylem planlarımızı hayata geçirmek için çalışmayı da sürdürüyoruz.
Av ve doğa gezilerinde, şehir yaşamında farkedemeyeceğiniz bir çok gerçekle karşılaşırsınız. Çocukluğumda ördek avına gittiğimiz bazı yerler şu anda insanların bir birine çarpmadan yürümeye çalıştığı caddeler, ve yüksek binalarla dolu. Balık avladığımız bir çok yerde şimdi Villa Siteler var. Benim 34 yaşında olduğum düşünülürse çocukluğum pek de uzak bir zaman değil.
Eskiden toroslarda her ağacın altında küçük, temiz tatlı su derelerinin aktığı, insanların evlerine bu derelerden su getirdiği Fındık pınarı yayalasında (Adından ne kadar sulak olduğunu anlayabilirsiniz.) geçen yıl su bulamadık ve marketten hazır şişe su almak zorunda kaldık.
Fakat Home (Yuva) belgeselini seyrettikten sonra, bizim gördüklerimizin aslında devasa sorunun ne kadar küçük bir parçası olduğunu anladım.
İnsanoğlunda tehlike ile bire bir kaşılaşmadıkça tehlikeyi görmezden gelme, küçümseme gibi bir sorun var. Bu bir nevi savunma mekanizması olabilir. Çünkü her sorunu sürekli olarak yaşar ve korkarsak günlük yaşamımızı devam ettirecek gücü bulamayabilir ve gerekli odaklanmayı sağlayamayabiliriz. Fakat bu bir süre sonra umursamazlık sınırlarını aşar ve korkusuz, aç gözlü bireylere dönüşürsek, ki şu andaki en büyük sorunumuz da bu gibi görünüyor, o zaman tehlike gerçek olduğunda yapabileceğimiz birşey kalmayacak.
Günlük hayatta en çok karşılaştığım ve en çok kızdığım yaklışım şudur; Yahu dünyayı ben mi kurtaracağım. yada Bir benimle olmaz, ben kendimi sıkıntıya soksam bile herkes yapıyor, ne değişecek. Sizce de gerçekten böyle mi?. Umarım değildir. Evet, dünyayı sen kurtaracaksın. Ve en önemlisi Toplumun tamamının bir şeyi yanlış yapması, sizin de aynı yanlışı bilerek yapmanız için yeterli gerekçe değildir. Her bireyin yapacak birşeyleri var ve her birey küçük de olsa fark yaratacaktır. Az dediğimiz ücretlerimizle bir ömür geçirebiliyoruz. Kelebeğin kanat çırpışları gibi, biz de zamanla büyük etkiler yaratabiliriz.
Konu hakkında bu kadar öfkeli olmamın asıl nedeni sanırım dünya tatlısı kızlarım, Gülseren ve Yağmur. Belgeseli seyrederken, özellikle verilen tahmini süreleri dinlerken aklımdan geçen ilk soru İnsanlığın sonu ne olacak? değil Kızlarım o zaman kaç yaşında olacak? oldu. Daha sonra eşimle mutfakta oturmuş sohbet ederken, onun soruduğu ilk soru da.
Sorun çok uzağımızda değil. Bizim, biz paçayı kurtarsak bile, akşam kucağımıza alıp hikayeler anlattığımız, gülüp oynadığımız, çocuklarımızın bizzat yaşayacağı, ve oldukça sıkıntı çekeceği tehlikeler.
Sanırım hepimizin artık korkmasını gerektirecek kadar yüz yüze geldik tehlikeyle.
4 Haziran 2009 Perşembe
Java'da DES Algoritması
- Simetrik Şifreleme; şifreleme ve çözme işlemi için aynı anahtarın kullanıldığı algoritmalardır. Şifrelenmiş bilgiyi açmak isteyen kişide şifreleme sırasında kullanılan anahtarın olması gerekir.
- Asimetrik Sifreleme; genellikle paylaşılacak ya da network üzerinde dolaşacak veriyi şifrelemek için kullanılır. Bilgi ulaşacağı kişinin açık veri anahtarına göre şifrelenir. Bilgi şifrelenmiş bir biçimde ulaşacağı kişiye ulaştığında ikinci ve gizli anahtar ile çözülür. Anahtar sadece ulaşacağı kişide bulunduğu için verinin ele geçirilip çözülmesi olanaksızdır.
- Karışık Şifreleme; asimetrik ve simetrik algoritmaları da içerisinde bulundurabilen algortimalardır.
DES (Data Encryption Standard/Veri Şifreleme Standardı), Dünyada en yaygın kullanılan şifreleme algoritmalarından birisidir. IBM tarafından geliştirilmiştir. 1975 yılında “Federal Register” tarafından yayınlanmıştır. DES 64 bitlik veriyi 56 bitlik anahtar kullanarak şifreler. DES’in en büyük dezavantajı anahtar uzunluğunun 56 bit olmasıdır. günümüzde geliştirilen modern bilgisayarlar tarafından yapılan saldırılar karşısında yetersiz kalmaktadır. Daha güvenli şifreleme ihtiyacından dolayı DES, Triple-DES olarak geliştirilmiştir. Triple-DES algoritması geriye uyumluluğu da desteklemek amacıyla 2 adet 56 bitlik anahtar kullanır. Triple-DES algoritması, DES algoritmasının şifreleme, deşifreleme, şifreleme şeklinde uygulanmasıdır.
DES ile şifrelenmiş bilgiye ulaşabilmek için şifreleme sırasında kullanılan anahtara ihtiyaç vardır. Şifrelediğiniz bilgiye daha sonra tekrar ulaşabilmek için anahtarı güvenli bir şekilde saklamanız gerekir.
Aşağıda java ile yazılmış bir örnek bulunmaktadır. Örnek ilk önce bir anahtar üretir, üretilen anahtarla örnek veriyi şifreler, anahtarı bir binary dosyaya kaydeder, sonra dosyadan geri okur ve şifrelenmiş veriyi tekrar eski haline getirir.
Burada örnek olması için çalışma dizininde bir dosyaya kaydedilmiştir fakat anahtarın saklanması konusunda daha yaratıcı ve karmaşık yöntemler bulunabilir.
package destest;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.UnsupportedEncodingException;
import java.security.NoSuchAlgorithmException;
import javax.crypto.BadPaddingException;
import javax.crypto.Cipher;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.KeyGenerator;
import javax.crypto.SecretKey;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.DESKeySpec;
public class DESTest {
Cipher eCipher;
Cipher dCipher;
SecretKey generatedKey;
SecretKey readedKey;
public DESTest() {
}
public boolean generateKey() {
try {
generatedKey = KeyGenerator.getInstance("DES").generateKey();
eCipher = Cipher.getInstance("DES");
dCipher = Cipher.getInstance("DES");
eCipher.init(Cipher.ENCRYPT_MODE, generatedKey);
} catch (NoSuchAlgorithmException e) {
System.err.println("NoSuchAlgorithmException: " + e.getMessage());
return false;
} catch (javax.crypto.NoSuchPaddingException e) {
System.err.println("NoSuchPaddingException: " + e.getMessage());
return false;
} catch (java.security.InvalidKeyException e) {
System.err.println("InvalidKeyException: " + e.getMessage());
return false;
}
return true;
}
public boolean saveKey() {
try {
SecretKeyFactory skf = SecretKeyFactory.getInstance("DES");
Class spec = Class.forName("javax.crypto.spec.DESKeySpec");
DESKeySpec ks = (DESKeySpec)skf.getKeySpec(generatedKey, spec);
ObjectOutputStream oos =
new ObjectOutputStream(new FileOutputStream(".key"));
oos.writeObject(ks.getKey());
oos.close();
} catch (Exception e) {
System.err.println("Save Key: " + e.getMessage());
}
return true;
}
public boolean readKey() {
try {
ObjectInputStream ois =
new ObjectInputStream(new FileInputStream(".key"));
DESKeySpec ks = new DESKeySpec((byte[])ois.readObject());
SecretKeyFactory skf = SecretKeyFactory.getInstance("DES");
readedKey = skf.generateSecret(ks);
dCipher.init(Cipher.DECRYPT_MODE, readedKey);
} catch (Exception e) {
System.err.println("Read Key: " + e.getMessage());
}
return true;
}
public String encode(String str) {
byte[] utf8;
try {
utf8 = str.getBytes("UTF8");
byte[] enc = eCipher.doFinal(utf8);
return new sun.misc.BASE64Encoder().encode(enc);
} catch (UnsupportedEncodingException e) {
System.err.println("UnsupportedEncodingException: " +
e.getMessage());
} catch (IllegalBlockSizeException e) {
System.err.println("IllegalBlockSizeException: " + e.getMessage());
} catch (BadPaddingException e) {
System.err.println("BadPaddingException: " + e.getMessage());
}
return null;
}
public String decode(String str) {
try {
byte[] dec = new sun.misc.BASE64Decoder().decodeBuffer(str);
byte[] utf8 = dCipher.doFinal(dec);
return new String(utf8, "UTF8");
} catch (javax.crypto.BadPaddingException e) {
System.err.println("BadPaddingException: " + e.getMessage());
} catch (IllegalBlockSizeException e) {
System.err.println("IllegalBlockSizeException: " + e.getMessage());
} catch (UnsupportedEncodingException e) {
System.err.println("UnsupportedEncodingException: " +
e.getMessage());
} catch (java.io.IOException e) {
System.err.println("IOException: " + e.getMessage());
}
return null;
}
public static void main(String[] args) {
String text = "Test text.";
System.out.println("Text : " + text);
DESTest main = new DESTest();
main.generateKey();
String encoded = main.encode(text);
System.out.println("Encoded: " + encoded);
main.saveKey();
main.readKey();
String decoded = main.decode(encoded);
System.out.println("Decoded: " + decoded);
}
}
2 Haziran 2009 Salı
Pardus 2008.2 + Eclipse 3.4.0 + Visual Swing for Eclipse
Fakat Visual Swing for Eclipse eklentisi ile çok kolay bir şekilde bu desteği sağlayabilirsiniz. Bunun için:
- - http://visualswing4eclipse.googlecode.com/files/vs4e_0.9.12.I20090527-2200.zip adresinden gerekli paketi indirin.
- - zip dosyasını home dizininize açın.
- - sudo cp -R /home/<user>/<paketi_actiginiz_dizin>/plugins /opt/eclipse komutunu çalıştırın (Sorulduğunda kendi şifrenizi girin)
- - Eclipse'i kapatıp tekrar açın
- - File/New/Other altında Visual Swing Class seçeneğini görüyor olmalısınız.
Java Sınıflarını Calisma Zamanında Derleme ve Yükleme (Compile and Load Java Classes at Runtime)
Bilinen Hatalar: Sınıfı birkez derleyip çalıştırdıktan sonra tekrar değişiklik yapar ve tekrar çalıştırmak isterseniz, önceki hali ile çalışıyor. Uygulamayı kapatıp tekrar açar ve çalıştır derseniz, düzgün çalışıyor. Hatta tekrar açtığınızda çalıştırmadan önce değişiklik yapar ve tekrar derlerseniz, yeni hali ile çalıştırabilirsiniz. Bunun nedeni sanırım çalışma zamanı yüklenen sınıfın tekrar kaldırma (unload) işlemini yapamaması.
Eğer bu konuda gerekli düzeltmeyi yapan olursa, ben de sevinirim.
Çalıştırmak İçin: Derle butonuna tıkladığınızda, uygulama dizininde "test" adında bir dizin yoksa oluşacak ve ".java" ve ".class" dosyaları burada oluşacaktır. Çalıştırmak istediğinizde uygulamanın oluşan ".class" dosyasını bulabilmesi için "test" dizininin classpath'e eklenmiş olması gerekmektedir. Aşağıdaki kodu kullanabilirsiniz.
java -classpath classes:test test.derleveyukle.DerleVeYukleSinif
package test.derleveyukle;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLClassLoader;
import javax.swing.JButton;
import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.SwingUtilities;
import javax.tools.JavaCompiler;
import javax.tools.ToolProvider;
public class DerleVeYukleSinif {
private JFrame frame;
private BorderLayout layout;
private JPanel topPanel;
private JButton jbtnYeni;
private JButton jbtnDerle;
private JButton jbtnCalistir;
private JButton jbtnCikis;
private JEditorPane editorPane;
private static final String DEFAULT_TEXT = "public class TestClass{\n" +
" public TestClass(){\n" +
" //\n" +
" }\n" +
"}";
private File path;
private String SOURCE_FILE_NAME;
private static final String CLASS_NAME = "TestClass";
public DerleVeYukleSinif() {
path = new File("test");
SOURCE_FILE_NAME = path.getAbsolutePath()+
File.separator+
"TestClass.java";
frame = new JFrame("Calisma Zamani Sinif Derleme ve Yukleme Ornegi");
frame.setSize(640, 480);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationRelativeTo(null);
layout = new BorderLayout();
frame.setLayout(layout);
topPanel = new JPanel();
jbtnYeni = new JButton("Yeni");
jbtnYeni.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
OnYeni(e);
}
});
jbtnDerle = new JButton("Derle");
jbtnDerle.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
OnDerle(e);
}
});
jbtnCalistir = new JButton("Calistir");
jbtnCalistir.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
OnCalistir(e);
}
});
jbtnCikis = new JButton("Cikis");
jbtnCikis.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
OnCikis(e);
}
});
topPanel.add(jbtnYeni);
topPanel.add(jbtnDerle);
topPanel.add(jbtnCalistir);
topPanel.add(jbtnCikis);
editorPane = new JEditorPane();
if (!oncekiKod())
OnYeni(null);
frame.getContentPane().add(topPanel, BorderLayout.NORTH);
frame.getContentPane().add(new JScrollPane(editorPane),
BorderLayout.CENTER);
path.mkdirs();
frame.setVisible(true);
}
private void OnYeni(ActionEvent e) {
editorPane.setText(DEFAULT_TEXT);
editorPane.requestFocus();
}
private void OnDerle(ActionEvent e) {
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
FileOutputStream fos;
try {
fos =
new FileOutputStream(new File(SOURCE_FILE_NAME));
fos.write(editorPane.getText().toString().getBytes());
int compilationResult =
compiler.run(null, null, null, SOURCE_FILE_NAME);
if (compilationResult == 0) {
System.out.println("Derleme islemi basarili.");
} else
System.err.println("Derleme islemi basarisiz!");
} catch (FileNotFoundException f) {
System.err.println("FileNotFoundException: " + f.getMessage());
} catch (IOException f) {
System.err.println("IOException: " + f.getMessage());
}
}
private void OnCalistir(ActionEvent e) {
try {
URL url = new URL("file://" + path.getAbsolutePath());
URL[] urls = new URL[] { url };
ClassLoader loader = URLClassLoader.newInstance(urls);
Class testClass = loader.loadClass("TestClass");
testClass.newInstance();
} catch (MalformedURLException f) {
System.err.println("MalformedURLException: " + f.getMessage());
} catch (ClassNotFoundException f) {
System.err.println("ClassNotFoundException: " + f.getMessage());
} catch (InstantiationException f) {
System.err.println("InstantiationException: " + f.getMessage());
} catch (IllegalAccessException f) {
System.err.println("IllegalAccessException: " + f.getMessage());
}
}
private void OnCikis(ActionEvent e) {
frame.dispose();
}
private boolean oncekiKod() {
File file =
new File(SOURCE_FILE_NAME);
int ch;
StringBuffer kod = new StringBuffer("");
FileInputStream fin = null;
try {
fin = new FileInputStream(file);
while ((ch = fin.read()) != -1)
kod.append((char)ch);
fin.close();
} catch (FileNotFoundException e) {
return false;
} catch (IOException ioe) {
return false;
}
editorPane.setText(kod.toString());
return true;
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new DerleVeYukleSinif();
}
});
}
}
19 Mayıs 2009 Salı
Oracle PL/SQL Sayıyı Yazıyla Yazdırma
CREATE OR REPLACE FUNCTION YAZIYLAYAZ(VAL IN NUMBER) RETURN VARCHAR2
AS
KR NUMBER := MOD(VAL, 1);
TL NUMBER := VAL-KR;
STL VARCHAR(9) := TO_CHAR(TL);
LEN INTEGER := 0;
MILYON NUMBER;
BIN NUMBER;
YUZ NUMBER;
RET VARCHAR2(1024);
TEMP NUMBER;
BEGIN
KR := KR*100;
LOOP
LEN := LENGTH(STL);
EXIT WHEN LEN >= 9;
STL :='0'||STL;
END LOOP;
MILYON := TO_NUMBER(SUBSTR(STL, 0, 3));
BIN := TO_NUMBER(SUBSTR(STL, 4, 3));
YUZ := TO_NUMBER(SUBSTR(STL, 7, 3));
IF MILYON >0 THEN
IF MILYON>99 THEN
CASE ((MILYON-MOD(MILYON, 100))/100)
WHEN 1 THEN
RET:='';
WHEN 2 THEN
RET:='İKİ';
WHEN 3 THEN
RET:='ÜÇ';
WHEN 4 THEN
RET:='DÖRT';
WHEN 5 THEN
RET:='BEŞ';
WHEN 6 THEN
RET:='ALTI';
WHEN 7 THEN
RET:='YEDİ';
WHEN 8 THEN
RET:='SEKİZ';
WHEN 9 THEN
RET:='DOKUZ';
END CASE;
RET:=RET||'YÜZ';
END IF;
TEMP:=MILYON-(MILYON-MOD(MILYON, 100));
TEMP:=(TEMP -MOD(TEMP, 10))/10;
CASE TEMP
WHEN 0 THEN
RET:=RET||'';
WHEN 1 THEN
RET:=RET||'ON';
WHEN 2 THEN
RET:=RET||'YİRMİ';
WHEN 3 THEN
RET:=RET||'OTUZ';
WHEN 4 THEN
RET:=RET||'KIRK';
WHEN 5 THEN
RET:=RET||'ELLİ';
WHEN 6 THEN
RET:=RET||'ALTMIŞ';
WHEN 7 THEN
RET:=RET||'YETMİŞ';
WHEN 8 THEN
RET:=RET||'SEKSEN';
WHEN 9 THEN
RET:=RET||'DOKSAN';
END CASE;
TEMP:=MILYON-(MILYON-MOD(MILYON, 100));
TEMP:=MOD(TEMP, 10);
CASE TEMP
WHEN 0 THEN
RET:=RET||'';
WHEN 1 THEN
RET:=RET||'BİR';
WHEN 2 THEN
RET:=RET||'İKİ';
WHEN 3 THEN
RET:=RET||'ÜÇ';
WHEN 4 THEN
RET:=RET||'DÖRT';
WHEN 5 THEN
RET:=RET||'BEŞ';
WHEN 6 THEN
RET:=RET||'ALTI';
WHEN 7 THEN
RET:=RET||'YEDİ';
WHEN 8 THEN
RET:=RET||'SEKİZ';
WHEN 9 THEN
RET:=RET||'DOKUZ';
END CASE;
RET:=RET||'MİLYON';
END IF;
IF BIN >0 THEN
IF BIN>99 THEN
CASE ((BIN-MOD(BIN, 100))/100)
WHEN 1 THEN
RET:=RET||'';
WHEN 2 THEN
RET:=RET||'İKİ';
WHEN 3 THEN
RET:=RET||'ÜÇ';
WHEN 4 THEN
RET:=RET||'DÖRT';
WHEN 5 THEN
RET:=RET||'BEŞ';
WHEN 6 THEN
RET:=RET||'ALTI';
WHEN 7 THEN
RET:=RET||'YEDİ';
WHEN 8 THEN
RET:=RET||'SEKİZ';
WHEN 9 THEN
RET:=RET||'DOKUZ';
END CASE;
RET:=RET||'YÜZ';
END IF;
TEMP:=BIN -(BIN-MOD(BIN, 100));
TEMP:=(TEMP-MOD(TEMP, 10))/10;
CASE TEMP
WHEN 0 THEN
RET:=RET||'';
WHEN 1 THEN
RET:=RET||'ON';
WHEN 2 THEN
RET:=RET||'YİRMİ';
WHEN 3 THEN
RET:=RET||'OTUZ';
WHEN 4 THEN
RET:=RET||'KIRK';
WHEN 5 THEN
RET:=RET||'ELLİ';
WHEN 6 THEN
RET:=RET||'ALTMIŞ';
WHEN 7 THEN
RET:=RET||'YETMİŞ';
WHEN 8 THEN
RET:=RET||'SEKSEN';
WHEN 9 THEN
RET:=RET||'DOKSAN';
END CASE;
TEMP:=BIN-(BIN-MOD(BIN, 100));
TEMP:=MOD(TEMP, 10);
CASE TEMP
WHEN 0 THEN
RET:=RET||'';
WHEN 1 THEN
IF BIN>9 THEN
RET:=RET||'BİR';
END IF;
WHEN 2 THEN
RET:=RET||'İKİ';
WHEN 3 THEN
RET:=RET||'ÜÇ';
WHEN 4 THEN
RET:=RET||'DÖRT';
WHEN 5 THEN
RET:=RET||'BEŞ';
WHEN 6 THEN
RET:=RET||'ALTI';
WHEN 7 THEN
RET:=RET||'YEDİ';
WHEN 8 THEN
RET:=RET||'SEKİZ';
WHEN 9 THEN
RET:=RET||'DOKUZ';
END CASE;
RET:=RET||'BİN';
END IF;
IF YUZ >0 THEN
IF YUZ>99 THEN
CASE ((YUZ-MOD(YUZ, 100))/100)
WHEN 1 THEN
RET:=RET||'';
WHEN 2 THEN
RET:=RET||'İKİ';
WHEN 3 THEN
RET:=RET||'ÜÇ';
WHEN 4 THEN
RET:=RET||'DÖRT';
WHEN 5 THEN
RET:=RET||'BEŞ';
WHEN 6 THEN
RET:=RET||'ALTI';
WHEN 7 THEN
RET:=RET||'YEDİ';
WHEN 8 THEN
RET:=RET||'SEKİZ';
WHEN 9 THEN
RET:=RET||'DOKUZ';
END CASE;
RET:=RET||'YÜZ';
END IF;
TEMP:=YUZ -(YUZ-MOD(YUZ, 100));
TEMP:=(TEMP-MOD(TEMP, 10))/10;
CASE TEMP
WHEN 0 THEN
RET:=RET||'';
WHEN 1 THEN
RET:=RET||'ON';
WHEN 2 THEN
RET:=RET||'YİRMİ';
WHEN 3 THEN
RET:=RET||'OTUZ';
WHEN 4 THEN
RET:=RET||'KIRK';
WHEN 5 THEN
RET:=RET||'ELLİ';
WHEN 6 THEN
RET:=RET||'ALTMIŞ';
WHEN 7 THEN
RET:=RET||'YETMİŞ';
WHEN 8 THEN
RET:=RET||'SEKSEN';
WHEN 9 THEN
RET:=RET||'DOKSAN';
END CASE;
TEMP:=YUZ-(YUZ-MOD(YUZ, 100));
TEMP:=MOD(TEMP, 10);
CASE TEMP
WHEN 0 THEN
RET:=RET||'';
WHEN 1 THEN
RET:=RET||'BİR';
WHEN 2 THEN
RET:=RET||'İKİ';
WHEN 3 THEN
RET:=RET||'ÜÇ';
WHEN 4 THEN
RET:=RET||'DÖRT';
WHEN 5 THEN
RET:=RET||'BEŞ';
WHEN 6 THEN
RET:=RET||'ALTI';
WHEN 7 THEN
RET:=RET||'YEDİ';
WHEN 8 THEN
RET:=RET||'SEKİZ';
WHEN 9 THEN
RET:=RET||'DOKUZ';
END CASE;
END IF;
RET:=RET||' TL';
IF KR>0 THEN
RET:=RET||' ';
IF KR >9 THEN
TEMP := (KR-MOD(KR, 10))/10;
CASE TEMP
WHEN 0 THEN
RET:=RET||' ';
WHEN 1 THEN
RET:=RET||'ON';
WHEN 2 THEN
RET:=RET||'YİRMİ';
WHEN 3 THEN
RET:=RET||'OTUZ';
WHEN 4 THEN
RET:=RET||'KIRK';
WHEN 5 THEN
RET:=RET||'ELLİ';
WHEN 6 THEN
RET:=RET||'ALTMIŞ';
WHEN 7 THEN
RET:=RET||'YETMİŞ';
WHEN 8 THEN
RET:=RET||'SEKSEN';
WHEN 9 THEN
RET:=RET||'DOKSAN';
END CASE;
END IF;
TEMP:=KR-(KR-MOD(KR, 10));
CASE TEMP
WHEN 0 THEN
RET:=RET||'';
WHEN 1 THEN
RET:=RET||'BİR';
WHEN 2 THEN
RET:=RET||'İKİ';
WHEN 3 THEN
RET:=RET||'ÜÇ';
WHEN 4 THEN
RET:=RET||'DÖRT';
WHEN 5 THEN
RET:=RET||'BEŞ';
WHEN 6 THEN
RET:=RET||'ALTI';
WHEN 7 THEN
RET:=RET||'YEDİ';
WHEN 8 THEN
RET:=RET||'SEKİZ';
WHEN 9 THEN
RET:=RET||'DOKUZ';
END CASE;
RET:=RET||' KR';
END IF;
RETURN RET;
END YAZIYLAYAZ;
21 Nisan 2009 Salı
Sağlık-NET Nedir?
Sağlık-NET ile yapılmak istenen; vatandaşların “doğumdan ölüme kadar ve ölüm sonrasında” sağlık verilerini merkezde güvenli bir şekilde tutmak suretiyle sağlık bilgisine erişimi kolaylaştırıp hizmet kalitesini artırmaktır. Tanı, tahlil ve tetkik bilgilerinin hasta mahremiyeti çerçevesinde paylaşımı ile hekimlerimiz ve sağlık kurumlarımızın hastaya ait sağlık verilerine erişimi sağlanacak, vatandaşlarımızın hastanede daha kısa sürede daha iyi hizmet almasına imkân tanınacaktır. Sağlık-NET sistemi ile yapılacak analiz çalışmaları ile koruyucu ve tedavi edici sağlık hizmetlerinin etkinliği artırılacaktır.
Sağlık-NET portali, Sağlık-NET sisteminin dışa açılan yüzü olarak tasarlanmıştır. Portalin kullanıcıya göre dinamik içerik gösterme özelliği olup her kullanıcı, kendi yetkilerine uygun bir içerikle karşılaşmaktadır. Vatandaşlar, sağlık hizmet sunucuları ve sağlık bilişimi sektör temsilcileri kendilerine ayrılan bölümlerde sağlık ve sağlık bilişimi konularıyla ilgili bilgileri ve güncel gelişmeleri takip edebileceklerdir.
Vatandaşlar portali kullanırken, bağlı bulunduğu aile hekimini görebilecektir. Ayrıca ileride Elektronik Kimlik Kartı devreye alındığı zaman portale vasıtasıyla Merkezi Hastane Randevu Sistemi üzerinden randevu alıp hastanelere gidebilecek, kendilerine ait sağlık kayıtlarını görebilecek, bağlı bulundukları Aile Hekimlerine bilgi alma amaçlı danışabileceklerdir.
Sağlık Hizmet Sunucuları, kendi konularıyla ilgili güncel bilgi ve düzenlemeleri takip edebilecekleri gibi, yetkileri çerçevesinde portaldeki uygulamalar vasıtasıyla veri bildirimi yapabilecek, kendileri için hazırlanmış olan sağlık rapor ve detay istatistiklerine ulaşabilecektir.
Sağlık Sektörü Temsilcileri , sağlık bilişimi alanında ortaya çıkan standartları takip edebilecekler, Hastane Bilgi Sistemi yazılımları, Aile Hekimliği Bilgi Sistemi yazılımları, bu yazılımların gerektirdiği donanım ve mesajlaşma standartları, veri güvenliği ve mahremiyeti vb. konularda son gelişmeleri ve Bakanlığın sektörden beklentilerini ve sektörün uyması gereken normlar hakkında bilgi sahibi olabileceklerdir.
Kaynak: www.sagliknet.com
Pardus 2007.3 üzerine Oracle 10g Kurulumu
Çalıştığım şirket bünyesinde java programlama dili ile yazılım geliştirmekte ve veritabanı olarak Oracle kullanmaktadır. Hem yazılım ekibindeki uzmanların kişisel tercihleri, hemde uygulamadaki ihtiyaçlar nedeni ile Linux ve Windows işletim sistemi yüklü bilgisayarlar kullanılmakta, bu bilgisayarlarda yazılım geliştirilmekte ve testler yapılmaktadır.
Kendi kişisel deneyimlerim doğrultusunda, Pardus işletim sisteminin yazılım geliştirme ve günlük kullanım için gayet yeterli olduğunu söyleyebilirim. Şu ana kadar ihtiyaç duyup bulamadığım bir uygulama veya yöntemle karşılaşmadım.
Geliştirme aşamasında kullanılan Oracle veritabanı yazılım biriminin kendi sunucularında kurulu olmasında rağmen çoğu kez sahada çalışmak gerekebiliyor. Bu durumda veritabanının kullandığınız taşınabilir bilgisayarda kurulu olması gerekiyor. Bu belge tam da bu ihtiyaç göz önüne alınarak hazırlanmıştır.
Kurulum VirtualBox üzerinde sanal makinede yapılmıştır ve sanal makinenin kurulu olduğu host sistem de Pardus 2007.3'tür.
Dökümanın tamamını aşağıdaki bağlantıdan indirebilirsiniz;
http://www.keynet.com.tr/userfiles/file/Pardus_2007_3_Uzerine_Oracle_10g_Kurulumu.pdf
8 Nisan 2009 Çarşamba
Kırık Camlar Teorisi
Kırık Camlar Teorisi, Wilson ve Kelling adında iki Amerikalı teorisyen tarafından 1980'lerin başında ortaya atıldı. Bu teori, Wikipedia'da aşağıdaki örnekle anlatılıyor:
"Bir kaç camı kırık olan bir bina düşünün. Eğer camlar tamir edilmezse, kimi insanlar başka camları da kırmakta bir sakınca görmeyecektir. Bu şekilde devam ettiği görüldüğünde, binaya daha büyük zararlar vereceklerdir ve sonunda bina ve devamında o sokaktaki diğer binalar, yaşanmaz hale gelecektir."
Bu teoriye dayanarak, en küçük sorunlara ve kural ihlallerine öncelik vererek çok daha büyük sorunların çözülebileceğini öngören yetkililer, sonraki 20 yılda New York gibi kimi büyük şehirlerde suç oranının sıfıra yakın bir seviyeye inmesini sağladılar.
Kırık Camlar Teorisi, iş yaşamımızda da birçok büyük soruna çözüm oluşturabilir. "Kırık Camlar, Başarısız İşler" kitabının yazarı Michael Levine, iş dünyasında kırık camları "güzel bir mağazanın boyası çıkmış duvarı, ya da bir müşteri hizmetleri telefon görüşmesinde yirmi dakika boyunca tekrarlayan bir müzikle bekletildikten sonra hattın kesilmesidir" diye özetliyor.
Kendi işinizde ya da çalıştığınız şirkette, önemsiz görünen sorunları hızla çözmeniz, benzeri hataların tekrarlanmasını ve bu ufak sorunlardan güç alan daha büyüklerinin oluşmasını önleyecektir.